• Amazon.com
  • Competitive Cyclist
  • The Pro's Closet

How to Sideload Android Apps On Your Hammerhead Karoo 1 & Karoo 2


Without hesitation or question, my favorite feature of the Hammerhead Karoo series (such as the newer Karoo 2) is the ability to record the screen – allowing me to show you exactly what I’m seeing. It enables me to get a crystal clear recording of things in real-time, even letting me merge it with GoPro footage to make explainer ride-along videos like this. It’s awesome, and I’d basically trade any other feature on a Wahoo or Garmin GPS to get that functionality there too.

However, while screen recording functionality isn’t really something most of you care about. Myself and a few other reviewers – sure. But not most of you. But the way I do it is applicable to more of you, as it’s ultimately just loading Android apps on the Karoo 2. That’s because the Karoo series bike computer (1 and 2) are simply Android devices. Sure, you don’t really see it in any overtly obvious way for most people.

With the Karoo 2 shipments going out full speed now, I’ve seen more and more questions on how I sideload apps. Up until this point, I’ve just been pointing people at my Peloton sideloading apps instructions, but I figured I’d write something more specific here.

Note that sideloading apps means that you can load something like the Zwift Companion app, or TrainerRoad, or any other Android app you can think of. Heck, TikTok I suppose. Whether or not there’s any actual non-gee value in doing so will depend on your requirements. To each your own, I won’t judge you….too much. You do you!

If you’re tech savvy, the overall install process is pretty easy – about 10 mins for the first app you load, and about 2-3 mins for each additional app. If you’re familiar with sideloading Android apps, then it’s trivial. Whereas if you come from the iOS world, you’ll probably scratch your head a few times but keep on chuggin’. To my knowledge, there is nothing here that ‘voids’ your Karoo warranty per se (at worst you simply reset your screen to defaults).

The Foundational Bits:


Estimated Time: 5-10 mins

These first steps are required no matter what app you’re installing. And realistically this would be the same whether it was Zwift Companion App, TrainerRoad, or Netflix. Note that there are numerous ways to slice the Android onion. For example, you could add a new loader instead, and then switch back and forth, but frankly I just find that too much juggling. I just want the darn app available right next to other Karoo features.

Note: I’m writing these instructions using a PC because I’m mostly a PC guy. But a DCR Reader also sent-in Mac instructions after the fact, which I’ve included concurrently down below.

1A) Karoo 1 Units: You need a micro-USB cable, specifically one that supports data. Most support data, but not all. If you happen to have had a Garmin bike computer prior, it’ll actually say ‘GARMIN’ on the cable, and that’s a way to know 100% it supports data. There isn’t any great way of knowing if your cable is a data one, or charge-only. If it’s charge-only, then the computer will only charge it, but can’t access data.

1B) Karoo 2 Units: You’ll need a USB-C cable, which, is what came with your Karoo 2. That’s a great cable to use. If you have a computer with only USB-C ports though, you’ll by now have noticed the Karoo 2 cable only has USB-C at one end. Thus, you’ll either need a USB-C to USB-C cable, or a USB-C dongle. Likely though, if you’ve got a computer with only USB-C ports, you’ve probably already bought a USB-C dongle a long time ago.

2) Next, turn on developer mode on the Karoo:

A) Power on the Karoo
B) Swipe to ‘Settings’ in the lower bar, then all the way down to ‘About’, and then tap the ‘Build Number’ box repeatedly until it says you’re a Developer
C) If you press back once, you should see ‘Developer Options’ showing now, tap to open the ‘Developer Options’


D) Scroll down to ‘USB debugging’ and enable that, this is basically how you get apps on your Karoo.


(Note: For Step 3, I’ve split it out into PC & Mac Instructions – all other steps are the same, scroll down slightly for the Step 3 Mac instructions. Thanks for a DCR Reader for sending in the Mac instructions)

3) PC Instructions: Next, we need to install the Android Developer tools on your Windows computer. Select the option that says ‘Download SDK Platform-tools for Windows’. To ‘install’ them, you’re basically just copying the contents to a folder. In my case, to keep things simple, I’ve created a folder called ‘Android’ on my computer:


(Note: It may unzip into a folder called ‘Platform-Tools’, that’s fine. I just put everything into the Android folder for simplicity here. Also, as you’ll see in a second, I created a folder calls ‘Apps’ inside it, where I stash all my apps.)

3) Mac Instructions: Next, we need to install the Android Developer Tools. Download the tools from here and select the download for Mac.  By default, this will download to you Downloads folder. To ‘install’ them, you’re basically just copying the contents to a folder. In my case, to keep things simple, I’ve created a folder called ‘Android’ on my computer.


After double-clicking on the downloaded zip file, the platform-tools directory is created in the same location.  In the platform-tools directory, you can see the adb (Android Debug Bridge), which is used to side-load the applications.  The below diagram shows the resulting expanded zip file which created the platform-tools directory.


You will be accessing the adb utility from the command line.  You must either run adb by pathing to it directly or by adding it to your path.  We’ll assume you can add it to your path if you are inclined to that option.  We’ll show the direct pathing option in this example.

