The ARM mbed Ethernet Starter Kit includes a Freescale K64F Freedom board and an mbed Application shield (Fig. 1). It is designed to work with IBM’s cloud servers to build applications for the Internet of Things (IoT).
So what is mbed? It is a development environment that targets ARM Cortex-M class products. It includes an operating system, stacks, and development tools and it is paired with an ecosystem designed to bring developers and vendors together. It includes a Web-based IDE as well as command-line tools that can be used with other development systems.
The mbed OS is a basic platform with a non-preemptive scheduler and limited synchronization and communication support. It is designed to handle communication with the cloud using protocols to connect to environments like IBM’s cloud services. Partners such as Express Logic expand on this. For example, Express Logic’s ThreadX is a high-performance RTOS with round-robin scheduling and preemption-threshhold scheduling. It supports priority inheritance, event-chaining, and deterministic processing. It supports features like run-time stack analysis and event tracing.
The mbed tools and stacks target platforms like Freescale’s K64F Freedom board that is based on its Kinetis K64 with an ARM Cortex-M4 core that supports floating point and DSP instructions. The 120 MHz chip has 256 Kbytes of RAM and 1 Mbyte of flash storage. The Ethernet interface is connected to the RJ-11 socket. It comes programmed with the mbed software that supports the shield and links to IBM’s site.
The shield includes an LCD display with a 128-by-32 pixel resolution. There is a temperature sensor and a 3D accelerometer on-board. It has various controls for users to play with, including two potentiometers and a five-way joystick. It has a speaker and status LEDs. There is a header for a wireless module.
The first step after powering up is to register the device on IBM’s site. The Freedom board acts as a flash drive and provides the link so the user can use their Web browser to complete the process. This provides access to a Web-based interface that can record and manage information coming from the Freedom board and send commands back. The SDK provides mbed support code and examples. Some examples also support NXP’s mbed LPC1768 platform.
The framework will work with almost any mbed platform, but it is packaged in the starter kit for out-of-the-box operation. The kit does this well, but what it is really designed for is to get more IoT applications to run on mbed hardware like the Freedom board that is linked to IBM’s services. Both cost money in the long run. IBM’s service is subscription-based once a commercial product is created. It provides a range of cloud-based services such as management and database support tools. The mbed environment is just one of many IoT connections that IBM supports. Likewise, mbed can link to other IoT cloud platforms with the addition of a matching protocol stack.
Overall, the kit provides an easy way to evaluate mbed and IoT connectivity to IBM at a very low cost. The shield provides plenty of I/O for bidirectional feedback with IBM’s cloud interface.