Readit News logoReadit News
analog31 · 20 hours ago
I'm a long time user of the Arduino IDE for third party boards such as the Teensy. Recently I've switched to Platformio for coding. So I should be satisfied with never needing Arduino's cloud service.

But Adafruit points out a problem, which is that the cloud service is the only available option for students using school-issued Chromebooks. I can confirm that a school-issued Chromebook is likely to be set up to lock out access to any programming tools. We wouldn't want children to learn coding after all, right?

I think relying on a corporation to preserve our freedom to code is a bit too optimistic.

raxxorraxor · 20 hours ago
Chromebooks and iPads are both completely unsuitable for digital education in my opinion. They can be decent tools for education using digital resources, but that is something different.

To "force" someone to develop on a Chromebook is like giving someone a bicycle to become a race car driver.

That said, I usually flashed my arduinos and used bare metal C. Ironically I think it makes many things easier to learn and understand, provided you have a programming device.

thadt · 19 hours ago
What does a "digital education" look like, specifically?

Having spent several years teaching kids to code everything from games to lightbulbs on Chromebooks, I can confirm that there are certainly difficulties - but they're tradeoffs. I could spend my time coming up with a way to work through the platform restrictions, or I could spend my time maintaining a motley crew of devices and configurations. Having done it both ways, they both have different pain points.

AlexeyBrin · 20 hours ago
You really can't compare a Chromebook with an iPad. On a Chromebook that I bought and that I fully own I can enable the Linux system and install whatever I want on it (it runs in a VM and it is a full Linux system). The iPad is artificially crippled for programming by Apple.
GeekyBear · 19 hours ago
Apple has long provided tools for teaching kids how to code. Including lessons targeted at kids in middle schools.

> young coders are asked to assist these characters achieving simple goals by coding simple instructions. As challenges become more difficult, more complex algorithms are required to solve them and new concepts are introduced.

https://en.wikipedia.org/wiki/Swift_Playgrounds

galleywest200 · 18 hours ago
If your digital education is at an art school then an iPad with creative software is great.

If you mean computer science then yes you are correct.

mips_avatar · 13 hours ago
more like giving them a speed limited citi bike and expecting them to train for cyclocross.
assbuttbuttass · 19 hours ago
> To "force" someone to develop on a Chromebook is like giving someone a bicycle to become a race car driver.

Lol, I use a Chromebook for development at work

schappim · 2 hours ago
> cloud service is the only available option for students using school-issued Chromebooks

Perhaps Chromebooks are incompatible with open-source too?

chrsw · 19 hours ago
Arduino was finished the moment it was acquired by Qualcomm.
ASalazarMX · 15 hours ago
Someone should do a conspiracy board showing why evil companies doing acquisitions have names that end in com.
skybrian · 5 hours ago
Chrome can read and write to a serial port using the Web Serial API. There is also the WebUSB API, but I haven't tried that. I wonder if that would be enough to flash boards on a locked-down Chromebook?
TechSquidTV · 18 hours ago
I recently had a great time developing on ESP-32 directly in VSCode/Cursor and using the Arduino CLI. I believe very similar in concept to Platformio. I've always hated being limited to the Arduino IDE.
sybercecurity · 20 hours ago
> We wouldn't want children to learn coding after all, right?

Why aren't we teaching kids vibe coding? I've been told that is the future after all, and junior devs will never be needed ever again. All they need a webpage interface to an LLM to provide data and customer demographics for AI companies.

brookst · 19 hours ago
Because typically we don’t leap to teach kids things that are speculative.

We in the industry might see AI progressing to where cube vibe coding is just as real as using spreadsheets rather than paper ledger books, but it is years out, and teaching kids on v0.1 tools would just be frustrating for teachers while likely teaching kids all the wrong things.

blensor · 13 hours ago
+1 for platformio, I recently switched to it and working in VSCode on the code is much more to my liking than the separate Arduino IDE
AlexeyBrin · 20 hours ago
Technically any recent Chromebook can run Linux in a VM if enabled from settings. Now, I don't know if most schools forbid this, but since it is running in a VM it is safe to use for sure.
blackcatsec · 20 hours ago
The reason people use Chromebooks is because they want to minimally manage the devices. The Chromebooks being locked down is ENTIRELY the point of using them in the first place...That and because Google.
MPSimmons · a day ago
Ever since I got involved with Espressif's ESP32/ESP8266 chips, I haven't even thought about arduinos, except to download the UI, but you don't even need to do that with the right VSCode extensions to make your life better.