The screen-shot below shows that we have navigated to the platform-tools directory that we created in the above steps.  We run ./adb devices from that location and see the serial number of the attached Karoo 2.  Several fields have been blocked out to obscure personal information.


Now that we have shown adb is able to see Karoo 2, continue with the instructions.  When calling the adb tool (assuming you didn’t add it to your path) remember to use the linux ./adb form to run the utility.

4) Now, plug your Karoo into your computer using that USB cable. By default it won’t actually show as a USB drive or such on your computer. That’s OK, and isn’t needed for loading apps. But I kinda like it for other purposes (like getting my screen recordings). So, in case you want it to show up, simply go back to the Developer Options, and scroll-down a ton until you find ‘Select USB Configuration’, and change it to MTP (Media Transfer Protocol):


You should now see your Karoo up on your computer. It’ll simply be named k2. Note that I’ve noticed that for whatever reason, this setting doesn’t seem to save each time I power off the Karoo 2 (whereas it does save on some of my other Android devices). I’m sure some Android person could tell me why this is. Just an FYI for next time.


5) Now, open up a Command Prompt, and get to the same directory as where you installed all these files. In my case, that’s the Android folder on my C: drive (for Mac people, you’ll type: ./adb devices instead)

Then once there type: adb.exe devices


6) You’ll get a prompt on your Karoo to authorize that request from your computer, press to accept (and probably check that box to make your life easier in the future).


7) Now, for PC people type the command again: adb.exe devices

For Mac people, type: ./adb devices

You’ll see this time it shows a device returned (KAROO20ALA091100544), which simply means it successfully connected to my Karoo.


Ok, with these steps done we’re ready to install *ANY* app you want. In other words, you accomplished the hard part. Now it’s easy from here on out!

Example App Install:

Estimated time: 5-10 minutes

I’m going to use the Zwift Companion App here, just because it looks pretty. Practically speaking, doing TrainerRoad is probably more useful (but, I documented how to do that already in my Peloton side-loading post). I’ll warn you that while the Zwift Companion app works just fine, I personally find it a bit small on the Karoo 2, especially for some of the navigational bits. But that’s besides the point, the process is *EXACTLY* the same no matter which app you use.

The way ‘side-loading’ works is that Android apps come in an APK file, which is basically a self-contained file that includes the entire apps. Mostly (there are some exceptions, such as the full Zwift install – but I also cover that in my Peloton bike post too, in the Zwift section). No matter the app, you need to get the self-contained APK file. That’s because the Karoo doesn’t simply have the Google Play store installed, we’ll need to use 3rd party sites to download these same APK files. Sometimes companies will also make them available easily too.

In the case of the Zwift Companion App, the APK file is available from PureAPK. It shows the most recent/current Android version from December 29th, 2020 (the most recent version as of this writing).

(Note: Anytime you download an app from a 3rd party service, you risk a scenario where the 3rd party app is compromised. That’s a pretty darn low chance here, but just want to be aware of that.)


Now, download that APK file into that Android folder. I created an ‘Apps’ folder to make my life more organized, but you don’t need to.


Ok, back to your command prompt and type the below and press enter:

adb.exe install “AppsZwift Companion_v3.21.0_apkpure.com.apk”

(Pro Tip: Just type: Adb install appsZwift and then hit tab, it’ll do the rest for you.)


It’ll come back with ‘Success’ a few seconds later.

Now, back on your Karoo simply swipe along the bottom and you’ll notice you’ll now have an extra ‘dot’, showing the Zwift Companion App installed. To state the obvious, tap it to open the app:


And here it is, opened up, ready to use:


Once you’ve signed in you’re ready to use it just like normal:


Note that for the Zwift Companion app specifically, the Dashboard/Zwifters/Messages pages tend to work best, whereas the map page is a bit more funky because of the small screen size. It works, but your metrics sorta overlay atop 2/3rds the map.

DSC_2656 DSC_2654

If you want to use Bluetooth sensors from the Zwift Companion app, then you’ll get a pop-up requiring you grant the location permissions. This is due to a weird quirk in how Android grants permission to the Bluetooth stack:


(Note: While the Karoo does support pairing to ANT+ sensors, the underlying Zwift Companion app doesn’t support ANT+ sensor bridging, unfortunately.)

With that, you’re ready to roll!

Also, for some apps, you may need to manually grant permission to use sensors (like Bluetooth or ANT+), storage, or location (via GPS). Most apps will pop-up and ask you to approve, but some apps like the full Zwift install will fail if you don’t manually approve them (in my experience). You can always manually approve apps by going to Settings > Apps > [Then your app] > Permissions, and you can give it whichever permissions it needs:


In my experience, the two most common ones are:

A) Location: Used for GPS and Bluetooth sensors
B) Storage: Used for writing to the file system

But I’ve also seen the quirky camera permission come up here and there, when an app may use that for taking screenshots. Go forth and enjoy!

Oh, and if you need to get out out of the app, simply hit the lower-left button (back), which gets you back to the Karoo screen. Remember just like on your phone, this app is still running in the background though. But, this does allow you to switch back and forth between apps.



