1.1. About IoT endpoints

The IoT Subsystem delivers a reference pre-integrated, validated, hardware and software subsystem that can be extended to provide an IoT endpoint system.

Figure 1.1 shows an IoT system consisting of several endpoints and a shared control node:

Figure 1.1. An IoT endpoint as part of a larger control system

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


Figure 1.2 shows a block diagram of the hardware and software in an endpoint solution:

Figure 1.2. IoT endpoint HW and SW solution

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


A complete endpoint system typically contains the following components:

Compute Subsystem

The IoT Subsystem consists of the Cortex-M3 processor and associated bus, debug, controller, and interface logic supplied by ARM.

Reference system memory and peripherals

Additional memory, control, and peripheral components beyond the minimum IoT Subsystem components.

Licensees of the IoT Subsystem are provided with an example integration layer which includes implementations of eFlash and SRAM. The example integration layer provides a starting point for customizing an SoC.

Communication interface

The endpoint will have some way of communicating with other nodes or masters in the system. This could be WiFi, Bluetooth, or a wired connection.

The ARM Cordio® BT4 radio IP is available as an option for the IoT Subsystem. The example integration layer expansion ports are however technology independent and other radio devices could be used instead of the Cordio radio IP. Radio-specific interfaces such as clock, reset, and power control must be implemented at the SoC level.

Sensor or control component

To be useful as an endpoint, the reference design is typically extended by adding sensors or control logic such as, for example, temperature input or motor speed control output.

Software development environment

ARM provides a complete software development environment which includes the mbed operating system, ARM or GCC compilers and debuggers, and firmware.

Any custom peripherals typically require corresponding third-party firmware that can be integrated into the software stack.

Copyright © 2015. All rights reserved.ARM DDI 0551A
Non-ConfidentialID120415