Azure IoT DevKit Preview built with Arduino and VSCode 1There have been a number of Azure IoT Starter Kits available for some time now. I’ve written about the Starter Kits in the past. Some of these like the Raspberry Pi Azure IoT Starter Kit from Adafruit require you to wire up sensors and things, while the GrovePi+ is similar to a Lego Mindstorm but for prototyping Internet of Things devices. It seems that Microsoft is finally consolidating onto a specific “Azure IoT Developer Kit”, and they’ve already made early previews available upon application. This new Azure IoT “DevKit” is a single board packed with sensors, buttons, OLED screen, and more! Plus, it’s Arduino compatible!

Build 2017 Debut

At the Build 2017 conference Microsoft debuted an initial preview version of the MXChip IoT Developer Kit. This kit is an Arduino compatible board with a rich set of integrated features (sensors, buttons, OLED display, and more) that supports programming using Visual Studio Code for development. This DevKit is built with the goal in mind of lowering the barrier for developers to get started creating IoT solutions on Microsoft Azure.

The primary goals of the Azure IoT Development Kit is to ease the pain of developers to get started prototyping IoT solutions. Some of the difficulties they are attempting to solve with this platform are as follows:

  • Hardware setup and preparation has often been difficult for developers when they just want to get started coding. Generally, the initial steps to get started involve first purchasing hardware (IoT board, sensors, wires, etc.) Then the next steps are to wire everything up using a breadboard or even soldering. If you understand electronics this may not be too difficult, but it certainly creates a barrier to most software developers.
  • Getting all the tools installed that are necessary to build software to target both the hardware device and the cloud can be difficult. This may require a few tools to be installed and configured in order to get started coding. Some time this can be tricky to get set the first time since you need to download the specific drivers for your device, install the Arduino IDE and any other dependencies for your specific IoT hardware.
  • In addition to the above mentioned areas, the developer then still needs to go configure and setup all the cloud resources in Microsoft Azure that they will be needing to start coding their IoT solution.

As you can see from the above items, it can certainly take quite a bit of time, effort, and learning to get started coding an IoT solution. When your trying to get new developers building IoT solutions with your platform, like Microsoft is with Azure, then you certain want to work towards making things easier. The Azure IoT Developer Kit is providing a single board with many different peripherals integrated as to eliminate the necessity to wire and solder anything. It also provides the benefit that the development toolchain can be configured to support exactly the sensors and other peripherals built onto the board, as that will be an absolute known when using this kit.

In the effort to simplify the development process, they have worked to tailor the getting started experience to support the Visual Studio Code editor. To do this their team has worked to create an Arduino extension for Visual Studio Code that integrates features like intellisense, project scaffolding and debugging into the process of writing and working with Arduino sketches to run on the device.

Azure IoT DevKit Preview built with Arduino and VSCode 2

They have provided a couple of getting started tutorials for the Azure IoT Developer Kit. These tutorials are hosted on Github. At the time of writing this they are still a private repository (ala 404 if you try to access it directly), however, the tutorials are perfectly accessible and hosted using Github Pages.

Azure IoT DevKit Preview built with Arduino and VSCode 3

MXChip AZ3166 Board Specifications

The IoT Development Kit is based on the MXChip AZ3166 board developed by Shanghai MXCHIP Information Technology Co., Ltd. and Microsoft asia-pacific technology Co., Ltd. The AZ3166 board is Arduino compatible with a very large number of peripherals and sensors built directly on the board. This board is being built as an ideal platform for prototyping IoT and Smart Device solutions.

The overall size of the MXChip AZ3166 board is the size of a credit card. So, it’s small enough to be extremely easy to work with and actually the same size as a Raspberry Pi. The board is powered by an STM32F412 ARM Cortex M4F processor with 256K SRAM and 1M+2M Byte SPI Flash. This version of the Cortex-M4 is built with a FPU (floating point unit) and runs at 100 Mhz while achieving low power consumption overall.

Azure IoT DevKit Preview built with Arduino and VSCode 4Here’s a list of some of the additional features included in this board:

  • Integrated Wifi 802.11 b/g/n via Cypress BCM43362 Wifi module
  • Embedded Security Encryption chip
  • 128×64 OLED display
  • DAP Link emulator
  • MicroUSB
  • 2 buttons
  • 1 RGB light
  • 3 working status indicators
  • Infrared emitter
  • Motion sensor
  • Magnetometer sensor
  • Atmospheric pressure sensor
  • Temperature and Humidity sensor
  • Codec with microphone and earphone socket
  • Connecting finger extension interfac
  • 3.3V DC-DC, max 1.5A

Azure IoT DevKit Preview built with Arduino and VSCode 5

Where to get one?

Currently, the IoT Developer Kit is in early preview stages. Microsoft is planning to distribute a limited number of these boards / DevKits for free based on select criteria. At the time of writing this, you can submit a short questionnaire to apply to get one of these kits!

Unfortunately, there is NOT anywhere you can just buy / purchase / order this board at the time or writing this. I was really impressed with the setup for this board, with everything integrated together, and saw it in one of the sessions from Build 2017. If you want to get one, for now you’ll have to fill out the application and see if they’ll approve you. Hopefully, these will start being sold soon, and hopefully they won’t be crazy expensive. This looks like a really cool development platform to get started prototyping and playing around with building IoT solutions using Microsoft Azure.

Microsoft MVP

Chris Pietschmann is a Microsoft MVP, HashiCorp Ambassador, and Microsoft Certified Trainer (MCT) with 20+ years of experience designing and building Cloud & Enterprise systems. He has worked with companies of all sizes from startups to large enterprises. He has a passion for technology and sharing what he learns with others to help enable them to learn faster and be more productive.
HashiCorp Ambassador Microsoft Certified Trainer (MCT) Microsoft Certified: Azure Solutions Architect