I do keep meaning to try this though - https://platformio.org/

alias_neo · a day ago
Last time I used Arduino was probably the late 2000s, as a kid/teenager,student their prices always felt too high to me, so I moved to "compatibles" or "clones" for a while.

Once ESP8266 and ESP32 came along (with a detour thanks to Raspberry Pi coming along in the 2010s), there was really no need nor desire to use Arduino anymore and like you I forget about them.

Maybe they have a place in education, and maybe in industrial applications, but outside of that, I wouldn't even consider Arduino anymore.

PlatformIO by the way is excellent, and I've used it for all ESP8266/ESP32 development in VSCode for some time now, though increasingly I just use ESPHome, as my desire to program microcontrollers at a low level wanes and my desire to simply achieve the task quickly grows.

MPSimmons · 18 hours ago
I also really appreciate how routine ESPHome has made building sensor networks in my home. Really just incredibly useful software.
Aurornis · 18 hours ago
Arduino’s sweet spot was always in education and learning.

I think most people should graduate into PlatformIO or vendor tools if they’ve used Arduino to learn basics.

I think it’s great that the Arduino ecosystem became so large and capable, but it had the side effect of leading many beginners into thinking that Arduino was synonymous with microcontroller.

I even took a contract once updating a company’s internal tooling because their first contractor tried to do it all with Arduino. The same scenario happens with Raspberry Pi in the world of Linux embedded systems development.

srg0 · 18 hours ago
Are there good ESP32-based starter kits with manual books which a kid can learn from? I was looking for an Arduino-like kit as a Christmas gift, and it seems that Arduino kits are unbeatable. The starter kit is available in 10 languages and comes with a project booklet. All ESP32-based products seem to be better suited for more advanced users and seem to have a steeper learning curve.
cbdevidal · a day ago
I use a combination of Adafruit Ampy to copy files, esptool to reflash, picocom for the REPL, and VSCode. Some of those might be redundant and it did take a bit to figure out the syntax. But once that’s determined it’s cake, and all saved in my CLI history. I just Ctrl+R and bring it back.
ahoka · a day ago
For ESP32? You just install the VS Code extension and it does all the toolchain setup and you can flash with a button.
the__alchemist · 19 hours ago
What do you think of PlatformIo on these chips compared to the official ESP IDF?

Personally, I am not convinced we should (continue) conflating the IDE with the build+flash tools; the former should be associated with the programming language and developer preferences, and the latter with the MCU being programmed.

estimator7292 · 17 hours ago
It's not an either/or. You can use platformio with esp-IDF or arduino for ESP chips.

PIO + esp-IDF is the only way I write ESP firmware.

Alexander-Barth · a day ago
I use the command line tool arduino-cli (with plain Makefile) to compile and upload the code (obviously usable in any editor). It has also a --verbose mode to show exactly what is getting executed. But I heard a lot about platformio, so I am wondering what is its benefits (beside the integration in vscode; as an emacs user vscode is not working for me)
juliangmp · 20 hours ago
I think platformio's selling point is multiple target boards via ts config. That and you can use an actual editor instead of the arduino "IDE", although I'm not a fan of vscode anymore either.

I also think they have some testing features built in, though i never delved too deep.

dismalpedigree · a day ago
I switched to platformio in vscode (and command line) a few months ago after using arduino ide for over a decade.

Can’t recommend it enough. Faster startup. Repeatable builds. The abilty to save your image and then flash on many devices. Build time parameters. Also allows access to some functionality that is not possible using arduino build process due to how arduino compiles and processes sketches.

platevoltage · 14 hours ago
Yeah. There is no reason to even touch the Arduino IDE anymore now that PlatformIO is so good.
procaryote · a day ago
The raspberry pico is much nicer to work with, if you're looking for an alternative. It has dual core if you need it, and the fun little IO coprocessors if you want to get really low level. The pico2 even has a risc-v mode

The process of getting a binary onto the board is just dragging a file, and on linux at least you can script it with picotool

quailfarmer · a day ago
+1, if only for the documentation. If you haven’t, skim through it: https://pip.raspberrypi.com/documents/RP-008373-DS-2-rp2350-... it’s truly unlike any reference manual I’ve ever read. I will happily pay a few extra cents at modest volumes for a chance to get the detailed technical details and opinions from the design team.
crote · a day ago
The flipside of this is that the RP2xxx has rather poor hard IP, and the PIO is not quite powerful enough to make up for it.

They are great for basic hobbyist projects, but they just can't compare to something like an STM32 for more complicated applications.

