You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+18-10Lines changed: 18 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,25 @@
1
1
# 🛸 aa-proxy-rs
2
2
3
3
## About
4
-
This is a Rust-Written proxy tool to bridge between wireless android phone and a USB-wired car head unit for using Google's Android Auto.
4
+
This is a Rust-Written proxy tool to bridge between wireless Android phone and a USB-wired car head unit for using Google's Android Auto.
5
5
Currently it is intended to run as a more-or-less drop-in replacement of the `aawgd` from the [WirelessAndroidAutoDongle](https://github.com/nisargjhaveri/WirelessAndroidAutoDongle) project.
6
6
7
+
## Features
8
+
- written in [Rust](https://www.rust-lang.org/): reliable code and minimized all memory related issues and bugs
9
+
- fast: main IO loop is using modern [io_uring](https://kernel.dk/io_uring.pdf) kernel API
10
+
- reconnecting: trying to reconnect/recover AndroidAuto connection in any possible case
11
+
- bandwidth/transfer statistics
12
+
- stall transfer detection
13
+
14
+
## Current project status
15
+
Now after a lot of stress-testing and coding I think the project has matured enough, that I can say that the main stability goal was reached.
16
+
I am using this project almost daily in my car and trying to get rid of all issues I may encounter.
17
+
18
+
## SD card images
19
+
I am using Nisarg's RaspberryPi images from [WirelessAndroidAutoDongle](https://github.com/nisargjhaveri/WirelessAndroidAutoDongle) project and replacing `aawgd` with `aa-proxy-rs`.<br>
20
+
Those images are available on the [Release page](https://github.com/manio/aa-proxy-rs/releases).<br>
21
+
You can also find there a pure `aa-proxy-rs` binary which you can install manually (read below: [Installing into target](#installing-into-target)).
22
+
7
23
## History and motivation
8
24
There are a lot of commercial solutions like AAWireless or Motorola MA1. I even bought a clone of those on AliExpress, but it ended up not working in my car (passed to my friend which has a compatible car for this).
9
25
@@ -29,16 +45,8 @@ I was also trying to call read/writes in tokio tasks, but finally I decided to u
29
45
And this finally worked perfectly fine (and also really efficient as a bonus).
30
46
31
47
## Limitations
32
-
Currently only the default "connection strategy" is supported. I don't have a clue if and when I add the other ones. Time will tell.
48
+
Currently only the default "connection strategy" is supported.
33
49
My time resources are limited, so don't expect to prompt answers and ETAs on different requests. I am doing this as a hobby in my spare time.
34
-
I've tested this only with my own `Raspberry Pi Zero 2 W` and my specific car head unit (old Renault R-Link).
35
-
Config parameters from `/etc/aawgd.env` are not (yet?) supported.
36
-
37
-
## Current stage and plans
38
-
This project is on early stage of development:
39
-
~~The tool is currently working fine for me from Raspberry Pi boot up to initial phone connection. It is then working stable until the phone goes out of range.
40
-
There is left a lot of work to make it more stable and reliable, especially I am planning to add reconnecting/recovering code where it is applicable.~~<br>
41
-
UPDATE: reconnecting code is now in place and working quite nice! :)
0 commit comments