5-axis CNC System with BluePill and GrblHAL for less than $10

Hello all,

after I presented the programming of the Arduino DUE for GrblHAL last time, today I want to follow up with the programming for the STM32.
The STM32, also known as BluePill, is often available for less than $10, GrblHAL and GrblGru are free.
Considering that you get a 32 bit system for 5-axis for that, that’s not bad, is it ?
On suggestion of users I started to create a list, in which I write down a few key points to the changes of the respective version.
This list “Release notes” is available on my website from now on, so that you can check at any time if an update is worthwhile for your specific application.
The current changes of version V5.0.9 mostly concern the lathe operation. I will report on this separately at a later date.


Have you looked at some of the ESP32 boards? I built a 4 axis controller using one of the under $10 “Wemos” D1 R32 uno form-factor boards, a CNC shield V3, and 4 DRV8825 driver boards for around $20 in Amazon parts, or considerably less if ordered from the usual overseas sources. I’m running an XZA rotary axis machine (a BobsCNC Revolution) using FluidNC and have an XYZ router on the project list. That’s a bit of an early adopter project, FluidNC had some limit switch issues that are presumably fixed, but my shop is snowed in so I haven’t tried the latest firmware. The Wifi interface works great, USB as expected, I haven’t tried bluetooth although I have used it on the earlier grbl_esp32 firmware on one of Bart’s Boards. No SD card on this configuration but it works on my older grbl_esp32 board. Gcode sender support is spotty, FluidNC sends different startup messages than 8 bit grbl, and the latest UGS is all I’ve used with it.

Technically it was closer to $30 since if you don’t remove the through-hole pullup resistor on the shield it causes strange problems like killing the board’s wireless, presumably it pulled a 3.3V line to 5V. This ESP32 board is commonly labeled as Wemos but they apparently don’t have anything to do with it, there’s also a USB-A similar “ESPDuino” that I’ve been unable to locate.

Both of your tech stacks look very neat! I love seeing what used to be many thousands of dollars of proprietary code and hardware rebuilt with open code and sub-$100 boards.

1 Like

I worked with GrbHal and its developer for a few weeks getting the GrblHal driver for the STM32F103 operational. There are some $70 3W diode laser around which go by the name of JL1 and JL2 and they use a proprietary software stack and firmware so I wanted to put Grbl on it instead and I found GrblHAL the latest and best supported. It worked great once I got the build environment up and running.

One thing of note, you can use an FTDI board but better yet is the little JLink modules($10) which also will let you do in-circuit debugging on STM32 in the Arduino v2.0.3 IDE.

Best way I found to check the onboard memory size was using STM32CubeProgrammer. Supported on all platforms too. Some of those JL1 and JL2 boards showed 64K but the ones in the JL1 and JL2 machines I’d purchased both showed 128K.

Nicely done video and loved the test fixture and simulation demo.


Thanks for your feedback. :slight_smile:
For me, there is still a lot to learn about this topic as well. But I have a really good feeling with GrblHAL.
It is a really powerful system and the developer Terje Io is a very competent and helpful guy.
I’m looking forward to incorporating the many new features into my program and trying them out.

Thanks also for the tip with STM32CubeProgrammer. I was also having trouble figuring out how big the flash is.