nisargjhaveri / WirelessAndroidAutoDongle

Use Wireless Android Auto with a car that supports only wired Android Auto using a Raspberry Pi.
MIT License
318 stars 42 forks source link
android-auto android-automotive headunit wireless-android-auto

Wireless Android Auto Dongle

Use Wireless Android Auto with a car that supports only wired Android Auto using a Raspberry Pi.

This repository consists of the buildroot setup to generate an sd card image to create your own Wireless Android Auto Dongle.

Features

Supported Hardware

This is currently tested and built for multiple Raspberry Pi boards supporting USB OTG.

The setup should technically work on any devices with these basic requirements (albeit, with some modifications).

Install and run

Download a pre-built sd card image or build one as described below. Install the image on the SD card using your favorite tool.

You may want to update the country_code in the /etc/hostapd.conf file.

First-time connection

Subsequent connections

From the next time, it should automatically connect to the phone and start Android Auto.

Make sure your Bluetooth and Wifi are enabled on the phone.

Troubleshoot

Once you've already tried multiple times and it still does not work, you can ssh into the device and try to get some logs.

Build

Clone

$ git clone --recurse-submodules https://github.com/nisargjhaveri/WirelessAndroidAutoDongle

Build with Docker

$ docker compose run --rm rpi4 # See docker-compose.yml for available options.

You can use rpi0w, rpi02w, rpi3a or rpi4 to build and generate an sdcard image. Once the build is successful, it'll copy the generated sdcard image in images/ directory.

You can also use the bash service for more control over the build process and experimentation.

$ docker compose run --rm bash

Build with manual setup

Once you have a recursive clone, you can manually build using the following set of commands.

$ cd buildroot
$ make BR2_EXTERNAL=../aa_wireless_dongle/ O=output/rpi0w raspberrypi0w_defconfig # Change output and defconfig for your board
$ cd output/rpi0w
$ make

When successful, this should generate the sd card image at images/sdcard.img in your output directory. See the "Install and Run" instructions above to use this image.

Use one of the following defconfig for the board you intend to use:

Limitations