The number of devices connected to the internet of things (IoT) is growing exponentially each year. This is being driven by multiple factors, including the ubiquity of WiFi in consumer homes and workplaces, the falling prices of WiFi connectivity, and consumers expecting more and more of their devices to be controllable using apps.
Fundamental to this IoT adoption is connectivity, specifically WiFi modules and chips. So, when developing your own IoT project, it’s crucial to determine which is the best IoT WiFi module for you. Therefore, we are going to discuss what you need to consider when making your choice.
What is an IoT WiFi module?
There are two main categories of WiFi modules for IoT:
- A “single” solution where the MCU runs the WiFi stack and the host application in one chip
- A “host processor + WiFi module” solution where the wireless connectivity solution contains the WiFi stack, and a separate processor runs the host application.
More details on these two categories are provided in the section below. Here we will mainly focuses on the second category, as this is the more commonly used architecture for commercial IoT projects. This category of WiFi Module contains two main hardware parts:
- a WiFi system on Chip (SoC)
- an application host processor
The WiFi SoC subsystem includes an integrated antenna or an RF connector for an external antenna, 802.11 radio physical layer, baseband, and MAC layer with crypto engines for security. The application host processor contains ROM, RAM, and internal or external flash.
A module generally comes with a number of I/O’s such as timers, ADCs, DACs, crystal oscillators, serial communication interfaces, and others to allow a broad range of applications. Further, the power management subsystem enables low power modes, such as hibernating with RTC mode, and also includes integrated DC-DC converters to support a wide range of power supplies.
When it comes to software, an IoT WiFi module usually encompasses a device driver, an integrated 802.11 security layer, and a management and monitoring utility.
What are the advantages of using an IoT WiFi module?
Using an IoT WiFi module greatly simplifies the connectivity design process. While it’s possible to fit a WiFi chip to your device that has not been pre-installed onto a module, the designer faces a formidable task building a custom implementation, which is usually outside of the scope of most embedded device manufacturers.
What’s more, most modules are calibrated, tested, and certified by the relevant regulatory bodies, such as the FCC in the USA, or EMC directives in the EU. Therefore, they can provide a plug-and-play solution that reduces the need for custom hardware development, allowing a fast, go-to-market solution.
What do you need to consider when choosing the best IoT WiFi module for you?
Manufacturers usually list the modules by various parameters, including RF band, data rate, range, and certification, etc. Therefore, it’s important to filter your WiFi module search based on the parameters that satisfy the required application specifications.
Here are some of the most important parameters that you need to consider when choosing the best IoT WiFi module for your project.
- IoT architecture: An important decision you must make is whether the solution should be a “single” or “host processor + WiFi module” solution
- A “single” solution is where the IoT MCU runs the WiFi stack and the host application in one chip. This configuration is an ideal fit for embedded devices where physical layout size is the main priority as it eliminates several external components that are now all integrated. Since the components can be shared in the wireless MCU configuration, this leads to fewer components, which helps to simplify PCB routing and layout considerations.On the software side, this configuration is perfect for small-to-medium RF protocol stacks where memory can be evenly allocated between the physical layer and top-layer application. Finally, these advantages help minimize the bill of materials (BOM) and physical board space to fit size-constrained and cost-optimized IoT applications. A few WiFi modules like ESP32, CC3200, and SAMW25 are perfectly suited for this type of IoT architecture. Remote monitoring and smart security systems, asset tracking and wearable body monitoring are a few IoT applications built on this architecture.
- A “host processor + WiFi module” solution is where the wireless connectivity solution contains the WiFi stack, and a separate processor runs the host application. This architecture is ideal for well-defined and fully matured WiFi technology that does not change frequently. It allows for minimal WiFi overhead on the MCU and simplifies the code development effort since developers can rely on the packaged WiFi stack. The separation of the WiFi stack and the application layer allows the MCU to invest maximum hardware resources and bandwidth on the IoT application. WiFi modules such as ESP8266 and CC3100 are apt for this kind of IoT architecture. IoT applications like home automation, smart appliances, smart energy meters are a few examples that use this type of architecture.
- WiFi Protocol Support: The IEEE 802.11 represents the family of wireless LAN standards that operate mostly in the unlicensed frequency bands. Today, there are many standards like 802.11 a/b/g/j/n/p/ac/ad/ah in use, and each standard has different specification requirements. There are three key factors to trade-off when selecting these protocols: data rate, range, and power requirements. Protocols like 802.11n, 802.11ac and 802.11ah have the advantage of a higher data rate for IoT multimedia applications. Alternatively, protocols like 802.11b/g have the advantage in power requirements. Therefore, as per the project requirements, the best IoT WiFI module for you depends on the demands and uses of your IoT application.
- Operating Frequency: IEEE 802.11 standards operate in different specified frequency ranges and are divided into a multitude of channels. Countries have their own rules and regulations to determine the allowable channels, users, and maximum power levels to use within these frequency bands. These days, many WiFi modules like CC3235MOD, RS9113-N00-D0C-X68 and others, come up with dual-band support in 5GHz and 2.4GHz and provide flexibility in how mobile IoT devices are deployed and managed.
- Secure WiFi Support: Today, the security of data transmission over the internet is a major challenge. Therefore, before allowing IoT devices to connect to a network using WiFi, it is important to make sure the WiFi supports the required security standards. All the best IoT WiFi modules support at least one of the various WiFi security standards like WPA, WPA2, WPA3, WPS or others. Each security standard has its advantages and disadvantages, so it’s important to select the module that best suits your security needs.
- Hardware Interfaces: Usually, WiFi modules are bundled with many I/Os and peripheral interface support to suit different needs. The USB, SPI or SDIO interfaces are preferred to support high data throughput applications. Otherwise, the typical interface is through a UART, I2C, I2S and others.
- Certification: Countries have their own regulatory certifications and for IoT devices to enter those markets, they need to comply with those regulations. Therefore, for commercial applications, it’s vital to select WiFi modules that have RF-certified shielding, such as by the FCC.
What are some of the popular modules on the market?
There are numerous WiFi IoT modules from various manufacturers available on the market. Every module has different specifications and features. Therefore, it’s important to go through the datasheet of each module before finalizing your decision.
ESP32 by Espressif
ESP32 is a family of powerful modules from Espressif, which integrates WiFi, Bluetooth, and Bluetooth LE to ensure that a wide range of IoT and AIoT (Artificial Intelligence + IoT) applications are catered for.
These modules come with 802.11 b/g/n (802.11n up to 150 Mbps) 2.4 GHz WiFi protocol, Bluetooth V4.2 BR/EDR, and Bluetooth LE specification protocol. They have a wide range of peripherals such as UART, SPI, SDIO, I2C, I2S, IR, pulse counter, GPIO, capacitive touch sensor, Hall sensor, ADC, DAC, and many others. They come in three different categories:
- ESP32-WROOM series: Based on ESP32-D0WD dual-core with a dimension of 18 × 25.5 × 3.1 mm, a maximum clock frequency of 240 MHz, integrated flash up to 16MB and is perfectly suitable for IoT applications.
- ESP32-SOLO series: These modules are cost-effective solutions for IoT applications that are based on ESP32-S0WD single-core with a maximum clock frequency of 160 MHz, 4MB of integrated flash memory, with dimensions of 18 × 25.5 × 3.1 mm.
- ESP32-WROVER series: Based on ESP32-D0WD SoC with dimensions of 18 × 31.4 × 3.3 mm, clock frequency up to 240 MHz, integrated flash memory ranging to 16MB, and 8MB SPIRAM, that offers fine dual-core performance suited for AIoT and gateway applications.
CC3200 by Texas Instruments
CC3200 is an IoT WiFi module from Texas Instruments. It has a 32-bit ARM Cortex-M4 wireless MCU, which offloads WiFi and internet protocols from the application MCU. The WiFi network processor subsystem features a WiFi internet-on-a-chip operating at 2.4 GHz with WPA2 network security.
This also includes an 802.11b/g/n radio, baseband, and MAC with a powerful crypto engine for security. It has a wide variety of peripherals such as UART, SPI, I2S, I2C, ADC and others. The CC3200 family of WiFi modules include ROM with external flash bootloader and drivers and flexible embedded RAM for code and data. Variants of the CC3200 family that are also popular are CC3200MOD, CC3220S, CC3220R, CC3220SF, CC3220MOD, and CC3230S.
SAMW25 by Microchip
SAMW25 is a WiFi IoT solution from Microchip. It uses the SAMD21 ARM Cortex-M0 plus MCU to run the host application that includes the API and an SPI driver for interfacing to the onboard WiFi SoC. The WiFi subsystem uses the ultra-low-power WINC1500, a fully certified IEEE 802.11 b/g/n IoT network controller with integrated TCP/IP and WiFi stack. This module also includes 4 Mbit internal flash memory with OTA firmware upgrade, SPI, UART, I2C as host interfaces and many other peripherals. It supports WiFi Direct, station mode, SoftAP, network protocols (DHCP/DNS), including secure TLS stack and can operate completely host-less in most applications.
Explore Our Other IoT Resources
Now you’ve read our guide on how to choose the best WiFi module for IoT, why not explore our other IoT resources, including:
- How to set up an ESP8266 Wi-Fi module using the Nabto server peer-to-peer connection.
- A guide to ESP8266 for IoT and ESP32 for IoT, explaining the ins and outs of the different modules and development boards available built around these chips.
- A complete Guide to Microcontrollers for IoT, which explains all your options when it comes to choosing an MCU for your project.
- How to choose the best RTOS for IoT devices, which explains what you need to consider when making your choice.