Pocoo iconPocooSep 5, 2026 ~2 min source read

Armin Ronacher: Latent Powers

A few weeks ago I felt like it would be fun to see if I can make one of those cheap Chinese CarPlay dongles run something other than the stock firmware. The idea was that rather than just forwarding CarPlay, why not do something more interesting with them?

Armin Ronacher: Latent Powers

Share this story

Send the public story page.

Useful takeaways from this story.

A few weeks ago I felt like it would be fun to see if I can make one of those cheap Chinese CarPlay dongles run something other than the stock firmware.

From there they deal with video and audio streams and pass some other data through.

The idea was that rather than just forwarding CarPlay, why not do something more interesting with them?

Building the complete brief

The page is ready to read now. The fuller skim-friendly version will appear here automatically.

The useful part

A few weeks ago I felt like it would be fun to see if I can make one of those cheap Chinese CarPlay dongles run something other than the stock firmware. The idea was that rather than just forwarding CarPlay, why not do something more interesting with them? They all work quite similarly: they act as bridges between your car and the phone.

How it works

  • From there they deal with video and audio streams and pass some other data through.
  • Through working with the LLM I learned about CatPlay, which is a Rust reimplementation of the CarPlay protocol that can run on Carlinkit devices.
  • Armed with a bit of knowledge about how these systems work, I managed to have some fruitful discussions with Kimi K3 and Sol and figure out how flash the device and in turn, how to make CatPlay compile for...
  • Most of them also bring up a custom UI for pairing and have a web interface that your phone can reach for updates.
  • Long story short: I had a conversation with Fable and Sol via Pi about what could be done with such a dongle or whether I should use a Raspberry Pi instead if I wanted to do my own thing there.

What to take from it

I figured it might be quite fun to run my own code while still allowing regular CarPlay to pass through. In particular, it can run on the Carlinkit Mini Ultra, which I figured would be easy enough to buy. I do have a few CarPlay adapters around, but I did not have that particular model, so I bought one on Amazon.

Example or evidence

  • I guess that hacking these USB devices is not necessarily hard, but it's laborious and you can easily end up bricking your devices.

Keep reading in the app

Open the app view to save this story, compare related coverage, and continue from the same source.

Open in app