Top
Best
New

Posted by MilnerRoute 12/14/2025

Adafruit: Arduino’s Rules Are ‘Incompatible With Open Source’(thenewstack.io)
437 points | 248 comments
analog31 12/15/2025|
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 12/15/2025||
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 12/15/2025|||
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.

oneplane 12/15/2025|||
I think the comment mainly pointed out the distinction between education using digital methods, vs. educating about digital things.
FuriouslyAdrift 12/15/2025|||
Long long time ago in the classes I took, it was PIC16/32, breadboards, Forth, PLCs, ladder logic, etc.

More recently, kids can have a ton of fun programming STM32, making DACs, audio gear, robots, etc.

AlexeyBrin 12/15/2025||||
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.
organsnyder 12/15/2025|||
School IT departments are unlikely to allow this. Even if they don't have technical restrictions, they'll have policies that prohibit it (at least my kids' school district would).

School-issued devices are generally intended to be similar to devices a corporation would provision for non-technical workers.

AlexeyBrin 12/15/2025||
Honest question, if you buy (just a hypothetical, I assume most parents can't afford to buy one) a Chromebook for your kid that will be used in school, do you have to lock it down or can you enable the Linux system (assuming that you want to do that and that your kid is interested in learning to program).
bigfishrunning 12/15/2025|||
I think an old PC would be more useful then a chromebook to a kid interested in learning to program; also it avoids dealing with a School District IT Department, which have to defend themselves from all kinds of attack from annoying kids and parents, so are probably more technologically conservative then the average IT worker.

So my advice would be: Don't bother trying to provision a chrome-book to connect to some school network. Use a school-issued chromebook for school stuff (if that's what they issue...), use a normal PC for extracurricular learning.

For the record: my kids are in elementary school, and are issued lenovo laptops running windows. They are locked down to the point where they might as well be chromebooks; kids have unprivileged accounts and are allowed to run very few programs. This is as it should be; those computers are for a very specific purpose, and are not general purpose toys.

pxc 12/15/2025||
> a School District IT Department, which have to defend themselves from all kinds of attack from annoying kids

Indeed, when I was in school, the WiFi networks were very poorly secured, so it was easy for annoying kids to get their own computers onto school networks if other students were using school-issued laptops around them. Annoying!

bigfishrunning 12/15/2025||
I never said they did a great job keeping the network secure, I only meant to imply that they tend to default to "no" when asked for any kind of technical permission.
pxc 12/15/2025||
I was just joking that I myself may have known an annoying kid or two back when I was in school. ;)
evilduck 12/15/2025||||
Schools typically don't allow BYOD policies because of support costs and equitability between students. Assuming a school district even did allow this, they would only allow the student to use a managed Chrome profile and the school's device policy would lock out the Linux VM option and everything else that might become an in-class distraction.

If a kid wants to learn how to program, they're going to have to bring their own separate computer and it will be treated about the same as bringing their smartphone to class, i.e. not allowed except during very specific times, there would be concerns about liability of damage or theft from other students, and they probably wouldn't allow it on the school networks.

kldg 12/16/2025||
Can confirm no-BYOD policy is typical. I had to whine directly and without invitation to school principal to get an exemption for daughter. The trouble with no-BYOD is the kid must bring the school-controlled Chromebook home and connect to the home network for homework (which often requires Chromebook). Many US middle and high schools have an IT department of 1 or 2 people; it introduces abuse risk I think schools in general are not appreciating.

I see the problem with Chromebooks and cloud stuff more generally as being that it's difficult to see the productive use-case of programming outside just shuffling a bunch of data around. If your program's not actually doing something useful, it seems like it'd be difficult to imagine a career in it. -But if a kid can get a relay to trigger via button and then maybe via web interface and then maybe automate it, I think that opens the world of hacking up to them. You know, for $10, they can have a fully-solar (w/battery) thermometer or whatever they want -- the thermometer can feed a thermostat to energize a relay coil to start a heater or whatever.

