Hack the Pancake Stack: What’s Inside the PancakeBot?

It’s important to get cozy with the parts you plan to hack. I like to examine a gadget, sometimes even using a magnifying glass, so I can understand how the parts all go together and interact with each other. Some people call it reverse engineering, which applies to things you are taking apart and want to mod. It also works by collecting all the parts, sitting them on the workbench and then playing around with them, to see how they will fit together, on a device built from scratch.
In this edition, I’ll walk readers through the various parts of the PancakeBot, a pancake printer that The New Stack sometimes uses as a promotional tool during its “pancake breakfast podcasts” around the globe. The PancakeBot can “print,” with batter and create a pancake design that you work up on its draw tool. Start thinking about your own areas of interest and see if you can spot potential obvious “hackable” spots.
Reverse Engineering the PancakeBot
Take a look at the main controller board in the PancakeBot. It sports an ATMega 2560 microcontroller which is also used in Arduino projects that need a bunch of inputs and outputs. The 2560 has 54 digital input/output pins. Fifteen of those pins can be used as pulse width modulation (PWM) outputs. It also has 16 analog inputs and four UARTs (hardware serial ports). Finally, the 2560 has 256 KB of memory. That allows much larger programs than the typical Arduino with 32 KB of programs space. It’s the one-inch square chip at the lower center-right, in the following photo.

PancakeBot microcontroller board.
On the right side of the board are the stepper motor controllers (small square chips just below and between the 2 large capacitors) and connectors going to the X and Y axis motors. Across the top of the board are the connectors to the keypad and LCD display. To the lower left is the USB/SD card circuitry. Power for the board comes in at the top left.
The Keypad-LCD board is located above the microcontroller board (when the PancakeBot is upright) and houses the control buttons, LCD screen, power button and pressure adjustment potentiometer. There’s not that much to see on the back side.

LCD, potentiometer and push-button control board.
Here’s the top side of the Keypad-LCD board, with the buttons, LCD and pressure knob.

PancakeBot front panel
Next up is the power supply, cleverly hidden in one of the PancakeBot’s feet. It’s a fairly stout supply given the size of the components. Not surprising since the machine has a couple of decent sized stepper motors. You need some beef in the power supply to handle the stopping and starting pulses of the motors, while also supplying spikeless voltage to the ATMega 2560. I also noticed a couple of ferrite rings around the longer power supply and motor controller wires. These help reduce noise, which might cause problems with the microcontroller.

Front side of the power supply.

Backside of the power supply.
Motors
The long-axis stepper motor is also located in a PancakeBot foot. The toothed belt attaches to the motor’s pulley. It’s a standard motor you can get through any of the normal channels. When moving loads they can draw a few amps. Running a couple simultaneously requires a decent power supply, which we discussed earlier. There’s a limit switch at one end, as a location indexer. When the PancakeBot starts up it cycles the steppers to the limit switch as a starting point for precise movements.

Stepper motor for the long axis.
The cross-axis motor is located at one end of the cross arm, along with the air pump and batter dispenser control valves.

Stepper motor for the cross axis.
Pump, Valves
There’s a little air/vacuum pump and valve, tucked away right next to the cross-axis stepper motor, that’s used to control the flow of pancake batter out of the batter dispenser. The air pump is the cylindrical black and silver object at the top left in the following photo. You can see the clear hose coming out of the bottom. After PancakeBot initialization, the pump turns on and seems to pull a very mild vacuum on the dispenser. I suspect that the vacuum keeps the batter dispenser from dripping when it’s not laying out batter lines on the griddle.

Air pump used to control batter flow.
Below is a close-up of the control valve that switches the pump/vacuum action to the batter dispenser. As you’d expect, the pump supplies a slight pressure to the batter dispenser, when laying down a batter line. Again, I’m anxious for the pressure sensor to arrive so I can verify my suspicions, on PancakeBot’s pressurized and vacuum batter dispensing operations.

Air valve for vacuum/pressure to the batter dispenser.
Both the pump and valve are controlled electrically, through the main microcontroller board and associated circuitry.
What’s Next
I think the PancakeBot is a pretty interesting example of current DIY/Maker Movement thinking. It’s kind of a 2D printer for liquids, that solidify on a griddle. Not earth shattering, but certainly fun and thought-provoking. Fortunately, the developers and manufacturer seem to be open and supportive of the community hacking the device.
Look for the follow-up PancakeBot hacking info, in future Off-The-Shelf Hacker and Hack the Pancake Stack columns.