Let's use "Gagguino" to mean "the authors of the original Gagguino" and "Faceuino" to mean "the guy on facebook" just to make it easier to explain the situation:
Faceuino started selling his own kit based on the Gaggiuino designs with some modifications. Since the code and the designs (models and PCB) were permissively licensed, this was done at a profit. The kit came with instructions but unfortunately had some issues which caused weird integration problems which increased the support load for Gagguino.
Gagguino could have handled this incident normally: Reaching out to Faceuino to explain that his modifications caused integration issues which were causing a support load on Gagguino. And warning Faceuino that unless he handles support for his own commercial venture correctly that Gagguino will officially announce that Faceuino makes broken kits and that people wanting to mod their machine should follow Gagguino routes rather than go to Faceuino.
Instead, Gagguino relicensed everything CC-BY-NC, and started on some crusade against profit. Apparently some dude on facebook making a tiny profit selling in the order of tens if not (maybe) hundreds of kits was justification to relicense the entire project, stop development entirely, and start working on a locked down replacement for everything.
Now it's a completely proprietary project where you must buy the hardware from approved suppliers. The main control board can still just be normally flashed (meaning you could make a clone of it if you just make your own PCB). But the display unit (which now handles a bunch of the high level stuff) is a pre-flashed ESP-32 module which can only be OTA updated and you cannot flash from stock.
Now the website contains silly vague FUD like what you copied above. Meanwhile the discord has stuff like:
> *Pre-Activated Software and New LCD Units*
> The new software will come pre-activated on all the LCD units, which in are available exclusively through our official suppliers to prevent the scalpeing efforts some people are engaged into. We're launching with a 4.3" LCD version initially but a headless (no screen) version set to follow shortly after. Also considering a smaller LCD version for those who prefer a more compact setup while still keeping a always on system status in front.
What scalping? What is being scalped? What?
Why can't these people just be honest and state it outright: "We didn't realise what open meant and we think profit should be illegal so we're going to impose a bunch of silly restrictions to try to prevent anyone from making any profit on this mod."
I would respect that, instead you get crap like "This decision was made to maintain high standards for the hardware required for the project"
What???
For the previous version (what runs on PCB v3), the code is there. The new version adds a wifi, a web server, a higher quality HMI, and a bunch of additional profiling features. You can get the same profiling features in the original firmware if you just write your own code, although that's a bit janky.
The old code is written in some pretty ugly arduino C++ and you will need to use platformio to build it (which has telemetry enabled by default, which you should disable[0]) and the architecture as a whole is very "EE grade" (anyone who has seen any quantity of embedded code written by EEs will know what I mean). But it's workable as a basis for your own experimentation.
I've been meaning on just wholesale replacing the firmware, the existing firmware is very simple since the concept behind the machine is nothing new as far as control systems are concerned (Kalman filters, PID, and a curve to map between the current pressure and what flow rate to expect from the pump per pulse so you can do flow control). Most of the hard part is tuning the (somewhat custom but not exactly revolutionary) PID which was done before the project was relicensed, as well as calculating the pressure/flow curves for an the vibratory pump (again, mostly done before the relicense, but not hard to replicate if you take a blind basket and modify it to be a controllable flow restrictor).
The main thing stopping me is the choice of the original mod to use a Nextion HMI which uses some awful proprietary GUI designer and a proprietary file format. I don't really like the idea of having to use a proprietary GUI designer in a project, and the Nextion is very limited (which was certainly a motivating factor in the Gagguino authors working on the new display).
[0]: https://docs.platformio.org/en/stable/core/userguide/cmd_set...
Ha! I never thought about it this way, you're probably right on the time cost. Although, while the Decent espresso app which runs on the android tablet front end is open source, the firmware running the machine itself is not (unless I'm wrong). But given you can talk to it over bluetooth I think it fits my concept of "good enough" as the protocol is implemented in the open source app and the firmware as it stands gives you all the control knobs required to produce any result.
That being said, the reason I even considered a rewrite is because I particularly enjoy these kinds of ridiculous firmware replacements. For example, I've investigated it for the possibility of using rust to do it, it would be quite a bit of work as I would have to probably contribute to the state of the art but I've wanted an excuse for an embedded rust project and the STM32F411 (what you get in V3 by default) seems like not a terrible chip to base it on.
Gagguino has switched to STM32U585 and it seems like it's also supported relatively well in the embedded rust ecosystem.
It just all makes my heart hurt. It is a great accessible DIY project with amazing results, but just with insane baggage.
Gaggiuino Gen 3 is free to use and will offer free software updates, but the source code is no longer available.
This decision was made to maintain high standards for the hardware required for the project and prevent individuals from fracturing the community with subpar, non-standard components and processes that were untenable for Gaggiuino’s community-driven support to accommodate.
Sincerely, *The GAGGIUINO Team
https://gaggiuino.github.io/#/?id=home