-But I might be outlier, because in school we had robotics class a lot of kids were pumped for, but I was confused because we never did anything useful with them; it was more like an art class, except at least in art class we baked ashtrays for our parents. -But what am I supposed to do with a 5-watt robot that follows yellow tape?

froggit 12/15/2025||||
> (just a hypothetical, I assume most parents can't afford to buy one)

It used to be that high school students were required to have a graphing calculator. These had to be purchased by the student (iow by their parents) and without factoring in 20+ years of inflation costed more than some Chromebooks available today. I suspect there were (and still are) financial assistance programs as i've known students living below the poverty line and they were able to meet that requirement.

bombcar 12/15/2025|||
Most larger school systems (if they allowed it at all) would end up "locking" the device as if it were one of theirs for the duration, just like some companies allow you to bring your own laptop or phone, but it becomes "as if it were theirs" while it is managed.

Support costs, mainly.

A small school that does its own IT is more likely to be flexible.

evilduck 12/15/2025||||
Your personally owned Chromebook isn’t comparable to a school issued Chromebook at all. They’re more locked down and useless than a stock iPad. Kids cannot install Linux on them.
AlexeyBrin 12/15/2025||
This is why I said "that I fully own". I said nothing about a school issued Chromebook because I never touched one of these.
evilduck 12/15/2025||
You commented in context of digital education. The point is that your argument of Chromebooks comparing better to iPads doesn't apply in this situation. In fact they're often worse because schools deploy the cheapest, lowest common denominator Chromebooks with slow CPUs, horrible screen resolutions, inadequate RAM and terrible battery life. Kids hate them. The fact that good and uncrippled Chromebooks exists doesn't help them at all. A 5 year old iPad is likely a better experience and a more capable OS and device than a new Chromebook issued to students this fall, but the warranty and repair costs for schools dealing with careless kids don't add up to less so they get the cheaper option.
hulitu 12/15/2025|||
> 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).

Do you really own it ? Can you install linux or BSD _instead_ of ChromeOS ?

officeplant 12/15/2025|||
Yes[1], depending on the chromebook / chrometablet it will have varying levels of support for even swapping the firmware and running standard linux/BSD. Sometimes you will need to open up the laptop for a jumper/screw to adjust for enabling firmware flashing. Others its just turning on dev mode first.

[1]https://docs.mrchromebox.tech/docs/supported-devices.html

AlexeyBrin 12/15/2025|||
(My original comment was about about running a Linux VM inside ChromeOS.)

To answer your questions, it depends. On some Chromebook models you can wipe ChromeOS and install Linux.

GeekyBear 12/15/2025||||
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 12/15/2025||||
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.

AuthAuth 12/15/2025||
Even then an ipad is not good. An Ipad is good for digital art and thats it. For the same money you can buy a computer capable of 3d modeling, digital art and a drawing tablet buy some paint brushes and clay to do real life art.
assbuttbuttass 12/15/2025||||
> 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

evilduck 12/15/2025||
Your work Chromebook is completely incomparable to a school issued Chromebook. It's doubtful that your employer locks you out of literally everything that would allow you to develop software on-device. See my other comments in this thread.
bombcar 12/15/2025|||
People of HN-age are assuming that school Chromebooks are anything like the Apple-IIe or other computers they had "in the computer lab". Those machines had a "purpose" - but they were wide open for investigation by those who wanted to.

They're not. They're locked down as hard as they can be.

aleph_minus_one 12/15/2025|||
> It's doubtful that your employer locks you out of literally everything that would allow you to develop software on-device.

In strongly regulated industries, it is not unusual that you are indeed strongly locked out of this, and you need to create special requests to get access to the specific functionalities (as an exception) that you need for developing software on-device.

