Make the button panel
Discussion
The button panel allows the user to interact with the robot. By pressing one of the 4 buttons (tack switches) on the panel the user can select items on the menus displayed on the OLED display. The panel uses a single analog I/O pin on the Arduino board to communicate the button selection. It does this by connecting the 4 buttons in parallel with resistors between each button.
Each button pressed will result in a different resistance on the data pin. However, if multiple buttons are pressed at the same time it will result in anomalous readings (so only press a single button at a time). An alternate design could have been used where each button was connected to a digital I/O pin which would have allowed multiple button recognition, unfortunately there were only 3 digital pin left on the Arduino board.
Parts
development board x1
8mm socket screw x 2
1K ohm resistor x 4
9mm tack switch x 4
15K ohm resistor x 1
keyed 3 pin housing x 1
Tools
safety glasses
hacksaw
soldering iron
allen wrench
solder smoke scrubber
work gloves