Now before we wrap-up, I’d be remiss if I didn’t note that since Hammerhead’s first Karoo announcement, a core tenet of why they’ve developed on Android was to try and get 3rd party apps to develop for the Karoo more natively. By using Android as the base, it would require minimal effort compared to developing an app for Connect IQ on Garmin (for example). If an app were to become natively compatible, you wouldn’t need to mess with any of this. It’d just likely show up on your Karoo unit without all the fuss – just like apps/features do on other platforms.  Hammerhead has said they expect to announce their first 3rd party app here soon, so hopefully that’ll usher more apps to consider adding compatibility. And while the Karoo 2 isn’t fundamentally that different than the Karoo 1 (they run the same software), the reality is that Hammerhead didn’t have any inventory to sell and ship for basically a year – so their market share would have been a challenge proposition to convince 3rd party companies/apps.

But I think that’s going to change over the course of 2021, and the amount of native features they have now compared to even one year ago, let alone 2-3 years ago – is vastly different. Of course, that’s all besides the point here on this geeky post.

With that – I leave you to go back and install other Android apps that have no purpose being on a bike computer, because if it’s anything a bunch of geeks do best, it’s creating solutions for problems that didn’t exist. Now, back to my screen recorder. ;)

Thanks for reading!

Found This Post Useful? Support The Site!

At the end of the day, I’m an athlete just like you looking for the most detail possible on a new purchase. These posts generally take a lot of time to put together, so if you're shopping for the Hammerhead Karoo 3 or any other accessory items, please consider using the affiliate links below! As an Amazon Associate I earn from qualifying purchases. It doesn’t cost you anything extra, but your purchases help support this website a lot. Even more, if you shop with TPC (The Pro's Closet), you'll save $40 on purchases over $200 with coupon code DCRAIN40! The Pro's Closet has been a long-time partner of the site here - including sponsoring videos like my cargo bike race, as well as just being an awesome Colorado-based company full of good humans. Check them out with the links below and the DCRAIN40 coupon!

And of course – you can always sign-up to be a DCR Supporter! That gets you an ad-free DCR, access to the DCR Quarantine Corner video series packed with behind the scenes tidbits...and it also makes you awesome. And being awesome is what it’s all about!

Post a Comment

Your email address will not be published. Required fields are marked.
If you would like a profile picture, simply register at Gravatar, which works here on DCR and across the web.

Click here to Subscribe without commenting

