microsoft net micro framework and intelligent devices l.
Skip this Video
Loading SlideShow in 5 Seconds..
Microsoft .NET Micro Framework and Intelligent Devices PowerPoint Presentation
Download Presentation
Microsoft .NET Micro Framework and Intelligent Devices

Loading in 2 Seconds...

play fullscreen
1 / 28

Microsoft .NET Micro Framework and Intelligent Devices - PowerPoint PPT Presentation

  • Uploaded on

FT28. Microsoft .NET Micro Framework and Intelligent Devices. Lorenzo Tessiore Development Manager Microsoft Corporation. Trends for Devices . Devices are complementary to desktop and web applications Devices are more and more connected and intelligent

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Microsoft .NET Micro Framework and Intelligent Devices' - micheal

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
microsoft net micro framework and intelligent devices

Microsoft .NET Micro Framework and Intelligent Devices

Lorenzo Tessiore

Development Manager

Microsoft Corporation

trends for devices
Trends for Devices
  • Devices are complementary to desktop
  • and web applications
  • Devices are more and more connected and intelligent
  • Devices require a fast time-to-market turnaround
  • Fast growing business for 32 bits MCU/MPU
  • Highly innovative market
trends for devices3
Trends for Devices

Application fields are diverse and require specific

hardware programming skills

Connectivity must address peer devices, desktop

and services transparently

Very diverse toolset, no standard programming model

Few standard communication protocols and little support

Code is generally difficult to port

  • What is the .NET Micro Framework (aka .NET MF or MF)
  • How the MF bridges embedded and desktop programming
  • Architecture
  • Demo
  • Tool set and programming model
  • The latest version
  • Distribution and community
  • Getting started
the devices continuum
The Devices Continuum

.NET Framework


Windows XP Embedded

Device Capabilities


Win Embedded CE

.NET Micro


MCU Example:

ARM7 / Cortex-M3 / SH2

ARM9 / Cortex-A8

ARM11 / Cortex-A9 / Atom




Device Category

the net micro framework
The .NET Micro Framework
  • The .NET Micro Framework is a re-implementation of the desktop CLR for embedded devices that are unable to run a high-end embedded OS such as WinCE
  • Very small memory footprint:
    • Completely modularized by feature
    • 512KB ROM / 256KB RAM for the full feature set
    • WinCE and CF may require more than 10MB ROM / 10MB RAM
  • Typical price point of the MCU between $2 and $10
  • Supports all ARM MCU from ARM7 and up, Analog Devices Blackfin and Renesas SH2/SH2A MCU. No MMU restrictions
  • Entirely independent code base: this is not the Compact Framework
bridging the gap with desktop p rogramming
Bridging the Gap with Desktop Programming
  • The programming model is entirely managed code
  • The programming environment is the latest VS2008 SP1
  • Interoperability is supported
  • Object Model offers a sub-set of the same namespaces of the .NET Framework for the desktop
  • Object Model is tailored for small embedded devices
architecture and tool s et
Architecture and Tool Set

Managed Application

SDK enables:


Application Services

Extended Object Model: Web Services, …

  • coding and deploying applications
  • targeting any emulator or device
  • extending the emulator
  • leveraging full VS debug support
  • using VS Express edition

Managed Libraries

Basic Object Model: Threading, I/O, …

Porting Kit (PK)

Managed Run-Time

CLR, Interpreter, Executive, and Interop

PK enables:

  • Coding drivers for the .NET MF
  • Supporting additional processors
  • Coding interoperability components
  • Customizing the runtime and OM

Platform Abstraction Layer (PAL)

HW independent facilities


Hardware Abstraction Layer (HAL)

(optional)Host OS


scenarios energy management
Scenarios: Energy Management

.NET Micro Framework Domain

scenarios actual garbage collection
Scenarios: Actual Garbage Collection

.NET MF battery powered

RFID access control

Microsoft and SQL

Server backend

Developed for the municipality of Venice, Italy, with the help of the Microsoft Innovation Center at the Polytechnic of Torino

net micro framework sdk
.NET Micro Framework SDK
  • Contains everything you need to get started!
  • Add-in installer for the latest VS 2008 SP1
  • Post-processing of assemblies into the .NET MF compact format
  • Project wizards
  • Full .NET MF object model
  • Standard emulator
  • Deployment and debugging against the emulator or any device
  • Samples
  • Font editor tools
  • Device Diagnostic tools
  • Help (also available online at MSDN)
  • Compatible with VS2008 Express Edition