evilduck 12/15/2025||
Right, many people have to treat their local computer as a thin-client and do everything through a WebEx session or similar means, which makes the local device irrelevant. Or if you're regulated but have to be specifically exempted and allowed to work in a way that schools would never permit, then in that case you'd not be arguing in good faith that kids are able to learn to code and develop on a Chromebook since they can't.
aleph_minus_one 12/15/2025||
> Or if you're regulated but have to be specifically exempted and allowed to work in a way that schools would never permit, then in that case you'd not be arguing in good faith that kids are able to learn to code and develop on a Chromebook since they can't.

No, I just wanted to show that your claim

> It's doubtful that your employer locks you out of literally everything that would allow you to develop software on-device. See my other comments in this thread.

simply does not hold in practice.

--

Addendum: Additionally, from my school experience, rather the attempts to circumvent "abitrary" restrictions on the computers which were set up by the school made you a good coder. :-)

evilduck 12/15/2025||
I sense that your claims and suggestions here strongly suggest that your school experience is not a recent one where you were issued a locked down Chromebook.

I would encourage you to expand your lived experience here. Circumventing "arbitrary" restrictions today will burn a hardware fuse, brick it for actual school allowed purposes and cost your parents $170 to resolve. The age of innocently hacking on school property is long gone.

aleph_minus_one 12/15/2025||
> I sense that your claims and suggestions here strongly suggest that your school experience is not a recent one

Of course.

But nevertheless, I have a feeling that the central difference is not in "recent or not", but in the fact that older generations were simply much more rebellious in not wanting to accept the restrictions set on the school computers and willingness to do everything imaginable to circumvent them.

mips_avatar 12/15/2025|||
more like giving them a speed limited citi bike and expecting them to train for cyclocross.
chrsw 12/15/2025|||
Arduino was finished the moment it was acquired by Qualcomm.
ASalazarMX 12/15/2025||
Someone should do a conspiracy board showing why evil companies doing acquisitions have names that end in com.
TechSquidTV 12/15/2025|||
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.
schappim 12/16/2025|||
> cloud service is the only available option for students using school-issued Chromebooks

Perhaps Chromebooks are incompatible with open-source too?

sybercecurity 12/15/2025|||
> 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 12/15/2025||
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.

