Using ChiliPeppr to mill PCB, program ESP32, and eventually control a robot


Hi folks, figured I’d post something perhaps interesting to the ChiliPeppr community. My goal with ChiliPeppr was to make an open source environment to let you control hardware. Early versions of that vision has worked with CNC control as well as programming IoT devices like ESP8226 and ESP32. One of the things I’m working on is a new workspace for controlling a 6 degrees-of-freedom 3D printed robot.

The idea is that the robot would have a workspace like TinyG or Grbl where you can see each of the 6 axes for the robot. Jog each axis much like CNC. The 3D viewer would show the robot like below:

If anyone is interested in the project, here’s a couple videos of the robot arm build that would be controlled from ChiliPeppr. Each joint will use the ChiliPeppr Cayenn protocol which I described in another video a while ago.

Part 1

Part 2 (I mill PCB from ChiliPeppr and program ESP32 from ChiliPeppr)

ChiliPeppr Cayenn Protocol


Here’s the start of a new workspace. It’s kind of cool to checkout. You can rotate each actuator of the robot arm by clicking on it and then clicking on the rotate widget.


No, the robot design has an ESP32 in each actuator. The base ESP32 is the master and the 5 other ESP32’s are the slaves. Plus if you add end grippers they’ll need their own ESP32 and will be slaves. The Gcode gets dragged into ChiliPeppr. It gets parsed and each line of Gcode for each actuator gets uploaded to its flash memory, so it’s sort of like a bunch of mini Gcode files get uploaded to each ESP32. Then the master ESP32 generates a high/low signal to trigger each line of Gcode on the slave ESP32’s so they run in sequence.

(Don Kleinschnitz Jr.) #5

Thanks, I actually thought I deleted my question after I watched the video.

(anon57870006) #6

Very interested as the author of rUka Robot Arm and have plans to integrate this control functionality into Blender animation software.

Your modular design is very nice but I have not yet stepped into Esp32 and would appreciate a short path directions.

(anon57870006) #7

@jlauer are you making an open source version of


That snake monster is pretty cool. I think that could have its own nice ChiliPeppr workspace too. ChiliPeppr is open source and this robot arm I’m working on is all open source on Thingiverse, so it’s all open to anyone and everyone to tinker with and extend.

ESP32 is just like an Arduino but cheaper, faster, has Wifi and Bluetooth built-in, tons of timers, pulse counters, touch sensors, etc. Plus it runs Lua so it’s way easier to upload code in a modular way. It’s got a tiny form factor. It’s just all around the new way to do microprocessors.

1 Like

BTW, the URL for the workspace is:

You can now click on a part of the robot and rotate it. The real robot arm then reflects the rotation. It’s like jogging from a 3D model.

1 Like
(Michael K Johnson) #10

To be clear for others reading here: It can run Lua. Or Python. Or JavaScript. Or you can use the Arduino libraries and treat it just like a cheaper and faster Arduino. Or you can use its native C development kit, which uses FreeRTOS, directly. (They hired Sprite to build the native SDK, and can’t have made a better choice, it seems.) Not to derail this category, I’d point to the ESP category for more discussion.

1 Like