They are a pleasure to work with and I think that they are great MCUs, but every time I try to use them for nontrivial applications I end up being disappointed.

schappim · a day ago
STM32 is great!

> nontrivial applications

Out of curiosity, where do you find that you’re hitting the limits of what it can handle?

londons_explore · a day ago
They're also very poor value for money if you need millions of them.

There are similar chips at a quarter of the price.

Obviously for hobbyist stuff, $1 doesn't really matter.

scottbez1 · 16 hours ago
Flashing can be easy, sure. Compiling that binary, including library management, is not, unless you’re using something like micropython. CMake is not hobbyist/student-friendly as an introductory system. (Arduino isn’t either, but platformio with Arduino framework IS! RPi refuses to support platformio sadly)

Arduino took over for 3 reasons: a thoughtful and relatively low cost (at the time) development board that included easy one-click flashing, a dead-simple cross-platform packaging of the avr-gcc toolchain, and a simple HAL that enabled libraries to flourish.

Only the first item, and a bit of the second), is really outdated at this point (with clones and ESP32 taking over the predominant hardware) but the framework is still extremely prominent and active even if many don’t realize it. ESPHome for example still will generally use the Arduino HAL/Framework enabling a wide library ecosystem, even though it’s using platformio under the hood for the toolchain.

Even folks who “don’t use Arduino any more” and use platformio instead are often still leveraging the HAL for library support, myself included. Advanced users might be using raw esp-idf but the esp-idf HAL has had a number of breaking API changes over the years that make library support more annoying unless you truly need advanced features or more performance.

schappim · a day ago
To "yes, and..." you, the whole RP2040 microcontroller line is great and I would encourage folks to support the smaller maker/OSHW companies on Tindie[1] who use it.

[1] https://www.tindie.com/search/?q=rp2040

dvh · a day ago
How long does raspberry pico run on CR2032?

I'm asking because used Arduino ide to program STM32L011 and it would run for months or even years.

DrewADesign · a day ago
I believe you need 5v to run the regular $4 pi pico board. The chip only requires 3.2v though so maybe it’s not a hard requirement? There are probably other lighter weight RP2040 boards but I don’t think months or years-long low power usage was an intended goal— it’s $4 (still!) with 40 GPIO pins and PIO and it runs micropython for people scared of/chafed by C— it’s a prototyping/hobby tool.
05 · a day ago
It has sleep current of 200microamps, so no longer than 40 days…
bigfishrunning · 19 hours ago
The STM32L011 in no way requires the arduino IDE; your code would likely compile with GCC just fine. The pico would probably work if you redesigned your project, but your hardware very likely doesn't need to change, just the software you're using.
markb139 · a day ago
“ The process of getting a binary onto the board is just dragging a file, and on linux at least you can script it with picotool”

Even easier if you setup debugging using another pico, debug probe or even a Pi (not sure if this works on the 5)

jack_tripper · a day ago
>It has dual core if you need it, and the fun little IO coprocessors

I think you're missing the point of what made arduino so popular. It's not the HW itself, it's that you can plug in whatever display, sensor or motor driver out there, and there's ready made templates in the IDE that gets you running immediately, without you having to know anything about how the HW or SW works under the hood.

The lack of dual cores or "fun IO coprocessor" whatever fun is in that context, was never an issue for the arduino.

There's a virtually unlimited number microcontrollers and boards out there for tinkering or production, that are more powerful and have more features, but they all have a higher technical barrier to entry than the standard Arduino out of the box.

I don't wanna have to read datasheets and erratas just to learn how to use a second core, deal with shared memory between cores, or how to configure the GPIO of the "fun IO coprocessor" just to get a LED blinking to work. That's not what fun is to a lot of people. Fun is getting the motor spinning until my coffee finishes brewing and that's where the Arduino ecosystem USP was versus other more powerful platforms.

1718627440 · a day ago
> I don't wanna have to read datasheets and erratas

I recently started programming Arduino for profit and you need to do exactly that, because the libraries range from somewhat buggy to completely broken. They so often just write into random other registers and if it works it is only do to the chip already working without any configuration and the library not breaking things too badly.

crote · a day ago
The RP2xxx also comes with excellent documentation and libraries. If anything, with the drag-n-drop flashing it is even easier to work with than an Arduino.
arjie · a day ago
Seems fine. There's a Qualcomm SaaS platform you don't need that they have the boilerplate no-hacking clause on. And Arduinos are the same as always. Considering the EFF and Arduino positions in favour, both of whom have done a lot for open-source stuff, I really can't be bothered that Adafruit is trying to drum up some marketing content.
healsdata · a day ago
> Adafruit is trying to drum up some marketing content

