There are thousands and thousands of demo boards, development platforms and reference designs that you can select from when starting your next electronic design. Choosing the right one will make all the difference in development time, effort required and path to success. Designers need to keep six key criteria in mind for board selection, but it will be up to you to decide how important each of them are relative to each other.
Peripheral Set
Identifying what inputs and outputs your system will have and how it will communicate with the rest of the system, as well as the world, can make all the difference. Do you need anything more than I2C or SPI? What about USB, CAN or some industrial-specific bus? Will it send data to the cloud or just communicate locally? How about audio or video? Make sure you look at the architecture of the main MCU/CPU for what peripherals it supports. Major suppliers and their architectures like ST Microelectronics STM32, Microchip PIC or AVR and NXP i.MX or LPC all offer varying functionality at multiple price points. Having all or even most of these needs met via a single board may save lots hardware development time and may also simplify software development as well.
Coding Environment
Another question to ask is what type of code base do you want to use? Traditional C/C++ IDEs like ARM Development Studio or GNU as well as modified versions like the Arduino IDE are the incumbents, but some new support for scripting languages like Java or Python have been making strides especially in non-commercial or rapid prototyping environments. Adafruit has aggressively supported their CircuitPython platform which is one of the easiest to implement for MCU-based designs. Other company’s boards are following their lead with over 150 boards now supporting the CircuitPython environment. Make sure your board, or more specifically your main CPU/MCU architecture, is supported by the coding environment you would like to use.
Ecosystem
In most designs, not every function is going to be ideally implemented on the board you choose. Leveraging simple add-on boards to expand functionality is built into some platforms. Raspberry Pi has hats, Arduino has shields, Beagleboard has capes, Adafruit Feather has wings and Mikroelektronika has clicks. Between these platforms there are thousands of add-on boards that expand functionality like sensors, wireless communication and motor control. If your expansion requirements are mostly sensor type needs, do not require high pin count devices and you would rather not use an add-on board, there are connector ecosystems like SEEED Grove, SparkFun Qwiic and Adafruit STEMMA which allow you to quickly add functionality via JST connectors.
Community and Support
Nothing can help shrink your development time like leveraging existing resources and available support. Make sure you see what already exists to help reduce the workload of your design. All boards are going have startup guides, sample projects and code you can leverage, but look beyond that for things like GitHub repositories, video tutorials, forums and third-party support. Check how many members their communities have and how active those members are. Don’t forget to look at alternative support mechanisms like Discord and Twitch, too.
If you are a startup or small OEM you may want to make sure that you will be able to leverage the design effort you put forth when taking your product to production. For example, there are some suppliers that focus mainly on high-volume customers and require NDAs just to have access to device datasheets. For most people in the concept/prototyping phase this may not be an issue since things will probably change significantly when moving to the next stage of their design, however it is still something to keep in mind.
Cost
There are many design environments where cost drives the decision process. However, if you are not going to production and this is being used for either prototyping, evaluation or maker type activities, you will probably save significant time and effort increasing your board budget a little to simplify and reduce the overall time and complexity of your design.
So how do you choose and where do you start? Luckily there is a fun way to begin your search. Digi-Key and Make Community have partnered together to create their 2020 Guide to Boards. Not only does it give a great overview of some of the most popular boards that exist, but the guide is accompanied by an app for both Android and iOS that allows you to visualize the platforms in augmented reality (AR). The guide is a great way to look at key features and help you decide which boards will be right for you. To view the guide, please visit https://www.digikey.com/boardsguide.
Author: David Sandys, Director, Technical Marketing, Digi-Key Electronics
Digi-Key Electronics | https://www.digikey.ro