These days, devices in the Internet of Things (IoT) come in all different shapes and sizes. They can be smart watches, smart TVs, smart robots in manufacturing, and smart sensors for weather monitoring. And each of those devices has different requirements. For example, many devices in manufacturing need real-time response for safety reasons. If an individual comes too close to an active machine, the machine should have IoT sensors to detect proximity and be able to instantly shut off.

On the other hand, for many other smart devices, an immediate response isn’t important. A two-second delay between your App and a smart thermostat telling the thermostat to warm up the room might not be a big issue because it takes some time before your heating warms up the room to the correct temperature.

Since the Internet of Things is so diverse, there’s no “one size fits all” when it comes to IoT device development. You’ll need different IoT development kits for different IoT use cases. Here’s a guide on how to find exactly what you need to achieve your IoT development goals.

Set up a simulated IoT Video surveillance device on your PC in minutes.

Our full-stack demos give you access to the Nabto Platform so you can try it now. We specialize in secure, low-latency, P2P connectivity. Get the demo app to try it.

Using Your IoT Development Kit

Developing and prototyping new IoT implementations is a delicate process. A device may need to be extremely complex or relatively simple depending on a number of factors, including how much data the device needs to collect or process, whether you need a real-time response, whether low power consumption is a priority, etc.

An IoT development kit provides hardware and firmware that allows you to create a prototype or even a Minimum Viable Product (MVP). A Minimum Viable Product is essentially a bare bones prototype version of a product that developers can roll out commercially to a small client base for testing purposes.

When you roll out an MVP and you’re trying to change the product based on testuser feedback, things can get complicated and expensive with new iterations unless you have an easy way to access and change the firmware. Firmware is essentially hardware that has basic software built-in. There’s no need for an additional software download to perform basic functions because those functions are already part of the device.

The problem with firmware is that it’s not always easy to change. For example, your computer has certain functions that you as the user have no ability to change through a typical operating system interface, such as the way your computer powers on and off. Those functions are built in. In order to change those functions, you would have to change the firmware itself.

That’s why IoT developers use development boards. Development boards have the firmware and essential hardware exposed, providing easy access to input/output (I/O) pins for customization purposes. I/O pins are small pieces of hardware that are part of many circuit boards and microcontroller units (MCUs). These pins are also what allow the hardware to send and receive signals and enable user interaction. You can use them to build custom circuitry and develop or change the firmware based on the specifications you have in mind for your product.

What to Look for in IoT Dev Boards

While you may find it daunting to find the right IoT development board for your project, there are some great options in the realm of Open Source Hardware, or OSHW. Chances are you’re already very familiar with the concept of open source software, which is software that exposes the source code so anyone can use or modify that code for personal projects. Open Source Hardware, similarly, refers to public hardware designs that anyone can use and modify. One example is the Arduino platform, which provides open-source board designs.

Whether an IoT development board is open-source or not, it needs to have certain capabilities for prototyping different features or products. First of all, any such board needs hardware that supports different types of connectivity. For example, some boards only support Wi-Fi or Bluetooth connectivity and need secondary hardware to support cellular connectivity, while other development boards have cellular connectivity built-in.

Different boards might also support different communication protocols, which are just like different languages that allow IoT devices to communicate with each other within an IoT system. One common communication protocol for IoT is the Inter-Integrated Circuit (I2C) protocol, which sends data in packets over short distances. Another is the Serial Peripheral Interface (SPI) protocol, which is also for short-distance communication but sends a stream of data continuously rather than sending packets. Other features to consider are how many ports a particular device may have for USB or HDMI for video streaming.

Different boards might also have different power specifications. Some boards allow for pulse-width modulation (PWM), while others don’t. PWM means switching power on and off rapidly rather than having a continuous stream of power. Dimmable LED lights use PWM, since LED lights actually flicker on and off at a high rate of speed, spending more time in the on position to maintain strong lighting and spending more time in the off position to maintain dimmer lighting. So, an example of an IoT device that uses PWM would be a smart dimmable light that you can control from, say, your smartphone or your smart watch.

