Firmware/control board preferences
April 13, 2020 06:07PM
I have a new printer build in the works and I'm considering my choices on main boards.

The Duet WIFI is currently high on my radar because it has some nice features I'd like. Direct connect WIFI, load/print from SD, recovery, 24V and 32bit. My concerns about going with the Duet would be firmware. I'm pretty comfortable setting up Marlin and there's very good support for it as it seems the most popular. Reprap firmware seems a bit more reclusive and far less search hits when looking for info..

-Aside of going to g-code for firmware programming, will I see any major differences?
-Are there options that might be missing from RR that Marlin has?
-Any features of one over the other that might be significant?

If anyone has experience with both the firmware's I'd very much like to hear an opinion if you prefer one over the other and why. Any opinions on a mainboard for a simple XY machine are also very welcome.

Re: Firmware/control board preferences
April 13, 2020 06:41PM
There's plenty of support for Duet boards and RRF. DC42 will probably show up here any second now...

The "gcode everywhere" concept means that you can tweak almost all settings on the fly when you're tuning up the machine. That can be real handy. They've recently added conditional gcode capability that allows for some interesting customization.

Son of MegaMax 3D printer: []
Ultra MegaMax Dominator 3D printer: []
Re: Firmware/control board preferences
April 19, 2020 11:11AM
I'm a budget/value kind of guy.

There are some great arguments in favor of going with Duet. It's a high quality product with good firmware.

That said, I prefer to use Klipper firmware and currently have it paired with an inexpensive Raspberry Pi 3B+ and inexpensive 32bit SKR board. It runs excellent, shares many of the same convenience features of Duet/RRF.

UART configuration of TMC drivers, Simple configuration changes through a text file on the Raspberry Pi (no firmware reflashes just to change configuration) Great WiFi control support through Octoprint or Duet Web Control, 24V ready, print pause/resume.

Klipper also has implemented a system where intense calculation is done on the Raspberry Pi with a more powerful processor and then uses your main board to execute hardware commands, this means you get better performance from your hardware. It also has excellent motion planning, pressure advance (like marlin linear advance), there is a lot of excellent progress going on in S-Curve smoothing to counter the mechanical effects of ringing and frame resonance etc.

I have a simple self-designed/built Core-XY machine that only needs XYZ and Extruder steppers. Duet was simply over-powered, over-engineered and overkill for my needs. Klipper is compatible with most popular control boards. If I was going to try and run a business relying on 3d printing Duet would be my board of choice hands-down. For hobby printing I find it challenging to suggest unless you have special requirements that it meets for you.

Here are links to the board/firmware for you to check out and make your own informed decision:

While Marlin is popular here on these forums, Klipper is popular elsewhere. Github is active, there is a good support group on facebook as well as an active and populated Discord server. I personally think you should put Marlin at the bottom of your list. Not because it is a bad product, but it has several disadvantages compared to Duet/RRF or a more generic board with Klipper, most notably being the fact that you have to re-flash your hardware any time you need to adjust your configuration files no matter how small or minor the change.

Edited 1 time(s). Last edit at 04/19/2020 11:13AM by obelisk79.
Re: Firmware/control board preferences
April 19, 2020 11:34AM
I've looked at Klipper a few times over the years and the biggest problem I see is that everyone who designs a driver board tries to keep it in the RPi form factor which means using crappy little plug in driver modules that can't dissipate any heat. Does anyone make a board that works with the RPi running Klipper that can actually dissipate heat from the drivers?

Son of MegaMax 3D printer: []
Ultra MegaMax Dominator 3D printer: []
Re: Firmware/control board preferences
April 19, 2020 12:56PM
I think the choice of driver is a critical factor in managing heat with pololu style plug-in drivers. I can't think of one that will operate near full current with passive cooling. However with a heatsink and lower flow silent fan heat is never an issue with the setup I'm running.

If you oversize your driver compared to max motor current you'd see heat be more manageable without active air flow. IE TMC2209 with a max 2.0A drive current paired with a 1.68A current motor driven at 85% for 1.4A runs those drivers at 71% load which might stand up to passive cooling with suitable heatsinking. I know for a fact driving @ or below 1A will avoid heat issues while passively cooled on 2209 drop-ins. I imagine the Duet allows for completely passive cooling?

I think Klipper has been ported to support the Duet 2 microarchitecture as well, they offer a sample config. That does negate my argument for cost-savings though.

A quick check on amazon turned up this: []
Looks to have board-integrated TMC2209's

Edited 2 time(s). Last edit at 04/19/2020 12:57PM by obelisk79.
Re: Firmware/control board preferences
April 19, 2020 02:47PM
Thanks for the input folks.

A few notes from my end. I've been using an RPi on my old printer and I have not found it reliable. Server connection and network problems seem to be common and I've lost several prints that were hours in due to various associated issues.
Power loss, "brown outs", are also common here in summer months along with a bonehead kid in my shop who likes to trip power strip breakers, unplug them or do something else stupid. Power recovery is pretty high on my list.
These were the first benefits of the Duet I posted on top and a bit of background why I place high on the list.

I'm still here reading and very open to hearing any and all opinions on boards and firmware. Since my projects have been delayed (6+ months) due to supply times with our current situation, I have plenty of time to study up and it's good to hear first hand experience from someone who has used multiple systems. It might raise a red flag on an issue I hadn't previously considered.
Re: Firmware/control board preferences
April 19, 2020 06:30PM
So with Klipper, your Raspberry Pi connects directly to the host board via USB, so network related communication problems with the printer controller should be non-existent. I know I certainly don't have any. I do on occasion notice that I have to refresh Octoprint while monitoring it remotely. I'm not sure if that is a RPi issue or Octoprint Issue.

If you find that Octoprint itself isn't your favorite, you can bypass it entirely and install this on the Raspberry Pi instead: []
That is the Duet Web Control front-end modified to work with Klipper. Many prefer it although when I tried it out last year I didn't care for interacting with DWC on mobile compared to OctoPrint.

Regarding Power Recovery in Klipper, I found this on their GitHub. Looks like someone was able to implement the functionality but was waiting for more user-friendly integration with OctoPrint before submitting a merge request. Based on what I saw I wouldn't hold my breath for this right now.
Sorry, only registered users may post in this forum.

Click here to login