Learning Center
Plans & pricing Sign in
Sign Out

Embedded Introduction - Session 2


									Introduction to Microsoft embedded technologies – Session 2

The definition of embedded

 From Wikipedia...
   An embedded system is a special-purpose
     computer system designed to perform one or a
     few dedicated functions, often with real-time
     computing constraints. It is usually embedded as
     part of a complete device including hardware and
     mechanical parts. Since the embedded system is
     dedicated to specific tasks, design engineers can
     optimize it, reducing the size and cost of the
     product, or increasing the reliability and
     performance. Some embedded systems are mass-
     produced, benefiting from economies of scale.
   Also technically an embedded system 
Microsoft’s place in the
embedded world
   .NET Micro Framework (non-MMU micro’s)
   .NET Compact Framework
   Windows CE
   Windows Mobile
   MS Robotics
   Windows XP & Vista Embedded
   Windows Embedded for POS
   Windows Automotive
   Windows Server Appliance Kit
                               * Topics covered in this session
Embedded XP (SP2)
 [Marketing warning  ] – “Developers use Windows
  XP Embedded for a variety of smart, connected, and
  service-oriented advanced commercial or consumer
  devices, to run thousands of existing Windows
  applications and drivers, ranging from Thin Clients to
  Multi Function Printers, including”:
    Advanced Set-top Boxes
    ATMs                             Multimedia Internet Devices
    Fuel Pumps
                                     Media Servers
    Full Featured Point of Service   Mobile Point of Service
    Gaming Devices                   Monitoring Devices
    Home Automation Gateways         Multi-Function Printers
    Industrial Controls              Networked Media Devices and Servers
    Intelligent Appliances           Windows-based Terminals
Embedded XP (SP2)
 Componentised version of Windows XP Pro
   About 14,000 individual OS components
   Typical XPe OS image size of 250-450MB
 Windows Embedded Studio development tools:
   Target Designer: Create, customize, and build a
    bootable run-time image.
   Component Designer: Create or modify components.
   Target Analyzer: Analyzes content of target hardware
    and creates a file to import into Target Designer or
    Component Designer.
   Component Database Manager: A tool for effectively
    managing your component database and repositories.
Embedded XP (SP2)
 You can use standard, off-the-shelf x86 hardware
  components in your Windows XP Embedded-based
 Because Windows XP Embedded supports the Microsoft
  Win32 application programming interface (API), you can
  use Win32 applications, drivers, or services in your
  embedded designs with little or no porting required.
 You can use familiar application development tools like
  Microsoft Visual Studio to build your embedded
  applications quickly.
 You can also include the Microsoft .NET Framework in a
  run-time image, so that managed code can be run on the
Embedded XP (SP2)
 The Development Process
   Identify Target Device Hardware
   Author Components and Customize Shells
   Design a Run-Time Image
   Add Security Features to a Run-Time Image
   Deploy a Run-Time Image
   Manage and Service a Run-Time Image
Embedded XP (SP2)
 Windows XP Embedded Specific Enabling Features...
      Protect Disk Volumes
        EWF allows read-only media, including CD-ROM and Flash, to boot and
      Hibernate Once Resume Many (HORM)
        HORM allows devices such as thin clients to achieve an instant-on
      File Based Write Filter
        Define individual file write protection policies (protected or transient)
      USB Support (USB Boot etc)
      Boot a Device Over a Network (PXE boot)
      Service a Runtime Image Remotely
        Device Update Agent (DUA) helps make servicing embedded devices after
         deployment easier
      Ease of Manufacturing Process
        Image Clone and Reseal allows OEMs to build a one-time OS images-
         supporting auto configuration of the SID and machine name during
Embedded XP (SP2)
 Links of interest...
     MS Windows XP Embedded Overview -
     MSDN Windows XP Embedded site -
     MS Embedded Team BLOG -
     Windows XP Embedded Features -
     Windows XP Embedded Tech-Spec -
     Windows XP Embedded SP2 evaluation edition download -
Embedded Enterprise (Vista)
 Windows Vista for Embedded Systems
   Developers use Windows Vista for Embedded Systems for
    its visual and differentiated user interfaces, connectivity
    capabilities, and reliability in building secure applications
    which create an engaging, usable, and productive
    embedded device for an end-user, ranging from digital
    video recorders to high-end embedded systems.
   Used if you need a full power of the operating system – and
    size of installation is not an issue. This could include
    UMPC’s, kiosks, ATM systems, POS devices, and complex
    industrial automation controllers. The Windows Vista for
    Embedded Systems product line offers two choices:
     Windows Vista Business for Embedded Systems
     Windows Vista Ultimate for Embedded Systems
Embedded Enterprise (Vista)
 Links of interest...
     MS Windows Embedded Enterprise (Vista) Overview -
     Windows Vista Business for Embedded Systems -
     Windows Vista Ultimate for Embedded Systems -
     MS Embedded Team BLOG -
     MSDN Vista Developer web site -
