I performed an experiment to see if I could scratch build a CNC/Printer/Laser-Engraver/Plasma-Cutter/EDM-Mill. I started with Mega/RAMPS/GRBL, a cumbersome pile of parts from at least two boxes of parts and junk, and verified that I can perform all five functions reasonably well, with about 10 minutes of Z-parts switch over, including recalibrations. I spent $115, but my junk boxes are impressive. It's a mess of ugly welding and chewing gum, but it works. I even made it WiFi with an ESP8266 and the ESP3D code.
The only real problem is that the CNC function can only cut wood (NEMA17 is what I had). So, I bought a WorkBee frame as the base for a second, more powerful machine. Its beefy X axis can handle multiple Z frame configurations, the bed frame can easily handle bed management, or a rotary axis etc. This is the right frame to use, given my goals and stingy budget.
Add a frame, ya gotta add a controller and drivers, right?
All of the controllers are a bit weak for one process or another process. Marlin or GRBL do printing and CNC OK, but Laser engraving and EDM are a small or giant pain, respectively. Moar resources are needed for what I want, so a 32bit board makes sense. The Duet3D-2 is the obvious best hardware currently, based on just its hardware capabilities. However, it only runs RRF, which is an ugly limitation. Being a programmer has its perqs, so I bought one.
Question: All DIY-anything controller users beat every conceivable modification to a greasy pulp within a few hours of opening the shipping carton, so why is the Duet3D still chained to reprap firmware after all this time? Did the higher price scare off the scientists? Am I beating a dead Haas??
If there are already ports of other firmware to the Duet, complete or otherwise, I'd appreciate a link.
What have you got against RepRapFirmware? Have you ever tried it? Marlin has no networking, no macros, painful compile-time configuration, and Smoothieware lacks macros and many of the features of RRF in the 3D printer space. RRF is already used to control 3D printers, CNC machines (it's now standard on Workbee machines), laser engravers, and laser cutters. Not plasma cutters yet AFAIK, but the latest beta supports asynchronous movement queues, which will facilitate plasma torch height control.
The Duet is open source hardware, so it's open to anyone to port other firmwares to it. I think the reason nobody has ported any other firmware to the Duet is that RRF is so hard to beat. Whereas RRF has been so successful that others have already ported it to LPC1768/1769 boards, and a port to STM-based boards is under way.
I think the reason nobody has ported any other firmware to the Duet is that RRF is so hard toi beat. Whereas RRF has been so successful that others have already ported it to LPC1768/1769 boards, and a port to STM-based boards is under way.
Gotta say I agree with that. No way I'd go back to Marlin after experiencing RRF.
Wow. I didn't say I had anything against RepRapFirmware. That was all you. Is that a habit? Ugh. I don't have anything against RepRapFirmware for devices that do just the one thing. In fact, it appears to be perfect for 3D printing, though I haven't even started building my new beefy print tooling yet.
GRBL doesn't care what you're doing, as long as you're trying to get stepper motors to ... step. Marlin only cares a little, but can be easily beaten into submission. I never tried others after I found two that do what I want. It will take longer to get RRF to do the things I want (TRIGGER ALERT: THINGS THAT YOU ARE NOT DOING).
You're wrong. Both GRBL and Marlin have a WiFi and web interface if one adds a $2 ESP8266-01, connects 4 wires, and spends 45 seconds burning firmware to the ESP. Gluing the ESP to something so it doesn't flop around is a nice aesthetic touch, but optional. Macros are a function of the gcode injection mechanism (an ESP8266-12F? on the Duet I believe) so GRBL and Marlin have all the macros your favorite gcode injection tool supports. The ESP mod I mentioned does, and Repartier provides for six macros of any length. Some others more, while others less or none. I wrote one in Qt that stores macros in an SQLite database, so that only macros which pertain to possible operations for the current tooling setup are visible. Eh? EH?? Sweet! Oh... Oh yeah.
I'm going to guess that your machines do one thing: additive machining. That's terrific, and you should beam with pride. I'll print a trophy when I have the tooling done, but that's only part of what I'm trying to do, and I went to considerable effort to explain how what I'm trying to is likely very different from what you're doing. You're offended by that. If someone cares, you should totally hang out with them sometime.
Again, I don't have a huge problem with modifying other firmware to my DIFFERENT AND WEIRD usage case, but it's a lot of work, it makes merging version upgrades difficult, and I'd rather do something else with all that time if more flexible firmware will run reasonably well on the Duet. So, try to control your emos, bruh, and mash the Reply button if my question needs further clarification (??), or if you have a possible answer.
However, it only runs RRF, which is an ugly limitation.
Wow. I didn't say I had anything against RepRapFirmware. That was all you. Is that a habit? Ugh.
there is a bit of contradiction there my friend.
Do you not think that coming on the Duet forum and then making derogatory remarks about the firmware it uses is likely to provoke an adverse reaction? What did you expect? Did you expect the guy who devotes almost all of his time constantly improving the firmware to say "yes the firmware is crap"?
There is actually a company selling a commercial grade machine that does 3D printing and milling of the part in one machine that runs the Duet. So clearly it can be done successfully.
What specifically is RRF lacking for you? You never really say. That's probably why it just seems like you're trolling. The firmware is always being extended to give better support for laser and CNC, etc, so rather than just saying its ugly and you prefer something else, why not explain what you dislike about RRF and what you like about the others.
You're wrong. Both GRBL and Marlin have a WiFi and web interface if one adds a $2 ESP8266-01, connects 4 wires, and spends 45 seconds burning firmware to the ESP.
That will give you a primitive web interface, offering very basic print monitoring facilities, with unusably slow file upload to the SD card on your electronics. Nothing like the rich web interface and fast file upload provided by a Duet/RRF and Duet Web Control.
I'm going to guess that your machines do one thing: additive machining.
Why not stop guessing and instead ask others who use Duets to control subtractive manufacturing machines? You could start by looking at https://ooznest.co.uk/2018/11/22/duet-controller-a-new-era-for-the-workbee/. You could also try searching this forum for "CNC" (514 hits when i did just now). Note, older posts you find may be out of date, because CNC support has been improved over recent years.
It's true that RRF originally focussed on 3D printers (just as Marlin still does), but that's no longer the case. I think you will find that CNC support in RRF is significantly ahead of Marlin - for example, Marlin doesn't yet support workplace coordinates, which our CNC users told us is very important to have.
Yes. Running a single firmware is an ugly limitation for Open Source hardware.
The limitation, if there is one in my statement, is Duet's. I double-checked my phrasing and sentence structure. It is correct. It reads one way. This is why so many people want reforms to public education.
Thanks. Yes, there are many expensive machines that can (or could) do what I want to do, and more. OSU has some interesting additive milling gear in Columbus that uses ultrasonic friction to print in aluminum. They do tours! It's only a few hundred thousand. But, please recall, I already did 99% of what I want for $115 on a pair of Open Source boards that have nowhere near the power of a Duet. I'm going to do the same thing on a Duet. No additional cost, other than my time.
I use Marlin on the other system. I added a function and some macros that take an M666 Mn command, which allocates some GPIO pins, the extruder and fan drivers to perform tooling operation based tasks e.g., start EDM tank circulation, increase EDM current, frequency, etc. This also changes how, for example, a Spindle ON command is interpreted, what the max feed rates are, what the PID controller is really doing, etc. This allows me to use Fusion 360 to pretend that an EDM wire is really just a milling bit, or that a (velocity-sensitive) LASER cutting operation is really just a plain old drag knife fuggidabouddit. It simplifies and speeds up the process of making lots of things that a 3D printer won't yet do. Ideally, I'd run Marlin 2 on the Duet and fix the Paneldue display code. There's loads of memory on this beast, so expanding functionalities is no longer resource limited.
I didn't ask for suggestions that involve a different board or a different frame. That might be of value to someone, but probably not in this thread. I already knew much of what was popular and possible before I asked my question.
I would like suggestions for alternative firmware, complete or in alpha state. I don't even need to hear if you aren't aware of any: I'm already not aware of any, thanks anyway.
I added a function and some macros that take an M666 Mn command, which allocates some GPIO pins, the extruder and fan drivers to perform tooling operation based tasks e.g., start EDM tank circulation, increase EDM current, frequency, etc. This also changes how, for example, a Spindle ON command is interpreted, what the max feed rates are, what the PID controller is really doing, etc. This allows me to use Fusion 360 to pretend that an EDM wire is really just a milling bit, or that a (velocity-sensitive) LASER cutting operation is really just a plain old drag knife fuggidabouddit. It simplifies and speeds up the process of making lots of things that a 3D printer won't yet do. Ideally, I'd run Marlin 2 on the Duet and fix the Paneldue display code. There's loads of memory on this beast, so expanding functionalities is no longer resource limited.
Have you considered whether RRF might already be able to perform some of these functions? RRF is extremely flexible. Many users have found ways of doing things with RepRapFirmware that we never envisaged, for example by using additional axes to perform nonstandard functions, and by using macros. All without even recompiling the firmware! But if you need to do things beyond those that RRF already provides, then you obviously have the experience to fork RRF on github and add the code for those functions yourself.
Why would you expect such an alternative firmware to offer any advantages over RRF? I agree that being locked into closed-source firmware carries risks. But with open source firmware, you are never locked in.
@dc42 Yes. No matter what, RRF will do what I need within the physical limitations of an OpenBuilds frame. I know this because I bought the Duet and RRF is its only player piano roll. I'm confident I can make it control a multi-rotor heart-lung machine if need justifies the investment. Using RRF is my current Plan A. However, it's the only plan available and I'd be a slacker if I didn't look at all options. I'm a newb to Duet, I don't know what the options are, and I haven't followed all the Duet (or RRF) development threads.
You may be right about the cause of Duet having so few firmware options, but I'm hearing a great deal of box-turtle style thinking in this forum, and even some in this thread. It smells like ... FanBoyz, at least compared with e.g., the RAMPS forum. That's never a good sign.
Why is it, you ask a question, and a horde of zombies descends to criticize your question, and your reasons for asking the question. Is it to hide or discourage potential answers? Is it to wisdom-signal other forum members ("LOOK. LOOK. LOOK. I CAN WRITE TOO! ME! ME!")?
Q: "Who has a bread recipe for rye and spelt?"
A: "YOU ARE BEING SILLY. YOU SHOULD ONLY USE WHEAT TO MAKE BREAD. YOU ARE A FOOL IF YOU DON'T USE WHEAT. I USE WHEAT, HE USES WHEAT, YOU SHOULD USE WHEAT. WHEAT IS LOVE. EMBRACE WHEAT."
How did that become a common thing?
Are you this obnoxious in person?
It's open-source. Go fix it if you don't care for it. It's openly encouraged. Both hardware and software. Other more tactful people bring up valid problems and desired features here and both are received and openly discussed.
You still haven't said a single technical thing about what you dislike about it or what you wish it had. So until you do, you're just trolling.
@Phaedrux Probably, yeah. I don't like people, and I make no effort to hide it. No one has complained within earshot since I was 17 or 18, so I can't know with any certainty. I don't care either way.
One big difference between a forum discussion and face-to-face is that asking a question to someone's face: they are extremely unlikely to attack your question or imply that they know what you want to do better than you. Every boy learns why that's a bad idea early in life. OK, most boys. A question face-to-face, you get an answer or a shrug.
I asked a very specific technical question and received only attacks on the question itself. I answer responses to my posts. I already figured out that you don't know the answer, yet, here you are again, with no answer, and no value-add counter-question. Why?
Do you have a link to, or a lead on an existing alternate firmware project for the Duet3D-2 boards? PLEASE DO NOT ANSWER IF THAT ANSWER ISN'T A LINK OR LEAD.
PS: The answer is "Yes", Marlin 2 is in beta state, at least for the Duet 2 Maestro (SAM3X8E MCU). All Marlin features are implemented, and the current focus is on adding support for RRF gcode features that many Duet users rely on.
@giblte535 That's great! So now that you have answered your own question, can you mark this thread as solved. Then us zombies and fan boys won't have to read any more of your vitriolic diatribe.
The Maestro has a SAM4S8C MCU.