a mostly-headless back-end volume control (and other things) arduino server. it will take serial commands on its uart (or SoftSerial port) and convert them to binary i2c or spi sequences for delta1 relays, delta2 relays, PGA chips and other new solid state volume engines (protocols to be added).
this is a slight fork of the lcduino project, splitting the single image (program) in half and putting the user interface on the lcduino (the current one in AMBs store) and the back-end device code on a board like this.
for extra fun, I included a 10segment bargraph that can be addressed or used separately (or ignored).
board size was chosen to be exactly the same as an lcd display with the same hole pattern. the led bargraph was placed vertically in the center of where the lcd display would have been. the idea is that you could swap out the lcduino in an a10 (for example) and put this headless version in, and have remote remote control ability. the bargraph is very much optional and on embedded builds it would probably be omitted.
one more item: that transistor, diode and resistor cluster is a new protection feature. its meant to stop the wrong firmware from running on the wrong board. since I'm going to be going multi-cpu, its important to make sure that if the user uploaded the GUI firmware to the ENGINE board, nothing bad will happen
project is just starting and this is an early proto.
connectors are: standard ftdi software serial upload (with red sparkfun dongle installed for this photo); a nearly identical row of male headers that could take a 2nd FTDI cable but this is meant for the user to talk over, not for software uploads. it is a 'software serial' or softserial port. it has 1 less pin than the FTDI firmware port since that one needs a reset line for the whole cpu and the user serial port does not need or want that. so, a 5pin for user and 6pin for software upload.
there is the familiar 'amb standard' 6 pin i2c connector: 2 for power, 2 for gnd and 1 for clock and data. that 6pin inline is what we use on the delta1, delta2 and lcduino, so its sort of our standard i2c connector, these days.
new is a 2 pin molex and resistor key. much more detail on this later; but its the firmware protection feature. I might end up calling it 'Firmware Compatibility Check' or the FCC (lol). when the system first boots, it asks the FCC if the chip is on the right board (so to speak) and if things are good, the green led comes on and the code continues to run. if there was a mismatch, the led blinks and code ends there; telling the user to upload the other
firmware instead of the one he mistakenly put here
anyway, soon, you'll be able to 'telnet to your volume control'. sort of