Finally, you’ll need to know whether you need a microcontroller (MCU) or a microprocessor (MPU), since both have different capabilities and use cases.

Microcontroller (MCU) vs. Microprocessor (MPU)

It’s worth spending some time on what may be a commonly confused concept for newcomers in IoT development, which is the difference between a microcontroller unit (MCU) vs. a microprocessor, also called a Micro Processing Unit (MPU).

A microprocessor board will include a full operating system, usually Linux, embedded upon arrival. MPUs require more power than MCUs. Plus, most people use MPUs to perform multiple simultaneous tasks, or rather, task switching that occurs so quickly that it seems like multiple tasks are running simultaneously. MPUs have a lot going on, so they’re not always ideal for real-time tasks because there are too many variables to ensure accuracy and reliability every time. They also cost more than MCUs.

MCUs generally run a real-time operating system (RTOS), which is a very lightweight, simplified version of an operating system that can only perform one task or process at a time. The advantage is that focusing on one task allows MCUs to achieve a real-time response. This may be necessary in manufacturing, if, say, a fire breaks out in a machine and the machine needs a failsafe to turn off within milliseconds of detecting the fire. A user can assign RTOS tasks different levels of priority so that the most important failsafes always get priority over more mundane communication. A scheduler within the MCU will switch to that task immediately and drop whatever task the MCU is currently performing in order to achieve a faster response.

Some of the smallest development boards with MCUs, particularly those from Arduino, don’t have an operating system at all. Instead, they run a simple tick scheduler that can perform a simple task repetitively.

Since MCUs are lower-cost, they’re often used in resource-constrained IoT environments and applications. In other words, if you need 1000 IOT devices across a giant factory for monitoring and safety, you don’t want expensive, energy-heavy devices. You want relatively inexpensive, energy-light MCUs.

With that distinction out of the way, let’s take a look at the top IOT boards in circulation this year.

What Are the Top 10 IoT Boards in 2022?

When it comes to choosing the best microcontroller for IoT or the best microprocessor board, there are tons of options available. We’ll look at some of the most important specifications, including the processor type, memory, multimedia and connectivity capabilities, power specifications, inputs, and low-level I/O, meaning the communication systems and protocols you can use to input and output information to and from the device.

1. Giant Board

The Giant board is a single-board computer (SBC), meaning it has everything a computer needs to function all on a single circuit-board-like arrangement, including an MPU. Plus, the design is open-source, meaning you can make any desired modifications. Here are the details:

  • Microchip SAMA5D2 ARM Cortex-A5 processor
  • MicroSD
  • 128MB RAM
  • USB support
  • SPI, UART, and I2C communication support
  • Battery and USB power
  • Six 12-bit ADC channels
  • Embedded Linux OS

2. Arduino MKR GSM

The Arduino MKR GSM 1400 is excellent for prototyping devices since the Arduino has out-of-box 2G and 3G cell connectivity.

  • Low-power ARM Cortex-M0 SAMD21 processor
  • Embedded C and C++
  • 2G and 3G connectivity
  • SIM card compatible
  • Battery or USB powered
  • Tick scheduler rather than an OS

3. Raspberry Pi 4 Model B

The Raspberry Pi 4 Model B is a well-known SBC for hobbyists, programmers, even gamers. This model also has everything you might need to prototype IoT designs.

  • Broadcom BCM2711 processor
  • Up to 8GB SDRAM
  • Wireless internet, Bluetooth, Bluetooth Low Energy (BLE), and Ethernet connectivity
  • USB connectivity
  • HDMI and display port
  • Audio and video port
  • Power over Ethernet capabilities
  • Raspberry Pi OS

4. Arduino Uno REV3

The Arduino Uno REV3 is a lightweight development board with an MCU. There’s an even smaller and more basic version called the Arduino Uno Mini Limited as well, though most features remain the same between the two.

  • ATmega328P microcontroller
  • 32KB flash memory
  • 2KB SRAM
  • 14 digital I/O pins
  • PWM functionality
  • USB-C connection
  • Tick scheduler or RTOS-compatible

5. BeagleBone Green Gateway