net micro framework porting kit
.NET Micro Framework Porting Kit
  • Contains everything you need to port the MF onto any device!
  • With the Porting Kit you have full source code access to:
    • Code and build device drivers for the .NET MF
    • Code interoperability components and expose them to the OM
    • Customize the runtime and object model for special needs
    • Add support for additional instruction sets
  • Assisted creation of new drivers and processor support packages
  • Supports mainstream embedded tool chains such as ARM RVDS, Keil MDK, GCC, HEW, Visual DSP++
  • Includes extensive sample libraries coded by silicon vendors such as Atmel and NXP for mainstream MCUs
the object model
The Object Model


Managed Application


Application Services

Advanced Graphics

XML Parser



Managed Libraries





USB client





File System

Porting Kit (PK)


Touch Panel

Managed Run-Time

CLR, Interpreter, Executive, and Interop

PAL – Platform Abstraction Layer

approximately 40 functions

(preferred)HAL -

Hardware Abstraction Layer

approximately 60 functions

(optional)Host OS


the p rogramming m odel
The Programming Model
  • Managed Code Device Drivers, abstracted I/O and virtualized input for maximum portability
  • Encourages event based programming and provides advanced sleep-on-HW-event support for maximum battery life

public static class BatterySaver


public static void WaitOnSerialInput( SerialPort sp ) {

sp.DataReceived += new SerialDataReceivedEventHandler( this.DataOnSerial );

PowerState.Sleep(SleepLevel.DeepSleep, HardwareEvent.SerialIn);


private static void DataOnSerial(object sender, SerialDataReceivedEventArgs e) {





communication and messaging
Communication and Messaging
  • HTTP(s)
    • HttpWebRequest, HttpWebResponse and HttpListener
    • Supports HTTP/1.1 with chunking and keep-alive
    • Supports SSL with X.509 certificates
  • DPWS
    • Supports WSDL 1.1, SOAP 1.2, WS-Addressing, WS-MetadataExchange, WS-Transfer, WS-Discovery, WS-Eventing
    • Compatible with WCF Soap bindings
    • Code generation tools to/from WSDL and assembly
    • Code generation compatible and interoperable with desktop tools
  • Wired and Wireless
    • Ethernet, Serial and USB
    • 802.11 configuration support
    • 802.15.4 stack available (not yet documented)
ui support
UI Support
  • Inspired to WPF, supports dynamic layout, rendering , and event dispatching
  • Basic types
    • Application
    • Windows
  • Basic layout controls
    • StackPanel
    • Canvas
    • InkCanvas
  • Basic controls
    • Text
    • ScrollViewer
    • ListBox
  • Event routing and input providers support
  • Integrated Touch Panel and Inking support

The v4.0 version changes the business model from the ground up

As of 11/16/2009 the .NET Micro Framework version is available as source code under the Apache 2.0 license

All the code of the runtime, the object model and device drivers is available free of charge

TCP/IP stack code is provided under the restriction that it must be used in conjunction with MF only

Crypto code is pre-compiled for the supported instruction sets, but replaceable


Ideal for both professionals and hobbyists

Co-operative development inside the community

Microsoft will oversee and approve the feature set together with the community leaders

Community Web for exchanging components and solutions

Microsoft will officially support any latest version of the .NET MF

Anybody is welcome to participate to whatever extent, contributions are encouraged but not required

additions for the 4 0 version
Additions for the 4.0 version



Faster XML parser and System.Collections support

Faster Graphic/Touch/Inking support

Power Level control

Wear Leveling for Block storage devices

Time Sync

Arbitrary Display Size

Support for Atmel AT91SAM9RL64 ARM9 processor

Support for NXP LPC2478 AR7 processor

Renesas SH2/A support for SH7619

RTM date: Yesterday!

  • Version 4.1 is tentatively scheduled for End of Third Quarter 2010 (March 2010)
  • Priorities:
    • Keep release in sync with Visual Studio 2010 support
    • Big Endian Support
    • Open TCP/IP stack
    • Extensive Cryptographic support
    • 802.15.4 (with 6lowPAN) and 802.11 drivers
    • Remote Firmware Update
    • Remote logging and diagnostics

The .NET Micro Framework eco-system relies on a network of partners

Partners own reference hardware, ports, library extensions and specific solutions

Many reference ports are published and documented in the Porting Kit and provided free of change

Atmel and NXP substantially contributed to the PK reference ports

Some partners can also assist developing custom solutions, independently or in conjunction with the .NET Micro Framework team


Access the eco-system at

Review our partners’ HW solutions

Download the SDK and start prototyping in a few clicks



Please fill out session evaluation forms online at

learn more on channel 9
Learn More On Channel 9
  • Expand your PDC experience through Channel 9
  • Explore videos, hands-on labs, sample code and demos through the new Channel 9 training courses

Built by Developers for Developers….