Upload
ambrose-copeland
View
240
Download
0
Tags:
Embed Size (px)
Citation preview
Creating “real” devicesRudi Groblerhttp://dotnet.org.za/rudiSession Code: DTL314
PhotoBoothDemo
Phase 2: Develop & BuildFinding what you need
Hardware
Hardware
Embedded vs. RetailArchitectures
VIA CX700M (500Mhz-1.5Ghz)Intel Atom (1.6Ghz-2Ghz)AMD Geode (333Mhz-500Mhz)DMP Vortex86SX/DX (233Mhz-1Ghz)
Panel PC vs. Building a KIOSK
Operating System
CCR/DSSFramework
RoboticsDistributedsystems
Industrial Automation
MedicalEntertainment
Thin Client
Personal Navigation Point of Service
Consumer
Robotics
Portable media
Industrial Automation
Telematics
Thin Client
for E
mbe
dded
Syst
ems
Home AutomationWearable
Network sensors
Secondary displays
Micosoft Embedded Technologies
What is Windows Embedded Standard?
Componentized version of Windows OSRuns on standard x86 hardwareRuns applications developedfor Windows (Win32/MFC/.NET)Embedded Enabling FeaturesBootable from variety of hardwareHeadless devices & remote managementIntegrates with Microsoft technologies
Embedded Enabling Features
USB & CD BootWrite FiltersImage Cloning and ResealHibernate Once Resume ManyRemote BootDevice Update AgentMinimum Windows Logon (Minlogon)Message Box Default Reply
Enhanced Write Filter (EWF)Protect OS volume through re-direction to overlay
Persistent (Disk Overlay)Requires storage mechanism on device
(hard drive, flash ram, etc.)Allows for multiple overlay levels
Non-persistent (RAM\RAM Reg Overlay)
Redirects disk writes to memoryMultiple Volume SupportCommand line interface and API to manage filter Disk
Overlay 1
Overlay 2
Overlay 3
File Based Write Filter (FBWF)
File system mini filter driver Enables caching of file system in RAM
Benefits:File system protection on file levelWrite-through by means of exclusion listBetter optimizes memory usage over EWFCommand line interface to manage filter (enable, disable, commit data)Full support for NTFS (encryption, compression) on write-through filesAllows for better servicing scenarios than EWF
Hibernate Once Resume Many (HORM)
Enables the OS state to be preserved across multiple reboots, in hiberfile.sysEnables faster boot time, for “instant-on” experienceWorks with Enhanced Write Filter, as state of OS protected by EWF does not change
USB Boot
WES Boot from USB Flash Device.Run utility to make UFD bootable. Hardware considerations
Device minimum write speed of 11MB/sHi-speed USB 2.0 logo for UFDBIOS must support USB 2.0 boot
Why do USB boot?No HDD means fewer moving partsUFDs are becoming cheaperPractical alternative to Compact Flash
Software
Overview of WPFWindows Presentation Foundation
UI Framework Introduced in .NET 3.0Rich UI Development Using Extensible Application Markup Language (XAML)Clear Separation of Design and Business Logic
Leveraging WPF for Embedded Devices
Perfect for applications where UI is keyATMKioskPoint of SaleJukebox
The Silverlight OptionVery small footprint for small devicesDeployment and servicing is simplifiedTradeoffs when in the browser
Bringing it all together
Hardware
Tools and frameworks
Windows Embedded
Studio
Software
OS
Application
Native.Net
.Netxaml
MFC, ATL
Application Binaries& Components Repository
App, OS and EEFComponents
Windows Embedded Standard
Component Database
Target Analyzer
Target Designer
Component Designer
Development Cycle
OS Image
Windows Embedded Standard 2009Demo
Model-View-ViewModel
View
ViewModel
Model
UnitTest
BusinessLayer
DAL Data
ICommand•RelayCommand•DelegateCommand
INotifyPropertyChangedObservableCollection<>Binding
Architecture
Bluetooth
Bluetooth is an open wireless protocol for exchanging data over short distances from fixed and mobile devices. OBEX (OBject EXchange) is a communications protocol that facilitates the exchange of binary objects between devices
32 FeetIn The Hand
Start OBEX listener
Receive & Save Photo
Marshal back to UI thread
Animations
Subtle, Subtle, Subtle
demo
Tips & Tricks
No cursor (Touch)
Fixed screen resolution
Hide boot splash screen/NOGUIBOOT
Auto-start application[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\
Winlogon] "Shell"=“<Application>”
http://dotnet.org.za/rudiquestion & answer
Complete a session evaluation and enter to win!
10 pairs of MP3 sunglasses to be won
Related ContentBuilding Rich Business Clients in WPF (Brian Noyes)
What’s New in Microsoft Silverlight 3 (Eben de Wit)
Developing for Windows 7 (Lynn Langit)
Optimizing Your Application for the Windows 7 User Experience (Lynn Langit)
ViewModel and Application Patterns with Silverlight (Nikhil Kothari)Microsoft Expression Blend from a Developer’s Point of View (Rudi Grobler)
Windows Client Development Discussion (Rudi, Lynn & Tony)Sharing Code between your Microsoft .NET Framework Applications and Microsoft Silverlight (Stephen Forte)
Windows Embedded Resources
Website: www.windowsembedded.com
Social Channels: blogs.msdn.com/mikehallblogs.msdn.com/obloch
Technical Resources: http://msdn.microsoft.com/embedded
Tools evaluations: www.windowsembedded.com/downloads
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,
IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.