A Guitar MultiFX Processor running on a Raspberry Pi 3B with no operating system.
One of my goals is to have some sort of console-like connection to the processor so I can run commands or even code interactively.
To do this, however, I need code running on the pi that can listen over serial for commands and respond to them.
I decided to write a bare-metal compatible readline() function. Basically, it is to allow editing of typed-in commands before processing them. Additionally, GNU readline adds history to the command line, so you can press CTRL+P and get the previous line.
I first prototyped this in Ruby, and then today, I've translated the Ruby code into C++. I've had to restart the code over and over, so instead of testing on the pi, I'm running against a Teensy 3.6.
Moving the code from the Teensy to the Pi will be pretty easy.
Next step: write a simple command shell.
I've got my development environment up & running now.
I'm using the gcc-arm-none-eabi-7-2018-q2-update toolchain from Arm's website on my Mac. Kind of happy about the Mac part just because it's nice to not to have to run say, Linux in a VM for this.
Next step will probably be to write some preliminary code using the Circle library.
So, I already have a Pi 3B and a Teensy Audio Board. I ordered my touchscreen today on Amazon.
While I'm waiting for that to get here, I am going to start playing with the Circle library and see how it goes.