Tag Archives: IoT Gateway

The smart router is ready for IoT play


The evolution of router has reached the IoT’s doorsteps, and it raises some interesting prospects for industrial and smart home markets.


The router used to be largely a dumb device. Not anymore in the Internet of Things arena where node intelligence is imperative to make a play of the sheer amount of data acquired from sensors, machines and other ‘things.’ The IoT router marks a new era of network intelligence — but what makes a router smart?

owtbrd.png

For starters, it employs embedded hardware platforms with DIY capabilities while balancing the performance and power consumption requirements. Next, an IoT router provides the operational status on an LCD screen while manipulating the data from different interfaces. In human machine interface (HMI) applications, for example, a smart router offers LCD and touch screen interfaces on expansion I/Os.

Take the case of the DAB-OWRT-53 smart router, which is developed by the Belgian design house DAB-Embedded. The sub-100 euro device — based on Atmel’s SAMA5D36 processor and OpenWRT router hardware platform — is mainly targeted at smart home and industrial IoT applications.

The smart router of DAB-Embedded

The IoT router supports popular wireless interfaces such as Wi-Fi, ZigBee and Z-Wave, as well as a diverse number of wired interfaces including Ethernet, USB, CAN 2.0A/B, KNX and RS-232. And all the data from these interfaces can be stored in either microSD card or NAND flash.

Anatomy of Smart Router

The Atmel | SMART SAMA5D36 is at the heart of the smart router design. First and foremost, it optimizes power consumption in the battery-operated router that features 3.7V lithium polymer battery support with charging capability over a microUSB connector. The router boasts eight hours of battery lifetime while being in full ON mode with Wi-Fi communications.

Second, the ARM Cortex-A5 processor shows a robust performance in the communications domain. For instance, the SAMA5D36 implements routing functionality to transfer data from one Ethernet port to another in a way that router designers don’t require an external hardware hub or switch. Moreover, Atmel’s MPU offers greater flexibility to run a lot of embedded software packages such as OpenZWave and LinuxMCE.

Third, the SAMA5D36-based IoT router offers users the ability to manipulate firewall settings, Disable PING, Telnet, SSH and UPnP features. Furthermore, the hardware security block in SAMA5D3 processor allows the use of CryptoDev Linux drivers to speed up the OpenSSL implementation. The Wi-Fi module — powered by Atmel’s WILC3000 single-chip solution — also supports the IEEE 802.11 WEP, WPA and WPA2 security mechanisms.

The smart router of DAB-Embedded employs Active-Semi’s ACT8945AQJ305-T power management IC, but the real surprise is Altera’s MAX 10 FPGA with an integrated analog-to-digital converter (ADC). That brings the additional flexibility for the main CPU: Atmel’s SAMA5D36.

The FPGA is connected to the 16-bit external bus interface (EBI) so that IoT developers can put any IP core in FPGA for communication with external sensors. All data is converted inside the FPGA to a specific format by using NIOS II’s soft CPU in FPGA. Next, the SAMA5D36 processor reads this data by employing DMA channel over the high-speed mezzanine card (HSMC) bus.

An FPGA has enough cells to start even two soft cores for data preprocessing. Case in point: A weather station with 8-channel external ADC managing light sensors, temperature sensors, pressure sensors and more. It’s connected to the FPGA together with PPS signal from GPS for correct time synchronization of each measurement.

Router.png

OpenWRT Framework

The SAMA5D36 embedded processor enables DAB’s smart router design to customize free OpenWRT Linux firmware according to the specific IoT application needs. The OpenWRT framework facilitates an easy way to set up router-like devices equipped with communications interfaces such as dual-port Ethernet and Wi-Fi connection.

What’s more, by using the OpenWRT framework, an IoT developer can add now his or her own application (C/C++) to exchange data with a KNX or Z-Wave transceiver. OpenWRT even supports the Lua embedded interpreter.

Next, while DAB-Embedded has built its smart router using the embedded Linux with OpenWRT framework, Belgium’s design house also offers a board support package (BSP) based on the Windows Embedded Compact 2013 software. That’s for IoT developers who have invested in Windows applications and want to use them on the new hardware: the DAB-OWRT-53 smart router.

Later, the embedded design firm plans to release smart router hardware based on the Windows 10 IoT software and Atmel’s SAMA5D family of embedded processors. The Belgian developer of IoT products has vowed to release the second version of its router board based on Atmel’s SAMA5D4 embedded processor and WILC3000 chipset that comes integrated with power amplifier, LNA, switch and power management. Atmel’s WILC3000 single-chip solution boasts IEEE 802.11 b/g/n RF/baseband/MAC link controller and Bluetooth 4.0 connection.


Majeed Ahmad is the author of books Smartphone: Mobile Revolution at the Crossroads of Communications, Computing and Consumer Electronics and The Next Web of 50 Billion Devices: Mobile Internet’s Past, Present and Future.

Simply the highest performing Cortex-M MCU


