SlideShare a Scribd company logo
Devices and Windows Azure

Andy Cross

@andybareweb
Time until next coffee
Devices are
everywhere
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Time until next coffee




Only a scalable elastic computing
infrastructure can solve this scalability
challenge; such as Windows Azure


                                Devices and Azure ©Copyright 2012   09 / 14 /12   4
Device Classifications

    Desktop    Desktop PC and Laptops
               Background processes
               User interactions



               Background processes
    Mobile     Push notifications requiring Server
               contexts
               Location sensitive data



               Nike+
    Embedded
               Intelligent Housing
               RFID
Devices illustrated




 Capacity   Cost   Potential   Capacity   Cost   Potential   Capacity   Cost   Potential
Desktop   Mobile Devices
Windows Azure and Embedded Devices
How does Windows Azure Help Embedded?
                             Compute provisioned on
   Scalable Resource         demand
                             Storage into 100s TBs easily
                             Geo-locatable



                             Mobile Services
   Infrastructure Services
                             Media Services
                             HPC and Big Data



                             Windows Azure Storage
   Architectures
                             Windows Azure Service Bus
                             Service Management API
This is no Windows Azure Client for
embedded devices. We will have to write our
own.
This integration is only possible if the platform is
truly open and device agnostic. There is no more
evident test of this than consuming and interacting
with Windows Azure from a device which does not
have an operating system.
Time until next coffee
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Development, Devices, Delivery

  Write in C# or Visual Basic (recent)   Open Source Hardware
  Use Visual Studio (Express inc)        Arduino layouts
  Deploy and debug via USB               Custom NETMF boards
  Debugging WORKS! Breakpoints,          Design your own
  immediates, watches etc                Dotnet Gadgeteer /Netduino GO




When complete, publish your software to a firmware
and distribute to your hardware vendor for delivery
NETMF architecture
  Who              What

  You                           User Code



  Microsoft and
  community




                          .net Framework classes



  Device vendors
Windows Azure and Embedded Devices
Notice the class is standard C#
with typical namespaces.
There are additional using
statements for device specific
libraries.
The class looks almost
identical to a C# console app
– but without args[] on the
Main()

The AnalogInput class will
do most of our work, it takes
a hardware address.

We Read() to get a voltage –
and let whatever is on the pin
do the work of generating this.
This class uses an
OuputPort set to
communicate with the on
board LED of the Netduino.

We use the Write method to
send a binary (Digital) signal
to the output device, in this
case the on board LED.

We use familiar
System.Threading
namespace to control the
execution flow, in this case,
pausing for 200ms so that
the LED flashes changing
state 5 times a second
Windows Azure and Embedded Devices
http://www.microframework.nl/2009/09/05/shahmac-digest-class/
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Windows Azure and Embedded Devices
Time until next coffee




Demo 1
Temperature
                  Device




Windows Azure
 Blob Storage
                              Trigger Button
Windows Azure and Embedded Devices
Time until next coffee




Demo 2
Output
                Device




Windows Azure
Queue Storage
Windows Azure and Embedded Devices
Time until next coffee




Demo 3
Analog Input
                       Device




   Gateway




  Windows Azure
Service Management
Windows Azure and Embedded Devices
Time until next coffee




Big Data
Windows Azure and Embedded Devices
Q&A

Thanks for Listening!

More Related Content

PPTX
sample presentation
PPTX
Geese, geeks and greeks
PPTX
Distro compute
PPTX
Data liberty in an age post sql - with pizazz - as presented at cloudburst
PPTX
UKWAUG Hackathon
PPTX
Broadcasting music from the cloud
PPTX
Presentacion
PPTX
Software Business srl - Evento "Innovazione e Semplificazione"
sample presentation
Geese, geeks and greeks
Distro compute
Data liberty in an age post sql - with pizazz - as presented at cloudburst
UKWAUG Hackathon
Broadcasting music from the cloud
Presentacion
Software Business srl - Evento "Innovazione e Semplificazione"

Similar to Windows Azure and Embedded Devices (20)