This was evident to me when their original post "yada yada yada'd" over the details to make things in the agreement sound sinister.

vasco · a day ago
Agree completely and I was writing arduino libraries almost 20 years ago
arjie · a day ago
My first Arduino was something like 15 years ago as well, a Duemilanove. I suspect my parents still have it. I'm not saying nothing can change over time, but there's always one controversy after another online these days in software communities and I think rather than trust the latest mob I'm going to trust the guy who's been serving me well for more than a decade. These openness purity tests are really not for me.
skybrian · a day ago
This article doesn’t really explain how the new Arduino stuff works, which makes it harder to judge the impact of these new licenses. I’m used to flashing microcontroller boards over USB, originally from the Arduino IDE, more recently with PlatformIO. I’ve bought boards that have WiFi, but it wasn’t an essential part of the development environment.

I did a bit of searching and found some sketchy documentation that just leaves me with more questions. It sounds like Arduino’s new web editor programs boards wirelessly somehow? Does it assume the board has WiFi? What is this new, networked system? What Internet protocols does it use? How do you pair it with the web editor?

nottorp · a day ago
More importantly, do they still allow local development or you're now depending on the "cloud" ?
8cvor6j844qw_d6 · a day ago
Wait, does the IDE no longer work with cloud/account?/etc.?

I have a old Arduino UNO R3, would be a really disappointing if I could no longer play around with it by just downloading the IDE and connecting the cables.

ErroneousBosh · a day ago
It's an 8-bit microcontroller programmed directly with a suite of open-source software.

It doesn't need to do anything with "the cloud".

Surac · a day ago
I doubt Qualcomm will be able to pressure there rules to the market. They do not own the cpu and making a arduino like board is very easy nowerdays. The have not even the power over the bootloader or the compiler. Library’s are either standard c/c++ or open source. People also do not like the arduino ide because the days of easy setup and run are gone and a real way of debug is needed in most projects. China board makers will never obey any rules and marketplaces like alibaba will still sell clones. Perhaps the ai at Qualcomm told them to buy arduino because it is in a suicide mission. Please excuse my bad English, no native speaker
finaard · a day ago
> People also do not like the arduino ide because the days of easy setup and run are gone and a real way of debug is needed in most projects.

A surprising amount of embedded SoCs target the Arduino IDE either as the main IDE, or one of the main ones. And for those the setup is still pretty easy for non technical users - "Download IDE, paste this into the boardmanager, compile the sketch, upload". That's the main reason I'm still using the Arduino IDE for stuff I publish and expect less technical people to use.

The problem with the IDE is that it doesn't offer a gradual path to more advanced usage. You're pretty much stuck with a single file main project. You can split off functionality into libraries, but the way library resolving works is way worse compared to "proper" build systems. There are projects to provide makefiles for Arduino projects, but it's a bit of a pain to set up - I use that for CI on some of my stuff, but it clearly is on the other end of difficulty scale.

And of course the editor is horrible - but thanks to file watching and automatic reloads that isn't much of an issue nowadasy.

1718627440 · a day ago
But targeting the Arduino IDE only means to have a GCC version to compile and some upload program and then set a bunch of variables in platform.txt . It doesn't actually make it any harder to not use the Arduino IDE.

> The problem with the IDE is that it doesn't offer a gradual path to more advanced usage. You're pretty much stuck with a single file main project. You can split off functionality into libraries, but the way library resolving works is way worse compared to "proper" build systems. There are projects to provide makefiles for Arduino projects, but it's a bit of a pain to set up - I use that for CI on some of my stuff, but it clearly is on the other end of difficulty scale.

It actually isn't all that hard. I recently did exactly that and it took like a week, most of which was spent on understanding what the Arduino IDE does with strace. Initially I assumed the Arduino IDE does way more stuff then it actually does. The makefile projects are too complicated, because they try to abstract over the installation and project. Instead I used Autotools which is way easier and simpler. It also breaks less, because these makefile projects tend to hardcode paths.

