Creating IoT application using ARM mbed and NanoService solution


Published on

This write up explains how to use ARM mbed with ARM NanoService solution to create an IoT application

1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Creating IoT application using ARM mbed and NanoService solution

  1. 1. Copyright © 2013 ARM Limited. All rights reserved. Running Sensinode NanoService using mbed Platform contact: Introduction The ARM® mbed™ platform provides no-cost software libraries, hardware designs and online tools for rapid prototyping of smart devices based on the ARM Cortex® -M microcontrollers. The platform includes a standards-based C/C++ SDK, a microcontroller HDK and supported development boards, an online compiler and online developer collaboration tools. The mbed microcontroller is based on an NXP LPC17680 microcontroller, which has an ARM Cortex-M3 core, running at 96 MHz, with 512 KB flash, and 64 KB RAM. The mbed interfaces include Ethernet, USB, CAN, SPI, I²C and other I/Os. The NanoService platform is a flexible and highly scalable product designed to enable the deployment of challenging M2M applications on a private server, private cloud, or public cloud environments. It provides a directory and semantic lookup of all M2M nodes and resources in the system, provides transparent proxy services between the large-resource traditional internet and constrained-resource protocols, and also supports an eventing model that is critical to the effectiveness of embedded web applications. Complete graphical reference applications and Java SDKs with source code, along with device libraries, decreases time-to-market for both M2M devices and web applications. Parts required 1) Mbed LPC1768 board
  2. 2. Copyright © 2013 ARM Limited. All rights reserved. 2) mbed LPC1768 application board You can buy these development boards at  Cool Components  RS Online  Sparkfun  Adafruit 3) Ethernet cable. 4) Mini-B USB cable for power and mass storage interface. 5) Account on 6) PC or laptop  To select and compile the program on website.  To run the Sensinode application for controlling street light. Steps to follow 1) Insert the mbed into mbed application board. Make sure that you align the GND and Vout pins on the mbed and mbed application board. Note that this board will be used as a street light. 2) Connect mbed application board to Ethernet. 3) Connect mbed (not the application board) to your computer using a USB cable.
  3. 3. Copyright © 2013 ARM Limited. All rights reserved. 4) Mbed will appear under removable storage. Click on MBED. An html file will appear. 5) Click on the HTML file (MBED). It will direct you to mbed website. 6) Go to
  4. 4. Copyright © 2013 ARM Limited. All rights reserved. Following page will appear:
  5. 5. Copyright © 2013 ARM Limited. All rights reserved. 7) Click on “Import this program” tab. 8) This will create a program work space under your login. A pop-up window will appear asking for the name of the imported program. You can rename the program at this time. Note that the workspace is created on the ARM server and not on your local machine. 9) Click on the “import” button to import the program into your work space.
  6. 6. Copyright © 2013 ARM Limited. All rights reserved. 10) Once you import the program all the associated libraries and the header files will be copied to your workspace. It will look something like this: 11) Click on main.cpp under “Program Workspace” (left pane). 12) This program a. Configures Ethernet b. Configures NanoService platform c. Initializes the network d. Defines the endpoint nodes (in this demo it is your mbed + mbed application board) 13) You can rename the endpoint_name variable (line number 31 in the example below). This will be the name of your sensor node and will appear in the NanoService demo application (it will become clear later in step 19). For this example, we will use “mbed-dojo102E7” as a node name. 14) Save this file by clicking on the save menu.
  7. 7. Copyright © 2013 ARM Limited. All rights reserved. 15) Compile the program by clicking on compile menu as shown below. 16) After compilation is finished you can save the binary on mbed flash. 17) Press the button on the mbed board to reset. It will start running the NanoService demo on it. 18) Go to Type in “demo” for the username and the password.
  8. 8. Copyright © 2013 ARM Limited. All rights reserved. 19) The following page will appear after you login: Each row on the page is an mbed enabled sensor node. All these nodes are used by different demo developers. Look for the name you used for your sensor node. In this example we are using the sensor node name “mbed- dojo102E7”. You can ignore all the other nodes.
  9. 9. Copyright © 2013 ARM Limited. All rights reserved. 20) By clicking on “mbed-dojo*” the following window will pop-up: 21) Use the “LED Control” tab to control the LED on the streetlight (for this demo, it is your mbed board). 22) Click on “Actions” and choose the LED brightness. Once you select the brightness, the LEDs on your mbed will switch ON. You can change the brightness and see what happens.
  10. 10. Copyright © 2013 ARM Limited. All rights reserved. 23) You can also control the buzzer on your mbed using the “Buzzer’ tab as shown below NanoService Free Trial You can download the developer version of the software here: ARM’s NanoService solution leverages the power of web architecture for developing and deploying M2M systems efficiently and securely. The NanoService solution consists of software for devices, back-end servers and web applications that together form an end-to-end platform. NanoServices is based on the latest IETF standards for efficient M2M communications including the Constrained Application Protocol (CoAP) and Datagram Transport Layer Security (DTLS). andIt can run on any IP-based device over an IP network, ranging from 6LoWPAN to Cellular M2M.