April 30, 2026
Karoo Software Build Version: 1.630.2420
Karoo:
Features:
- We added Next Primary Target as a data field. When added to a data page, Next Primary Target shows the primary target of your next workout interval.
- We added Next Secondary Target as a data field. When added to a data page, Next Secondary Target shows the secondary target of your next workout interval.
- We added Next Interval Duration as a data field. When added to a data page, Next Interval Duration shows the duration of your next interval.
- We updated the workout details page so that a workout can be loaded using the lower right button.
- We made some UX improvements to the Karoo Share page.
Bug Fixes:
- We fixed an issue where icons were misaligned on the sensors list page.
- We fixed an issue where short intervals were not displaying on the workout graph data field.
- We fixed an issue where upcoming turn-by-turn instructions were incorrectly showing progress.
- We fixed an issue where the climber list while in progress was causing higher battery drain.
Dashboard:
Features:
- We no longer limit riders to 50 imported routes from Komoot. Riders can now sync up to 1000 routes.
Bug Fixes:
- We fixed an issue where special characters would cause search to not work properly.
Read more
<div class="dynamic-checkout__content" id="dynamic-checkout-cart" data-shopify="dynamic-checkout-cart"> <shopify-accelerated-checkout-cart wallet-configs="[{"supports_subs":true,"supports_def_opts":false,"name":"shop_pay","wallet_params":{"shopId":2804495,"merchantName":"Hammerhead","personalized":true}},{"supports_subs":true,"supports_def_opts":false,"name":"paypal","wallet_params":{"shopId":2804495,"countryCode":"US","merchantName":"Hammerhead","phoneRequired":true,"companyRequired":false,"shippingType":"shipping","shopifyPaymentsEnabled":true,"hasManagedSellingPlanState":false,"requiresBillingAgreement":false,"merchantId":"TNMUSUDGMEXRG","sdkUrl":"https://www.paypal.com/sdk/js?components=buttons\u0026commit=false\u0026currency=USD\u0026locale=en_US\u0026client-id=AbasDhzlU0HbpiStJiN1KRJ_cNJJ7xYBip7JJoMO0GQpLi8ePNgdbLXkC7_KMeyTg8tnAKW4WKrh9qmf\u0026merchant-id=TNMUSUDGMEXRG\u0026intent=authorize"}}]" access-token="a4f59fc52e03a6a676b3cf33e3fdc074" buyer-country="US" buyer-locale="en" buyer-currency="USD" shop-id="2804495" cart-id="0dd97dafb6cf61b3575ad2e2ac3907df" enabled-flags="["ce346acf"]" > <div class="wallet-button-wrapper"> <ul class='wallet-cart-grid wallet-cart-grid--skeleton' role="list" data-shopify-buttoncontainer="true"> <li data-testid='grid-cell' class='wallet-cart-button-container'><div class='wallet-cart-button wallet-cart-button__skeleton' role='button' disabled aria-hidden='true'> </div></li><li data-testid='grid-cell' class='wallet-cart-button-container'><div class='wallet-cart-button wallet-cart-button__skeleton' role='button' disabled aria-hidden='true'> </div></li> </ul> </div> </shopify-accelerated-checkout-cart> <small id="shopify-buyer-consent" class="hidden" aria-hidden="true" data-consent-type="subscription"> One or more of the items in your cart is a deferred, subscription, or recurring purchase. By continuing, I agree to the <span id="shopify-subscription-policy-button">cancellation policy</span> and authorize you to charge my payment method at the prices, frequency and dates listed on this page until my order is fulfilled or I cancel, if permitted. </small> </div>