PPT
Introduction to .NET Micro Framework Development
PPT
Christchurch Embedded .NET User Group - Introduction to Microsoft Embedded pl...
PPTX
Building an IoT Massive Multiplayer Game in 60 Minutes - TechBash 2017
PDF
Introduction To SPOT
PDF
Programming The Real World
PPTX
Tokyo Azure Meetup #4 - Build 2016 Overview
PDF
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
PPTX
Ian Agustiawan - NET Micro Framework
PDF
Brief about Windows Azure Platform
PDF
Bug Labs Automotive Web
PPTX
Internet of Things, Mobility & .Net Micro Framework SydMobNet March 2014
PPTX
Internet of things (IoT) with Azure
PPT
Device+Cloud: come sviluppare App moderne ed interconnesse
PDF
A4WSN: an Architecting environment 4 Wireless Sensor Networks
DOCX
Industrial monitoring and control system using android application
PDF
Windows developer program for IoT
PPTX
Microsoft IT Academy Summit 2011
PDF
Ultrabook Development Using Sensors - Intel AppLab Berlin
PPTX
Overview Of Parallel Development - Ericnel
PDF
Alleantia LeWeb Paris 2012 Startup Comp preliminary
Introduction to .NET Micro Framework Development
Christchurch Embedded .NET User Group - Introduction to Microsoft Embedded pl...
Building an IoT Massive Multiplayer Game in 60 Minutes - TechBash 2017
Introduction To SPOT
Programming The Real World
Tokyo Azure Meetup #4 - Build 2016 Overview
BYOD Revisited: Build Your Own Device (Embedded Linux Conference 2014)
Ian Agustiawan - NET Micro Framework
Brief about Windows Azure Platform
Bug Labs Automotive Web
Internet of Things, Mobility & .Net Micro Framework SydMobNet March 2014
Internet of things (IoT) with Azure
Device+Cloud: come sviluppare App moderne ed interconnesse
A4WSN: an Architecting environment 4 Wireless Sensor Networks
Industrial monitoring and control system using android application
Windows developer program for IoT
Microsoft IT Academy Summit 2011
Ultrabook Development Using Sensors - Intel AppLab Berlin
Overview Of Parallel Development - Ericnel
Alleantia LeWeb Paris 2012 Startup Comp preliminary
Ad

Recently uploaded (20)

PPT
Teaching material agriculture food technology
PDF
Machine learning based COVID-19 study performance prediction
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Spectroscopy.pptx food analysis technology
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
A Presentation on Artificial Intelligence
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Approach and Philosophy of On baking technology
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
A comparative analysis of optical character recognition models for extracting...
Teaching material agriculture food technology
Machine learning based COVID-19 study performance prediction
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Digital-Transformation-Roadmap-for-Companies.pptx
Assigned Numbers - 2025 - Bluetooth® Document
MYSQL Presentation for SQL database connectivity
Spectroscopy.pptx food analysis technology
Programs and apps: productivity, graphics, security and other tools
Encapsulation_ Review paper, used for researhc scholars
The Rise and Fall of 3GPP – Time for a Sabbatical?
A Presentation on Artificial Intelligence
Dropbox Q2 2025 Financial Results & Investor Presentation
Approach and Philosophy of On baking technology
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Unlocking AI with Model Context Protocol (MCP)
Network Security Unit 5.pdf for BCA BBA.
Spectral efficient network and resource selection model in 5G networks
NewMind AI Weekly Chronicles - August'25-Week II
A comparative analysis of optical character recognition models for extracting...
Ad

Windows Azure and Embedded Devices

  • 1. Devices and Windows Azure Andy Cross @andybareweb
  • 6. Time until next coffee Only a scalable elastic computing infrastructure can solve this scalability challenge; such as Windows Azure Devices and Azure ©Copyright 2012 09 / 14 /12 4
  • 7. Device Classifications Desktop Desktop PC and Laptops Background processes User interactions Background processes Mobile Push notifications requiring Server contexts Location sensitive data Nike+ Embedded Intelligent Housing RFID
  • 8. Devices illustrated Capacity Cost Potential Capacity Cost Potential Capacity Cost Potential
  • 9. Desktop Mobile Devices
  • 11. How does Windows Azure Help Embedded? Compute provisioned on Scalable Resource demand Storage into 100s TBs easily Geo-locatable Mobile Services Infrastructure Services Media Services HPC and Big Data Windows Azure Storage Architectures Windows Azure Service Bus Service Management API
  • 12. This is no Windows Azure Client for embedded devices. We will have to write our own. This integration is only possible if the platform is truly open and device agnostic. There is no more evident test of this than consuming and interacting with Windows Azure from a device which does not have an operating system.
  • 13. Time until next coffee
  • 18. Development, Devices, Delivery Write in C# or Visual Basic (recent) Open Source Hardware Use Visual Studio (Express inc) Arduino layouts Deploy and debug via USB Custom NETMF boards Debugging WORKS! Breakpoints, Design your own immediates, watches etc Dotnet Gadgeteer /Netduino GO When complete, publish your software to a firmware and distribute to your hardware vendor for delivery
  • 19. NETMF architecture Who What You User Code Microsoft and community .net Framework classes Device vendors
  • 21. Notice the class is standard C# with typical namespaces. There are additional using statements for device specific libraries. The class looks almost identical to a C# console app – but without args[] on the Main() The AnalogInput class will do most of our work, it takes a hardware address. We Read() to get a voltage – and let whatever is on the pin do the work of generating this.
  • 22. This class uses an OuputPort set to communicate with the on board LED of the Netduino. We use the Write method to send a binary (Digital) signal to the output device, in this case the on board LED. We use familiar System.Threading namespace to control the execution flow, in this case, pausing for 200ms so that the LED flashes changing state 5 times a second
  • 29. Time until next coffee Demo 1
  • 30. Temperature Device Windows Azure Blob Storage Trigger Button
  • 32. Time until next coffee Demo 2
  • 33. Output Device Windows Azure Queue Storage
  • 35. Time until next coffee Demo 3
  • 36. Analog Input Device Gateway Windows Azure Service Management
  • 38. Time until next coffee Big Data

