What you don't see are two Adafruit shields: 1) 1.8" TFT+Joystick that I consider mandatory for anything and 2) their proto shield, which is among the best for features.
What started the madness was SparkFun's Thermal Printer. And then came the stepper motor Easy Driver and their awesome dual voltage power supply, both of which are represented above. The stepper motor is a NEMA15 or something I bought from somewhere... probably Adafruit or Poulo.
I got the stepper motor working with some other people's code, but it kinda annoyed me having to handle each wire's HI LO and I wasn't able to easily repeat my successes with various motor driver boards. I see the SF easy driver and read everything I can about it and YESH, I'm gonna get it.
This is the proto shield with the SF easy driver mounted to it. This shield has +5V and GND kinda everywhere and I like how it has the proto holes tied together under the SF Easy Driver (that you can't see). I used simple headers to attach the Easy Driver to the proto shield. In from the right are the +12 yellow, +5V red, and GND from the power supply. +12 only goes to the Easy Driver's motor input. The +5 and GND go to the main rails of the Proto board. Normally, +5 is distributed from the Arduino as normal, but you can almost see how I cut the trace at the bottom of the picture. Out the left is +5/GND from the main rail to feed the Seeduino Mega running all this mess. I'm using a Mega because my code to test the TPSs pushed the limits of the uno's RAM, and Seeduino's Mega is super tiny, so I like it.
The two connectors on the right are for the thermal printer. Top one is a 3 pin I robbed from a sensor shield and the white power connector I somehow had in my parts. Yellow and Green wires match the printer's RX TX wires. White connector fits the thermal printer's 2 pin power plug perfectly.
On the top is the 4 pin connector I robbed from a sensor shield for the motor (attached to the SF Easy Driver board) and on the bottom, two more 3 pin connectors from poor cannibalized sensor shield to connect to the two kinds of TPSs I need, reading in on Analog pins 1 and 2. A3 is the joystick for the TFT, fed through the stacking header pins (these properly routed connections are in brown on the Fritzing diagram above).
Put together: I cut the pins on the TFT shield for it's ICSP and soldered in wires to go to the header I soldered onto pins 50-53 on the Mega (they moved `em from where they were on the UNO, hence the wires). That's the CD Audio cable running to the Mega with the Red-Black-Black-White wires in it. Running the TFT via hardware ICSP is much much faster than just declaring all the pins and using software to run the display. And you can see the two printer connectors right there. To the right are the raw pins to the stepper. I wanted to make sure they worked in that order before committing to the connector housing. White piece of paper is insulation between the left two pins that wanted to touch.
OK, I did a Hello World in this stack and the TFT works. I ran an AccelStepper test from here and it worked. My current hangup is trying to implement the ENABLE line on the SF Easy Driver so the stepper isn't running current ALL the time. It gets stupid hot pretty quickly. It might like to have 5V instead of 12... hmmmmm
I haven't done anything about the printer yet, but once I can make the stepper sleep, I'll do a hello world there next. My plan is to plot out the graph of each TPS's response curve and then print that out to include with each TPS we sell. So next steps are to port over my TPS testing code from legacy and then figure out how to PLOT my graph into a bitmap so I can display it on the TFT and also print it out on the printer. If I run out of RAM, I'll get to hook up D4 and figure out how to make the microSD card on the TFT shield work...