TITLE SLIDE BSQUARE logo Bill Baxter President, CEO, Director, Founder PowerPoint PPT Presentation

presentation player overlay
1 / 18
About This Presentation
Transcript and Presenter's Notes

Title: TITLE SLIDE BSQUARE logo Bill Baxter President, CEO, Director, Founder


1
Using XML to Update Software in Embedded CE
Devices
Ken Rabold Senior Software Engineer BSQUARE
Corporation
2
Introduction
  • Embedded devices need new software
  • Centralized administration
  • Scheduled rollouts
  • BSQUAREs CE Remote Updater
  • XML based update script
  • Architecture and operation
  • Samples
  • Future steps

3
WBT Application
  • Windows Based Terminals
  • Lower TCO by centralizing software updates
  • Start simple design for enhancements
  • Generalize for other applications
  • Low end server - HTTP or FTP server
  • High end server - dynamic updates

4
Software Updates
  • Programs and installations
  • Data Files
  • COM DLLs
  • Update Registry
  • Update Operating System
  • Simple Commands (Execute, Reboot)

5
Windows CE
  • Simplicity and Size
  • Client Initiated vs. Server Initiated
  • Pull vs. Push
  • On demand, scheduled, event driven
  • Embrace Internet Standards
  • HTTP, FTP, XML
  • Support Embedded Device Differences

6
History
  • Active Channel
  • web site content changes
  • software update channels
  • CDF (Channel Definition Format)
  • Open Software Description
  • multi-platform software installs
  • All use XML

7
CE Remote Updater
  • Set of Windows CE COM components
  • BSQXML
  • SoftwareUpdate
  • Registry
  • PlatformServices
  • XML schema (DTD) that defines an update
    directives script
  • Sample source code and ASP code

8
Architecture
9
Operation
  • Load XML Directives from URL
  • Check package ID in history log
  • Execute each directive in script
  • Log package ID in history

10
Sample Directives File
11
Directives DTD (partial)
  • lt?xml version"1.0" encoding"UTF-8"?gt
  • lt!ELEMENT Package (CopyFileDiskOnChipOsUpdateExe
    cuteUpdateRegistryReboot)gt
  • lt!ATTLIST Package
  • ID CDATA IMPLIEDgt
  • lt!ELEMENT CopyFile (Description?,Source,Destinatio
    n,CommandLine?)gt
  • lt!ELEMENT DiskOnChipOsUpdate (Description?,Source)
    gt
  • lt!ELEMENT Execute (Description?,FileName,CommandLi
    ne)gt
  • lt!ELEMENT UpdateRegistry (Description?,FileName)gt
  • lt!ELEMENT Reboot (PCDATA)gt
  • lt!ATTLIST CopyFile
  • OSImage (YesNo) "No"
  • OSImageSize CDATA "0"
  • Register (YesNo) "No"
  • Execute (YesNo) "No"
  • WaitForExit (YesNo) "No"gt
  • lt!ATTLIST Execute
  • WaitforExit (YesNo) "No"gt

12
CE Application Code
  • HRESULT hr
  • ISoftwareUpdatePtr updater
  • CComBSTR url(http//server/update.xml)
  • hr updater.CreateInstance( __uuidof(SoftwareUpda
    te) )
  • if( FAILED(hr) ) return hr
  • hr updater-gtLoadSystemConfiguration( url )
  • if( FAILED(hr) ) return hr
  • hr updater-gtRunUpdate()
  • if( FAILED(hr) ) return hr

13
Server Processing
  • Direct access to a particular XML file
  • ASP redirect to XML file
  • Based on URL parameters
  • WBT - Device to Group to XML mapping
  • Server side XSL transformation
  • Update directives template
  • Template transformed with server specific
    addresses and returned dynamically

14
Server Processing (ASP)
  • URL http//server/update.asp?GroupEngineering
  • lt_at_ LanguageVBScript gt
  • lt
  • Redirect device to specific group
  • Select Case Request.QueryString(Group)
  • Case Sales
  • Response.Redirect(http//server/SalesUpdate.
    xml)
  • Case Engineering
  • Response.Redirect(http//server/EngineeringU
    pdate.xml)
  • End Select
  • gt

15
Requirements for NT Development System
  • Windows NT 4.0
  • NT Option Pack 4.0 (for Internet Information
    Server)
  • Visual Studio 6.0
  • Visual C for CE (VCCE) or Visual Basic for CE
    (VBCE)
  • HPC SDK or HPC Pro SDK

16
Requirements for the CE Device
  • Windows CE 2.00
  • MIPS, SH3, emulator
  • Windows CE 2.11and 2.12
  • ARM, MIPS, SH3, SH4, x86
  • Footprint 150KB

17
Futures
  • Enhance directives for NTe and CE
  • Server Administration
  • Directives Authoring Tool
  • Server update push

18
Questions?
  • Thank you
Write a Comment
User Comments (0)
About PowerShow.com