An automotive media interface.
Audio playback is handled by cmus and it features a clock via tock and a visualizer by vis (cli-visualizer), wrapped up and served to your Raspberry Pi via buildroot.
Intended to be run on a Euro-spec 2017 Ford Focus, but can probably be adapted to work with other makes and models.
buildroot
: Contains the downloaded buildroot source files (not included in this repo)external
: Contains the aulos-specific buildroot configs and packagescontroller.ino
: Arduino code to translate CANBUS messages to key pressesREADME.md
: This filesetup.sh
: A script that stages the buildroot environmentupdate-library.sh
: A script that copies new music to aulos and builds the library playlist file for cmus
This system is intended to be run in an automotive environment, and so the primary needs were determined to be:
- Speed at which the system would boot
- Resiliency in case of a power failure event
- Quality audio playback
Additionally, keyboard shortcuts for cmus are not keyboard-friendly given that interaction is through the media keys on the car audio system.
There is no network stack and the kernel has been stripped of things considered to be "non-essential" (drivers, mostly).
- RaspberryPi 4B 8GB RAM
- HiFiBerry DAC2 HD
- KKSB Tall Aluminium Case for Raspberry Pi 4
- Power + RTC HAT for Raspberry Pi
- Pure Copper 4-Piece Heatsink Set for Raspberry Pi 4
- Noctua NF-A4x10 5V Fan
- Waveshare 7inch IPS/QLED Integrated Display, 1024 × 600
- Clone this repository
git clone https://github.com/ohitsdylan/aulos
- Change directories into the repo
cd aulos
- Run the setup script
./setup.sh
- The Pi boots and logs into the
aulos
user automatically - A script,
start-aulos.sh
, in/etc/profile.d
runs and:- Starts tmux and creates three panes
- In pane one,
cmus
is started - In pane two,
tock
is started - In pane three,
vis
is started - Focus is switched back to pane one.
- Interaction with the system is done via a CANBUS media interface. Button presses are converted from CANBUS data to HID key presses and sent to the Pi, which are interpreted by
cmus
. - Media is stored in
/home/aulos/music
and is read-only.
- Test running system as a RAM disk
- Or maybe toggle the "mount read-write" setting in buildroot
- Add photos and screenshots
- Configure RTC clock
- Create a fakeroot script to modify some directory permissions
- See if autologin script works for aulos user
- Setup psplash