Windows Embedded for POS
 Windows Embedded for Point of Service is a specialization
  of Windows XP Embedded. It was released on May 25,
  2005, and focuses on the point of sale device market, such
  as fuel pumps, self-checkout stations, automated teller
  machines and cash registers
 Development tools - POS for .NET SDK Version 2.0
    The Microsoft Point of Service (POS) for .NET Software
     Development Kit (SDK) version 2.0 includes everything
     developers need to write, build, and test Service Object or
     Applications that use POS for .NET —documentation, samples,
     and test applications.
 Product link -
Windows Server Appliance Kit
 The Microsoft Server Appliance Kit (SAK) is a
  complete toolkit that enables Original
  Equipment Manufacturers (OEMs) to quickly
  build server appliances that leverage the
  power of Microsoft Windows technology.
 Product examples include Network-
  Attached-Storage (NAS) units, VoIP Media-
  Gateways, Home Media Centres
   Microsoft web link -
Windows Automotive
 Yes, it’s a real product!
 Now...
    Windows Automotive version 4.2 is a development
     platform used by automotive suppliers to build and deliver
     products and services that enable car manufacturers to
     provide in–car computing systems to automobile drivers.
 Very very soon...
    Microsoft Windows Automotive 5.0 is an automotive-grade
     open software platform that provides carmakers, suppliers
     and developers with the building blocks they need to
     quickly and reliably create a broad range of advanced in-
     vehicle solutions to meet the growing needs of automotive
Windows Automotive
 Yes, it’s a real product!
 Legacy ...
    Windows Automotive version 4.2 is a development
     platform used by automotive suppliers to build and deliver
     products and services that enable car manufacturers to
     provide in–car computing systems to automobile drivers. It
     is based on eMbedded Visual C++ (eVC).
 And now...
    Microsoft Windows Automotive 5.0 and Auto 3.0 is an
     automotive-grade open software platform that provides
     carmakers, suppliers and developers with the building
     blocks they need to quickly and reliably create a broad
     range of advanced in-vehicle solutions to meet the growing
     needs of automotive consumers.
Windows Automotive
   Microsoft Auto 3.0
       Microsoft Auto 3.0 provides an integrated middleware stack and hardware reference design
        for a more robust starting point. Built on the Windows Embedded CE 6.0 operating system,
        Microsoft Auto 3.0 also boasts an open architecture that allows you to easily extend
        functionality with your own custom solutions. To help ensure solutions remain current, the
        system architecture and tools allow for easy system updates after installation. Use your own
        tool set to design a custom user interface (UI). Microsoft Auto is the platform used by
        Microsoft and Ford to engineer the award-winning in-car communication and entertainment
        system, Ford Sync, while Fiat has used Microsoft Auto for more than two years as the
       platform for their Blue&Me and Blue&Me Nav technology.
   Windows Automotive 5.0
       If you prefer to have complete control over the implementation of your device, Windows
        Automotive 5.0 provides a stable platform on which to build. Windows Automotive includes
        all the benefits of Windows CE 5.0, such as Platform Builder, plus several tools built especially
        for the automotive industry. Windows Automotive 5.0 is built to enable efficient development
        of multiple device models at a time, with enhanced software reusability. The included
        Automotive User Interface Toolkit (AUITK) allows for efficient automotive-specific, custom
        user interface development. The time-consuming system tuning and fast cold boot are
        enabled using the Automotive System Toolkit (AST), which includes tools for optimizing
        performance through CPU management, diagnostics, and error handling. Like Microsoft
        Auto, Windows Automotive also provides a set of common application programming
        interfaces (APIs) familiar to developers the world over. Tier One suppliers such as Alpine,
        Clarion, JVC, and Mitsubishi Electric have built successful solutions using Windows
        Automotive 5.0.
        Check out here for a feature comparison -
Windows Automotive
 A feature comparison...
Windows Automotive

 Some links...
   MSDN Windows Automotive development main page -
   Windows Automotive 5.0 -
   Windows Automotive 5.0 datasheet -
   Windows Auto 3.0 datasheet -
   Auto 3.0 and Automotive 5.0 feature comparison -
MS Robotics Studio
 What is this?
   Microsoft Robotics Studio is a Windows-based
    environment for hobbyist, academic and commercial
    developers to create robotics applications for a variety
    of hardware platforms. The Microsoft Robotics Studio
    includes a lightweight REST-style, service-oriented
    runtime (DSS), a set of visual authoring and simulation
    tools, as well as tutorials and sample code to help you
    get started.
MS Robotics Studio
 End-to-End Development Platform
   The Microsoft Robotics Studio enables developers to
    create services for a wide-variety of robot hardware.
 Non-programmers can create robot applications
  using a visual programming environment
   The Visual Programming Language enables anyone to
    create and debug robotics programs very easily. Just
    drag and drop blocks that represent services, and
    connect them up. You can even take a collection of
    connected blocks and reuse them as a single block
    elsewhere in your program.
MS Robotics Studio
 A Visual-Programming-Language (VPL) example...
MS Robotics Studio
 Simulate robotics applications in 3D physics-based
  virtual environments (via AGEIA™ PhysX™ Technology
  from AGEIA Technologies Inc.)
