# carlinkit-cxx: Linux receiver for Carlinkit Auto Box USB messages

> carlinkit-cxx implements a Linux host for Carlinkit Auto Box USB dongles using their framed bulk-message protocol. It receives CarPlay or Android Auto H.264 video and PCM audio, sends touch input and displays decoded video through VAAPI, V4L2 or software paths.

- Type: Case study
- Targets: Protocol
- Category: Independent reconstruction cases
- Relationship: Independent reconstruction project
- Sources reviewed: 2026-11-06
- Added to the catalog: 2026-11-08
- Original resource: <https://github.com/jwinarske/carlinkit-cxx>
- Primary source: <https://github.com/jwinarske/carlinkit-cxx/blob/28282e20042c7610a254793c545285ec9392d8bc/README.md>
- Catalog page: <https://awesomerea.org/resources/carlinkit-cxx-case/>
- Record JSON: <https://awesomerea.org/resources/carlinkit-cxx-case/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/carlinkit-cxx-case/index.md)

## Requirements & limits

- **Prerequisites:** Carlinkit Auto Box USB dongle with ID 1314:1520 or 1314:1521 and Linux.
- **Prerequisites:** CMake, Meson, a C++17 compiler, libusb and the documented media/display dependencies.
- **Limits:** A software-only decoder build is available; some display targets require drm-cxx and further libraries.
- **License:** Apache-2.0 licence.

## Primary sources

1. <https://github.com/jwinarske/carlinkit-cxx/blob/28282e20042c7610a254793c545285ec9392d8bc/README.md>
2. <https://github.com/jwinarske/carlinkit-cxx/blob/28282e20042c7610a254793c545285ec9392d8bc/docs/ARCHITECTURE.md>
3. <https://github.com/jwinarske/carlinkit-cxx/blob/28282e20042c7610a254793c545285ec9392d8bc/src/protocol.h>

## More in Protocols

- [mchose-linux: MCHOSE HID settings protocol and Linux client](https://awesomerea.org/resources/mchose-hid-linux-case/index.md) · Case study
- [K1C CFS without official Creality firmware: CFS protocol client and Klipper integration](https://awesomerea.org/resources/k1c-cfs-klipper-case/index.md) · Case study
- [Open TechEd: reconstructing NanoDrop 1000 USB control](https://awesomerea.org/resources/open-teched-nanodrop-case/index.md) · Case study
- [douze: SSL 12 USB control protocol and Linux client](https://awesomerea.org/resources/douze-case/index.md) · Case study
- [Osmotic: a Mac client for DJI Osmo camera protocols](https://awesomerea.org/resources/osmotic-case/index.md) · Case study
- [GogglesView: receiving DJI Goggles 3 video over USB-C](https://awesomerea.org/resources/gogglesview-dji-goggles-3-case/index.md) · Case study

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
