Tone + VIM + Vacuum fluorescent display build

Thought I’d keep track of this build in case anyone needs to follow my steps. I’m building a Hi-Fi using a VIM + Tone, using mpd to stream FLACs from my HomeLab. I’ve pushed the code so far to here: Futuba Arduino Rust Khadas

The Rust script sets up a basic command line interface where you can send data to the Arduino. Hopefully it’s fairly self explanatory. You can write your own Arduino script to get what you need out of it.

Remember to add yourself to the dialout group to get access to the /dev/x for your Arduino connection:
sudo adduser {$whoami} dialout

Now it all works I need to cut some panels and mount the Arduino and maybe try and run it from the Tone PINs rather than have a cable bridging out the back. Any tips on doing that’d I’d appreciate.


One step forward, one back.

I can now cut the Arduino out of the rig, and communicate directly via GPIO and Rust. Annoyingly, I need to access the I2C0 bus, but that’s unavailable - I think due to a hardware problem: i2c0 vs i2c1

This would allow me to use the Tone board and complete my retro style 2021 hardware ultimate Khadas hifi without using a breakout board.

I will publish the Rust code shortly - but I can confirm coding with Rust on the VIM hardware is an absolute delight - apart from the i2c0 issue stopping me finishing.

Rust + VIM fast enough I’m not far from making a real time spectrum analyser able to push MPD data direct to the display.

Side note: Do not use anything but Ubuntu for GPIO access. Documentation for the VIM is thorough and the Khadas team do grand work, but there is a lot of moving parts. Focus your attention on OSs where Khadas have also focussed theirs.

1 Like