Editor's Notes

  • #5:  Web ApiNode.jsTime taken (in s)89.9541.65Requests per second1111.692400.89http://mikaelkoskinen.net/post/asp-net-web-api-node-benchmarks.aspxRather silly slide that shows that the number of devices interacting grows
  • #6: A periodic example may be a greenhouse thermometer. The devices may be configured to report hourly, and with some careful control of clock cycles you could predict exactly when traffic will arrive at your services. Ideally in such a case you’d only provision compute resources at a certain time so that you aren’t overpaying for resources. This is a perfect cloud scenario.A frequent retrieval may be a fridge that wishes to show the news headlines – it has to frequently poll, and this constant growth gives a fast per unit growth pattern to the traffic. This growth pattern is unlike a human computer growth pattern where there are rarely constant usage on the client side.When a Device interacts with humans, a far less predictable usage pattern emerges – if a device responds to milk being taken from it (in order to report a reorder request) then it depends how quickly a user is drinking their milk! Very hard to predict.When devices are reporting periodically and growing fast, a differnet pattern emerges – a predictable burst pattern where there is never a true off state.
  • #15: SPOT is Smart Personal Objects Technology .net for Devices, not compact!What if you could use .NET on really small devices?.NET Micro Framework is an open source platform that expands the power and versatility of .NET to the world of small embedded applications. Desktop programmers can harness their existing .NET knowledge base to bring complex embedded concepts to market on time (and under budget). Embedded Developers can tap into the massive productivity gains that have been seen on the Desktop..NET Micro Framework DevicesThe typical .NET Micro-Framework device has a 32 bit processor with or without a memory management unit (MMU) and could have as little as 64K of random-access memory (RAM). The .NET Micro Framework supports rich user experience and deep connectivity with other devices.Such devices include: consumer devices, consumer medical, home automation, industrial automation, automotive, sideshow devices / PC peripherals.Why put .NET on small devices?Up to now, embedded devices have been quite effectively created using mostly C and C++, why do we need C#?  Certainly there will remain applicaitons for which C and C++ are the right technology to use but there are two reasons to consider using a managed environment for these devices. The first is the efficiency of creating and maintaining devices in managed code.  Desktop developers who have made  the move to managed code are typically converted by the productivitiy increases that they experience.  With the increase in 32 bit processors and the need to support higher level functionality like a TCP/IP stacks, an environment like NETMF can make development much less expensive and risky.This is related to the other reason for .NET on small devices.  More and more the devices that we are making are not isolated implementations but parts of much larger solutions that stretch to services and web sites and the cloud.  With .NET, you have a programming model and tool chain that spans that entire solution space.  There is less need to hire different staff and supporit different tools and operating systems for the various parts of the solutions. 
  • #16: The chart shows device capacity vs.net framework footprint
  • #17: SHOW THE DEVICESdigital i/o features ● all 20 digital and analog pins: GPIO ● digital pins 0-1: UART 1 RX, TX ● digital pins 2-3: UART 2 RX, TX ● digital pins 5-6: PWM, PWM ● digital pins 7-8: UART 2 RTS, CTS ● digital pins 9-10: PWM, PWM ● digital pins 11-13: SPI MOSI, MISO, SPCK ● analog pins 4-5: I2C SDA, SCLnetworking ● ethernet: 10/100 mbps ● network stack: lwIPstorage ● micro sd (up to 2 GB) ● auto card detectpower ● input: 7.5 - 12.0 VDC or USB powered ● output: 5 VDC and 3.3 VDC regulated ● analog reference: 2.6 - 3.3 VDConly required when using ADC features ● max current: 8 mA per pindigital pins 2, 3, 7: 16 mA per pinanalog pins 0-3: 2 mA per pinmicrocontroller max current: 200 mA total ● digital i/o are 3.3 V--but 5 V tolerant
  • #21: A GPIO port (hardware) can behave as either an input or an output port. Software is used to configure this, and the hardware is then configured to behave in the correct way.