To save others the work: All you need to do is populate CPPFLAGS, CFLAGS, LDFLAGS, ... with the information from platform.txt and boards.txt . Then tell your build system to use the cross-compiler toolchain from your OS. Take care to only use the exact uploader program version that the Arduino IDE also uses, I have been burned by using the latest version, which bricked my board (i.e. you can't upload anything to fix it and need to use a second board to reflash the bootloader). This information is in the package_index.json file. Granted this is annoying to work with using fulltext search, you would have a much saner experience actually using the JSON format, but it still works and I am lazy.

> You're pretty much stuck with a single file main project.

You can have multiple files just fine, this is actually the reason why the Arduino IDE defaults to having this project directory. The Arduino IDE just assumes all files below that are things to compile. You need to remember to not name the other files with *.ino, but *.cpp, *.c and *.h, otherwise you end up with multiple main functions. An *.ino file is just a *.cpp file that gets preprocessed with a main function template.

> And of course the editor is horrible

You can tell the Arduino IDE to use another editor, which is what I did when I used it.

seg_lol · a day ago
So basically, Arduino IDE acts as the client side of the tether to compile and flash firmware to the target device.

This seems like an ideal component for the OSS community to handle and rally around. Then anyone can use the IDE of their choice, the compile-flash manager handles the rest.

robert_foss · a day ago
Arduino is a tiny market, and Qcom has left bigger things to die on the vine previously. They dont need Arduino to succeed in any way.
blagie · a day ago
I, respectfully, disagree with this analysis.

Prototyping platforms have tiny markets, but lead to downstream sales. Many a company were brought down by more developer-friendly platforms ignoring the "tiny" userbase of people who want to do unconventional things.

Most IC vendors provide free samples and support because of this. That's a market size of close to zero -- electronic engineers -- but leads to a market size of "massive." I can get an application engineer to visit my office for free to help me develop if I want.

Arguably, iPhone and Android won by supporting the tiny market of developers, who went on to build an ecosystem of applications, some long-tail, and some unexpected successes.

And arguably, x86 won for the same reason.

Atmel had shipped 500 million AVR flash microcontrollers, due in large part to the ecosystem created by Arduino.

Balmer said "Developers! developers! developers!" Visual Studio was not a major revenue driver for Microsoft; what was developed in it was.

timinou · a day ago
Your English is perfectly understandable :)
MrJohz · a day ago
It's a bit odd that most of this article is various claims from one of Arduino's competitors being taken at face value, especially when the EFF spokesperson generally seems to think the new terms broadly make sense, albeit with some criticisms.

It sounds like Adafruit are just trying to sow some outrage here.

dec0dedab0de · 14 hours ago
Adafruit makes a ton Arduino libraries, and sells boards and starter kits. They also make their own stuff, and sell things from their other "competitors." I got my first arduino from them over 19 years ago.

Their real competitor is sparkfun, but I never heard them say anything to put them down.

malfist · a day ago
Adafruit is not an arduino competitor. They sell arduinos
sunnyps · a day ago
They sell Arduino compatible boards (amongst other things) from what I gather, so yes, they would be competitors.
andrewflnr · a day ago
I was very confused when the article referred to

> Chief microcontroller rival Adafruit

Implying that Adafruit makes their own competing microcontrollers, which sure would have been news to me.

Edit: sees sibling posted at the same time. Well that would explain it.

rpcope1 · a day ago
They also sell feather and a bunch of other vaguely similar stuff and have their own "maker" ecosystem (think CircuitPython). I like Adafruit, but they are in many senses competitors to Arduino.
riedel · a day ago
I understand adafruit's take at it. But I guess they are simply plain wrong when saying 'incompatible', at least from a pure license perspective for the HW/firmware.

As other pointed out, companies like Google demonstrate, how open source can be used in a rather aggressive commercial strategy. However, I think the good news is that that the open hardware stuff is not rocket science and maintenance hell at this point (without the new Qualcomm bits). I guess it is now for others to step up and make the ecosystem resilient. That is IMHO the power of open source in case it works.

Deleted Comment

Animats · a day ago
"Anything that was open, stays open".

Now contemplate open Android and Google Play Services.

squarefoot · 19 hours ago
Was going to quote this exact line. Yes, what was open stays open, but unmaintained, then development/updates/patches are moved to the close(r) alternative until the hassle of running the open old one isn't worth the effort anymore and the need of updated/debugged libraries or board definitions forces the users to migrate. I wonder how doable would be a fork of the whole shebang with the online downloadable content hosted somewhere.
p0w3n3d · a day ago
They did a great job. We must recognise experts in this matter. They had help of other companies and hardware producers of course, but still...

Or even that they forbid to use different clients for YouTube

Y_Y · 16 hours ago
> Or even that they forbid to use different clients for YouTube

Ineffectively, thank God