Arduino Pro hardware is not open-source hardware
blog.adafruit.com
blog.adafruit.com
I've gone over the OSHWA Certified Project list [1], go into the repos, and actually take a look at what these projects offer. The _majority_ of projects only include a schematic PDF, which by OP's own assertion is not Open Source. If you find some mechanical bits of projects, you'll find some Solidworks files, too -- good luck opening that without calling a Dassault sales rep. And of course there are the projects where the links to project files are just dead. Only about 50% of OSHWA-certified are editable in any software.
Unsurprisingly, one of the best contributors to OSHWA-certified projects is Adafruit, with Sparkfun close behind. Everything is just there (needs a bit more organization, imho), sitting in a Github. Almost everything is in Eagle, though, which is non-free and sure to annoy some Open Source advocates.
There are a few theories on why this is, most notably that 'Open Source' is a replacement for the cost sink of producing real documentation. The fact that companies (Adafruit and Sparkfun) are the largest contributors of OSHWA certified hardware supports this.
This feels a bit like complaining about some company publishing the source for their MSVC++ win32 app.
Why?
But either way, it is much easier to convert from one CAD format to another then to convert PDF to CAD.
It doesn't matter if you use the same CAD tool or not, there are a variety of utilities for converting the design files. What matters is if you can reproduce and modify the design. That's simply not possible without the complete design files.
You don't release the artifacts of your compiled code and call it open source. You release all the source required to generate those artifacts. Anything short of that is not open and fundamentally mistakes what it means for something to be "open source."
A good schematics is all you need. (it must have components values). The rest (layout, analysis) you can do it yourself.
> It doesn't matter if you use the same CAD tool or not, there are a variety of utilities for converting the design files. What matters is if you can reproduce and modify the design. That's simply not possible without the complete design files.
Well, it's a bit different from SW. Schematics is some kind of source code and the layout is a kind of compiled code. Different layouters will produce different layouts.
And when you modify the design you have to redo the circuit analysis and , maybe, the layout .
> You don't release the artifacts of your compiled code and call it open source. You release all the source required to generate those artifacts. Anything short of that is not open and fundamentally mistakes what it means for something to be "open source."
You release only your program, not the whole OS. Somedy who wants to "reproduce your design" still needs a compiler and an OS to run it.( and depending on the conpiler it may obtain different results :) )
As an example, it's common to group all the bypass caps together in a schematic. This doesn't reflect the reality that those bypass caps need to be physically close to the power pins on specific components. The value is not sufficient to reflect their use.
It's no different from software engineering, the schematic is not the source code. It's a block diagram describing how the source works.
Open Source is when you can compile the provided project given the right tools.
From a Schematic alone you can't send the board to production. You'll need the BOM and the Layout for that.
Also OS encourage patch and contribution, without the layout you can just re-design the entire board from scratch, not doing incremental improvements on the OS version.
This applies to Open Source software just as well. Why rely on documentation when you have the actual code?
"... At least for an initial period, we want to prevent counterfeiters from blindly downloading a file and manufacturing it without any R&D effort or contribution to the community, because the result of that will be tens or hundreds of low-quality clones which do not have nearly the quality of ours, and no benefit for the community. ..."
"... This is why for them we chose the same approach as Raspberry Pi: we publish schematics so that anyone can learn from them, and we keep the entire software stack completely open source. But at least for now, Altium files are available only upon request so that we can check whether someone can actually manufacture them with the required quality. ..."
"Alessandro Ranellucci Head of Maker Business, Open Source & Community ARDUINO.CC"
Aside the unfortunate comparison with the Raspberry PI approach (the RPi uses binary blobs, therefore is not open), it seems the case is closed: at least initially, hackers will have all necessary information minus what is often being used only by clone builders, namely CAD files. Schematics are open and software is open; building clones is still possible for users but less convenient for companies.
https://www.st.com/en/evaluation-tools/stm32h747i-disco.html...
They aren't freely licensed, to be fair, but at least they're published! And, in practice, ST won't mind if you refer to their reference boards while designing your own hardware; that's what they're for, after all.
That's a pretty charitable way to phrase it. I would think companies looking to make clones have the expertise and can afford to take the effort to recreate the PCB layouts from the schematics, but normal users are denied the opportunity to learn from it.
It's a small roadblock to commercial clones, but a complex gate to the average user looking to learn.
Sure copying blindly doesn't help, but neither does shooting int he dark. Having reference layouts that actually work however can be a useful learning resource and starting point to work from if you want to do something similar but slightly different.
So 80's high school students were able to do it, but average users are not?
When GPL fades away, the new wave of shareware and public domain will rule again anyway, now we call it copyleft.
> 5. No use, reproduction or redistribution of this software partially or totally may be done in any manner that would subject this software to any Open Source Terms...
In fact, I suspect that Arduino may be in violation of both this license and the GPL by linking the ULL licensed code with GPL-licensed Arduino code.
Wow. That's a shocking level of assholery. It's effectively a BSD license with an added restriction which says it can't be licensed (e.g. as part of a combined work) under any open source license.
So it's an anti-open-source poison pill license under the guise of an "ultimate liberty" (??) license. It takes some insanity to freely license your software to your competitors to use in their closed-source products while explicitly adding a term to your license to prevent hobbyists from using it as open source software.
> In fact, I suspect that Arduino may be in violation of both this license and the GPL by linking the ULL licensed code with GPL-licensed Arduino code.
Yes, assuming that the FSF is correct that the GPL prohibits linking. IIRC GPL3 is clearer about this than GPL2.
> You may convey a work based on the Program, or the modifications to produce it from the Program ... provided that you also meet all of these conditions ... You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged.
https://www.gnu.org/licenses/gpl-3.0.en.html
Edit: I removed one claim about the license being self-contradictory. On closer inspection, it is clearly not an open source license, because it requires that the software only be used "solely and exclusively on or in combination with a microcontroller or microprocessor device manufactured by or for STMicroelectronics."
Because a "no open source" clause presents exactly that kind of paradox. Just try and answer me this: is the ULL an Open Source license?
If the ULL is an Open Source license (perhaps because it provides all the same freedoms as one), then you can't actually use those freedoms, because of the no-open-source clause... which makes it not an Open Source license.
If the ULL is NOT an Open Source license (perhaps because of the restriction against a field of endeavor), then the no-open-source clause does not trip... which means you have all the freedoms of an Open Source license. Which makes the ULL an Open Source license.
No clue if you could use this argument in court to invalidate the no-open-source clause.
The problem is that the ULL is actually not an open source license anyway, and this became apparent when I gave it a closer reading:
> The recipient will not take any action that jeopardizes STMicroelectronics and its licensors' proprietary rights
This appears to make political lobbying to abolish intellectual property a violation of the terms of the license, putting it in probable violation of the OSI Definition item 5: "No Discrimination Against Persons or Groups"
> This software or any part thereof, including modifications and/or derivative works of this software, must be used and execute solely and exclusively on or in combination with a microcontroller or microprocessor device manufactured by or for STMicroelectronics.
This is a clear violation of the OSI Definition item 10: "License Must Be Technology-Neutral" and item 6: "No Discrimination Against Fields of Endeavor".
So unfortunately you don't get the fun paradox like I initially thought, because the license is clearly not an open source license even without the "no open source" clause.
https://github.com/arduino/ArduinoCore-mbed/blob/e50ec8aa1b1...
While my product hasn't been knocked off* (I suspect the fact that I made the product affordable and provide good service and logistics to often-ignored markets such as Russia, China and South America is a big part of this), I can understand exactly how this can be financially devastating to a larger organisation like theirs.
I would estimate a solid 90%+ of Arduinos out there to be clones (almost 100% outside of the EU/US markets), and the lost revenue from these clones does nothing but limit their ability to do proper QA and R&D. (Yes, one clone purchased doesn't equal one lost sale of the genuine article, but it is higher than zero.)
All that said, I would be surprised if this didn't backfire. The guys in Shenzhen will take all of a week to reverse engineer a fully working clone of this, Altium files or not. Meanwhile, the genuine, paying customers will be angered by Arduino's decision and it will hurt the brand overall.
As Gabe Newell quipped 10 years ago, piracy is a service problem. It can only be solved through better service and delivery/logistics.
[1] https://espotek.com/labrador/
* It has been cloned non-commercially, both by a student in Iran and a retired engineer from India. Both were very graciuous and I was happy to help them.
As someone getting slowly into a bit of hardware as a hobby, this has been a pain point for me (but also could easily be me just not knowing where to look, so please forgive the naivety!)
Unfortunately not. There's a 3.3V output pin (on the left hand side here: https://github.com/EspoTek/Labrador/wiki/Pinout) but that's it.
It's physically impossible to get lower voltages than that out, as the power supply subsystem consists of a boost converter attached to the USB +5V rail.
That said, you can get pretty decent benchtop power supplies from AliExpress or eBay for under $50 - they're much more capable than Labrador's circuit (which is sadly limited by USB's paltry 2.5W output power plus a relatively inefficient boost converter).
I suspect a large portion of the community is not averse to people supporting themselves on these sorts of projects and frankly, open source efforts do not seem to have a track record of supporting the people who support them.
https://blog.pimoroni.com/why-we-wont-be-selling-genuino-ard...
https://hackaday.com/2015/04/15/arduino-vs-arduino-the-resel...
https://blog.adafruit.com/2017/08/02/arduino-federico-musto-...
The Arduino Pro board in question here is substantially more complicated, but I wouldn't call it particularly innovative either.
People may complain Eagle is not Free software, but at least it has a free-beer license available to view and edit the files for noncommercial use, and it runs perfectly on Linux and MacOS.
Maybe Arduino needs to focus on good engineering, better value for money, good support and documentation, good user experience, losing the terrible slow bloated “IDE” which lacks any real IDE features, make something like a VSCode plugin which is much faster and built on a real IDE, and focus on bringing down their uncompetitive high hardware prices.
It certainly didn't hurt the original. I think I've come across articles about the Arduino folks not being happy that cheaper clones took away their sales on such a popular product. Going closed source in response to that seems to ignore the fact they were only as successful as they were due to getting more traction in the community with an OSHW design.
Trademark is designed for that. Everything else can be open source. Clones won't be able to say they are arduino pro.
An industrial device like a PLC would have galvanically isolated 24VDC digital inputs, 0-10V and 4-20mA galvanically isolated analog I/Os and galvanically isolated, short-circuit tolerant 24V high-side driver outputs, a case with a DIN mount and screw terminals.
This device is no more “industrial” than any other SoC.
[1]: https://www.reddit.com/r/electronics/comments/neh8o9/done_as...
I see all sorts of cheap MCUs used by engineers in industry for non-industrial environments. I guess they're targeting this market, but considering they have been getting by with hobbyist hardware I want to know what makes this new product more valuable.
At work? Only name-brand stuff. A consistent product and process is more important than saving a couple bucks.
The processor, memory, microSD card socket, Wi-Fi chip, USB hub chip, and Ethernet controller chip are all missing. If all you can get out of it is the pinout of the HAT and video connectors, then why did they even bother?
[0] https://www.raspberrypi.org/documentation/hardware/raspberry...
https://www.fsf.org/blogs/sysadmin/single-board-computer-gui...
> In many geeky circles, single-board computers are popular machines. SBCs come in small form factors and generally run GNU/Linux, but unfortunately, many boards like the popular Raspberry Pi are dependent on proprietary software to use. The Free Software Foundation maintains a list of system-on-chip families, sorted by their freedom status.
https://wiki.debian.org/RaspberryPi#Should_I_buy_a_Raspberry...
Hear that? Counterfeiters. As in: criminals. Very, very not open source.
They send the design files to a dropshipping company, put up an Aliexpress listing claiming the goods are endorsed by Arduino, then collect money without actually having created any value (other than to connect a factory with no quality control to a user who thought they were getting a working chip).
This is about a flood of sellers illegally using their branding - too numerous to make chasing them individually accross jurisdictions.
Saying "Design files available on request" means they want some evidence you have a use in mind that isn't "make a buck ruining everyone elses day"
Do you make it clear to your customers that you are selling a product that uses a cheap knock-off board?
I would hope the answer to that is 'yes' so I'm curious about what their reaction/responses have been?
Do the "Arduinos" you use in your device have any markings that are different from a genuine Arduino?
I do not advertise the device as containing any specific board and the vendor I buy from does not use the Arduino mark either. https://www.aliexpress.com/item/32799911396.html?spm=a2g0s.9...
they "make a buck" by organizing the production & sales of a product at a more competitive price. It puts an educational board in the hands of people that might not otherwise afford it: On small school budgets a STEM program might not be able to afford $20 for 500 students each year, while $5 is easier to manage. Or it might mean the program can afford both a cheap Arduino clone and cheap Pi Zeros to learn development at multiple levels and different languages.
...therefore it's possible to infringe THE TRADEMARK with a counterfeit product.
There is no such thing as counterfeiting the open source design.
EDIT: I'll add examples, it might help with the downvotes I'm getting:
- an OEM can make exact copies of a truly OH board but sell it under a different name and brand. Trademark is safe and Open Source is working as intended.
- another OEM can make its own Arduino clone with a different PCB layout and slap the Arduino logo and name on it. Trademark is breached and openness is lost and this is already happening.