I usually think of open-source hardware and/or software are enabling skilled people to more easily fix bugs, improve on the design, get feedback from the community, etc…
But in a world where IoT devices become more prevalent, there’s another reason why you should request open-source software: Long term support. What made me think about are two things. The first one if that I own WeLoop Hey 3S smartwatch, which I love and wear since March 2018. That’s quite a feat since most cheap devices I own often only last a few months or a year or so. I’m also used to the watch face and Weloop app interface.
So what’s the problem exactly? WeLoop company closed on December 31, 2019, and while the app worked fine for about a year after that, recently I have been unable to login to the app to access my data and/or update settings for several months. I still can use it to monitor step, heart rate, check the time (which appears to be synced to the time on my smartphone), and even get notifications to my watch. But this may not last long, and if I were to change phone notifications would stop working, as well as time synchronization.
So I checked again whether WeLoop Hey 3S was supported by any open-source third-party software like GadgetBridge app that supports Amazfit watches or other models, but sadly not WeLoop and I’m too lazy to look into it. So I suppose that means my watch joins the Internet of Shit hall of fame, and don’t think it only happens to small companies, as Google discontinued its Google Nest Secure alarm system, and with many home appliances now becoming smart, you take the risk of getting cut off with expected lifetimes of 10 to 20 years for things like a fridge or washing machine. I suppose this would apply to cars, but it may be more tricky with safety needing to be taken into account. So it’s no wonder some people are installing cloud-free open-source firmware on their device such as Tasmota with home automation device or Valetudo for vacuum cleaners.
The second item that made me write this post is Pine64’s May update reporting the success of the community-supported PineTime smartwatch selling thousands of units within a short time right after the release of InfiniTime 1.0 firmware, the first stable release for the watch.
While the watch is not technically 100% open-source hardware, the PDF schematics are available, the firmware is open-source (and you can select more than one), and it works with Gadgetbridge open-source Android app, as well as Siglo GTK program for Linux. You can also find other resources in the Wiki.
If an open-source project is popular enough that means a device supported by a given project should benefit from long-term support, and not suddenly stop working as a company folds or decides it’s profitable anymore. I believe that’s the case for PineTime smartwatch, especially since both the firmware and host device are open-source and supported by an active community. It’s also possible to get long-term support for smartphones with projects such as PostmarketOS that supports over one hundred smartphones, at least partially, many of which are not updated by companies who sold them anymore.
While open-source software can enable long-term support in devices, and it’s good to check whether a device is supported before purchase, it may not be for everyone. First, in many cases, some technical skills are needed to hack or install the software, unless it ships with it, then warrantee may be limited – or even voided -, and as things stand, customer support means consulting the community on the forums.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
Also, I think it’s good to note, that even PineTime is not fully open-source hardware (due board design is closed source), I think schematics are absolutely enough, if the device is still manufactured. Sharing gerber files are very dangerous, since as we all know, China likes to make clones, which would do a lot of harm (people with “bad” clones asking for help, no income for future open-source device research etc.).
Even the ESP8266 never had an open source wifi stack. Where “strings” showed in the early days of 2014 an address of an hardcoded IOT server.
Any source on this? This is a huge red flag.
Well I think radio things are always so closed (with some rare exceptions like ath9k).
Some people will say this because of “regulation”. Weird, is the “regulation” really for device users?
Sources (if you have some) could give your allegations (or hearsay?) a basis.
Anyway the problem with the WiFi stack is (sadly) a little more complex. Beside espressif for sure uses ‘external’ IP and most likely signed NDA for them too. Regulations in some countries could actually render this devices (esp’s) illegal if the WiFi stack is fully open and Rx/Rx limits (regulation wise) can be exceeded by software.
Related esp32: https://github.com/espressif/esp32-wifi-lib/issues/2
I’m not sure how this would work for IoT products that use backend services.
Those devices tend to be a microcontroller with wifi that isn’t very interesting that connects to some algorithm-as-a-service.
Well you could repurpose the HW for something else?
Ideally those backend services would have to be open-source too.
Nice article. Actually this is exactly what I before I buy hardware: check if their is a (active) open source community and matured hardware support.
What automatically happens for example if you need a new phone you only need to look for used ones – because this is the only way to get mature software support. For example my “new” (actually used from 2013) phone is a galaxy s4 now running lineage is 18.1 (android 11) with most recent security patches running smooth and fast (and google free). And as a bonus the battery is easy accessible by a back cover and original Samsung batteries are still produced and cost less than $10.
For other products (like for home automation and switches) I go like 99% for esp’s (82xx and 32) running esphome only. Some other hardware includes some arm socs with mature mainline support (allwinner h3,h5, amlogic s905x3…) which are running software like kodi or home assistant.
Exactly: check the Open Source support before buying hardware. That’s what I’ve been since I switched to Linux, so around 2000 or so.