I'll start you down another rabbit hole. Look up the Nucleo boards by ST. Compatible with Arduinos but waaay more powerful and cheaper than genuine boards.As I said in the original post, It was discovering the open source 'GRBL' CNC controller project that was one of the factors in tipping me into trying to buld a "cheap" CNC. I am new to Arduinos - I only really looked at them earlier this year (trying to make a reliable tacho for my jet engine). Prior to that, I was quite prejudiced against them and their ilk. It seemed to me that people were using them to solve problems that would be better to solved with "proper" electronics. I was familiar with analogue electronics and also with microcontrollers - I used to program PICs in assembly language - Arduinos just seemed to be being used as sledge-hammers to crack small nuts. Having looked at them properly, I'll now conceed that I was (mostly) wrong. They really are handy little things, and now that generic clones are available, probably cheaper than anything more than a handful of discrete components.
Anyway, it was really easy to get a GRBL CNC controller running on an Arduino Uno and connected to the stepper drivers via a bog-standard breakout board (shield in Arduino speak). I was really impressed with how easy it was to configure and use GRBL.
Mission creep struck again, and I decided that it would be nice if the controller could be operated as a stand-alone device - it would be nice not to have to expose a laptop to the shed environment. GRBL pretty much maxes out the memory and IO of the ATmega328 chip in the arduino, so there's nothing left to use for an SD card, for instance. (There are schemes around where people have used a second or third microcontroller to talk to the Arduino, but I didn't examine them in detail.)
For about the same price as an Arduino, one can get an ESP32: A much faster, 32 bit controller with built in WiFI, Bluetooth, and more IO pins. A few people have also ported GRBL onto it... Another rabbit-hole opens up: I first found GRBL_ESP32 which led to Fluid NC (and I've since found grblHAL ).
A slight fly in the ointment is that the ESP32 runs on 3.3V and can't really drive the stepper motor drivers directly (it *may work, but they're usually expecting 5V).
There didn't seem to be any readily available (and cheap) breakout boards that addressed this, so I thought I'd make a simple one of my own.
Behold MK1!
It didn't work - The nice, cheap, readiy available, easy to use level shifters (the two small blue boards) didn't have enough oomph.
MK 2:
This worked OK so I built the electronics into part of an old rack mount that I had. Something a bit bigger would have been good.
I thought that the heatsink for the drives was overkill, but I have had it knocking around for decades, and it fitted the space available quite nicely. In practice, it gets quite warm, so probably lucky that I used it.
I wanted to use the machine to cut its own front panel, so just roughly wired it together at this stage. Electricians and panel builders look away now.
Still not pretty!
Back to metalwork next, I promise.
Thank you for that!I'll start you down another rabbit hole.
Thank you!Truly awesome. And the results speak volumes.
Could you knock up a quick list please of the hardware and software used. Be very useful.
If they're uni directional outputs then a simple way would be to use an optocoupler. Bidirectional level translation is the work of the devil*.Downside is that the ESP32 runs on 3.3V so needs level shifters to drive the stepper controllers reliably (hence the homebrew board - commercial boards exist, but I don't think they're readily available, and are $$ - I was trying to do this on the cheap! ).
I think you need to read up a little bit what grbl is. Simplistically it's a replacement for Mach3 and the like.Brilliant - plenty of food for thought there.
I wonder if GRBL would be any good to convert a monster old CNC machine?
£100 isn’t too extravagant considering the work you’ve put in to that work of art. https://www.tindie.com/products/sma...act-cnc-controller-for-grbl-esp32-or-fluidnc/- Downside is that the ESP32 runs on 3.3V so needs level shifters to drive the stepper controllers reliably (hence the homebrew board - commercial boards exist, but I don't think they're readily available, and are $$ - I was trying to do this on the cheap! ).
If they're uni directional outputs then a simple way would be to use an optocoupler. Bidirectional level translation is the work of the devil*.
£100 isn’t too extravagant considering the work you’ve put in to that work of art. https://www.tindie.com/products/sma...act-cnc-controller-for-grbl-esp32-or-fluidnc/