TinyML Has Hit a New Low

One dollar is all it takes to get started building tinyML applications with Jon Nordby's emlearn-compatible development board with sensors.

Nick Bild
16 days agoMachine Learning & AI
These tinyML sensor boards cost only one dollar (📷: Jon Nordby)

If you are keeping up on the latest news in the world of machine learning, which is presently heavily focused on cutting-edge generative AI applications like large language models and text-to-image generators, it might seem like an expensive field to jump into. Make no mistake, it absolutely can be. Training and running inferences on these models can cost from thousands to millions of dollars in terms of computing resources and energy expenses. But no discussion of machine learning is complete without talking about tinyML, which sits at the other end of the spectrum in terms of cost.

But just how low can you go? These algorithms require tons of memory and compute power, right? That is not necessarily true. There are many very useful applications, like activity recognition, person detection, and predictive maintenance, to name a few, that can run on highly resource-constrained hardware platforms. Jon Nordby, a machine learning engineer that specializes in IoT development, wanted to find out just how constrained and inexpensive these platforms could be and still serve useful purposes. So, Nordby set a goal of building a development board suitable for tinyML applications, with a price target of one dollar in parts.

The diminutive board that was designed is centered around a Puya PY32F003 microcontroller with an Arm Cortex-M0+ CPU. This may not be especially powerful, but it is sufficient for many applications. A Holtek BC7161 Bluetooth Low Energy beacon was included for communication, and a LIR1220 button cell battery and charger were included to round out the base of the build.

Now, to be of much use, the device will need to be able to capture some information about its environment for analysis. For this reason, the board was given some sensing options. In particular, a STMicroelectronics LIS3DH three-axis accelerometer was included to capture data related to motion and acceleration, and a MEMS microphone was also added in to record sound.

The total cost of these components is $0.90, which leaves just enough room to purchase the passive components, like resistors and capacitors and still stay within budget. Of course the PCB still needs to be manufactured and populated, which is quite inexpensive for a board this size, but would still push the total over a dollar in single-unit quantities. Nordby notes that if you need a few hundred boards, the total cost would still be under a dollar, however. There are also opportunities to drop the accelerometer, microphone, and battery to save some cash depending on what the devices will be used for.

Programming these custom boards should be pretty straightforward, as they were designed to be compatible with emlearn. This framework allows developers to train their models in Python, then run inferences on any device, even low-power microcontrollers like the Puya PY32F003, with a C99 compiler.

If you want to build your own copy of this development board to experiment with tinyML, make sure you check out Nordby’s project write-up for all the details that you will need. Design files and source code are also available on GitHub to give you a running start.

Nick Bild
R&D, creativity, and building the next big thing you never knew you wanted are my specialties.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles