Easier to use Software
-
Software that has LTS versions normally requires security patches on an ongoing basis. So support for users who want to go on using them is needed, and most updates to LTS versions are security patches. You can also pay to get technical support for LTS versions.
Although security is a concern for RRF, it is not a major concern except for the WiFi server and to a lesser extent the network stack, and RRF doesn't rely much on third-party libraries that may need security patches. So the main purpose of having an LTS version would be to do bug fixes. We already do that, for example we released 2.05.1 to fix bugs, and more recently 3.2.2.
So LTS versions are less necessary for RRF than for e.g. Linux distributions and relational databases. Nevertheless, I can see two mechanisms by which they might come about
- If an OEM pays to have one maintained
- If members of the community come together and arrange to maintain an LTS fork
The major cost of doing any release is testing. There is no way that Duet3D can test on the hundreds of machine configurations that RRF supports. So any LTS release would either be tested on only a small number of configurations, or rely heavily on community testing.
@deckingman, you have a unique machine, and (like many other users) unique aspects to your configuration files. You refuse to run any beta or RC firmware versions, and then you scream loudly when we release a new "stable" firmware version that works for those who tested beta or RC versions, but doesn't work for you. Can you understand why this makes it hard for us to support you?
-
@T3P3Tony said in Easier to use Software:
There are many features that some users find very valuable that others do not want/use.
From a perspective of a single user, everything I need to deal with that is not relevant to my system impact my experience. Even small things such as having to sift through binaries and instructions for different systems or seeing 'processing' instead of 'printing' on my console.
For developers is the other way around, the more you combine or abstract all your use cases, the easier it is to maintain the code line and to expand the set of features and supported use cases.
I think that as developers you need to consider, at what point it's too much and my convenience over burden my users. And by users I mean all users, not just the fraction/minority (?) that participate in these forums.
-
@zapta said in Easier to use Software:
From a perspective of a single user, everything I need to deal with that is not relevant to my system impact my experience. Even small things such as having to sift through binaries...
Having one firmware for a wide variety of systems means you have fewer binaries to sift through, surely? You would have five times as many if there were separate FDM, CNC, Laser, OpenPnP, and DLP builds of the firmware.
and instructions for different systems...
We've tried to put the CNC-, Laser- and DLP-specific bits on separate documentation pages; except for the GCodes page, which needs to be complete.
or seeing 'processing' instead of 'printing' on my console.
If that really worries you, I'm sure we can change it to "printing" when in FDM mode!
For developers is the other way around, the more you combine or abstract all your use cases, the easier it is to maintain the code line and to expand the set of features and supported use cases.
I think that as developers you need to consider, at what point it's too much and my convenience over burden my users. And by users I mean all users, not just the fraction/minority (?) that participate in these forums.
Please elucidate "at what point it's too much and my convenience over burden my users". It should be the case that if you don't need a firmware feature, you can ignore it and it won't affect you. Is that not the case for you? What do you think we should improve? The documentation structure perhaps?
-
I am very happy with RRF v3.
I did not find the changes from v2 to v3 as extensive as I first imagined.
As I have progressed from v3.0.0 to v3.1.1 to v3.2.0 to v3.2.2 I have not encountered any changes I had to make.
I did make changes to take advantage of new features but they were changes I chose to make, not had to make.
I am very impressed with the folks who are developing the firmware for the various products.
As in many aspects of life some few folks are hard to please and I see little reward in trying to.
Kudos to you all.
Frederick
-
I can sympathize with Duet3D's approach to the firmware development. They SELL hardware, but they give away the firmware for free. In order to support new hardware (that pays the bills), they have to update the firmware (that doesn't pay any bills.) In order to sell more hardware to mass producers and end users (which pays more bills), they have to add features to the firmware.
In other words, it appears that the firmware is something they give away in order to make money on hardware.
What motivation is there for Duet3D to fork RRF to simplified versions? Who or what is going to pay for that effort? It wouldn't do much good for Duet3D marketing to have firmware as trivial as something that runs on 8bit h/w, but requires the cost of a duet board to use it.
By the way, @deckingman, I think your specific printer falls into the "esoteric printers" category. I don't remember exactly, but I doubt it would be much of an exaggeration to say you have something like 12 extruders pushing filament out of 20 or 30 hotends moving across 12 axes in 8 dimensions. I seriously doubt a "simplified" RRF would work on your machine.
-
@dc42 said in Easier to use Software:
Having one firmware for a wide variety of systems means you have fewer binaries to sift through, surely? You would have five times as many if there were separate FDM, CNC, Laser, OpenPnP, and DLP builds of the firmware.
If Duet2 Wifi stand alone 3D printer is a common use case, I could just make one 'track' selection and then find the just the binaries and instructions that are relevant to this track.
Please elucidate "at what point it's too much and my convenience over burden my users".
This is a subjective call that you as a owner/developer should do, depending how you want to balance between the conflicting goals and other goals/constraints of your business (e.g. desire to expand, desire to innovate, desire for a good user experience, limited resources, etc). Clearly too many version, some not backward compatible, and mixing of very different use cases, impact the experience of your users.
-
@deckingman, you have a unique machine, and (like many other users) unique aspects to your configuration files. You refuse to run any beta or RC firmware versions, and then you scream loudly when we release a new "stable" firmware version that works for those who tested beta or RC versions, but doesn't work for you. Can you understand why this makes it hard for us to support you?
Oh that's rich.
You seem to have conveniently forgotten the many hours I spent testing RRF2 beta firmwares, and then even more hundreds of hours I spent testing pre-production and then early beta RRF3 firmwares. As well as hundreds more hours converting my machine for Gen 3 so that you could have it on your stand at the TCT show. Oh and then taking a week off work without pay to be on your stand at the TCT Show - twice!
My reward for all that was to be left with a machine which has less functionality than Gen 2 - even now, after 19 months.
I've done more than my fare share of testing your beta firmware, with all the lost prints and wasted filaments that entails - much more than any other user you have.
Yet for at least a year, if not more, you have chosen to prioritise other users desires/wishes over mine. That's fine but there is no incentive for me to waste my time and filament testing beta firmwares when those beta still don't address any of the problems I have with my machine.
-
@garyd9 said in Easier to use Software:
By the way, @deckingman, I think your specific printer falls into the "esoteric printers" category. I don't remember exactly, but I doubt it would be much of an exaggeration to say you have something like 12 extruders pushing filament out of 20 or 30 hotends moving across 12 axes in 8 dimensions. I seriously doubt a "simplified" RRF would work on your machine.
A slight exaggeration - just 6 extruders, and 3 gantries moving in only 3 directions.
But the things is, the machine is fundamentally the same as it was 3 years ago, running Duet 2 with a Duex5 expansion board well before subtractive CNC support was added, or lasers, or fancy LEDs, or a bloody RPi (which I don't use) . OK maybe, I have a few macros running conditional gcode which makes life a little easier but I could easily live without them.
If I stand back and look at things logically, even with my "esoteric" machine, there is so much stuff that is just a waste - both hardware and firmware. For example, to get 13 motors I end up with 3 expansion boards as well as the main board. IIRC there are about 18 IO connectors on each expansion board, excluding stepper drivers. That's 54 IO connectors in addition to those on the main board! Even I can't think of a use for all those connectors (despite how hard I try). But the hardware is the same as the firmware - it has to be all things to all users so it ends up being overly complex and only a fraction of the capabilities get used (even on a 12 extruder, 20 hot end, 12 axis machine).
-
It's interesting to compare Duet's releases to PrusaSlicer's releases, since both are open sourced and I use both for my printer.
Duet's releases come very often, with features that do not benefit my printer and require me tracking and understanding all the non backwards compatible changes from the version I currently use. It got to a point that I stopped following or considering them, as in 'they are for other people'.
PrusaSlicer's releases are very different, they don't come as often, each provides features I care about, and they don't break compatibility with my existing configurations or profiles. I am looking forward for those releases, install them as soon they are declared 'stable' and enjoy the features as they are useful and relevant to me and my printer.
(This is a single person data point, which may or may not be typical).
-
@zapta said in Easier to use Software:
It's interesting to compare Duet's releases to PrusaSlicer's releases, since both are open sourced and I use both for my printer.
Duet's releases come very often, with features that do not benefit my printer and require me tracking and understanding all the non backwards compatible changes from the version I currently use. It got to a point that I stopped following or considering them, as in 'they are for other people'.
PrusaSlicer's releases are very different, they don't come as often, each provides features I care about, and they don't break compatibility with my existing configurations or profiles. I am looking forward for those releases, install them as soon they are declared 'stable' and enjoy the features as they are useful and relevant to me and my printer.
(This is a single person data point, which may or may not be typical).
You are comparing apples and aardvarks.
-
@fcwilt said in Easier to use Software:
You are comparing apples and aardvarks.
@fcwilt, can you explain what you mean?
I would think that they are comparable on several key dimensions, e.g. introduction of relevant features, ease of upgrade, release frequency, stability, my general interest in upcoming releases, etc.
-
From my perspective, I ugraded to 3.something when it became stable (from 2.something). I knew there would be teething issues and reconfiguration. I don't think I have had to do any changes to the configuration since then (currently running 3.2.0). I am not interested in minor upgrades here and there so have stayed put with that version. I might upgrade to 3.4 when that is stable.
I suppose if there is a feature that I just must have, I will upgrade. At that point I will accept that I might have to tweak the configuration.
For now, with my Duet 2 wifi board and expansion board, everything works and I am a happy camper.I desperately want to find a reason to go to a Duet 3 board but so far I have not found an excuse
Regarding what deckingman has posted - I am seriously surprised that he doesn't seem to get the support he deserves or has earned. I would have though that with his dedication to the cause, he would deserve special status as far as support is concerned.
Deckingman - for what it's worth, I appreciate all you have done and no doubt will do in the future!One last thing ..... The shift from RRF2 to RRF3 is HUGE! As such, and with a limited amount of manpower available, nothing will come instantaneous. It might take many months before RRF3 is at a point where it progresses from 'stupendous amount of new stuff' to pretty stable with incremental upgrades. A point where the developers can take a breather and maybe deal with loose ends.
Kudos to everybody involved in tackling this enormous project - you had a great product and decided to make it greater not just incrementally but profoundly. -
@zapta said in Easier to use Software:
I would think that they are comparable on several key dimensions, e.g. introduction of relevant features, ease of upgrade, release frequency, stability, my general interest in upcoming releases, etc.
Application software, like a slicer, is a different beast from firmware for a hardware product.
Writing application software is a lot more forgiving - for example, there are no hardware timing issues that can cause problems as cropped up in RRF v3.2.0 and was fixed in v3.2.2.
Frederick
-
Another sound here. I am very happy with the speed of progress. Many new releases bring features I can actually use on my quite nothing special printer.
Regarding the effort: last week I set up a Duet2 for testing a motion stage. I needed RRF3+ for that so I could use while loops to iterate the same movement tens of thousands of times. Zip-zap-zip-zap, all day long, all night long. It took me about 20 minutes going from plugging in the USB cable in a freshly arrived board to a WiFi-connected testbed that was exercising the motors running RRF 3.2. The process took upgrading the FW to 3.0, then to 3.2 (somehow going directly from 2.x to 3.2 would not work but I did not spend time on figuring out why), configuring the controller and writing a few lines of G-code.
I am very comfortable with LinuxCNC, I can do the Arduino+stepper drive stuff too, but there is no single piece of kit that allowed me to get up and running THAT fast. Which is exactly why I chose a completely-overkill Duet for the task.Whatever you buy, you need to learn how to operate and maintain it or find someone who does it for you. Software is not different.
-
I have one printer running 2.0.5.1 and it is still working well enough that there is no inclination for me to upgrade. I thought I'd upgrade for one feature or the other, but so far "this printer works as is" has outlived any expected value from upgrading. As such, 2.0.5.1 is my personal LTS release as long as I can keep using the hardware and no features come up that would drastically improve quality of life with the printer (unlikely, as it's mostly hit-print-and-go).
I have another printer that is running on Duet 3 hardware with Duet 3 hardware specific features (toolboard, SBC). With that I am tracking the beta releases, and for this particular printer I had to do a single configuration change for PanelDue since I am running it that was due to a firmware bug, and another change for the IR probe since it doesn't work on the toolboard for currently-unresolved issues. Which I think is reasonable compared to the other firmware options out there. Yes, I need to read the release notes of firmware, and a deprecation policy might be nice, i.e. a warning in release .x that feature A will change in release .y ...
So far, I would say the interaction with the Duet3D team has been pretty good. Did I get everything I wanted? No. Did a bunch of things end up in main line RRF that I was asking for (like others)? Yes.
-
@jens55 Thank you!
-
I ran 2.xx and did not plan on changing until I got duet 3 mini 5+. As for a regular coreXY 3dprinter there was no new feature that impacted the printing quality. Not until input shaper comes you have no reason to update. There is also just a big jump going from 2.xx to 3.xx after that no problems. So not really sure what you are referring to.
-
My view is that Duet is a maker of components, not printers.
The very design of the current crop of components makes it obvious they are destined for use on equipment much more "heavy duty" than an FDM printer and it stands to reason the firmware would support such use as well.
If we, the punters choose to purchase a component in order to build a "machine", we should expect that such a multi use component is going to be changed and hopefully enhanced regularly. Especially given it has open source firmware and a forum which accepts user requests and contributions.
At present we are at a kind of mid point.
The only way you're going to get a "no changes" printer is to buy a commercial offering.
Even if the manufacturer based it on RRF, they just don't do updates to a working system. They'd do it on a new model.
People who have purchased a duet have done so because the affordable offerings ( say < $1000)are largely crap and the very good ones are prohibitively expensive (say >$5000).
So in a way, they've already rejected the equipment that would give them zero upgrade type usage.
FDM printers are not really yet a household consumer item in my view.
I think duet's ecosystem and the whole open source community is doing a lot to drive rapid development of affordable FDM systems and also other equipment.
For example, I could not justify a commercially made milling machine, router or CNC plasma, but as the hardware and firmware advances there will likely come a time when I build one or all of these.
It wouldn't bother me if the developers (or interested users) forked the firmware in different paths based on use case.
But I fully understand why they probably wouldn't or can't. -
So you are in effect saying that a large, loyal & long time user base of FDM machine users can either Like/Put up with the direction things are taking or sod off.....
-
@JayJay said in Easier to use Software:
So you are in effect saying that a large, loyal & long time user base of FDM machine users can either Like/Put up with the direction things are taking or sod off.....
Read into it what you will.
I posted an opinion in a public forum just as everyone above did.
A balanced discussion requires different points of view and any business that doesn't take into account the differing needs of their client base is doomed to failure anyway. I guess that'll fix the "too many updates problem" though wouldn't it?
Opinions are like arseholes.... everyone has one.
Taking it personally isn't helpful.