Basically, right now comms are an airpod on a cellular call with a phone in the drivers pocket. That sucks. Reasons it sucked:
Driver had issues hearing, talking
Uses data
Dependent on cellular coverage
Dependent on phone being charging, bluetooth airpods being charged
Reasons radio sucks:
Staticy
Automatic talk radios really suck and a driver shouldnt need to push a button
Acceptance Criteria
Driver can hear and can be heard well (talk with ergonomics about helmet, test barrel jack)
Latency is within a normal call (low delay)
The data usage does not exceed 250 kbps (testable with bmon)
A non-tech savvy person could call the car
All answering, etc. is hands free for the driver
Proposed Solution
Implement a VoIP system. It works well with low bandwidth dedicated scenarios, of which we are one.
Steps I would take:
Spec out a simple VoIP client that runs on linux via docker (google)
Spec out a client that runs on ur phone (google)
Understand the audio barrel jack drivers needed for good audio and microphone (see raspberry pi 4 documentation)
Run a test of the peer to peer system and see if it is successful. If so, keep going, if not probably look into a SIP server to run on the router (dockerized).
Now, with successful calling, do a long range test with the rotuer and check bmon bandwidth.
Check in with ergo on helment and see how well one can hear/be heard
Now make the linux client hands free. Probably the hardest part, if ur lucky there will be a setting for automatic answering, if not you must script a small daemon, probably bash or python, to accept calls via an API or CLI.
Last but not least talk to your lead (me) about how to turn it into a PR. Write it up so anybody can use it!
Description
Basically, right now comms are an airpod on a cellular call with a phone in the drivers pocket. That sucks. Reasons it sucked:
Reasons radio sucks:
Acceptance Criteria
bmon
)Proposed Solution
Implement a VoIP system. It works well with low bandwidth dedicated scenarios, of which we are one.
Steps I would take:
bmon
bandwidth.