organsnyder 12/15/2025||
My kids are absolutely learning how to use AI: every syllabus has guidelines for when AI usage is acceptable (it's not a blanket prohibition against), and they talk about both the pragmatic and ethical implications of it.
aleph_minus_one 12/15/2025||
A school lesson where the teacher babbles about wishy-washy AI topics needs a lot less preparations by the teacher than a school lesson where he teaches scientifically sophisticated topics.
skybrian 12/16/2025|||
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?
blensor 12/15/2025|||
+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 12/15/2025||
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 12/15/2025||
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.
867-5309 12/15/2025||
it's actually because they are half the price of a windows laptop, which means double the devices per classroom
procaryote 12/15/2025||
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 12/15/2025||
+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 12/15/2025|||
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 12/15/2025|||
STM32 is great!

> nontrivial applications

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

crote 12/15/2025||
To give a very basic example: its times can't do input capture. This means you have no easy way to do high-accuracy pulse time measurement. Compare the two datasheets, and the STM33's timers literally have orders of magnitude more features.

Only having two UARTs can be limiting - and PIO is a no-go if you want offloaded parity checking and flow control. The PIO doesn't have an easy external clock input. No CAN or Ethernet makes usage in larger systems tricky. There's no USB Type-C comms support. Its ADC is anemic (only 4 channels, with 36 io pins?). There are no analog comparators. It doesn't have capacitive touch sensing. There's no EEPROM.

None of them are direct dealbreakers and you can work around most of them using external hardware - but why would you want to do so if you could also grab a MCU which has it fully integrated already?

rasz 12/15/2025|||
>This means you have no easy way to do high-accuracy pulse time measurement

is 2.5ns (https://github.com/gusmanb/logicanalyzer) to 3.3ns (https://github.com/schlae/pico-dram-tester) resolution not enough for you?

crote 12/15/2025||
That is exactly the problem: you need to use PIO to constantly read the pins, and analyze the bitstream in software. At high speeds this takes up a substantial fraction of your compute resources, and it makes any kind of sleep impossible.

On a STM32 you can just set up the timer and forget about it until you get a "hey, we saw a pulse at cycle 1234" interrupt. The two are not the same.

My argument wasn't "this is completely impossible", but "this is needlessly complicated".

schappim 12/16/2025||||
Thank you for the really detailed reply.
firesteelrain 12/15/2025|||
You can buy custom RP2040 boards and attach GPS. My projects are paired with an Si5351A and a 0.5 ppm TCXO. GPS gets you 1PPS
crote 12/15/2025||
Yes, but the goal was "accurate capture of timer count on input pulse", not "get a 1PPS pulse somewhere on your board".
firesteelrain 12/15/2025||
Agreed; RP2040 doesn’t have true timer input-capture like STM32 (no CNT->CCR latch on edge). That criticism is fair.

What Pico/RP2040 projects do instead is use a PIO state machine clocked from the system clock to deterministically timestamp edges (often DMA’d out). It avoids ISR latency and gives cycle-accurate edge timing relative to the MCU clock. It’s not a built-in capture peripheral, but it achieves the same practical result.

If you want a drop-in hardware capture block with filtering and prescalers, STM32 is the better choice. RP2040 trades fixed peripherals for a programmable timing fabric.

londons_explore 12/15/2025|||
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.

jakewins 12/15/2025|||
Can you give an example of a chip with software-defined IO coprocessors that is 1/4 the price? The pricing I’m getting on the RP2350 is 0.6EUR per chip.

When I’ve compared to other dual-core SoCs with programmable IO, like NXP with FlexIO (~€11) or ESP32 chips with RMT (~€1) they are much more expensive than the RP2350.. is there a selection of programmable IO chips I’m missing?

crote 12/15/2025|||
That's the thing: with proper dedicated peripherals you don't need the software-defined coprocessors.

Sure, they are great if you want to implement some obscure-yet-simple protocol, but in practice everyone is using the same handful of protocols everywhere.

Considering its limitations, betting on the PIO for crucial functionality is a huge risk for a company. If Raspberry Pi doesn't provide a well-tested library implementing the protocol I want (and I don't think they do this yet), I wouldn't want to bet on it.

I think they are an absolutely amazing concept in theory, but in practice it is mostly a disappointment for anything other than high-speed data output.

inferiorhuman 12/15/2025|||
In Cortex M33 land $15 will get you an entire NXP (or STM) dev board. An MCX-A156 will set you back about $5 which is about on par with an STM32H5. You can go cheaper than that in the MCX-A lineup if you need to. For what I'm working on the H5 is more than enough so I've not dug too deep into what NXP's FlexIO gives you in comparison. Plus STM's documentation is far more accessible than NXP's.

Now the old SAM3 chip in the Arudino Due is a different beast. Atmel restarted production and priced it at $9/ea. For 9k. Ouch. You can get knockoff Dues on Aliexpress for $10.

Edit: I'm only looking at single core MCUs here. The MCX-A and H5 lineups are single-core Cortex M33 MCUs. The SAM3 is a single core Cortex M3. The RP units are dual core M33. If the RP peripherals meet your needs I agree that's a great value (I'm seeing pricing of $1+ here).

Edit2: For dual core NXP is showing the i.MX RT700 at around $7.

muvlon 12/15/2025|||
People are discussing Arduino alternatives, so yes, we are firmly within hobbyist territory.
cameronh90 12/15/2025||
That's true in general, but people do use these hobbyist boards as an alternative to a manufacturer dev board when prototyping an actual product.

It's reasonably common in the home automation space. A fair few low volume (but still commercial nevertheless) products are built around ESP32 chips now because they started with ESPHome or NodeMCU. The biggest energy provider in the UK (Octopus) even have a smart meter interface built on the ESP32.

schappim 12/15/2025|||
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

scottbez1 12/15/2025|||
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.

procaryote 12/16/2025||
CMake doesn't spark joy, but it's not something you need to touch constantly. I figured out how to set up a basic cmake file and now I mostly need to touch it to set a project name, add or remove modules etc.

It was a while since I used arduino, but I remember having a harder time setting up a workflow that didn't need me to touch the arduino IDE.

dvh 12/15/2025|||
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 12/15/2025|||
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.
galleywest200 12/15/2025||
Pi Pico has a lower power mode that sleeps when not in use that draws well under 5v, but you the programmer have to activate it. I think it is called “lightsleep” but may be wrong.
DrewADesign 12/15/2025||
Huh, interesting. I haven’t played around with one in a few years.
05 12/15/2025||||
It has sleep current of 200microamps, so no longer than 40 days…
bigfishrunning 12/15/2025|||
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 12/15/2025|||
“ 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 12/15/2025||
>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 12/15/2025|||
> 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.

1718627440 12/15/2025|||
This is from a child comment that is dead, but I still wanted to answer:

> szundi

> If you go mainstream with your requirements, you don’t step on these though

Absolutely not. I am talking about things like the example in the README, which actually doesn't do anything, because they forgot the shift to make it write into the right field. Or they added "support" in 2012 for the only chip which is still sold, but forgot to update the register addresses, so now you have code for a newer chip, which uses the register addresses of the old chip. This does not work with either chip. And this is all with the libraries "officially" "provided" by Arduino.

szundi 12/15/2025|||
If you go mainstream with your requirements, you don’t step on these though
crote 12/15/2025||||
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.
jack_tripper 12/15/2025||
>The RP2xxx also comes with excellent documentation and libraries

Are they more in number and easier to use than the Arduino libraries?

>If anything, with the drag-n-drop flashing it is even easier to work with than an Arduino.

Why do you think the Arduino is more difficult than "drag-n-drop flashing" by comparison? Do you think one click is more difficult?

jameshart 12/15/2025|||
From a practical end user perspective, being able to buy a device, and download and install binaries onto it to make it perform a specific purpose by plugging it in and dragging the file over, is considerably easier than installing an IDE, and downloading compiling and installing from source.

Look at how Ben Eater built and set up the SIDKPico to serve as a SID audio chip in his 8 bit breadboard computer here: https://www.youtube.com/watch?v=nooPmXxO6K0

gadyke 12/15/2025||||
> Are they more in number and easier to use than the Arduino libraries?

It's not either/or, beyond what's in the native SDK RP2 boards also benefit from the Arduino ecosystem via the excellent and well maintained https://github.com/earlephilhower/arduino-pico

crote 12/15/2025|||
> Are they more in number and easier to use than the Arduino libraries?

I haven't done a direct comparison, but considering that the hobbyist ecosystem (which is the main source of those libs) is shifting over, it is just a matter of time.

> Why do you think the Arduino is more difficult than "drag-n-drop flashing" by comparison?

Because you need to install an IDE and mess around with things like serial drivers - and it gets a lot more complicated if you ever have to flash a bootloader. It's not hard, but it's definitely not as trivial as the RP2xxx's drag-n-drop.

procaryote 12/16/2025||||
I get the impression that pico with micropython does this pretty well. You can ignore the second core and PIO if you don't want them. They won't hurt you.
vrighter 12/16/2025|||
if you rely on hobbyist libraries, you will eventually have to read datasheets. They usually only contain the barest minimum possible that one can still call "working". Usually most of the functionality of the device you're using is just not supported. At which point it's datasheet time.

And before long, you'll find yourself reading datasheets first and doing your utmost to avoid the "ready made templates"

MPSimmons 12/15/2025||
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 12/15/2025||
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 12/15/2025||
I also really appreciate how routine ESPHome has made building sensor networks in my home. Really just incredibly useful software.
estimator7292 12/15/2025||
As a hacker and tinkerer I hate ESPHome. Yes it's super cool to have a turnkey "I want these sensors, give me firmware" but all of the code is hidden away and you can't easily modify or add to it.

If I want to run custom logic, I have to bundle a custom component into the esphome thing. Not bad I guess but I still don't like the lack of control

sambf 12/16/2025|||
You can definitely override existing and create custom C++ components in ESPHome without too much hassle. It allows lambdas in the YAML itself.
NegativeLatency 12/16/2025||||
my custom logic runs as something in home assistant usually, haven’t yet had a need to add stuff in the esphome config yet (although I could imagine many situations where it’s necessary)
MPSimmons 12/16/2025|||
Yeah, for sure. My more... uhh.. creative toys are definitely not ESPhome, but it's super cool that I can solder on a few wires to a DHT-11 and throw it in a closet with the weakest USB power plug I own, and end up with a great sensor.
Aurornis 12/15/2025|||
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 12/15/2025|||
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.
MPSimmons 12/16/2025||
No, not like there are with Arduino. Arduino is definitely the best I know of for embedded programming, and it has its place there, but I stopped trying to do real work with it.
cbdevidal 12/15/2025|||
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 12/15/2025||
For ESP32? You just install the VS Code extension and it does all the toolchain setup and you can flash with a button.
cbdevidal 12/15/2025|||
I don’t think that was available when I was starting and now I am set in my ways lol
Alexander-Barth 12/15/2025|||
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 12/15/2025||
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.

1718627440 12/16/2025||
> That and you can use an actual editor instead of the arduino "IDE"

Note that the Arduino IDE has a setting to edit files using any random program instead.

the__alchemist 12/15/2025|||
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 12/15/2025||
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.

dismalpedigree 12/15/2025||
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 12/15/2025||
Yeah. There is no reason to even touch the Arduino IDE anymore now that PlatformIO is so good.
arjie 12/15/2025||
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 12/15/2025||
> 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 12/15/2025||
Agree completely and I was writing arduino libraries almost 20 years ago
arjie 12/15/2025||
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.
vasco 12/15/2025|||
Same story on this side and same feelings. It doesn't matter to the mob, the perception is all. Who cares that there's a website which is not open source, you don't buy an arduino for the website. You buy it because it's cheap and easy to use. Otherwise everyone would still be flashing atmel 8s
jack_tripper 12/15/2025|||
>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.

Thanks you! Sad that HN gets ideologically captured in the same mob behavior instead of thinking logically and practically.

nottorp 12/15/2025||
The logical thinking is: are they going to make me dependent on some cloud service to develop for Arduino?

Don't know what Adafruit has a problem with, but the above is my problem.

vasco 12/15/2025|||
They can't do that. Maybe they can launch new versions later where they lock it down, but then we will just use something else.
1718627440 12/15/2025||
The latter is what this discussion is about. Will future Arduino released things still be usable for our means, or do we need to ditch them.
nottorp 12/15/2025||
Yep, it's fine to not consider future versions when you do say hobby projects, but I worked on a commercial Arduino based project that's supposed to run on top of poles on solar. For that I very much care if they plan to make it cloud dependent... and I don't assume sanity on part of management.
1718627440 12/15/2025||
> I worked on a commercial Arduino based project

Me too.

jack_tripper 12/15/2025||
What product?
1718627440 12/15/2025|||
Essentially a TCP/IP based pager for the event industry.
nottorp 12/15/2025||
Mine is even more boring - and on hold - but it’s reading data from some sensors and sends it over NB-IoT to a server.
1718627440 12/15/2025||
> and on hold

Due to the Qualcomm issue, or something else? I'm working for a small company, so we will likely just ignore it.

nottorp 12/15/2025||
No no. Customer got acquired the 32th time (been working for them for a long time occasionally) and they’re “reevaluating the ongoing projects.”
jack_tripper 12/15/2025|||
>The logical thinking is: are they going to make me dependent on some cloud service to develop for Arduino?

The logic to me is "how can they do that?". You don't need a cloud service to program a microcontroller and they can't force that upon you even if they'd want to since the arduino board is not an iPhone.

ethbr1 12/15/2025|||
> "how can they do that?"

License future important libraries only for use via their cloud toolchain?

Stop contributing support to non-cloud toolchain and/or intentionally break it?

Slip more restrictive licensing into new easy to use features (like a vision service) that taint combined products?

Never underestimate a company's ability to pay lawyers to restrict freedom.

1718627440 12/16/2025|||
The issue with that is that they don't even own the (exclusive) rights to "their" libraries. They are nothing more than a package repository.
jack_tripper 12/15/2025|||
How? Libraries are all open source by the community. Arduino AVR doesn't need proprietary microcode to boot= and run.
nottorp 12/15/2025||
Last Arduino I worked with is one of those ARMs that pretend they're an AVR, for example.
stephen_g 12/15/2025|||
They could very much force it on you, for new units at least - depending on what micro is on the boards, they could potentially very easy start shipping them with locked bootloaders (and disabled JTAG/SWD porrts) that would only run binaries that are signed by them.

They could potentially have their software load a unexpectedly re-flash existing units with a locked bootloader too, it would just be harder to keep the key secret (because the tool flashing the new bootloader on the first time would need to know it)

1718627440 12/16/2025||
How the hell would such a thing still suitable for development, which is what their primary use case is now?
skybrian 12/15/2025||
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 12/15/2025|
More importantly, do they still allow local development or you're now depending on the "cloud" ?
ErroneousBosh 12/15/2025|||
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".

Beretta_Vexee 12/15/2025||
They've been adding lots of stuff to the microcontroller for a long time.

https://store.arduino.cc/products/uno-q

"- All-in-one toolbox: Arduino UNO Q combines the powerful Qualcomm® Dragonwing™ QRB2210 microprocessor (MPU) with a real-time STM32U585 microcontroller (MCU) – no matter what you’re building, it’s your new go-to tool! - AI in a blink: unlock AI-powered vision and sound solutions that react to their environment."

ErroneousBosh 12/15/2025||
Okay, so if you want to use a microprocessor that isn't targetted by an open-source compiler and assembler, you're going to have to use proprietary stuff.

You can just not buy their product.

8cvor6j844qw_d6 12/15/2025|||
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.

Surac 12/15/2025||
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 12/15/2025||
> 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 12/15/2025|||
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 12/15/2025|||
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.

1718627440 12/15/2025||
Actually the Arduino IDE is just the (crappy) build system (and a (subpar) package manager). Replacing it is trivial, see my sibling comment.
robert_foss 12/15/2025|||
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 12/15/2025||
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.

jsheard 12/15/2025|||
> 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.

Qualcomm doesn't even make small/cheap MCUs so they aren't going to win over that market by buying Arduino. Their first board post-acquisition is a mashup of a Linux SBC with an MCU devkit, and while the Linux SOC is from QCOM, the MCU is from ST Micro.

jack_tripper 12/15/2025|||
>Atmel had shipped 500 million AVR flash microcontrollers, due in large part to the ecosystem created by Arduino.

How do you know the 500 million sales is due to the Arduino ecosystem?

I used to work in embedded for 10+ years and in the 4 companies I worked at so far, none of the products ever featured AVR microcontrollers. The microcontroller of choice for production was always based on the feature/cost ratio for each application, never on the "is it part of the Arduino ecosystem?" question.

Tinkering with Arduino at home, and building products for mass production, have widely different considerations.

tor825gl 12/15/2025|||
If they sold 500 million microcontrollers and your workplaces never bought any, then your experience doesn't tell us anything about why the people that did buy them, bought them.
bigfishrunning 12/15/2025||||
All of the products that i've been involved with that included AVR microcontrollers are from before the Arduino platform existed. The STMicro ARM M3 chips are more capable and cheaper then the 8-bit AVRs; The Arduino IDE never factored into the decision, even at the height of its popularity.
blagie 12/17/2025||
FWIW: I've used Arduinos, but never with their IDE.

AVR was super-developer-friendly well before the Arduino. It replaced the PIC for a lot of hobbyist projects.

To the points in the thread, on major product development, these things don't matter. On the long tail of smaller products, as well as on unexpected successes, they do.

bluGill 12/15/2025|||
That is the downside. you can prototype with one chip and when the concept works switch. I've worked with many projects over the years where that was done. Sometimes an intern proved it works with arduino - which wat cheap enough to buy without needing supply management, but then we did the project with 'good code' on our internal controllers. Othertimes we bought a competitor andiagain first thing switched them to our controllers. (Our controllers are designed for harsh environments which means millions of dollars spent designing the case and connectors)
timinou 12/15/2025||
Your English is perfectly understandable :)
MrJohz 12/15/2025||
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.

malfist 12/15/2025||
Adafruit is not an arduino competitor. They sell arduinos
sunnyps 12/15/2025|||
They sell Arduino compatible boards (amongst other things) from what I gather, so yes, they would be competitors.
andrewflnr 12/15/2025||||
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.

sho_hn 12/15/2025||
Historically neither of them made any microcontrollers. Arduino shipped Atmel and Raspberry Pi chips. Adafruit has boards with a variety of microcontrollers from various brands on them.

This is different now that Arduino is Qualcomm-owned and ships Qualcomm silicon, of course.

inferiorhuman 12/15/2025||
To be fair they're shipping Qualcomm+STM silicon now.
rpcope1 12/15/2025|||
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 12/15/2025|||
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.

dec0dedab0de 12/15/2025|||
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.

Animats 12/15/2025||
"Anything that was open, stays open".

Now contemplate open Android and Google Play Services.

squarefoot 12/15/2025||
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 12/15/2025||
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 12/15/2025||
> Or even that they forbid to use different clients for YouTube

Ineffectively, thank God

quailfarmer 12/15/2025||
Adafruit is pretty clearly the front-runner these days in the educational/hobbyist market, Arduino (and even SparkFun) have fallen by the wayside. My only gripe is the focus on micropython these days, it can introduce a barrier later in the learning process when you eventually need to leave the nicely organized sandbox. They still support the “Arduino” C++ libraries, but uPy is the default.
hellweaver666 12/15/2025||
Adafruit actually focus on CircuitPython which is a fork of Micro Python but takes some of the complexity of Micro Python away. I don't personally like coding in C++ as I started my career with Perl then PHP and Javascript. Writing Python in my own choice of text editor instead of the Arduino IDE is much more my style.
rahimnathwani 12/15/2025||
A couple of weeks ago, I bought a 'sensor kit' from Amazon for my son to use with his Raspberry Pi. It includes some input devices (e.g. button, moisture sensor) and output devices (e.g. LED) that can be plugged onto breadboard.

The setup instructions included something to do with CircuitPython. I had not heard of it before then: https://github.com/sunfounder/universal-maker-sensor-kit/blo...

shevy-java 12/15/2025||
Using python makes sense though - it widens the user base. Not everyone is a C++ guru.
greengrass42 12/16/2025|||
I can't afford the luxury of an interpreted language due to the speed hit.
bathwaterpizza 12/15/2025|||
In my experience LLMs can code C++ for the Arduino framework pretty well these days. The mistakes they make, like wrong pin numbers, are pretty language agnostic.
7moritz7 12/15/2025|
> Chief microcontroller rival Adafruit

They are PCB brands. The microcontrollers are made by the usual manufacturers like ST, Renesas, Infineon...

sho_hn 12/15/2025|
I agree the writing is imprecise.

But of course Arduino historically also didn't make the Atmel or Pico chips, so I can sort of see what they were going for.

chrisjj 12/15/2025||
The writing is precise. Just inaccurate.
More comments...