Arduino: The Workbench My Firmware Is Built On
Whenever I describe what’s inside these gadgets, one question reliably follows: “what’s the software written in?” The answer — C++ on the Arduino framework — sometimes gets a raised eyebrow from software folks, because Arduino has a reputation as the beginner’s tool. That reputation is about twenty years stale, and the full story is more interesting.
What Arduino actually is
Arduino started in 2005 at a design school in Italy, built so art and design students could make interactive things without first earning an electrical engineering degree. It grew into three things wearing one name:
- An editor — the Arduino IDE, a free program where you write code and click one button to install it on a chip.
- A framework — a library layer that turns “configure timer registers and manage the SPI peripheral” into readable function calls, wrapped around the world’s simplest program structure:
setup()runs once at power-on,loop()runs forever after. - An ecosystem — thousands of open-source libraries for nearly every sensor, screen, and protocol ever soldered to a hobby board, plus twenty years of forum answers for every mistake you’re about to make.
The framework’s quiet superpower is portability. Chip makers publish Arduino “cores” for their processors — and Espressif, who make the ESP32 inside every PlankLabs gadget, built theirs directly on top of ESP-IDF, their professional development kit, with the FreeRTOS real-time scheduler underneath. Write against the Arduino layer and you’re not in a sandbox; you’re standing on industrial plumbing with friendlier handles.
The “toy” myth, retired
Here’s the part the eyebrow-raisers miss: the training wheels are optional, and nothing stops you from pedaling hard. Arduino code is real C++ — when a project outgrows the conveniences, you reach past them into the full chip: both cores, direct display control, watchdog timers, the works. The framework never objects.
The honest engineering argument for Arduino in a product isn’t “it’s easy.” It’s this: a one-person shop should spend its complexity budget on the product, not the plumbing. The framework and its ecosystem handle the solved problems — WiFi joining, HTTP fetching, touch reading — while the firmware effort goes where buyers feel it: parsing a different data source for every gadget, squeezing smooth animation through a modest SPI pipe, surviving flaky networks gracefully, and the hundred small behaviors that separate an instrument from a demo.
What makes firmware production-grade was never the logo on the toolchain. It’s the discipline around it: every PlankLabs firmware build is validated on real hardware watching real data before it ships, updates roll out over the air so improvements reach gadgets already on desks, and the code assumes the network will misbehave — because it will.
Why this should tempt you
The genuinely wonderful thing about building on Arduino is that the entire toolchain is free and public. The same IDE, the same framework, even the same board — all of it is available to anyone for the price of a takeout order.
That has a consequence I love: a PlankLabs gadget isn’t magic. It’s the maker path taken seriously — the same first steps available to you tonight, plus a few thousand hours of stubbornness. Download the IDE, buy any ESP32 board, blink an LED before bed. Fair warning, though: that’s exactly how this lab started, and now there are seven products and two 3D printers involved. Blinking LEDs escalate.
QUICK ANSWERS
Fair questions
Is Arduino a programming language?
Not really. Arduino code is C++ with training wheels bolted on: a friendly library layer, some conveniences, and a simple program structure (setup runs once, loop runs forever). When you write Arduino code, you’re writing genuine C++ that compiles down to instructions the chip executes directly.
Do PlankLabs gadgets run an operating system?
Nothing like Windows or Linux. Under the Arduino layer for the ESP32 sits FreeRTOS, a tiny real-time task scheduler that lets the firmware juggle jobs (drawing, networking, touch input) with microsecond discipline. There’s no desktop, no file system full of apps, nothing to corrupt when the power blinks. One program, one job, always.
Can I reprogram a PlankLabs gadget myself?
They ship as finished, warrantied products with validated firmware and automatic updates. They are not development kits, so reflashing one isn’t supported. But if the itch is real: the identical board is inexpensive and publicly documented, and building your own thing on one is a fantastic first project. That’s how this whole shop started.
What would I need to try Arduino myself?
A computer, a USB cable, and almost any hobby microcontroller board (an ESP32 dev board costs less than lunch). The IDE is a free download from arduino.cc, and you’ll have an LED blinking inside fifteen minutes. Warning: LED blinking has a documented tendency to escalate into weather stations.
MORE LAB NOTES
- How to Choose a Desktop Flight Tracker: 5 Questions to Ask
- Magnitude vs. Intensity: The Two Numbers Every Earthquake Gets
- What Is a Starlink Train? The String of Lights, Explained
- Weather Watch vs. Warning vs. Advisory: The Severity Ladder
- The Board Inside Every PlankLabs Gadget
- The Printers Behind the Shells: a Flashforge AD5X and a Bambu Lab X2D
- How the Outdoor Score Works: One Honest Number for “Should I Be Outside?”
- How to Read a Tide Chart (and Why Old Tide Clocks Drift)
- What Is ADS-B? How Flight Tracking Actually Works
- When Can You Actually See the ISS? Visibility Windows, Explained
- Is It Your WiFi or Your ISP? How to Tell in 60 Seconds