My children recently received a Toniebox 2 for Christmas. It’s a cute little speaker cube that you operate by sticking plastic characters on top of; the characters have an RFID that tell the box what content to download and play. This unit worked great for about a month until one morning when it wouldn’t do anything, even after charging it, except repeat “Uh oh! Look up code word ‘fox.’ Contact…
In the mid-to-late 2000s, you either knew, or were, that kid in grade school. You know. The one who could put games on your graphing calculator. You may be surprised to learn that some of these people didn’t exist totally in a vaccuum. There was in fact a thriving scene of hackers who had bent these calculators to their will, writing games, math software, and more generally hacking on the platform…
Way back in late 2019 , I dissected a Reolink B800 IP camera to demonstrate the various parts of an embedded Linux system. It’s fairly nice hardware, actually—it has a 4K video sensor, a microphone, power over Ethernet, and is nominally waterproof. And yes, it runs Linux. It came in a “kit” of six cameras and an NVR (a dedicated recording box that also powers the cameras). Unfortunately, the NVR…
This is the fifth part of the Mastering Embedded Linux series, which is designed to help you become an expert at developing low-cost, customized embedded Linux systems. Previously , I provided an overview of the embedded Linux landscape, then dove straight into tutorials for compiling Raspberry Pi firmware using Buildroot. In this article and the next, I’m discussing how to apply these new…
This is the fourth part of the Mastering Embedded Linux series, which is designed to help you become an expert at developing low-cost custom embedded Linux systems. Continuing the ongoing theme of developing customized firmware, I’ll be discussing how to add high-level “features” to your firmware image by taking off-the-shelf open source software, configuring it, and integrating it into your…
After the success of my previous post regarding my business card that runs Linux on a diminuitive Allwinner F1C100s processor, I have received a ton of good mail about it. I’ve had people tell me they bought some for 61 cents (!) in moderate quantity on Taobao. Some people have asked for samples. Feel free to reach out if you have a project in mind! And I’ve had a couple people inquire about…
A lot of my friends get confused when they encounter more advanced Git topics such as git rebase . This misunderstanding typically arises during the first merge conflict that interrupts the rebase process. The central point of confusion is usually how Git can reapply one commit onto another. My friends are confused about why a snapshot could have a merge conflict. Shouldn’t it be obvious, they…
This Mastering Embedded Linux article is the first where the rubber hits the road. We’re walking through building Linux from source code and booting it on a Raspberry Pi. Whereas the previous articles have been all discussion, this one is equal parts discussion and tutorial. This article will introduce Buildroot , a toolkit for building highly customized embedded Linux images. Buildroot is the…
In the first part of this series, I discussed some of the core concepts surrounding embedded Linux, with the ultimate goal of empowering you to be able to build inexpensive embedded Linux systems. This part will look at some of the many, many devices you can use to develop with. I’ll also discuss some of the individual components you might use if you’re building your own. I will also recommend…
I recently built a business card that runs Linux. This is a detailed design log, plus a few random notes, from the build. If you want to see the blinkenlights, first you should go read my other blog post detailing the finished product. Designing the computer First and foremost, I would need to choose a Linux-capable processor, because it would be the driving factor in the affordability and…
I’m an embedded systems engineer. I spend a lot of my free time looking for things I could use in future designs, or things that tickle one of my fancies. One of those things is cheap Linux-capable computers, the cheaper the better. So I started diving into the very deep rabbit hole of obscure processors. I thought to myself, “These processors are nearly cheap enough to give away.” After a while I…
One of my favorite hobbies is hacking low-cost embedded systems that run Linux. These systems are absolutely everywhere: the combination of powerful yet inexpensive processors, mass production of consumer goods, and the flexibility of Linux means that hobbyists can buy or build an embedded device capable of running Linux, often for less than $10. I’ll say that again: not only is embedded Linux…
I am the proud owner of a new-to-me Puhui T-962. This is a reflow oven that can be bought fairly cheaply, but because the manufacturer cuts corners in several places, you have to do several modifications to make it usable. The main thing I did was install the replacement firmware written by Unified Engineering, and replace the masking tape (!) with kapton tape. Either firmware allows you to…
In the name of documenting some of my free time for fun and profit™, I am starting a blog. I am many things, but I am not a web developer, so I need something quick and easy to use. At the same time, as a programmer, I really appreciate the ability to script my text documents where needed, and to have automation around my chosen tools. I have elected to use the popular Hugo as the right…