Why develop a new MCU instead of using a high-performance MPU? Eric Esteve says “simplicity.”


By Eric Esteve

If you target high growth markets like wearable (sport watches, fitness bands, medical), industrial (mPOS, telematics, etc.) or smart appliances, you expect using a power efficient MCU delivering high DMIPs count. We are talking about systems requiring a low bill of material (BoM) both in terms of cost and devices count. Using a MCU (microController) and not a MPU (microProcessor) allows for the minimizing of power consumption as such device like the SAM S70 runs at the 300 MHz range, not the GigaHertz, while delivering 1500 CoreMark. In fact, it’s the industry’s highest performing Cortex-M MCUs, but the device is still a microcontroller, offering multiple interface peripherals and the related control capabilities, like 10/100 Ethernet MAC, HS USB port (including PHY), up to 8 UARTs, two SPI, three I2C, SDIOs and even interfaces with Atmel Wi-Fi and ZigBee companion IC.

Atmel has a wide MCU offering from the lower end 8-bit MCU to the higher end Cortex-A5 MPU.

The Cortex-M7 family fits within the SAM4 Cortex-M4 and the SAM9 ARM9 products.
The Cortex-M7 family offers high performance up to 645 Dhrystone MIPS but as there is no Memory Management Unit, we can not run Operating System such as Linux. This family targets applications with high performance requirements and running RTOS or bare metal solution.

This brand new SAM S/E/V 70 32-bit MCU is just filling the gap between the 32-bit MPU families based on Cortex-A5 ARM processor core delivering up to 850 DMIPS and the other 32-bit MCU based on ARM Cortex-M. Why develop a new MCU instead of using one of this high performance MPU? Simplicity is the first reason, as the MCU does not require using an operating system (OS) like Linux or else. Using a simple RTOS or even a scheduler will be enough. A powerful MCU will help to match increasing application requirements, like:

  • Network Layers processing (gateway IoT)
  • Higher Data Transfer Rates
  • Better Audio and Image Processing to support standard evolution
  • Graphical User Interface
  • Last but not least: Security with AES-256, Integrity Check Monitor (SHA), TRNG and Memory Scrambling

Building MCU architecture probably requires more human intelligence to fulfill all these needs in a smaller and cheaper piece of silicon than for a MPU! Just look at the SAM S70 block diagram below, for instance.

SAM S70 Block diagram

SAM S70 Block diagram

The memory configuration is a good example. Close to the CPU, implementing 16k Bytes Instruction and 16k Bytes Data caches is a well-known practice. On top of the cache, the MCU can access Tightly Coupled Memories (TCM) through a controller running at MPU speed, or 300 MHz. These TCM are part of (up to) 384 Kbytes of SRAM, implemented by 16 Kbytes blocks and this SRAM can also be accessed through a 150 MHz bus matrix by most of the peripheral functions, either directly through a DMA (HS USB or Camera interface), either through a peripheral bridge. The best MCU architecture should provide the maximum flexibility: a MCU is not an ASSP but a general purpose device, targeting a wide range of applications. The customer benefits from flexibility when partitioning the SRAM into System RAM, Instruction TCM and Data TCM.

SRAM Partition Atmel Cortex M7
As you can see, the raw CPU performance efficiency can be increased by smart memory architecture. However, in terms of embedded Flash memory, we come back to a basic rule: the most eFlash is available on-chip, the easier and the safer will be the programming. The SAM S70 (or E70) family offers 512 Kbytes, 1 MB or 2 MB of eFlash… and this is a strong differentiator with the direct competitor offering only up to 1 MB of eFlash. Nothing magical here as the SAM S70 is processed on 65nm when the competition is lagging on 90nm. Targeting a most advanced node is not only good for embedding more Flash, it’s also good for CPU performance (300 MHz delivering 1500 DMIPS, obviously better than 200 MHz) — and it’s finally very positive in power consumption.

Indeed, Atmel has built a four mode strategy to minimize overall power consumption:

  • Backup mode (VDDIO only) with low power regulators for SRAM retention
  • Wait mode: all clocks and functions are stopped except some peripherals can be configured to wake up the system and Flash can be put in deep power down mode
  • Sleep mode: the processor is stopped while all other functions can be kept running
  • Active mode
Atmel's SMART | ARM Cortex M7 SAM S Series Target Applications

Target Applications depicted above for Atmel’s SMART | ARM based Cortex M7 SAM S Series. The SAM S series are general-purpose Flash MCUs based on the high-performance 32-bit ARM based Cortex-M7 RISC processors with floating point unit (FPU).

If you think about IoT, the SAM S70 is suited to support gateway applications, among many other potential uses, ranging from wearable (medical or sport), industrial or automotive (in this case it will be the SAM V70 MCU, offering EMAC and dual CAN capability on top of S70).


This post has been republished with permission from SemiWiki.com, where Eric Esteve is a principle blogger as well as one of the four founding members of SemiWiki.com. This blog first appeared on SemiWiki on February 22, 2015.