New modular CNC controller

I ran across this today: http://www.buildlog.net/blog/2020/07/a-new-fully-modular-cnc-controller/

It runs a modified version of grbl for 32-bit processors, which supports more than 3 axes. It’s also supposed to be better at handling arcs, and I’m not sure what else.

I’ve been thinking of upgrading my controller, and will definitely be looking at this. Any thoughts? Anyone used grbl32?

8 Likes

32 bit GRBL and Trinamic or external stepper drives sounds like GRBL has come into this century, very interested.

4 Likes

I would not hesitate to get one depending on when he’s got them up for sale. There’s work ongoing with grbl for all kinds of controllers. I think the guys that worked on this one know what they’re doing.

2 Likes

That looks like Bart Dring’s work, he originally kickstarted makerslide which led to Edward’s original Shapeoko and later to Inventable’s X-Carve.

He’s got some CNC chops.

RMW

4 Likes

That’s the store that’s linked to.

2 Likes

Not to dampen the usual over-zealousness reaction to a new product, the basic design simply scares me.

A universal CNC controller covers a huge variety of options so I quickly realized I would have to add some modularity to the design.

He adds “modularity” by adding a thousand pin/socket points. This many unsoldered connections scares me. :grimacing:

3 Likes

For testing and figuring out different setups this is fine but if I were to go this route I would order 2 base boards.

one with headers to figure out how I want my setup.

one with no headers so I can directly solder all my proven modules in thus eliminating any sketchy socket connections.

Or just wait for someone to configure a setup that fits my needs and buy a plain board and solder the modules in and save time and money. Through hole soldering is not even remotely difficult especially if you clean and apply liquid flux.

Also a tip for newbie soldering development boards with a bunch of exposed through holes or surface mount pads.

Use Kapton tape to cover any exposed pads you don’t want to accidentally solder!

You might be interested in my topic, which involves, among other things, replacing the controller on my Nomad with a new controller with modular stepper driver carrier board (which so happens to have an ESP32 on board as well).

I considered the projects like this but they seem to be broken into a few categories:

  • Brand new and not ready for prime time (e.g. this, g2core)
  • Mature but not gaining any new features (e.g. GRBL)
  • Dead (e.g. TinyG)

I’m yet to see an open-source project that is both really alive and still adding new features.

When you look at the commercial world however, there are tons of CNC controllers alive and kicking, actively maintained and with new feature development.

I did see your post, looks like you’re well on your way. What firmware did you end up running?

To add to your list, there are several ports of GRBL to 32-bit processors in order to add new features. GRBL on 8-bit won’t be gaining any big new features due to the memory limits. The 32-bit ports are built on the mature codebase, and are able to add new features for multi-axis, etc.

I don’t think I would put g2core in the “brand new” category, it’s been around for 4-5 years at least. It looks like that’s what Bantam Tools is running on their machines, so I would guess it’s ready for prime time (though it’s possible they have their own fork, I didn’t investigate much).

The problem with most of these forks is that they only run on a specific set of hardware. Sure you could probably get one running on their other’s boards if you really knew what you were doing. You just don’t have the support and stability of GRBL on atmega.

Another solid open source firmware is Marlin, though it doesn’t have all the good features for CNC routers. It has a ton of features for 3D printers and is under very active development. I use it for some non-3D printer projects running on 3D printer control boards at work and it’s a good option. They do have some CNC machining functionality, and I think the MPCNC uses it. I’ve been tempted to use it for upgrading my Shapeoko control board, but I’ll probably go with some 32-bit GRBL variant instead. Just looking for some solid hardware.

What I really want is a 32-bit processor and Trinamic TMC5160 drivers, a 36-60V power supply, and some larger stepper motors. Along with linear rails and possibly ball screws (although I like the speed of belts). Might get really crazy and go with one of the closed loop stepper driver controllers that Trinamic makes, Marlin just added support for those.

2 Likes

I ended up running EdingCNC.

I’m aware of the 32-bit ports but none of them seemed overly reliable. grblHAL for example had this line:

As there are many changes to the codebase this version should not be regarded as stable. Added features has only undergone light testing if any at all. Also, there is a completely new state machine that is not yet fully verified - it seems to have issues regarding safety door handling when parking is enabled.

g2core has been around quite a while and it might be ready for a company willing to pay full-time engineers to work on it but having tried (and succeeded) to get it running, I don’t think it’s anywhere near ready for a hobbyist. Basics like the pinout are barely documented and it seems most of the configuration has to be done in G-Code by your sender somehow. IIRC I had to screw with the code as well.

They usually run on a single processor but I think that’s mostly just how embedded software is. They support different stepper drivers at least and you should be free to build your own carrier PCB if you want.

That’s exactly what I have :slight_smile: EdingCNC runs their hardware on a 32-bit PIC processor and I’ve hooked it up to TMC5160s which I’m configuring and monitoring with an ESP32 (which could communicate to with the EdingCNC controller but I forgot to add those traces to the PCB).

Given that StallGuard should be able to detect missed steps, I’m not sure you really need closed-loop steppers. Lost steps should be very rare, so you can just alarm when you run into them and resolve the issue manually.