• Stars
    star
    146
  • Rank 252,769 (Top 5 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 3 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Node Carplay

Carplay dongle driver for Node.js & Browser

Join us on Slack

https://join.slack.com/t/automotive-pis/shared_invite/zt-27n3manj4-v0Q35NWPyHUAtrHl7sScjQ

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License

About The Project

Node Carplay in Chrome

Example Video (outdated)

This repository contains the npm package node-carplay that can be used on the Web or in Node.js. It allows interfacing with the Carlinkit USB adapter and stream audio/video on your computer. The package can be used in the Node.js environment using native USB bindings (libudev-dev required), or in Chrome (or equivalent browsers) using WebUSB API.

There are multiple Carplay dongles on the market, the ones that convert wired to wireless carplay WILL NOT WORK. You need one that converts android/factory infotainment systems into Carplay (CPC200-Autokit or CPC200-CCPA etc). The package forwards video feed in h264, and PCM audio coming in from the USB dongle.

There's an included example carplay-web-app that runs in the browser and renders the Carplay environment. It supports mic input and audio output through Chrome audio stack as well as touch / mouse input.

Acknowledgements

This project is inspired by the work of @electric-monk on the Python version.

Getting Started

Prerequisites

If you are on macOS and want to use the microphone in node environment, you need sox

brew install sox

If you are on Linux, you need libudev-dev for USB support in node environment

sudo apt install -y libudev-dev

Installation

npm install node-carplay

Usage

There is an included example (not in the NPM package, but in the Git repository). It is recommended to take the example and modify your way out of it.

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

The contents of this repository are licensed under the terms of the MIT License. See the LICENSE file for more info.