MS Robotics Studio
 Interact with robots using Windows or Web-based interfaces
      Create applications that enable you to monitor or control a robot
       remotely using a Web-browser and send it commands using existing Web
       technologies, such as HTML forms and JavaScript; mount cameras on
       the robots and control them to survey a remote location.
 Lightweight REST-style, services-oriented runtime
      Microsoft Robotics Studio includes a .NET-based REST-style, services-
       oriented runtime.
 Makes Asynchronous Programming Simple
      The Concurrency and Coordination Runtime (CCR), makes it simple to
       write programs to handle asynchronous input from multiple robotics
       sensors and output to motors and actuators.
 Real-time Monitoring of Robotics Sensors and Response to
  Motors and Actuators
      The Decentralized Software Services (DSS) application model makes it
       simple to access, and to respond to a robot’s state, using a Web-browser
       or Windows-based application.
MS Robotics Studio
   Reuse Modular Services Using a Composable model
       Build high-level functions using simple components, providing for reusability of code modules
        as well as better reliability and replaceability. For instance a lower-level sensor service could
        be integrated into a navigation service.
   Scalable and Extensible Platform
       The Microsoft Robotics Studio programming model can be applied to a variety of robot
        hardware platforms, enabling users to transfer their skills across platforms. The programming
        interfaces can be used to develop applications for robots using 8, 16 or 32-bit processors,
        either single or multi-core.
   Easily extend Microsoft Robotics Studio Functionality
       Third parties can extend the functionality of Microsoft Robotics Studio by providing
        additional libraries and services. Hardware or software vendors can make their products
        easily compatible with Microsoft Robotics Studio.
   Supports both remotely connected (PC-based) and robot-based (autonomous)
    application scenarios
       Remotely connected scenarios enable you to communicate from a PC to the robot through a
        serial port, Bluetooth, 802.11, or RF. Programs can also execute natively on PC-based robots
        running Microsoft Windows, enabling fully autonomous operation.
   Develop using a wide range of programming languages
       With Microsoft Robotics Studio, robotics applications can be developed using a selection of
        programming languages, including those in Microsoft Visual Studio and Microsoft Visual
        Studio Express (C# and VB.NET), as well as scripting languages such as Microsoft Iron Python.
MS Robotics Studio
     LEGO have created a product named ‘MINDSTORMS NXT’ that can be used out-
      of-the-box with MS Robotics Studio
     Based on an ARM processor, it consists of a central control module with several
      sensor modules that ‘snap-in’
     Touch, sound, light, and ultrasonic sensors, with servo-motors

                                    Check out -
MS Robotics Studio
 Links of interest...
     MSDN MS Robotics main page -
     MSDN introduction -
     Hardware and software partners -
     MS Robotics community page -
     MS Robotics BLOG -
     Mike Hall’s (MS Embedded) BLOG -
     Tutorials and samples -
     CodeProject example of Robotics VPL Pad Services Orchestration -
     LEGO MINDSTORMS NXT Services -
     LEGO MINDSTORMS products -
Late breaking MS changes

 Microsoft renames embedded operating
   Windows Embedded CE = Windows Embedded
   Windows XP Embedded = Windows Embedded
   "Classic" desktop operating systems with
    Embedded licensing = Windows Embedded
The MS ‘Spark’ program
 SPARK Your Imagination offers a kit that combines Windows Embedded
  CE 6.0 R2, Visual Studio 2005 Professional, and an embedded device.
  Backed by Microsoft and a large, active community of embedded
  developers, Windows Embedded CE provides you with industry-leading
  tools to help you build an endless variety of embedded solutions.
 Features and benefits of SPARK Your Imagination include:
       The power of a professional-grade product at an affordable price point
       A shared source program with more than 3.9 million lines of code available
       Support for up to 32,000 simultaneous processes
       2 GB of virtual memory space for each process
       Integrated board support
       Native real-time OS
   Spark program supported hardware -
Why an ‘EDNUG’?
 Christchurch is a hub of electronics and
  embedded industries in NZ, some large, some
  very small
 Now that Microsoft .NET technologies have
  matured in the embedded space at all levels,
  there is some great synergy from the single
  Visual Studio tools that can be harnessed
 A community driven approach is the best way to
  harness the aggregated talent and ideas out
  there – from all of you!
 But most important - this stuff can be fun !!!
The EDNUG Portal
 EDNUG web site at
 Still a ‘work-in-progress’ – suggestions welcome
 Repository for activities, events, links, presentations etc
 Managed by Andrew Leckie, Chris Fairbairn, Andy Scrase,
  & Bryn Lewis
The Windup...

 Thank you for coming!
 Always looking for guest speakers to do spot
  sessions for 20-30 minutes on an embedded
  topic that you are comfortable with
 Need to collect the names of any individuals who
  may be interested in attending some or all
 Looking for any hardware companies interested
  in promoting their products or getting involved
  with a .NET micro framework or CE BSP port
 Spread the word! ... Spread the passion!
Call to action...
 Let us know if you can be a guest speaker to
  do spot sessions for 30 minutes on an
  embedded topic or experience story that you
  are comfortable with
 Sign-up to the EDNUG so we have your email
 Spread the word! ... Spread the passion!

To top