AltGraph v.1.0.33 – A 3D Isometric Altimetry & Radar extension for Karoo

Comments

101 comments

  • Avatar
    HesiOX

    A major update (v1.0.85) for AltGraph is now live, bringing exciting new features, enhanced visual design, and full multi-language translations across the board.

    What's New in v1.0.85:

    1. Live KGhost Integration (Altimetry Radar Alert Bar)

    In the Radar Elite settings, you can now toggle the KGhost Gap! When enabled, a visual head-to-head racing widget appears right on your Radar alert bar:

    • Dual Vector Cyclists: Your rider in burgundy red and the virtual partner in metallic light grey, with subtle drop-shadows for high readability in full sunlight.

    • Dynamic Leadership Arrow: The leading rider visually takes the front (on the right in horizontal mode, or top in vertical mode) connected by a leadership arrow.

    • Live Metrics: Shows precise real-time gap in time and distance (e.g., -15 s / -104 m or +4:46 / +3.7 km).

    • Smart Alternation: Smoothly cycles every 4 seconds between the KGhost widget and climb/wall tactical alerts so you don't miss upcoming steep ramps.

    A huge thank you to the developer of KGhost for their collaboration and support! Please note that having the KGhost companion app installed on your Karoo is required to feed the ghost gap data.

    2. New Typography Choices

    We have added Landasans and Barlow Condensed to the font family selector under the Style tab, offering clean, ultra-readable metrics suited for any cockpit layout.

    3. Clean & Professional UI

    The entire settings panel and data field headers have been decluttered of emojis, replacing them with a streamlined, professional design.

    4. 100% Complete Multi-Language Support

    Full native translation coverage across all 192 keys with zero missing strings in:

    • English

    • Spanish

    • French

    • German

    • Italian

    • Portuguese

    Download & Release Notes

    Feedback and suggestions are always welcome. Enjoy your rides!

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Apologies if the elite key is in GitHub but can't find it now :-(

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    ALTGRAPH-ELITE-2026

    0
    Comment actions Permalink
  • Avatar
    John Pfennings

    installed and doing desktop test with screens. visually great! is it possible to make the little arrows to scroll a little bigger as they are hard to touch for me?and/orlittleup

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Some feedback.

    Would it be possible to remove the ride/route's name, the Pending %, Average Grading and Max Grading tites from the the top of the graph?

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi! Thank you so much for the great feedback and the screenshot!

    We have just published v1.1.0 addressing all your points:

    1. Bigger & Higher Scroll Arrows (< / >):
      • We made the arrow circles significantly larger and raised them slightly higher above the bottom edge of the screen so they don't sit right against the Karoo bezel.
      • The invisible touch target area was also expanded generously, making them much easier to tap while riding or wearing gloves.
    2. Fixed Header Overlap:
      • The issue where CURRENT GRADIENT (0.0%) overlapped with AVG GRADIENT has been completely resolved with dynamic, auto-scaling column widths.
    3. Option to Remove Header / Maximize 3D Profile:
      • You can now toggle the entire top header on or off! In the 3D tab, simply turn off "Show 3D Header Statistics (Route Name, Gradients)". The route name and top gradient metrics will be hidden, and the 3D mountain profile will automatically stretch vertically to fill the entire screen for a distraction-free, panoramic view.

    Pro Tips for the best visual experience:

    • Rotate Graph 90° (Landscape Mode): In the 3D tab, enable "Rotate Graph 90° Clockwise". This allows you to view the 3D elevation profile in widescreen landscape across your Karoo, which gives you much more horizontal distance resolution and an incredible panoramic perspective of the climbs ahead.
    • Condensed Font: In the Style tab, try setting the typography to Condensed and the size to Large. It makes all the grade capsules and numbers super crisp and easy to read at a quick glance on the bike.

    The OTA update v1.1.0 is already live and should prompt on your Karoo, or you can grab it directly from GitHub Releases. Let us know how it feels on your next ride! 

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Thanks for the heads up for the new release. Installed and looking good.

    This may be an "impossible" but would the < / > arrows be able to move to the top of the graph? They sort of overlap the graph in its current potision. I guess if they go to the top it may overlap something else?

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Glad to hear it's looking good!

    Nothing is impossible! We actually implemented exactly that in the latest update:

    In the 3D Settings Panel (app settings), you'll find a new option: "Pan Buttons Position" / "Posición de flechas de avance" with two choices:

    • Bottom (Default): Keeps them in their original position at the bottom edge.
    • Top: Moves the < and > arrow controls to the top of the 3D elevation profile view.

    When set to Top, both the touch buttons and the on-screen indicators are relocated to the upper zone so they never overlap the terrain or the elevation profile at the bottom.

    (Note: In the individual Climb Viewer, they remain fixed at the bottom to avoid interfering with the climb title and category header).

    Update to version 1.1.3 and give it a try—you can switch between both positions anytime depending on your screen layout preferences!

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Thanks for the update.

    Is there a bug with the arrows and zoom?
    I am only able to zoom out with the minus icon. The plus icon does nothing for me and the arrows also do nothing. Maybe uninstall/reinstall it?

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi! No need to uninstall or reinstall at all. Everything is working as intended, and here is what is happening:

    1. Why the lateral arrows (< and >) appear to do nothing:

    • In the 3D Elevation Profile, the arrows are designed for scrolling (panning) forward and backward along the route. If you are zoomed out to the full route, or if you don't have an active navigation route loaded (e.g. testing stationary at home), the view is already displaying the entire route from start to finish, so there is no extra distance to pan into.
    • In the Climb Viewer:
      • The top arrows (◀ and ▶) switch between different climbs on your route (e.g. Climb 1/2 to Climb 2/2). If your route only has 1 climb (or no route loaded), there are no other climbs to cycle through.
      • The side arrows (< and >) are for scrolling along a climb only when you are zoomed in. By default, the viewer fits 100% of the entire climb onto the screen, so lateral scrolling is locked until you zoom in.

    2. Why the minus (-) zoomed out but the plus (+) seemed to do nothing:

    • When you tap the minus (-) icon, the viewing distance increases in large steps (up to the total route distance or max range).
    • If you zoomed out multiple times, the viewing window expanded to the full route length. When you tap the plus (+) icon, it reduces the window step-by-step, but as long as the requested window is larger than the actual length of your route, the graph will continue to fit the entire route on screen.
    • Quick fix: Tap the plus (+) icon a few more times until the window drops below your route distance, or simply open the AltGraph app from your Karoo app drawer and adjust the "3D Lookahead" (Visión hacia adelante) back to your preferred default (e.g., 350 m, 500 m, or 1000 m).

    Make sure to update to the latest release (v1.1.5), which includes instant touch response and updated controls. Let me know if that clears it up

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Updated to v1.1.5.

    Thanks for quick turn arounds.

    I got to understand the zoom in and out now. The problem I had is that the zoom in isn't really happing when you press the icon. The response happens a bit under the icon so that means it is not aligned 100% with the icon graphic.
    May I suggest to give the option of moving these ones to the top of the graph. There's plenty of empty space between the top arrows (◀ and ▶)

    The top arrows (◀ and ▶) still not working for me.

    This extension is brilliant by the way. Great potential.

    https://ibb.co/zvPzvdb

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi,

    Thank you very much for your feedback and kind words. We have addressed every single point you raised in version 1.1.6:

    1. Top arrows (◀ and ▶) explanation: The reason the arrows appeared to do nothing on your test route is that the route only had a single climb. Tapping the arrows cycled between climb 1 of 1, so the display remained on the same climb, giving the impression that the buttons were not responding. In version 1.1.6:
    • If a route has only one climb, the navigation arrows are now completely hidden so there is no confusion.
    • If you zoom in on a single climb, the arrows automatically activate and allow you to pan back and forth along the zoomed profile.
    • If your route contains multiple climbs, the arrows switch between each mountain pass.
    1. Zoom button touch alignment: In rotated landscape mode, the touch bounding box had a slight offset caused by container margins and rotation transforms. We resolved this by expanding the button hit targets to 52dp x 52dp and removing container padding, ensuring that 100% of the visible icon matches the touch registration area accurately.

    2. Moving zoom buttons to the top header (your suggestion): We loved your idea and implemented it directly in this release. By default in version 1.1.6, the zoom buttons (+ and -) are now placed in the top header where there is plenty of empty space, keeping the elevation profile and gradient bars completely clear and visible. You can also toggle this in Settings ("Zoom Controls at Top") if you ever want them in the side position.

    3. Zoom button order in landscape: In the side position, the plus (+) button is now placed above the minus (-) button to match natural landscape reading orientation.

    Update to version 1.1.6 and let us know how it feels on your next ride. Thank you again for helping us improve the extension.

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Good work there unfortunately I can't get the zoom buttons to go over the graph. Also the arrows still there so not sure if they are mean to? Perhaps you could offer the option to remove those as well?

    Here are some photos of my Karoo.

    https://ibb.co/PvJKSLB0
    https://ibb.co/wZQfL916
    https://ibb.co/tpYTc8gN
    https://ibb.co/SDLSgmqZ
    https://ibb.co/N8dC4GP

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi David,

    We have just released AltGraph v2.0, which addresses your feedback and brings major new improvements:

    1. Zoom buttons positioned on top: In the 3D Panel Settings, if you uncheck both:

      • Show Max Gradient in 3D Header
      • Show 3D Header Stats (Route Name, Gradients)

      The top space clears up and the zoom buttons (+ and -) will automatically move from the side and sit side-by-side centered at the top, leaving the entire elevation chart clean and unobstructed.

    2. Navigation Arrows (< / >): You can now completely hide the navigation arrows. Go to Settings > Navigation Arrows Position and choose "Hidden" (options are now: Bottom, Top, or Hidden).

    3. What's New in v2.0:

      • Thermal Slope Shading & Dynamic Apex: Volumetric 3D relief hillshading with slope contrast and geometric apex markers on steep switchbacks.
      • Target Cadence & Virtual Gear Wall: Visual fractured warning on extreme ramps (≥16%) and real-time recommended gear ratio badge (⚙️ 34x32, 34x34, etc.) to keep your ideal cadence.
      • Grand Tour W'bal Burn Rate & Failure Point: Real-time anaerobic battery tracking based on your FTP with estimated failure point marker projected along the climb.

    You can download and install the latest v2.0 APK from the GitHub Releases page:  https://github.com/DAVOE75/AltGraph/releases/latest

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    This is brilliant work! Well done! Keep it going please. Karoo users like me will be for ever grateful for your work.

    Question. Would you have in mind to make the 3d graph for an loaded route "cycleable"? By this, I mean that there is a point/circle/whatever tracking the rider on the route and move on it. That would be a killer feature but I am not sure if this was ever your intent.

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Thank you so much for the kind words and support! It really means a lot.

    Good news: this is already designed and fully functional in ALTGRAPH! 🎉

    When you load a route and start riding on your Karoo:
    1. Live Beacon & Headlight: A glowing cyan rider beacon (with a forward headlight beam) tracks your exact real-time GPS position directly on top of the 3D elevation ribbon.
    2. Dynamic Sliding Window: By default, the 3D profile dynamically rolls under your wheels in smooth 50m increments, keeping your rider beacon positioned roughly at the first 25% of the screen so you always see what climbs, descents, and gradients are coming ahead.
    3. Full Route Overview: In the full-route / isometric view, the completed sections darken as you ride, and the rider pin progresses along the entire elevation course from start to finish.

    If you were testing it at home on a static route without moving GPS reception, the rider marker sits at the start (km 0). Once you hit the road with an active route navigating, you'll see your beacon tracking your real-time effort live on the 3D relief!

    Ride on and enjoy the climbs!

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    One thing I noticed: after uploading the route, I don't see any beacon or rider. Should I see anything now? You can see my image below. Anyway, I'm going out on the bike to test it, and I'll let you know if I find anything.
    A second quick thing: when you zoom out to the maximum distance, you see the whole route, but zoom out further and you get a flat green area. My suggestion is to cap the zoom-out at the extent of the route, so the map never shows more than the route itself.

    https://ibb.co/ZRDg4X48

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi! Thank you so much for your feedback and for testing it out!

    1. Rider position / Beacon visibility: Yes, this is completely normal! When you first load a route indoors or before starting the ride, the Karoo GPS might not have acquired a live satellite fix yet or you might not be at the exact starting coordinates of the route. As soon as you press Start on your Karoo and begin riding along the track, the app projects your real-time GPS position onto the route ribbon, and you will see the rider beacon and position marker tracking smoothly along the 3D elevation profile!

    2. Zoom-out capping (Flat green area): Excellent catch and great suggestion! We have addressed this in the latest update (v2.4): The zoom-out limit is now strictly capped to the exact extent of your loaded route. It will no longer allow zooming out past the finish line, completely eliminating that flat green buffer area beyond the route boundary.

    3. Pro-tip for the best experience: Bluetooth Audio Copilot 🎧 We also warmly encourage you to pair a Bluetooth headset (or bone-conduction headphones like Shokz, or a compact handlebar speaker) with your Karoo and turn on the Voice Copilot in the ELITE settings. Having spoken audio alerts for upcoming steep gradients, pass summits, terrain changes (gravel/trail/asphalt), and cadence/effort management directly in your ear will truly elevate your ride to a whole new level!

    Enjoy your ride and let us know how your road test goes!

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Thanks for the latest update. Road test did not go very well :-( The beacon did not show up at all. I dont know if I started the route already one km in and that sort of affected it? I mean I did not click start till km 1 or 2 in the route already loaded. But even before clicking the start button I still did not get any beacon, even though I had the route uploaded, so not sure now. I will have to keep testing it out in the road.

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Is there anyway to enable the rider/beacon because I cannot get it to show at all. No matter what.

    See my screenshots. Routegraph can pick up the route profile and track me on it.

    https://ibb.co/tMKNqrKS
    https://ibb.co/KjfhvBgy
    https://ibb.co/RpsLzFcY
    https://ibb.co/B2mWrxys
    https://ibb.co/3m5T8RCy

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi! Thanks for reporting back!

    Two very likely explanations for what happened:

    1. Were you using the Climb Viewer (Visor de Puertos)? If so, that’s actually working by design! The Smart Rider Beacon on the climb profile only appears when you are physically inside the climb segment. Before reaching the start of the climb (e.g. if you are at km 0, 1, or 2 and the first categorized climb starts at km 8 or 15), the beacon is intentionally hidden so you can preview the full, clean climb profile without obstruction. Once you cross the official start point of the climb, the luminous beacon will pop up and track your ascent in real time.

    2. Were you using the main 3D Elevation Graph?

      • Before pressing "Start": Karoo OS does not always stream active GPS coordinate locks to extensions until an activity is officially started and has an outdoor satellite lock.
      • Visibility in daylight: The 3D beacon dot was previously relatively subtle (a 7px cyan circle). In the upcoming release, we are enhancing it with a pulsing high-visibility halo and a vertical ground needle so it's impossible to miss even in bright sunlight.

    Let me know which of the data fields you were looking at, and feel free to test it when you enter the first climb!

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    I was testing it both times in the main 3d elevation graph. I first thought I couldn't see the 3d bacon but if that was still the case at least the 2km graph would move along with me in the route and will grayed out the part of the route already ridden. But that was not case in either of my tests.

    I will test it out tomorrow and only start the ride at the start of the route.

    Thanks for getting back to me and addressing my issues.

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Ah, that explains everything! Thanks for the clarification!

    Two quick things to keep in mind for your test tomorrow:

    1. How the 3D Elevation Graph works: Unlike the stock Karoo profile (which shows a static map of the whole route and grays out the ridden portion as a dot moves across the screen), AltGraph's 3D graph is a rolling cockpit window:

      • Your rider beacon stays anchored at ~25% from the left, constantly looking 1.5 km ahead (and 500 m behind).
      • The mountain ribbon scrolls underneath you in smooth 50 m increments.
      • It is color-coded by slope gradient (green/yellow/orange/red/black) rather than turning gray, so you always know the exact severity of the road ahead and behind.
    2. If you want the full-route profile that grays out the ridden part: Check out our "Route Profile 2D (TV Profile)" data field in AltGraph! That one is specifically designed to show the entire route from start to finish, highlighting categorized climbs and dynamically illuminating the ridden kilometers in vibrant neon while keeping the upcoming part in dark silhouette.

    3. v2.7 is out now: We just pushed v2.7 today! We upgraded the 3D rider beacon with an anchored vertical needle and a luminous 11px halo so it's super prominent and impossible to miss against the 3D ribbon.

    Good luck with your test ride tomorrow starting from the route start—looking forward to hearing how it goes!

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    ALTGRAPH 2.8.0 is out: please update!

    This version fixes the rider beacon offset in the 3D views and adds more control over how the app looks and behaves.

    Fixes

    • Rider beacon offset (Global 3D): the beacon could run up to ~500 m ahead of your real position. It is now placed by real distance, so it marks exactly where you are on the route.
    • Beacon on climbs and the Global 3D profile: the beacon now stays on the ramp as you ride. When it reaches the right edge, the profile pages forward automatically, so you no longer need to zoom out or tap the advance arrow.
    • Climb viewer progress: the rider's progress along the climb is now calculated on the real sampled length.

    New

    • Customizable beacon (Global 3D): choose its size (small, medium or large), shape (circle, diamond or arrow) and color. Options are in the 3D tab of the control panel.
    • Your own gearing: enter your chainring teeth (e.g. 50,34) and your cassette sprockets. The recommended gear (⚙ 50x21) only suggests combinations that exist on your bike.
    • Gear recommendation per climb: in the climb viewer you now get a single "Rec. ⚙ 34x28" for the whole climb, based on its average gradient.
    • Bigger gear badge: the gear indicator is larger and better placed. It sits above the "Each block = X m" label in portrait. In landscape it sits between that label and the advance arrow.
    • New KGhost cyclist icon: a redesigned road-cyclist silhouette in white with a thin dark outline. Your own cyclist is red with a red outline. The arrow between riders is shorter and slimmer.
    • New defaults for fresh installs: TV profile rotated 90° on, climbs highlighted on the route on. Training zone bar, isometric radar, remaining energy bar and Strava Live 3D segments are off. Existing settings are kept.

    Changed

    • Voice copilot: the voice option has been removed. It now uses the system voice. On Karoo that means a single female voice, because the device only ships with Pico TTS.

    How to update
    Download the APK from the release page: https://github.com/DAVOE75/AltGraph/releases/tag/v2.8.0

    If you installed a debug build before, uninstall it first, since the signatures differ.

    Feedback and bug reports are welcome. If the beacon still looks off on your route, please tell us the zoom level and route length.

    0
    Comment actions Permalink
  • Avatar
    John Pfennings

    hi. changed some settings in the extension( after last update but have it since first version) had it before but at some point choosing profile gets stuck. is this something anyone else sees( i know tim from routegraph extension also experienced this ) previously got it working again by restarting the unit. bu now did not succeed yet. is it possible you look at this? only other option is the extension for topomaps i use where you can switch between different mapstyles.

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    In the latest update. I uploaded a 1.75km lap test just outside my house to do and the bacon places me at the very end of it. Fair enough I have not started the lap yet so that's understandable. However, I think if it thinks I am ending the lap/route/ride then after finish flag it should not show me anything else and ideally the finish flag should be at the end of the graph with the historical ridden route behind, in this case the almost 200m behind where the bacon is (if that makes sense).

     

    https://ibb.co/hF43GQgP

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Hi John, thanks for the report, and sorry about the trouble. I've seen it myself a few times, mostly after changing profile or data field settings. I can't reproduce it reliably yet, and I haven't found a crash or ANR from ALTGRAPH in the logs. The APK is small (about 11 MB) and uses about 130 MB of RAM, similar to the Karoo's own ride app. Karoo also has little free memory, so a profile with several heavy fields loading at once can make it slow.

    Things to try, in order:

    1. Wait 10–20 seconds after selecting the profile. Several ALTGRAPH fields load at the same time.
    2. Reduce the load: use fewer ALTGRAPH fields on one page. The 3D view and Climb Viewer are the heaviest.
    3. Restart the Karoo (hold the power button).
    4. Force-stop and clear the extension: Settings → Apps → ALTGRAPH → Force stop. Then reopen the profile.
    5. If it's still stuck, disable ALTGRAPH under Settings → Extensions, restart, pick the profile, then re-enable it.
    6. Check whether it's ALTGRAPH: if the profile also hangs with ALTGRAPH disabled or uninstalled, the cause is something else (Karoo firmware, or another extension).

    To help me find the cause, please tell me:

    • Your Karoo model (K2 or Karoo 3) and firmware version.
    • Which ALTGRAPH fields are in the profile.
    • Which setting you changed just before it started.
    • Whether it happens with other extensions disabled.

    If you can connect the Karoo to a PC over USB while it's stuck, run adb logcat -d > log.txt before restarting and send me the file. That's the best way for me to see what hangs.

    I'm also working on reducing ALTGRAPH's startup load for the next build.

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Thanks again for the report. v2.8.1 is out and fixes this: the profile now stops at the end of the route, so nothing is drawn after the finish, and the part you've already ridden stays behind the beacon. I also added a bigger checkered finish flag at the end of the graph.

    If you installed 2.8.1 earlier today, please uninstall and reinstall it to get the final build.

    Download: https://github.com/DAVOE75/ALTGRAPH/releases/tag/v2.8.1

    0
    Comment actions Permalink
  • Avatar
    David Garcia

    Great stuff. Really getting there.

    Ridden route not staying out for me. Not sure if this may be because I started almost at the end?

    https://ibb.co/qLYxFtsF

    0
    Comment actions Permalink
  • Avatar
    HesiOX

    Thanks! The 3D view doesn't hide the part already ridden: it shows a fixed page of the route and the beacon moves through it, and it's at 80 % here because you started near the end. I'll look into dimming/hiding the ridden section in a future update

     

    0
    Comment actions Permalink

Please sign in to leave a comment.