BeagleBone is another relatively well-known resource for IoT dev boards. The Green Gateway has a solid level of RAM, flash storage, and a 1GHz processor, so the board is a bit more towards the heavy side as far as energy consumption and processing are concerned.

  • AM3358 1GHz ARM Cortex-A8 processor
  • 512MB RAM
  • 4GB flash storage
  • Micro USB support
  • UB 2.0 support
  • Ethernet connectivity
  • Wi-Fi connectivity
  • DC jack power input
  • Linux OS

6. ESP32-Gateway

The ESP32-Gateway development board from Olimex has a range of different connectivity options for IoT. It’s also ideal for industrial environments and wearables, since the board has a wide safe operating temperature range and very low power requirements.

  • Xtensa Dual-Core 32-bit LX6 MPU
  • BLE, Ethernet and WiFi connectivity
  • Ultra-low power consumption
  • 34 I/O pins
  • 10 touch sensors
  • PWM functionality
  • Cryptographic hardware acceleration
  • Compatible with various RTOS options

7. Jetson Nano

The Jetson Nano is on the heavier side of energy usage and processing power. The board can run multiple applications at the same time. Developers often use it for machine learning and AI projects.

  • Quad-core ARM A57 CPU
  • 2 GB memory
  • MicroSD storage
  • Ethernet and wireless internet connectivity
  • Camera connector
  • 40 I/O pins
  • HDMI connectivity
  • USB connectivity
  • I2C, I2S, SPI, and UART connectivity
  • Linux OS

8. Udoo Bolt V8

The Bolt V8 is an SBC developed by Udoo, but its processing capabilities are such that it’s around the level of a typical PC. The dev board is versatile enough for nearly any IOT project you may have in mind, except those with particularly resource-constrained IoT devices.

  • AMD Ryzen V165B processor
  • Microchip ATmega32U4 co-processor
  • Up to 32GB of RAM
  • AMD Radeon Vega 8 GPU
  • Two M.2 slots
  • Ethernet connectivity
  • Wi-Fi connectivity
  • USB connectivity
  • HDMI and DisplayPort connectivity
  • Linux or Windows OS

9. Particle Boron

The Particle Boron is tiny, even by the standards of a typical IoT development board. Still, it has plenty of features that make it ideal for prototyping.

  • STM32 ARM Cortex M3 microcontroller
  • 1MB flash memory
  • 128KB RAM
  • Wi-Fi connectivity
  • RTOS
  • 18 I/O pins
  • OSHW
  • Uses Device OS, a low-level basic operating system specific to Particle

10. BeagleBone Black

The BeagleBone Black is a bit unusual in that it includes a touch screen. Other than that, the Black board is a standard open-source development board design.

  • AM3358 ARM Cortex-A8 processor
  • MicroSD
  • SDIO, I2C, SPI, UART and PWM capabilities
  • HDMI and LCD plus audio capabilities
  • Ethernet, Wi-Fi, BLE and USB connectivity
  • MicroUSB power
  • Linux OS

Nabto’s IoT Development Board Demo Solutions

IoT development isn’t easy, but with these boards anyone from a hobbyist to a full on professional IoT developer can begin to test and prototype different IoT applications. Regardless of what development board you choose, you’ll need a method to test out the connectivity of your prototypes for different use cases. The Nabto Edge Embedded SDK provides remote connectivity and is open source. The SDK is compatible with Linux-based devices, so it’s perfect for many of the options mentioned above.

Additionally, using the Nabto Cloud Console, you can start to test out IoT apps and concepts with a computer and smartphone. Nabto provides demo apps for this purpose, including IoT video and thermostat apps.

All in all, Nabto is perfect for establishing a direct and secure remote connection to any IoT device or prototype.

Read Our Other Resources:

Learn the answer to How Much Will an IoT Device Cost Your Business

Want to learn more about P2P IoT?

Please visit the:
P2P IoT Academy

Deep dive Into our documentation?

Please visit the:
Nabto Platform Overview

Try our demo for Video Surveillance?

Please visit the:
Nabto Edge
Video Cam Demo

Looking for other Great posts?

###