Add a picture



  1. Jon S

    This does look like a real advantage of using a device based on Android, offereing something that Connect IQ will never realistically be able to compete with.

    (p.s first para of Wrap-up – I think it should be a core tenet not tenant) ;)

    • Indeed, there are pros and cons to this. The big pro is flexibility to do geeky things (like my screen recording), or even practical things (like running other training apps). Or further, an easier development path for 3rd party app developers.

      The con of course (aside from getting developers onboard), is battery life is far harsher on Android relative to CIQ apps (or the Wahoo method of native integrations). Practically, with a device this size it’s not as big an issue as it is on a wearable (where we see this play-out more clearly in Wear OS vs CIQ).

      But I think it’s cool nonetheless!

      Thanks for the typo, fixed!

    • Saulius

      Step 4: MTB (?autocorrect?) Media Transfer Protocol

    • Haha…autocorrect for the…err…Win!?!

    • Chillfmm

      Wahoo Element, Elemnt Bolt and Elemnt Roam devices are also Android devices. Details here link to joshua0.dreamwidth.org and here link to joshua0.dreamwidth.org Also some info can be found in link to groups.google.com
      However, the ancient and customized Android version used, the screens and processor make the process of sideloading apps at best not optimal.

    • schmadde

      Well, Connect IQ allows you to add custom Datafields and you cannot have those with sideloading apps.

      This feature was promised back in 2017 when I pre-ordered my Karoo by Hammerhead and is still nowhere to be found :(

      I take connect IQ any day over the sideload capability although I admit both would be nice. Which is why I ended up with buying an Edge 1030 finally and will get rid of my karoo.

  2. Paul S.

    Do they have the equivalent of 3rd party ConnectIQ data fields yet? I imagine that would be straightforward for them, simply displaying the output of a small app inside a small area of the screen. I routinely use 3 data fields on my Edge 830.

  3. Pete Marshall

    I run Xert on my K1. Waiting for my K2. I expect that Xert may be one of the first of the mark with a native app as it already works well.
    OsmAndMaps is also a great addition , particularly good for off road navigation.

    • @Pete
      I suspect Xert could be first too (IDK)
      I was also going to put Xert on my K1, never quite got around to it and was thinking Xert or RwGPS.

      Were there any oddities in the process of getting Xert onto the K1 eg pairing of sensor types eg after K1 firmware updates…I’m going to give it a shot on your say so ;-)

      ty in advance @Pete, and ty Ray for the article.

    • Roy

      No issues with Xert on K2

    • Andrew

      There’s some detailed discussion (including photos) of Xert on the Karoo 2 here: link to forum.xertonline.com

      I want to hear more about how things are going with early adopters before I place an order, but I’m very interested.

  4. RL

    Great write up. Thanks! I just replaced my H1 with the H2. What is the process for keeping the installed side-loaded apps up to date when new versions are released?

  5. Tom Smulders

    Nice article. But what are interesting apps to sideload? Can you come up with some?

    • Pete Marshall

      I find the easiest way is to sideload the Amazon App Store and then use this to download, update and install apps directly There are the occasional app not on Amazon but if you install Opera mini you can download from other places just search in Google.
      Some have sideloaded the Google play store and Google services but it’s a bit of a pain to do. It does mean there are some apps that won’t work as they require Google play services.

    • Nigel P,

      Yup installing Google Play store and Google services requires root access, and that gets complicated. I sideloaded the APK Pure app, not sure I’m ready for root access just yet!

    • Geeceee

      I’m going to try Spotify and connect the K2 to my Aftershokz headphones.

      Should be plenty of space to download songs, and I should be able to get my Varia radar alerts nice and load that way too.

    • Tom Smulders

      I don’t understand to get that on my Karoo, when my phone works fine… Any good reasons?

    • Geeceee

      Should be able to hear the Varia better, also easier to control the music – skip tracks etc.

      Can also leave my phone at home, think of the w/kg benefit. ;)

  6. TheStansMonster

    Huh – I’ve been wondering and hoping if/when Garmin would add Zwift control (through IQ) or Wahoo would natively, that would be a pretty big convenience add. I had never considered a Karoo, but I may now.

    • I agree, there’s definitely some good potential there – especially on the touchscreen devices like an Edge 1030 or so. So much potential for a sweat-friendly app.

      I think part of that gap is that frankly, Zwift doesn’t really have a great integrations lead/department. Meaning, there’s no team of people that are responsible (as their only thing in life) for working with 3rd party companies/devices on integrations with Zwift. There’s a few people within Zwift that adhoc handle that (such as steering), but those are one of many things on their plates.

      It’s a shame.

  7. Eduardo

    Phone! Would it be possible to sideload a phone application and use the Karoo to, you know, call people or emergency services?

  8. Roy

    Performing Streamed Install
    adb.exe: filename doesn’t end .apk or .apex: apps \Zwift
    It does end with apk

    Any ideas

  9. Roy

    Update – Success
    Downloaded apk from [Aptoid]

  10. OS

    Perfec timing! Just as Googled this very topic :) Thanks for the detailed article!

    • Roy

      Just rename the file when downloading from apkpure to say “Zwift” without “. That did the trick for me in the end. That other website installed a different app even though it was named Zwift, so I just uninstalled it.

    • Geeceee

      Yeah Aptoide seems super-dodgy! It installs itself rather than whatever app you think you’ve downloaded.

  11. David R

    Someone must’ve tried to sideload Garmin Connect … just because! :-)

  12. Richard Perriss

    If you sideload a mapping app, for example, how would you run it together with the normal data screens? I presume it won’t show up as a data page.
    Also, re battery life. I have found the battery life on the K2 is not great – seems to run down at about 15% per hour (sometimes more when cold), about twice that of the K1. I think it will struggle to go beyond 5-6 hour rides.

  13. Gareth

    I was able to load Spotify, MyFitnessPal, RGT Android App (although it thinks I’m not Premium on the Karoo – I think it’s a cookie issue – will figure it out). I am going to try to get Signal running as a backup messenger.

    It looks like Strava needs Google Services. If anyone can get it to run please post here.

    • Pete Marshall

      Is your usual RGT on ios? A problem with RGT is even with the same account it only works on one OS at a time. Very silly and one of the reasons I stopped using them

    • Gareth

      No I’m on Android. I’m able to login with my credentials but it isn’t premium. (I’m still in the 14 day trial – loving it – so maybe once the real membership kicks in it will work). My phone is fine too but it would be nice to use the mount and the K2 on the trainer.

      I checked and I also was able to sideload the SRAM AXS app.

    • D.Shredd

      Gareth – have you tried side loading the new standalone RGT app on the K2? I got it working but am thinking that since it only seems to run in landscape mode it may not work for me as it doesn’t fit the in the handlebar mount this way.

  14. Tsachi

    If you are afraid of using third party web sites to get apk files, there is a way to get it from your phone or tablet if they’re android. It’s not 100% straightforward, since apps are stored with weird names, but it’s possible to use ADB pull without root access

  15. Does this mean that you could install Google home and then cast this screen onto your TV or onto a projector?

  16. Alan Lake

    Ray, a very interesting post. Thanks.

    I am IOS and MacOS exclusively. Has anyone done this through an OS? If so, could you post the instructions? Grateful to anyone who has the knowledge as I’m a complete newbie on anything development wise. Cheers. Alan

    • Pete Marshall

      It’s exactly the same on a Mac except you need a Terminal window up on the Mac rather than the command prompt on Windows.

    • Chris

      I just installed TrainerRoad on my Karoo from my Mac. It’s very similar to what you need to do on Windows.
      Here is how I did it
      – Open a terminal and go to the platform-tools folder in the Android sdk directory (for me it was in /Users/chris/Library/Android/sdk/platform-tools)
      – Then connect to the device by typing ./adb devices
      -Finally install the APK just type ./adb install /Users/chris/Library/Android/apps/TrainerRoad_v2020.3.0.92026_apkpure.com.apk

    • The Hammerhead folks sent over an addendum of steps for the MacOS side of the house for the extra/different steps there. I’ll get it consolidated into the main post tomorrow.

      But Chris basically outlined the core of it.


    • Alan Lake

      Pete, Chris &, Ray, you’re top guys. Many thanks for your replies. Just dandy!

    • Daz Rhodes

      For iMac follow PDF attached. Follow DCRainmakers instruction to place K2 into developer mode first then follow PDF instructions. Tried to make it simplest worked for me.

    • Daz Rhodes

      Guess PDF don’t upload. Try this screen shot

  17. Hermanni

    >If you want to use Bluetooth sensors from the Zwift Companion app, then you’ll get a pop-up requiring you grant the location permissions

    This is actually not a bug or something. Bluetooth access _allows_ your location to be tracked via bluetooth beacons – this is why you need to accept location permission. Of course it requires there to be some actual beacons around, but once you’ve enabled the access to bluetooth, the cat’s out of the bag in a way.

    • True, though ironically, untrue. That’s because using LightBlue or such, you can already sniff the phone and track it without that being toggled on. So really, the Bluetooth sensor bit is simply negotiation being allowed by *that app(. So in some ways, it’s actually implying the opposite – it’s allowing you to track others. ;)

      But, it’s a great example of a poorly worded permission UI.

  18. Goodman

    Great Work! How do deinstall apps? For example I tried Strava. Don’t work. Now I wantto delete it on my Karoo 1. Komoot works well!

    • Pete Marshall

      See photos
      Go to your launcher. If you didn’t install an alternative launcher do so. I recommend Nova
      Select apps
      Select the app you want to uninstall.

    • Pete Marshall

      You can also find apps in the k’s own settings and delete there.

    • Bernie Pottrell

      Or you can simply long press the app icon and a trash bin icon appears next to the upper right hand button. Just simply touch that icon, or press the button, et voila, app is gone. Photo is a Karoo 1 but I’d hazard a guess its the same on a Karoo 2.

  19. David W

    Anyone tried loading TrailForks? That would useful for MTB.

    • Pete Marshall

      I think Trailforks requires Google play services so you may have to install those first. This means rooting the device and I’m not brave enough for that ?
      Any one manages to do it please post instructions as Trailforks would be cracking. I’m hoping Hammerhead themselves integrate with Trailforks as it’s been requested quite a bit

  20. carlos andres rubirosa

    My Karoo 2 wont get recognize on my mac

    • Quick troubleshooting things:

      1) Are you using the cable that came with Karoo? And if on a USB-C only Mac, with a dongle, have you tested that dongle (or other cable) to work with other data devices?

      2) When you plug it in, does your Mac ding or make any sounds?

      3) Within the USB modes, have you tried toggling it to MTP?

    • Carlos

      I got it to work, had to use parallel to install windows on my Mac and do it that way.

  21. Giulio

    Hello and thanks for this excellent guide.
    How can I possibly uninstall some previously installed applications?
    Which command to use?
    Thank you

  22. Rick

    There are warnings about “bricking” the device.
    What is the actual risk and what are the areas where gret care should be taken.
    I “soft bricked” my K1, requiring a factory reset after having the SETTINGS app disappear on my first attempt to load adb and was put off after that.
    One problem with community based support is that folks with crashes move on and disappear from the discussion. Could be solved by an App Store with vetted processes, but HH has seen that as a task to avoid since inception, saying perennially that it is “on the roadmap”. No doubt it is a bigger task than they have the staff to support.
    Also Karoousers.org has an area of the forum devoted to this.
    Thanks again to Ray!

    • Pete Marshall

      Not sure how you would brick the device by sideloading. You could if you start rooting it to install google services so caution.
      With sideloading the worst is usually freezing and turning off and on again deals. If you manage to do something worse then resetting the device does the business and once you are signed in everything back although you will have to repair sensor.
      I think they may be a little on the small side to develop their own app store so sideloading will always be a useful option. I hope that some of the most popular apps, Komoot, Xert may be developed directly for the Karoo so they could just come as native.

  23. Thomas Schweighofer

    Thanks for this introduction.

    I was wondering about 2 things.

    Nr1. How can somebody install the Google Play Store on it?
    I tried with the apk as above, but that didnt work as planned, it got installed, but it was not usable.

    Nr2. When installing Spotify, i was hoping i could listen to Spotify since this device has speaker, doesnt it?
    Any chance to have Spotify working on it and having music from my handlebars?

    Thanks, Thomas

    • Thomas Schweighofer

      BTW I have another urgent need for help!

      The KAROO Companion APP from PlayStore is NOT working on my smartphone.

      I have tried 4 different Android Smartphones now, none of which can run the app.

      The app when clicking it, just prompts a black screen and then is gone again, there is no chance to open the official app, its not working.

      Any clue about this? Do you have the same? Its a shame i cant use my phone with it.

      Any information warmly welcome.

      Thanks, Thomas

    • Pete Marshall

      To install Google play services you have to root the device. I’m not into that but there are some instructions on the users forum
      link to karoousers.org
      You need BT headphones or speakers for Spotify (and TBT instructions). The speaker in the K2 doesn’t do music.

  24. Michel

    Hi Ray,

    Thanks for this article, I am just testing on my new K2.
    What screen recorder App are you using?

  25. Anthony DeLorenzo

    So could you sideload the Skydio app and control the drone? That would be pretty rad.

  26. Phil

    Hi, first of all, thank you so much for all your interesting reviews! They have helped me a great deal to decide between choices on various occasions!

    Has anybody managed to get RGT to run on K1?
    As far as I know, it does not prove a problem on K2, whereas on K1 it stops working after starting the app.

    Is my assumption right that K1 still uses Android 6 in comparison to Android 8 on K2?

    I’d really like to use Karoo on my Trainer :)

  27. Alden Basmajian

    Thanks for all this. I tried following this in order to sideload the full Zwift app but I couldn’t get it to work. Any thoughts or extra directions? I got to a point where I had “performing streamed install” but never saw the “success” come through. Thanks for the help


  28. Wolf

    How do I install apps with the ending “.xapk”
    Thank you

    • tricki

      I have Locus Maps Pro sideloaded now (via installing Amazon App Store). Makes the Karoo 2 a really good unit for hiking (OS maps, IGN and other official maps available).

      Also installed Chrome and Komoot via APKpure. Polar Beat will not run as it required the google maps library, otherwise we may have had a new Polar bike computer.

  29. Ty

    I am about an hour into this and can’t seem to get past step # 5… I can open the command prompt but cant get anything to get me to the devices spot on the command prompt. I am two computers in and have no idea what the hell I am doing wrong. I have the files saved under Windows -SSD (C:) but cannot even get to the point where it finds it? any help would be appreciated

  30. Ty

    Thanks Thomas, it just won’t work for me as I keep getting computer errors. I am sure if I could pass this step it would be nice. Now to find someone ho knows how I get past my command prompt errors

  31. Ty

    Thank you all for your help, Ray thanks for the article, with googles help I figured out the problem on my computer and then it all worked so smoothly. This is amazing!!!

  32. Carrie

    Got TrainerRoad loaded on my Karoo 2. How do I execute a TR workout outdoors on the K2? When I select perform workout outdoors, it looks like all I can do is read the workout and when I select to do it indoors, I cannot pair my bike power meter to the app.

  33. Daniel Ellsworth

    Nice writeup. I was an original karoo1 early adopter and also for karoo2. I’ve had no trouble sideloading apps.

    With the K1 I used nova launcher and it put a little side menubar on the screen. I could click to enter the ride or click to enter another app. I used OSMAnd frequently since back then the mapping was pretty bad on the K1.

    My issue is….

    I use a dyno and the K2 doesn’t seem to charge with it. K1 did great.

    I installed ampere to check that the dyno was charging my phone. It does. Averaging about 650 mA.

    So I installed ampere to see what it did with the K2. But I can’t launch ride and then launch ampere to see what’s going on with the charging. That nice little side menubar that appeared with the K1 doesn’t with the K2. Do you have any idea how to switch between apps when a ride is running? I’m trying to find out how much mA draw when ride is running. And therefore see if it pulls so much my dyno can’t overcome the drain. Or if K2 can’t be charged at all while running.

    You wouldn’t happen to have any ideas about the K2 not apparently charging would you?


    • Yeah, charging the K2 can be finicky. I talk about it in my review a bit, but in short, it doesn’t always charge from certain USB-C cables and devices.

      I’ve found that it will consistently charge from their specific cable, but others are a complete crapshoot (even ones I power everything else with).

    • Daniel Ellsworth

      Thanks. I’ve been using their cable. On my bike dynamo also.

      Last night it was very strange. I had done a factory reset and was plugged into a wall USB charger. I’d configured it and tried to download my local area map. It wouldn’t let me. Like it was frozen and I realized it wasn’t charging. So I powered it off and back on. It still wouldn’t and still wasn’t charging. So disconnected the cable and I powered it off and sent of a help message to hammerhead. While I was at my desk about 5 minutes later, and it was still powered off and the cable not connected it suddenly brought up the hammerhead logo and showed the state of charge. No cable connected. I’d done nothing. So I connected the cable and booted it. Then the download worked and it started charging!

      I’m using a cycle to charge on the dynamo. Which is considered one of the better ones available.

    • David Horn

      Might be too late to post this now but the reason the Karoo 2 is temperamental about what it’ll charge from is less to do with the charger and everything to do with the cable. The cut-out around the USB-C port is smaller than average, so the contact is *only just* made when using some third-party cables.

      This is my conclusion, anyway.

  34. Howie

    The Karoo workout tile is limited in detail and there’s no trainer control via % resistance.
    Xert only has workouts by Power, not HR.

    What other apps could be sideloaded for creating and syncing custom workouts and controlling trainers? I tried Zwift and TrainerRoad but neither seemed to fit the bill.

  35. ScottG67

    So how are you able to install Spotify app on the Karoo 2? I cannot find a legit apk file on APK Pure website. I see other Spotify apk’s on other sites but not sure how legit they are and don’t want to install something that could mess up my Karoo 2. Anyone have suggestions and/or what they might have used to install Spotify? I have Amazon Music app on the Karoo 2 and it works wonderful.

  36. Xtract

    Hello! I have sideloaded OSMand, but it does not seem to get the GPS signal, it always says “Position not yet known”. Does anyone have any idea how to fix it?
    – The app has location permissions
    – I also installed satstat and it actually locks the signal very fast.

    • pedro

      Sorry I do not have any idea. I just have the exact same issue on my karoo 2. I get like 15 or so satellites, karoo gps app shows the correct position in seconds.
      I have updated osm, nothing helps.

    • Patrul

      Try to download OSM through Amazon Appstore apk

  37. LL1

    It took me 4 hours to make everything right, but now I am the happiest cyclist, thank you so much, I searced this instructions since round about a year 😊

    So thank you mate!!!

  38. Andrew Grochowski

    Hey All!

    I was able to get a couple of apps on my karoo 1 but I was wondering, would I have to reboot the unit every time I want to switch apps? Should I download a specific launcher in order to switch between apps?

  39. Jonathan D Katz

    This is a great post. Thanks. And I can say that you can now side load an app call “APKPure App” that once sideloaded to your Karoo2 can then be used to search its database of APK and XAPK files and load them from within the app to your device. I did that for TrainerRoad and GoPro Quik.

    I can now control my GoPro Hero10 via the app on Karoo2 including previews in real time. No more messing with the remote.

  40. Seth P

    Any one else trying this on a mac run into an issue where Terminal is finding both your Karoo 2 device and an emulator that shows as offline?

    KAROO20ALB022xxxxxx device
    emulator-5xxx offline

    I can not install TR bc the push install returns and error that reads:
    adb: error: failed to get feature set: more than one device/emulator

  41. Robin Samms

    Awesome stuff, installed Trailforks on my Karoo

  42. RunDunce

    Thanks for the detail – noob question:
    Has anyone managed to sideload OS Maps (UK Ordnance Survey). Only just got my K2 and not very techy, but will persevere if I know it can work.
    Also will it stay running in the background / can you close it to preserve battery life?
    (Bought K2 purely for navigation)

  43. Not sure if I’ve missed something, probably. I have a mac and have reached the part in the screenshot.
    My Karoo is not asking me to authorise anything and even if it was, I don’t see the instructions or don’t understand the steps after this for Mac.
    Great if you could help, thanks.

  44. cjazz

    Ok… So I have side loaded APKPure app…

    From here installed Zwift Companion… and all I get when I start it is the Blue Z screen…

    Has anyone else come across this? Is there a setting that I’ve not selected as part of the install?


    • Scott Sanchez

      I’m having the same problem. I had been using Zwift Companion on my Karoo2 for about 6 months without problem until last week. I was using version 3.26 of the Companion app the entire time, but last week when I opened the app is said that this version was no longer supported, so I updated to the then latest version (3.34.1). When I did this, I received the same dreaded Blue Z screen. Zwift just updated to version 3.35, but I still have the same problem (even after doing a factory reset of my Karoo2). Not sure if this is a problem with the Karoo2 after the latest software update or with the Zwift Companion app. Anyone else having this problem or have any ideas how to fix this?

    • Tim Daugherty

      I am having same problem as Scott. Tried installing prior versions of Companion App as well but get stuck on blue screen. App has been working fine for last 4 months until it prompted me to download a new version.

  45. Dennis

    Couple things:
    1. Thanks for writing this up.
    2. Mac instructions end after showing how to run the ADP.
    3. Both the Karoo firmware / android version and Zwift APK have been updated since writing this article. What I get now is Companion is just stuck on the login screen cycling a progress bar across the top and nothing happens. Anyone have any idea which version of Companion works on Karoo 2 in June 2022?

  46. Shay

    May I ask What app have you downloaded on the karoo to record the data screens?

    • No prob. I use AZ Screen Recorder. It’s just what I’ve used for years on Android devices of all types. There may be something better, but this is super reliable and I’ve never lost a screen recording.

  47. Andrew

    I’ve tried to, it will install but will not run. anyone had any luck?

  48. Awesome tutorial! As someone who has been in the iOS ecosystem for a long time, I needed a side-loading refresher. Thank you!

    This is coming from the future in Sept 2022. Zwift will no longer allow Zwift or the Companion App on deprecating operating systems.
    Anyone trying to side-load the Companion App for releases after August 1 will get an INSTALL_ERROR_OLDER_SDK error.

    I think v3.38.0 is the latest version you can install before it fails.

    • Tom

      Do you also know how to solve this issue? Just use the older APK version?

    • Alan

      So, I installed v3.38.0, which loaded onto the K2, but when you launch it it unfortunately just freezes on the loading splash screen.

      Maybe someone smarter might have a fix for this, but I ended up going low-tech and sticking a garmin mount on the back of my phone case and just using my phone.

  49. Sascha

    Lovely article and guide to make things going. I tried but failed so far, installed latest version of SDK platform tool and downloaded the latets zwift apk and here comes the problem. for the latest zwift apk the prompt tells me that the sdk platform tool is too old, it needs #28 not #27 which comes in the r33.0.3 for windows.Any idea is welcome. btw: yes, i tried older zwift apks but after signing in via Karoo it says that i have to update my zwift version…. but then i ran into the sdk platform tool issue. i cant find a newer sdk platform tool, helppppppp ;)

    • Sascha

      LOL just found out that thoroughly reading absolutely helps

    • David

      I have the same problem. I’ve read through the thread again, but can’t find a workaround. Did you?

    • Sascha

      Hi David, this is just an example how to sideload an app on the karoo. I was so focused on this to oversee its only an example how to do. I just thought the whole process is necessary to get the DI2 stuff working. But take this procedure and do it with the DI2 app. It works perfect, only for karoo 1 the DI2 app is not working …but deezer is working on karoo1 as well for example.

    • David

      Ah. I get it. So you didn’t succeed in sideloading Zwift Companion, which requires a higher version of Android than the one installed on the Karoo. But you were able to sideload other, compatible APKs.

      Bring on the Karoo App Store, I say.

  50. James S

    When I type the command prompt adb.exe devices I repeatedly receive the message ‘adb’ is not recognized as an internal or external comand, operable program or batch file. I have installed the platform tools program six ways from Sunday with no better results.

    • It sounds like your command window may not be in the same directory (folder) as where you put adb

      Make sure you change directories to that directory before trying to run it.

    • James S

      Following your example I put all the files into a folder called “Android.”

      I use the widows key +R to get to the cmd prompt. Once there i enter CD Android and then attempt the adb.exe devices. This one has me baffled.

      I’m certain that the computer recognizes the hammerhead as I can see it, open it, see how much memory it has.

    • Hmm, that’s odd. Do you have a screenshot of what it shows when you type:

      adb.exe devices

  51. Stooie

    I’ve been following the instructions, make complete sense, but when i get to the adb.exe section, my K2 does not bring up the deug popup. I’ve tries on/offs plugging in and out etc. but no luck.
    Anyone had this and could shed any light on it?

    • A couple things to validate:

      1) First, is the Karoo 2 seen as a data device? Assuming you’re using the braided cable from Hammerhead, you’ll be good there. But if you’ve got a gazillion other USB-C cables like me, be careful, because there’s a strong chance it won’t be quite the right cable type for data enumeration from the Karoo 2 specifically (USB-C specifications is a rabbit whole unto itself, but again, super strong chance it’s not compatible).

      2) If you’re not seeing it on Debug pop-up, it sounds like Developer Options mode isn’t enabled on the Karoo 2. Double-check that.

    • Stooie

      Thanks Ray! Braided cable and the debug option was on.
      However, just went through it again today and worked a charm, no idea why not before but all good now!
      Thanks for the response!

  52. Yuchen

    Hi DCrainmaker

    Thank you very much for the tutorial. However when I tried to install the newest companion app it shows the following:
    requires newer sdk version #28 (current version is #27)

    Could you please help? Thank you!

  53. Chuck

    Was wondering, could I install my hearing aid app to get Bluetooth alerts ringing in my hearing aid. Would I need to start the app every power cycle or is there a way to have it auto load ?

  54. Max Kalcic

    Hi, I’ve tried installing spotify however this is what happens:

    Performing Streamed Install
    adb: failed to stat Podcasts_8.8.74.652_Apkpure.apk: No such file or directory

    if you could help me that would be great?

  55. Scott Spees

    Is anyone using the my Q app to work their garage door opener? I’ve loaded the app but can’t get the app to log me into my my Q account.

    Thanks, Scott

  56. Marcus

    Anyone else experiencing problems with permissions denied when executing the adb.exe file?

  57. d

    none of this works. What’s then terminal Mac command? Also, this page is infected

  58. Hi DCR,

    Do you know why my Karoo2 doesn’t receive or send phone calls with the sideloaded KOLER app, whereas SMS’s are Okay with the fossify MESSAGES app. Also the data is working, as I sideloaded Whatsapp Business. I’m able to call via WA-B over data.

    It seems my Karoo ‘isn’t aware it can make phone calls over SIM’ or ‘the connection between SIM and phone app is not there’. I get no visual notification whatsoever about a incoming call…

    • Schell

      I don´t know the answer to your question instead let me ask – How is you battery life after sideloading apps? After doing so it seemed my battery was decreasing faster and I wasn´t even using the apps I sideloaded, it was more of a test thing.

    • Today I rode 130km breadcrum route with 60% screen light and the SIM sending live info to the hammerhead-site. Some messages from my phone came to the notification bar. I ended up with around 35% battery, whereas without the SIM I used to have 50+ left.

    • Robb

      I have this same exact question. SMS works great but phone calls don’t go through. It would be nice to leave the cell phone at home.

  59. Andy J

    This was useful, and for that I’m grateful. However, I am not competent using Terminal, so it took me several hours to backwards train myself. got there in the end.

    • Todd B

      Frustrating assumptions made about familiarity with Terminal. Tip of the cap to you. Not sure I’m going to pull off the same conquest.

  60. Donovan

    I really need a video example of this because for some reason I am not having luck with getting this to work. After following closely, my karoo won’t show up on my mac and also not sure how to use the app installer or where to enter the commands. I am also now using the Karoo 3 so does this forum still apply or do we need an updated version?