- Azure Sphere Introduction
In this blog series I will document my bitter sweet experience with Azure Sphere Device.
So what's in the box? You'll find pretty minimalist. There's only board and a micro USB cable. I will be working with Azure Sphere model MT3620 from AVNET.
- Microsoft Azure Sphere SoC based module solution for advanced end-to-end IOT security
- Based on MediaTek MT3620AN Wi-Fi SoC
- 1x 500MHz Arm Cortex A7 application processor with 4MB SRAM
- 2x 200MHz Arm Cortex M4F cores, each with 64KB SRAM
- 4MB embedded RAM (shared)
- 16MB QSPI flash memory
- Dual-band 2.4/5GHz 802.11 a/b/g/n Wi-Fi
- Module I/O peripheral support
- 3x ISU interfaces, pre-configured for UART, SPI, I2C
- ADC/GPIO: 3x 12-bit ADC inputs (or GPIOs)
- PWM/GPIO: 9x PWM outputs (or up to 24 GPIOs)
- RTC (requires VBAT supply)
- Programming & recovery interface
- Microsoft Visual Studio IDE for accelerated application software development & debug
- OTA authentication & updates (device lifetime)
- Dimensions: 33mm x 22mm x 3.5mm
- Onboard dual-band 2.4/5GHz chip antenna
- (Pulse W3006)
- Operating temperature:
- -35C to +85°C (Note: For industrial temperature range, please use the U.FL version module)
- FCC, IC, CE, MIC, RoHS (pending)
- ASUS Zenbook UX303UA
- Windows 10 1903
- Visual Studio 2019 with the latest update
The Sphere is running what Microsoft calls Azure Sphere OS. It's pretty secure as you will see later in this guide. It's firmly tied to your Azure Sphere tenant and non-transferable.
It's running custom Linux kernel and the On-chip connectivity services allows connection to Azure Sphere Security Service. For now don't worry about this as everything is pretty new and I will go through it later in the series.
The main difference between Raspberry Pi and Azure Sphere is that the Microsoft product is mainly aimed for businesses who wants to run large scale IoT solutions apart from the RPi which is manufactured as a ready to be used computer. Also it serves as an introduction to the IoT world for the masses. Not that any of them is better. Both have their use cases.
Now I want call out the 'Preview' word here. Azure Sphere is really in preview mode as of now. You will not easily find any tutorials or problem solvers on Stack exchange if you stuck somewhere. When I was searching for the error that my Sphere was throwing when I was trying to register it to my tenant I had to improvise and thus, this guide was born.
azsphere command is ONLY available in the Azure Sphere Command prompt. You can't add it to your system variables and use it in PowerShell or Windows Terminal application. Hopefully Microsoft will work on these nuances.
Code samples in the official Azure Sphere Repository are helpful, but there isn't a lot to them. If you have any specific use case/project in mind for the Sphere, you will have to solve it on your own. The programming language of choice is as of now C. I think more languages will come when the Sphere will pick up some pace but be prepared to dust off some bare metal C mastery.
Overall I find it pretty challenging for me but that's the part of the excitement. I like to play with new piece of tech and this is real down to the metal. Next up in the series I will go through the registration process of the Sphere.
This is really my first attempt to start a blog series so if you have any suggestion or feedback please share it so I can make this series better :) Thank you!