How to Select the Best Electronic Development Board to Prototype Your New Product
There are lots of different electronic development kits available today that can be used to build an early proof-of-concept prototype for a new product.
The most popular choices are Arduino, Raspberry Pi, ESP32, and STM32. There are other boards like Teensy, Particle, AdaFruit Feather, BeagleBone and many others.
These kits are rarely used for production because of their high cost and large size, but they are fantastic options for creating an early functional prototype.
But how do you select the best development kit for your specific new product?
If you select the wrong kit, then it may not be able to do what you need it to do, or it will be really difficult to transition from prototype to production.
My goal here is not to review every single development board on the market, but instead to give you broader guidance on how to pick the best one for your specific project, so I’ll be focusing on the most popular options.
After reviewing some of the different development boards available, I’ll share with you the most important, yet the most commonly overlooked, criteria you must consider when selecting your development kit.
Then, I’ll share my suggestions for a few different specific use-cases.
Arduino
By far the most popular series of development boards is Arduino, and there are a lot of different Arduino boards available.
In the past, most Arduino boards used really old and slow, fairly pricey 8-bit microcontrollers and the boards were big because the focus was purely on education and keeping the design as simple as possible.
This includes the Arduino Uno, the Mega and Leonardo boards. You can easily see that these boards have lots of wasted space, and small size was not a priority.
The Arduino Micro is a much smaller board but it still uses an outdated microcontroller. These Arduinos are okay for some projects, but most projects need more computing power, a smaller size, and/or wireless connectivity.
Arduino now offers several boards that are much better fits for many projects. This includes their MKR series, and their Nano 33 series. You have to be careful because their standard Nano, and Nano Every boards still use outdated microcontrollers.
In most cases, and especially for Arduino boards, I suggest you stick with their boards that use Arm Cortex-M based microcontrollers, which means it has a higher performance 32-bit processor core.
Keep in mind, Arm Cortex-M is just a processor architecture that lots of chip makers license and implement in their microcontrollers. It is by far the most common microcontroller design used in commercial products.
For example, the Arduino Nano 33 BLE has an Arm Cortex-M microcontroller, but it actually uses a chip from Nordic Semiconductors. They embedded a Bluetooth radio along with the processor core, all in a single chip.
The Arduino Nano 33 BLE Sense adds lots of various sensors to the Arduino Nano 33 BLE board including temperature, humidity, light, sound, and barometric pressure, along with an accelerometer, gyroscope, and magnetometer.
Raspberry Pi
For a long time a Raspberry Pi pretty much meant one thing – it was a high-performance microprocessor board that could run a full operating system.
You can hook up a monitor and a keyboard and use one like a very small computer.
That’s great for building projects for fun, but not so great if you want to scale up to a production design. This is mostly because Raspberry Pi is overkill for a majority of products.
Unless you really need a high level of computing power, using a Raspberry Pi will overly complicate your project, make it more expensive to scale, drastically over inflate your manufacturing cost, and drain your batteries much faster.
You don’t want to pay the price for that type of processing performance unless you really do need it. For most projects, a microcontroller is a much better solution.
If you do really need that type of processing performance, then you’ll want to consider Raspberry Pi Compute Modules which are smaller versions of their DIY boards that are actually designed to be used inside commercial products.
One problem with using a Raspberry Pi in your project, even if you need that much computing power, is they can be challenging to find reliably in stock, especially at any type of volume.
I would suggest looking at similar alternatives that are available in stock such as the Banana Pi, Orange Pi, Rock Pi, and Nano Pi. The Banana Pi also has a Compute Module version.
Raspberry Pi Pico
Raspberry Pi has recently ventured into the world of microcontrollers. The Raspberry Pi Pico is their first microcontroller-based development board.
The Pico uses their very own custom designed microcontroller chip called the RP2040 which is another Arm Cortex-M controller.
It’s a very impressive 32-bit microcontroller that is very affordable and widely available in stock, but it doesn’t include any wireless connectivity.
Although it’s much smaller than the Arduino Uno, the Pico still has quite a bit of wasted space.
The Raspberry Pi Pico W still uses the RP2040 microcontroller but it adds on a WiFi radio module.
Interestingly, Arduino also has a board using this same Raspberry Pi microcontroller. It’s called the Arduino Nano 33 RP2040 Connect, a name which doesn’t exactly roll off the tongue!
ESP32
Although the Raspberry Pico W and the Arduino Nano 33 IoT offer WiFi capabilities, they both do so by bolting on a WiFi module in addition to the current microcontroller chip.
A much better solution is the Espressif ESP32 which is a super-fast microcontroller that embeds both WiFi and Bluetooth on a single integrated chip.
This is a much better solution for most projects because having everything in a single chip reduces complexity, cost, and size.
One reason I like this chip so much is because it has a super simple migration path from early prototyping to mass production.
You can purchase the ESP32 as a development board for early prototyping. But you can also just purchase the surface-mount module, and solder it onto your own custom PCB.
Or, you can purchase the bare ESP32 chip, which is hidden behind a shield for use in a totally custom design.
But that is rarely warranted until you reach volumes of several hundred thousand units due to the extra design complexity and increased certification costs.
STM32
If your product doesn’t require WiFi or Bluetooth, and it doesn’t need the processing power of a full microprocessor board, then in most cases the STM32 series from ST Microelectronics is my recommendation.
Although, the RP2040 from Raspberry Pi is also a great option for some projects.
One of the things I like best about the STM32 series is there are hundreds of different versions available with just about every set of features and performance levels in a microcontroller.
Just like the RP2040, the STM32 series is once again based on an Arm Cortex-M processor core.
The STM32 is probably the most common microcontroller used in commercial products that don’t necessarily need WiFi or Bluetooth. Although, many STM32 designs incorporate wireless connectivity through a separate module.
ST Microelectronics offers two families of development boards based on their STM32 microcontroller chips including Discovery boards and Nucleo boards.
The most important criteria to keep in mind when selecting your development board, beyond whether or not it can even do what you want, is to be sure to consider the migration path from early prototype to mass production.
Here’s a frequent mistake. Someone spends tons of effort building and programming their proof-of-concept prototype using a development kit.
Later, they discover that the development kit isn’t practical for production, and they have to start all over with a new design.
There are two common cases where this most frequently happens. One is an under-design mistake and the other is an over-design mistake.
A common under-design mistake is when someone builds an early prototype using a simple 8-bit Arduino, yet their full product really needs something with more features and performance.
Eventually they have to upgrade to a 32-bit microcontroller and rewrite a lot of their code and learn a totally new microcontroller.
Even worse, is the over-design mistake such as using a microprocessor based Raspberry Pi to develop a prototype that really only requires a microcontroller.
In that case, very little of the early prototype will carry over to the production version.
Let’s take a look at a few specific use cases.
If your product needs Bluetooth, but not WiFi, then I would suggest development kits that use a Nordic nRF52 series Bluetooth microcontroller, which is yes, Arm Cortex-M based.
If your product needs WiFi (and maybe Bluetooth too) then definitely go with the ESP32.
If your product doesn’t require either, then I’d suggest the ST Discovery and Nucleo boards based on the STM32. Or a board based on the Raspberry Pi RP2040 chip such as the Raspberry Pi Pico.
Other content you may like:
- Which ESP32 is Best for Your Project? [YouTube]
- ESP32 in a Commercial Product? – From Prototype to Production [YouTube]
- Introduction to the ESP32 Family of Wireless Microcontrollers (Updated 2024)
- Can You Use a Raspberry Pi for Mass Production?
- How to Choose the Right Arduino Board for Your Project
Sometimes the choice of microcontroller is made based on its peripheral feature set – and often no dev board exists. – In which case I made a special prototype board for mounting SMT micros – see jnewcomb.com
I also like to use the Microchip Curiosity Boards with Click Boards for added functionality.
Larry
Thank you Larry!
Nice post! You are on fire last days.
Don’t forget the Nordic nrf9160! It is focussed at LTE-M and NB-IOT cellular applications and also has GNSS onboard. At around $10 for the chip it is super cheap for what you get. The learning curve for Zephyr RTOS is a bit steep but in the end I have much more stable products using these boards. Actinius has a nice Dev board.
Thank you so much Thijs!