<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" media="screen" href="/styles/xslt/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:c9="http://channel9.msdn.com">
<channel>
	<title>Channel 9 - Entries tagged with sensors</title>
    <atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/Tags/sensors/RSS"></atom:link>
    <itunes:summary></itunes:summary>
    <itunes:author>Microsoft</itunes:author>
    <itunes:subtitle></itunes:subtitle>
    <image>
      <url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.png</url>
      <title>Channel 9 - Entries tagged with sensors</title>
      <link>http://channel9.msdn.com/Tags/sensors</link>
    </image>
    <itunes:image href=""></itunes:image>
    <itunes:category text="Technology"></itunes:category>
    <description>Channel 9 keeps you up to date with the latest news and behind the scenes info from Microsoft that developers love to keep up with. From LINQ to SilverLight – Watch videos and hear about all the cool technologies coming and the people behind them.</description>
    <link>http://channel9.msdn.com/Tags/sensors</link>
    <language>en</language>
    <pubDate>Thu, 23 May 2013 13:25:48 GMT</pubDate>
    <lastBuildDate>Thu, 23 May 2013 13:25:48 GMT</lastBuildDate>
    <generator>Rev9</generator>
    <c9:totalResults>9</c9:totalResults>
    <c9:pageCount>1</c9:pageCount>
    <c9:pageSize>25</c9:pageSize>
  <item>
      <title>Advanced Windows Store App Development with HTML5: (02) Hardware and Sensors</title>
      <description><![CDATA[<p>The easy way to capture media is with camera capture UI, the powerful way is with media capture. This segment demos capturing media from the camera and microphone, discovering device capabilities and reading various hardware sensors.</p><ul><li><a href="http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors#time=03m24s">[03:24]</a> - Capture pictures and video </li><li><a href="http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors#time=25m53s">[25:53]</a> - Jack of Tools demo </li><li><a href="http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors#time=30m15s">[30:15]</a> - Capture audio </li><li><a href="http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors#time=34m47s">[34:47]</a> - Get data from sensors </li><li><a href="http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors#time=47m00s">[47:00]</a> - Enumerate and discover device capabilities </li></ul><p>Full course outline:</p><ul><li>Mod 01: <a title="Background Tasks and Components" href="http://channel9.msdn.com/posts/Advanced-Windows-Store-App-Development-with-HTML5-01-Background-Tasks-and-Components" target="_self">Background Tasks and Components</a> </li><li>Mod 02: Hardware and Sensors </li><li>Mod 03: <a title="Printing and PlayTo" href="http://channel9.msdn.com/posts/Advanced-Windows-Store-App-Development-with-HTML5-03-Printing-and-PlayTo" target="_self">Printing and PlayTo</a> </li><li>Mod 04: <a title="Animations, Custom Controls, and Globalization" href="http://channel9.msdn.com/posts/Advanced-Windows-Store-App-Development-with-HTML5-04-Animations-Custom-Controls-and-Globalization" target="_self">Animations, Custom Controls, and Globalization</a> </li><li>Mod 05: <a title="Data, Files and Encryption" href="http://channel9.msdn.com/posts/Advanced-Windows-Store-App-Development-with-HTML5-05-Data-Files-and-Encryption" target="_self">Data, Files and Encryption</a> </li><li>Mod 06: <a title="App Deployment" href="http://channel9.msdn.com/posts/Advanced-Windows-Store-App-Development-with-HTML5-06-App-Deployment" target="_self">App Deployment</a> </li></ul> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:73233ac754bd498ab926a17800298a8c">]]></description>
      <comments>http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors</comments>
      <itunes:summary>The easy way to capture media is with camera capture UI, the powerful way is with media capture. This segment demos capturing media from the camera and microphone, discovering device capabilities and reading various hardware sensors. [03:24] - Capture pictures and video [25:53] - Jack of Tools demo [30:15] - Capture audio [34:47] - Get data from sensors [47:00] - Enumerate and discover device capabilities Full course outline: Mod 01: Background Tasks and Components Mod 02: Hardware and Sensors Mod 03: Printing and PlayTo Mod 04: Animations, Custom Controls, and Globalization Mod 05: Data, Files and Encryption Mod 06: App Deployment </itunes:summary>
      <itunes:duration>3391</itunes:duration>
      <link>http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors</link>
      <pubDate>Tue, 05 Mar 2013 16:58:57 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors</guid>
      <media:thumbnail url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02_100.jpg" height="56" width="100"></media:thumbnail>
      <media:thumbnail url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02_220.jpg" height="123" width="220"></media:thumbnail>
      <media:thumbnail url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02_512.jpg" height="288" width="512"></media:thumbnail>
      <media:group>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.mp3" expression="full" duration="3391" fileSize="54268505" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.mp4" expression="full" duration="3391" fileSize="325681106" type="video/mp4" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.webm" expression="full" duration="3391" fileSize="108589567" type="video/webm" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.wma" expression="full" duration="3391" fileSize="27431551" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.wmv" expression="full" duration="3391" fileSize="167276063" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02_high.mp4" expression="full" duration="3391" fileSize="714870362" type="video/mp4" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02_mid.mp4" expression="full" duration="3391" fileSize="499076287" type="video/mp4" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02_Source.wmv" expression="full" duration="3391" fileSize="629066329" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://smooth.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.ism/manifest" expression="full" duration="3391" fileSize="8446" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://media.ch9.ms/ch9/f01b/04728156-a59e-42f2-a4ca-e3f254e1f01b/AdvWin8HTML02.wmv" length="167276063" type="video/x-ms-wmv"></enclosure>
      <dc:creator>JeffKoch</dc:creator>
      <itunes:author>JeffKoch</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Series/Advanced-Windows-Store-App-Development-with-HTML5-Jump-Start/Advanced-Windows-Store-App-Development-with-HTML5-02-Hardware-and-Sensors/RSS</wfw:commentRss>
      <category>HTML5</category>
      <category>Sensor and Location Platform</category>
      <category>sensors</category>
      <category>Windows 8</category>
      <category>Windows Store App</category>
    </item>
  <item>
      <title>Building Apps for Windows Phone 8 Jump Start: (12) Proximity Sensors and Bluetooth in Windows Phone 8</title>
      <description><![CDATA[<p>Andy and Rob cover local communication with Windows Phone 8 in this module. After a Bluetooth Overview, using Bluetooth from an application, Near Field Communications (NFC), bump-to-connect, using NFC from an application and proximity API functionality are covered.</p><ul><li><a href="http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8#time=01m58s">[01:58]</a> - Bluetooth overview </li><li><a href="http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8#time=11m38s">[11:38]</a> - App to app communication </li><li><a href="http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8#time=20m40s">[20:40]</a> - Near Field Communication </li><li><a href="http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8#time=34m28s">[34:28]</a> - NFC and Bluetooth demo </li></ul><p>Full course outline:</p><ul><li>Mod 01a: <a title="Introducing Windows Phone 8 Development Part 1" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-01a-Introducing-Windows-Phone-8-Development-Part-1" target="_self">Introducing Windows Phone 8 Development Part 1</a> </li><li>Mod 01b: <a title="Introducing Windows Phone 8 Development Part 2" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-01b-Introducing-Windows-Phone-8-Development-Part-2" target="_self">Introducing Windows Phone 8 Development Part 2</a> </li><li>Mod 02: <a title="Designing Windows Phone 8 Apps" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-02-Designing-Windows-Phone-8-Apps" target="_self">Designing Windows Phone 8 Apps</a> </li><li>Mod 03: <a title="Building Windows Phone 8 Apps" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-03-Building-Windows-Phone-8-Apps" target="_self">Building Windows Phone 8 Apps</a> </li><li>Mod 04: <a title="Files and Storage on Windows Phone 8" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-04-Files-and-Storage-on-Windows-Phone-8" target="_self">Files and Storage on Windows Phone 8</a> </li><li>Mod 05: <a title="Windows Phone 8 Application Lifecycle" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-05-Windows-Phone-8-Application-Lifecycle" target="_self">Windows Phone 8 Application Lifecycle</a> </li><li>Mod 06: <a title="Background Agents" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-06-Background-Agents" target="_self">Background Agents</a> </li><li>Mod 07: <a title="Tiles and Lock Screen Notifications" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-07-Tiles-and-Lock-Screen-Notifications" target="_self">Tiles and Lock Screen Notifications</a> </li><li>Mod 08: <a title="Push Notifications" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-08-Push-Notifications" target="_self">Push Notifications</a> </li><li>Mod 09: <a title="Using Phone Resources in Windows Phone 8" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-09-Using-Phone-Resources-in-Windows-Phone-8" target="_self">Using Phone Resources in Windows Phone 8</a> </li><li>Mod 10: <a title="App to App Communication in Windows Phone 8" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-10-App-to-App-Communication-in-Windows-Phone-8" target="_self">App to App Communication in Windows Phone 8</a> </li><li>Mod 11: <a title="Network Communication in Windows Phone 8" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-11-Network-Communication-in-Windows-Phone-8" target="_self">Network Communication in Windows Phone 8</a> </li><li>Mod 12: Proximity Sensors and Bluetooth in Windows Phone 8 </li><li>Mod 13: <a title="Speech Input in Windows Phone 8" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-13-Speech-Input-in-Windows-Phone-8" target="_self">Speech Input in Windows Phone 8</a> </li><li>Mod 14: <a title="Maps and Location in Windows Phone 8" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-14-Maps-and-Location-in-Windows-Phone-8" target="_self">Maps and Location in Windows Phone 8</a> </li><li>Mod 15: <a title="Wallet Support" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-15-Wallet-Support" target="_self">Wallet Support</a> </li><li>Mod 16: <a title="In-App Purchasing" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-16-In-App-Purchasing" target="_self">In-App Purchasing</a> </li><li>Mod 17: <a title="The Windows Phone Store" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-17-The-Windows-Phone-Store" target="_self">The Windows Phone Store</a> </li><li>Mod 18: <a title="Enterprise App Architecture" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-18-Enterprise-App-Architecture" target="_self">Enterprise App Architecture</a> </li><li>Mod 19: <a title="Windows Phone 8 and Windows 8 Cross Platform Development" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-19-Windows-Phone-8-and-Windows-8-Cross-Platform-Develop" target="_self">Windows Phone 8 and Windows 8 Cross Platform Development</a> </li><li>Mod 20: <a title="Mobile Web" href="http://channel9.msdn.com/posts/Building-Apps-for-Windows-Phone-8-Jump-Start-20-Mobile-Web" target="_self">Mobile Web</a> </li></ul> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:cfe98ff4a86044b7b13aa11b0137ae7a">]]></description>
      <comments>http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8</comments>
      <itunes:summary>Andy and Rob cover local communication with Windows Phone 8 in this module. After a Bluetooth Overview, using Bluetooth from an application, Near Field Communications (NFC), bump-to-connect, using NFC from an application and proximity API functionality are covered. [01:58] - Bluetooth overview [11:38] - App to app communication [20:40] - Near Field Communication [34:28] - NFC and Bluetooth demo Full course outline: Mod 01a: Introducing Windows Phone 8 Development Part 1 Mod 01b: Introducing Windows Phone 8 Development Part 2 Mod 02: Designing Windows Phone 8 Apps Mod 03: Building Windows Phone 8 Apps Mod 04: Files and Storage on Windows Phone 8 Mod 05: Windows Phone 8 Application Lifecycle Mod 06: Background Agents Mod 07: Tiles and Lock Screen Notifications Mod 08: Push Notifications Mod 09: Using Phone Resources in Windows Phone 8 Mod 10: App to App Communication in Windows Phone 8 Mod 11: Network Communication in Windows Phone 8 Mod 12: Proximity Sensors and Bluetooth in Windows Phone 8 Mod 13: Speech Input in Windows Phone 8 Mod 14: Maps and Location in Windows Phone 8 Mod 15: Wallet Support Mod 16: In-App Purchasing Mod 17: The Windows Phone Store Mod 18: Enterprise App Architecture Mod 19: Windows Phone 8 and Windows 8 Cross Platform Development Mod 20: Mobile Web </itunes:summary>
      <itunes:duration>2528</itunes:duration>
      <link>http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8</link>
      <pubDate>Tue, 04 Dec 2012 19:27:48 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8</guid>
      <media:thumbnail url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12_100.jpg" height="56" width="100"></media:thumbnail>
      <media:thumbnail url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12_220.jpg" height="123" width="220"></media:thumbnail>
      <media:thumbnail url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12_512.jpg" height="288" width="512"></media:thumbnail>
      <media:group>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.mp3" expression="full" duration="2528" fileSize="40456265" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.mp4" expression="full" duration="2528" fileSize="246436824" type="video/mp4" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.webm" expression="full" duration="2528" fileSize="78662957" type="video/webm" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.wma" expression="full" duration="2528" fileSize="20450255" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.wmv" expression="full" duration="2528" fileSize="108873413" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12_high.mp4" expression="full" duration="2528" fileSize="541291484" type="video/mp4" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12_mid.mp4" expression="full" duration="2528" fileSize="377978834" type="video/mp4" medium="video"></media:content>
        <media:content url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12_Source.wmv" expression="full" duration="2528" fileSize="274357046" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://smooth.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.ism/manifest" expression="full" duration="2528" fileSize="8462" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://media.ch9.ms/ch9/7f02/faaf4816-3918-44bd-bda8-39ea996a7f02/WP8JumpStart12.wmv" length="108873413" type="video/x-ms-wmv"></enclosure>
      <dc:creator>JeffKoch, Larry Lieberman</dc:creator>
      <itunes:author>JeffKoch, Larry Lieberman</itunes:author>
      <slash:comments>2</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Series/Building-Apps-for-Windows-Phone-8-Jump-Start/Building-Apps-for-Windows-Phone-8-Jump-Start-12-Proximity-Sensors-and-Bluetooth-in-Windows-Phone-8/RSS</wfw:commentRss>
      <category>Bluetooth</category>
      <category>sensors</category>
      <category>Windows Phone 8</category>
    </item>
  <item>
      <title>Supporting sensors in Windows 8</title>
      <description><![CDATA[<p>Windows 8 can support sensors including; adaptive brightness and automatic screen rotation. Windows 8 is powerful and handling the accelerometer with a low-pass filter to prevent images from being jittery and to&nbsp;improve&nbsp;system response. <a href="http://blogs.msdn.com/b/b8/archive/2012/01/24/supporting-sensors-in-windows-8.aspx">http://blogs.msdn.com/b/b8/archive/2012/01/24/supporting-sensors-in-windows-8.aspx</a></p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:824ab48a2b9649b485de9fda0142bfda">]]></description>
      <comments>http://channel9.msdn.com/posts/Supporting-sensors-in-Windows-8</comments>
      <itunes:summary>Windows 8 can support sensors including; adaptive brightness and automatic screen rotation. Windows 8 is powerful and handling the accelerometer with a low-pass filter to prevent images from being jittery and to&amp;nbsp;improve&amp;nbsp;system response. http://blogs.msdn.com/b/b8/archive/2012/01/24/supporting-sensors-in-windows-8.aspx </itunes:summary>
      <link>http://channel9.msdn.com/posts/Supporting-sensors-in-Windows-8</link>
      <pubDate>Wed, 04 Apr 2012 02:27:53 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/posts/Supporting-sensors-in-Windows-8</guid>
      <media:thumbnail url="http://ak.channel9.msdn.com/ch9/bfda/824ab48a-2b96-49b4-85de-9fda0142bfda/SupportSensorsinWin8_512_ch9.jpg" height="384" width="512"></media:thumbnail>
      <media:group>
        <media:content url="http://ak.channel9.msdn.com/ch9/bfda/824ab48a-2b96-49b4-85de-9fda0142bfda/SupportSensorsinWin8_high_ch9.mp4" expression="full" fileSize="1" type="video/mp4" medium="video"></media:content>
        <media:content url="http://ak.channel9.msdn.com/ch9/bfda/824ab48a-2b96-49b4-85de-9fda0142bfda/SupportSensorsinWin8_low_ch9.mp4" expression="full" fileSize="1" type="video/mp4" medium="video"></media:content>
      </media:group>      
      <dc:creator>Roxanne Beaver</dc:creator>
      <itunes:author>Roxanne Beaver</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/posts/Supporting-sensors-in-Windows-8/rss</wfw:commentRss>
      <category>accelerometer</category>
      <category>Sensor</category>
      <category>sensors</category>
      <category>Windows 8</category>
    </item>
  <item>
      <title>Building Awesome Apps for Windows 7 (Session 1): A Lap Around the Windows API Code Pack</title>
      <description><![CDATA[ <p>&nbsp;</p><div><div>The <a href="http://code.msdn.microsoft.com/WindowsAPICodePack">Windows API Code Pack for the .NET Framework</a> is a managed library for building applications that light up on Windows 7. It provides access to new user interface features (taskbar jump lists, libraries, sensor platform and more) as well as &quot;behind the scenes&quot; features that make your applications more aware and responsive (restart and recovery, power management and more). This is a must-have library for developers targeting Windows 7 with managed code. In this session, you’ll learn how to quickly incorporate the Windows API Code Pack into your applications to take advantage of features in Windows 7.</div><div>&nbsp; <div>Windows 7 represents an amazing opportunity for application developers. Since shipping just one year ago, <a href="http://windowsteamblog.com/windows/b/bloggingwindows/archive/2010/10/21/celebrating-windows-7-at-1-year-more-than-240-million-licenses-sold.aspx">more than 240 million licenses of Windows 7 have been sold</a>,&nbsp;that’s roughly seven copies of Windows 7 sold every second! Windows 7 is also an amazing platform. Through integrated capabilities through the Windows Taskbar, sensors, text, and speech it blends the best technology, innovation, and creativity to empower developers to create awesome apps.</div><div>&nbsp;</div><div>Join Kate Gregory for the Building Awesome Apps for Windows 7 tour. Hear how you can start taking advantage of the capabilities of Windows 7 in your new/existing applications today.</div><div>&nbsp;</div><div>Visit <a href="http://www.developforwindows.com/">www.developforwindows.com</a> to get more information on why you should build for Windows today.</div><div>&nbsp;</div><div><a href="http://channel9.msdn.com/posts/Building-Awesome-Apps-for-Windows-7-Overview">Overview Session</a></div><div><div>Session 1: A Lap Around the Windows API Code Pack</div><div><a href="http://channel9.msdn.com/posts/Building-Awesome-Apps-for-Windows-7-Session-2-Building-Touch-First-Applications-for-Windows-7">Session 2: Building Touch-First Applications for Windows 7</a></div><div><div><strong><br>Additional Resources</strong></div><div><strong>-&nbsp;</strong><a href="http://code.msdn.microsoft.com/WindowsAPICodePack">Download</a> Windows API Code pack to get started today! </div><p>- <a href="http://www.msdn.microsoft.com/flash">Subscribe</a>&nbsp;to the&nbsp;MSDN Flash Newsletter to ensure you are the first to be notified about community events, offers and developers news.</p></div></div></div></div> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:0adc1ee010cf412a8ee99e3d0177d54a">]]></description>
      <comments>http://channel9.msdn.com/posts/Building-Awesome-Apps-for-Windows-7-Session-1-A-Lap-Around-the-Windows-API-Code-Pack</comments>
      <itunes:summary> &amp;nbsp; The Windows API Code Pack for the .NET Framework is a managed library for building applications that light up on Windows 7. It provides access to new user interface features (taskbar jump lists, libraries, sensor platform and more) as well as &amp;quot;behind the scenes&amp;quot; features that make your applications more aware and responsive (restart and recovery, power management and more). This is a must-have library for developers targeting Windows 7 with managed code. In this session, you’ll learn how to quickly incorporate the Windows API Code Pack into your applications to take advantage of features in Windows 7.&amp;nbsp; Windows 7 represents an amazing opportunity for application developers. Since shipping just one year ago, more than 240 million licenses of Windows 7 have been sold,&amp;nbsp;that’s roughly seven copies of Windows 7 sold every second! Windows 7 is also an amazing platform. Through integrated capabilities through the Windows Taskbar, sensors, text, and speech it blends the best technology, innovation, and creativity to empower developers to create awesome apps.&amp;nbsp;Join Kate Gregory for the Building Awesome Apps for Windows 7 tour. Hear how you can start taking advantage of the capabilities of Windows 7 in your new/existing applications today.&amp;nbsp;Visit www.developforwindows.com to get more information on why you should build for Windows today.&amp;nbsp;Overview SessionSession 1: A Lap Around the Windows API Code PackSession 2: Building Touch-First Applications for Windows 7Additional Resources-&amp;nbsp;Download Windows API Code pack to get started today! - Subscribe&amp;nbsp;to the&amp;nbsp;MSDN Flash Newsletter to ensure you are the first to be notified about community events, offers and developers news. </itunes:summary>
      <itunes:duration>3359</itunes:duration>
      <link>http://channel9.msdn.com/posts/Building-Awesome-Apps-for-Windows-7-Session-1-A-Lap-Around-the-Windows-API-Code-Pack</link>
      <pubDate>Wed, 01 Dec 2010 22:19:36 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/posts/Building-Awesome-Apps-for-Windows-7-Session-1-A-Lap-Around-the-Windows-API-Code-Pack</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_100_ch9.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_220_ch9.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_512_ch9.jpg" height="384" width="512"></media:thumbnail>
      <media:group>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_2MB_ch9.wmv" expression="full" duration="3359" fileSize="424865605" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_ch9.mp3" expression="full" duration="3359" fileSize="26876042" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_ch9.wma" expression="full" duration="3359" fileSize="27179161" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_ch9.wmv" expression="full" duration="3359" fileSize="383033586" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_high_ch9.mp4" expression="full" duration="3359" fileSize="615956198" type="video/mp4" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_low_ch9.mp4" expression="full" duration="3359" fileSize="227577955" type="video/mp4" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://ecn.channel9.msdn.com/o9/ch9/d54a/0adc1ee0-10cf-412a-8ee9-9e3d0177d54a/Win7AppsSession1_ch9.wmv" length="383033586" type="video/x-ms-wmv"></enclosure>
      <dc:creator>MSDN Online Media</dc:creator>
      <itunes:author>MSDN Online Media</itunes:author>
      <slash:comments>1</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/posts/Building-Awesome-Apps-for-Windows-7-Session-1-A-Lap-Around-the-Windows-API-Code-Pack/rss</wfw:commentRss>
      <category>Libraries</category>
      <category>Sensor</category>
      <category>Taskbar</category>
      <category>Apps</category>
      <category>Application</category>
      <category>sensors</category>
    </item>
  <item>
      <title>Hanselminutes on 9 - Gadget Basement with Ward Cunningham</title>
      <description><![CDATA[ <p>Scott stopped by Ward Cunningham (you know, the guy who <strong>invented the Wiki</strong>. Yes, that Ward Cunningham) to hang out, and discovered Ward's treasure trove of electronics, software, soldering guns and web accessible sensor arrays that run 24/7/365. Ever wish you had a real cool uncle that didn't take you fishing, but instead showed you how to create your own multi-processor computer with $2 chips off the shelf? Let's step into Uncle Ward's basement.</p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:ebc1276226864cb9b8489e060061be34">]]></description>
      <comments>http://channel9.msdn.com/Shows/HanselminutesOn9/Hanselminutes-on-9-Gadget-Basement-with-Ward-Cunningham</comments>
      <itunes:summary> Scott stopped by Ward Cunningham (you know, the guy who invented the Wiki. Yes, that Ward Cunningham) to hang out, and discovered Ward&#39;s treasure trove of electronics, software, soldering guns and web accessible sensor arrays that run 24/7/365. Ever wish you had a real cool uncle that didn&#39;t take you fishing, but instead showed you how to create your own multi-processor computer with $2 chips off the shelf? Let&#39;s step into Uncle Ward&#39;s basement. </itunes:summary>
      <itunes:duration>1669</itunes:duration>
      <link>http://channel9.msdn.com/Shows/HanselminutesOn9/Hanselminutes-on-9-Gadget-Basement-with-Ward-Cunningham</link>
      <pubDate>Tue, 05 Oct 2010 18:41:33 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Shows/HanselminutesOn9/Hanselminutes-on-9-Gadget-Basement-with-Ward-Cunningham</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_100_ch9.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_220_ch9.jpg" height="165" width="220"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_512_ch9.jpg" height="384" width="512"></media:thumbnail>
      <media:group>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_2MB_ch9.wmv" expression="full" duration="1669" fileSize="982967227" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_ch9.mp3" expression="full" duration="1669" fileSize="13357513" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_ch9.mp4" expression="full" duration="1669" fileSize="178109774" type="video/mp4" medium="video"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_ch9.wma" expression="full" duration="1669" fileSize="13513965" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_ch9.wmv" expression="full" duration="1669" fileSize="352159446" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://ecn.channel9.msdn.com/o9/ch9/be34/ebc12762-2686-4cb9-b848-9e060061be34/HanselminutesOn9WardCunninghamGadgets_ch9.wmv" length="352159446" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Scott Hanselman</dc:creator>
      <itunes:author>Scott Hanselman</itunes:author>
      <slash:comments>7</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Shows/HanselminutesOn9/Hanselminutes-on-9-Gadget-Basement-with-Ward-Cunningham/RSS</wfw:commentRss>
      <category>Computer Hardware</category>
      <category>HanselminutesOn9</category>
      <category>Hardware</category>
      <category>Sensor</category>
      <category>sensors</category>
    </item>
  <item>
      <title>Feeling the Earth Move</title>
      <description><![CDATA[
<p>Want to know if the earth is shaking?&nbsp; How about if someone is moving your laptop?&nbsp; Create a utility to detect movement so you'll know right away when something is happening!</p>
<p>The Windows 7 sensors platform exposes a standard way of communicating with hardware for determining location, light, magnetic north (compass), distance, movement, and much more.&nbsp; Through the accelerometer, movement is measured as force (G's) in up to three
 dimensions.&nbsp; The Freescale Badge board that I use for sensor development includes ambient light, touch, and a 3D accelerometer.</p>
<p>Working with the three axes of accelerometer data is incredibly easy.&nbsp; Each sensor data report indicates the number of G's felt along each axis.&nbsp; You can watch the values of movement in order to know more about the environment.</p>
<p>My first thought with this application was to create a seismometer to measure ground tremors, but I'm not so sure the one that I have would be nearly sensitive for that.&nbsp; Then it occurred to me that the accelerometer would work great to detect a laptop being
 moved.&nbsp; I see people leaving their laptop on a table and going up for a refill at a coffee shop.&nbsp; When I do that I always feel pretty nervous.&nbsp; Knowing that it could sound an alarm if someone moved it would make me feel more secure.&nbsp;
</p>
<p>For this application, you'll need a Windows 7 system, with a built-in or hardware add-on accelerometer.&nbsp; Some hard drives have them, some Lenovo laptops have them, but you need to be able to access the sensor using standard Windows 7 Devices and Sensors
 drivers.</p>
<p>With hardware in place, download Visual Studio 2010 Express, the Windows API Code Pack, and the Sensors and Location API, then you're ready to get started!</p>
<h3>Good Vibrations</h3>
<p>The accelerometer is an interesting sensor.&nbsp; You wiggle something physical around and get numbers that change.&nbsp; The numbers represent how many G's are being experienced in up to three dimensions.&nbsp; This makes it trivial to see when there is movement.&nbsp; With
 some additional work you can figure out more fine-grained movement information, but we just need to know how much things are moving around.</p>
<p>Using the Windows 7 managed sensors API, we can instantiate the accelerometer and start reading values with only a small amount of work.&nbsp; Even better, due to the design of the sensors API we can access it without locking it.&nbsp; In other words, unlike reading
 data from a serial port or other hardware connection, applications can share devices.</p>
<p>In this application, I wanted a UI with a lots of the raw and calculated values showing.&nbsp; This includes the G's for the individual axes, the net magnitude, and even a chart of data.&nbsp; In a WPF application, you need public properties in order to participate
 in databinding.&nbsp; You also need to be able to alert listeners when your values change.&nbsp; Unfortunately, the X, Y, and Z values from the sensor report are not easily bindable due to their indexed nature.&nbsp; They also have no way of alerting listeners (like the
 UI) that they have been updated.</p>
<p>The key to creating the right properties is using the <a href="http://msdn.microsoft.com/library/system.componentmodel.inotifypropertychanged.aspx" target="_blank">
INotifyPropertyChanged</a> interface.&nbsp; This interface has only a single member – the
<em>PropertyChanged<strong> </strong></em>event.&nbsp; Whenever a property value changes, raise this event and any interested listeners will know to grab the new value.</p>
<p><strong>Visual Basic</strong></p>
<pre class="csharpcode"><span class="preproc">#Region</span> <span class="str">&quot;Magnitude Property&quot;</span>
    <span class="kwrd">Private</span> _magnitude <span class="kwrd">As</span> <span class="kwrd">Double</span>
    <span class="kwrd">Public</span> <span class="kwrd">Property</span> Magnitude() <span class="kwrd">As</span> <span class="kwrd">Double</span>
        <span class="kwrd">Get</span>
            <span class="kwrd">Return</span> _magnitude
        <span class="kwrd">End</span> <span class="kwrd">Get</span>
        <span class="kwrd">Set</span>(<span class="kwrd">ByVal</span> value <span class="kwrd">As</span> <span class="kwrd">Double</span>)
            _magnitude = value
            OnPropertyChanged(<span class="str">&quot;Magnitude&quot;</span>)
        <span class="kwrd">End</span> <span class="kwrd">Set</span>
    <span class="kwrd">End</span> <span class="kwrd">Property</span>
<span class="preproc">#End Region</span></pre>
<pre class="csharpcode"><span class="preproc">#Region</span> <span class="str">&quot;INotifyPropertyChanged Members&quot;</span>

    <span class="kwrd">Public</span> <span class="kwrd">Event</span> PropertyChanged <span class="kwrd">As</span> PropertyChangedEventHandler <span class="kwrd">Implements</span> INotifyPropertyChanged.PropertyChanged

    <span class="kwrd">Private</span> <span class="kwrd">Sub</span> OnPropertyChanged(<span class="kwrd">ByVal</span> prop <span class="kwrd">As</span> <span class="kwrd">String</span>)
        <span class="kwrd">RaiseEvent</span> PropertyChanged(<span class="kwrd">Me</span>, <span class="kwrd">New</span> PropertyChangedEventArgs(prop))
    <span class="kwrd">End</span> <span class="kwrd">Sub</span>
<span class="preproc">#End Region</span></pre>
<p><strong>Visual C#</strong></p>
<pre class="csharpcode"><span class="preproc">#region</span> Magnitude Property
<span class="kwrd">private</span> <span class="kwrd">double</span> _magnitude;
<span class="kwrd">public</span> <span class="kwrd">double</span> Magnitude
{
    get { <span class="kwrd">return</span> _magnitude; }
    set
    {
        _magnitude = <span class="kwrd">value</span>;
        OnPropertyChanged(<span class="str">&quot;Magnitude&quot;</span>);
    }
}
<span class="preproc">#endregion<pre class="csharpcode"><span class="preproc">#region</span> INotifyPropertyChanged Members

<span class="kwrd">public</span> <span class="kwrd">event</span> PropertyChangedEventHandler PropertyChanged;

<span class="kwrd">private</span> <span class="kwrd">void</span> OnPropertyChanged(<span class="kwrd">string</span> prop)
{
    <span class="kwrd">if</span> (PropertyChanged != <span class="kwrd">null</span>)
        PropertyChanged(<span class="kwrd">this</span>, <span class="kwrd">new</span> PropertyChangedEventArgs(prop));
}

<span class="preproc">#endregion</span>
</pre></span></pre>
<p>This pattern is found in every public property that you want to enable for databinding.&nbsp; It's great because you can do it on a class for WPF or Silverlight, yet it's not creating a dependency on them.&nbsp; You can subscribe to this event in some apps, and simply
 ignore the event in other applications.&nbsp; Being able to reuse business objects this way is a big deal to me.</p>
<p>Now the UI can display new values as they change without the old Windows forms-style code (tbValue.Text = “value”).&nbsp; The other part was to actually sound an alarm if the acceleration was more than a preset value.&nbsp; This is a simple comparison.&nbsp; This threshold
 value is called “sensitivity” and accepts a value from 0-3.&nbsp; This is value is also a property in the view model.&nbsp; If the measured magnitude value is higher than the threshold, then an alert displays and the system
<em>Exclamation </em>sound plays:</p>
<p><strong>Visual Basic</strong></p>
<p></p>
<pre class="csharpcode"><span class="kwrd">If</span> <span class="kwrd">Me</span>.Magnitude &gt; <span class="kwrd">Me</span>.Sensitivity <span class="kwrd">Then</span>
    Status = <span class="kwrd">String</span>.Format(<span class="str">&quot;Big movement! ({0} G's)&quot;</span>, Magnitude)
    System.Media.SystemSounds.Exclamation.Play()
<span class="kwrd">End</span> If</pre>
<strong>Visual C#</strong>
<pre class="csharpcode"><span class="kwrd">if</span> (<span class="kwrd">this</span>.Magnitude &gt; <span class="kwrd">this</span>.Sensitivity)
{ 
    Status = <span class="kwrd">string</span>.Format(<span class="str">&quot;Big movement! ({0} G's)&quot;</span>, Magnitude);
    System.Media.SystemSounds.Exclamation.Play();
}</pre>
<p>&nbsp;</p>
<p>In XAML, a <em>Slider</em> control is bound to the <strong>Sensitivity </strong>
property in <strong>TwoWay </strong>mode. The slider is set with minimum and maximum values. Since sliders typically display their current value, you need to add a
<em>Label</em> too.&nbsp; It's not automatic.&nbsp; The <em>Label</em>'s content is actually bound to the
<em>Value</em> property of the <em>Slider</em> control.&nbsp; So, although it sounds complicated to require an extra field for the slider's label, the element databinding makes it simple.</p>
<pre class="csharpcode">&nbsp;</pre>
<pre class="csharpcode"><strong>XAML</strong></pre>
<style type="text/css">
<!--
.csharpcode, .csharpcode 
 {font-size:small;
 color:black;
 font-family:consolas,"Courier New",courier,monospace;
 background-color:#ffffff}
.csharpcode 
 {margin:0em}
.csharpcode .rem
 {color:#008000}
.csharpcode .kwrd
 {color:#0000ff}
.csharpcode .str
 {color:#006080}
.csharpcode .op
 {color:#0000c0}
.csharpcode .preproc
 {color:#cc6633}
.csharpcode .asp
 {background-color:#ffff00}
.csharpcode .html
 {color:#800000}
.csharpcode .attr
 {color:#ff0000}
.csharpcode .alt
 {background-color:#f4f4f4;
 width:100%;
 margin:0em}
.csharpcode .lnum
 {color:#606060}
-->
</style>
<pre class="csharpcode"><span class="kwrd">&lt;</span><span class="html">Label</span> <span class="attr">Content</span><span class="kwrd">=&quot;Sensitivity (1-3):&quot;</span> <span class="attr">FontWeight</span><span class="kwrd">=&quot;bold&quot;</span><span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;</span><span class="html">Grid</span><span class="kwrd">&gt;</span>
    <span class="kwrd">&lt;</span><span class="html">Grid.ColumnDefinitions</span><span class="kwrd">&gt;</span>
        <span class="kwrd">&lt;</span><span class="html">ColumnDefinition</span> <span class="attr">Width</span><span class="kwrd">=&quot;.75*&quot;</span> <span class="kwrd">/&gt;</span>
        <span class="kwrd">&lt;</span><span class="html">ColumnDefinition</span> <span class="attr">Width</span><span class="kwrd">=&quot;.25*&quot;</span> <span class="kwrd">/&gt;</span>
    <span class="kwrd">&lt;/</span><span class="html">Grid.ColumnDefinitions</span><span class="kwrd">&gt;</span>
    <span class="kwrd">&lt;</span><span class="html">Slider</span> <span class="attr">x:Name</span><span class="kwrd">=&quot;slider&quot;</span> <span class="attr">Margin</span><span class="kwrd">=&quot;10,0,10,0&quot;</span> <span class="attr">Value</span><span class="kwrd">=&quot;{Binding Sensitivity, Mode=TwoWay}&quot;</span> <span class="attr">Minimum</span><span class="kwrd">=&quot;0&quot;</span> <span class="attr">Maximum</span><span class="kwrd">=&quot;3&quot;</span>  <span class="kwrd">/&gt;</span>
    <span class="kwrd">&lt;</span><span class="html">Label</span> <span class="attr">Content</span><span class="kwrd">=&quot;{Binding Value, ElementName=slider}&quot;</span> <span class="attr">FontWeight</span><span class="kwrd">=&quot;bold&quot;</span> <span class="attr">Grid</span>.<span class="attr">Column</span><span class="kwrd">=&quot;1&quot;</span><span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">Grid</span><span class="kwrd">&gt;</span></pre>
<h3>Getting the Data</h3>
<p>Most sensors support the concept of auto-updating their data on a minimum interval.&nbsp; I decided to do it on my own using a background thread.&nbsp; This guaranteed a constant interval making it nicer for charting.&nbsp; It wasn't really necessary, but what I found
 was no readings during no movement, and a flood of readings when things changed.</p>
<p>As long as the sensor is enabled, you can subscribe to the <em>DataReportChanged</em> event.&nbsp; Then you can access the
<em>CurrentAcceleration</em> property.&nbsp; Individual axes are indexed rather than exposed as direct properties.&nbsp; I suppose this is more flexible for far-future 11-dimensional accelerometers…</p>
<p><strong>Visual Basic</strong></p>
<pre class="csharpcode"><span class="kwrd">Private</span> <span class="kwrd">Sub</span> UpdateData()
    _optionsControl.Dispatcher.BeginInvoke(<span class="kwrd">Sub</span>() UpdateDataInvoked())
<span class="kwrd">End</span> <span class="kwrd">Sub</span>

<span class="kwrd">Private</span> <span class="kwrd">Sub</span> UpdateDataInvoked()
    <span class="kwrd">If</span> (_accelSensor <span class="kwrd">Is</span> <span class="kwrd">Nothing</span>) <span class="kwrd">OrElse</span> (_accelSensor.TryUpdateData() = <span class="kwrd">False</span>) <span class="kwrd">Then</span>
        <span class="kwrd">Return</span>
    <span class="kwrd">End</span> <span class="kwrd">If</span>

    <span class="kwrd">Dim</span> currentAccel = _accelSensor.CurrentAcceleration
    <span class="kwrd">Dim</span> sampleTime <span class="kwrd">As</span> DateTime = DateTime.Now

    <span class="kwrd">Me</span>.LastDataReportX = currentAccel(AccelerationAxis.X)
    <span class="kwrd">Me</span>.LastDataReportY = currentAccel(AccelerationAxis.Y)
    <span class="kwrd">Me</span>.LastDataReportZ = currentAccel(AccelerationAxis.Z)

    <span class="kwrd">Me</span>.Magnitude = Math.Sqrt(Math.Pow(<span class="kwrd">Me</span>.LastDataReportX, 2) &#43; Math.Pow(<span class="kwrd">Me</span>.LastDataReportY, 2) &#43; Math.Pow(<span class="kwrd">Me</span>.LastDataReportZ, 2))

    <span class="kwrd">If</span> _perfCounter IsNot <span class="kwrd">Nothing</span> <span class="kwrd">Then</span>
        _perfCounter.RawValue = Convert.ToInt64(<span class="kwrd">Me</span>.Magnitude * 10)
    <span class="kwrd">End</span> <span class="kwrd">If</span>

    ReadingsX.Add(<span class="kwrd">New</span> SensorReading() <span class="kwrd">With</span> { _
        .Reading = <span class="kwrd">Me</span>.LastDataReportX, _
        .Timestamp = sampleTime _
    })
    ReadingsY.Add(<span class="kwrd">New</span> SensorReading() <span class="kwrd">With</span> { _
        .Reading = <span class="kwrd">Me</span>.LastDataReportY, _
        .Timestamp = sampleTime _
    })
    ReadingsZ.Add(<span class="kwrd">New</span> SensorReading() <span class="kwrd">With</span> { _
        .Reading = <span class="kwrd">Me</span>.LastDataReportZ, _
        .Timestamp = sampleTime _
    })

    <span class="kwrd">If</span> ReadingsX.Count &gt; 20 <span class="kwrd">Then</span>
        ReadingsX.RemoveAt(0)
    <span class="kwrd">End</span> <span class="kwrd">If</span>
    <span class="kwrd">If</span> ReadingsY.Count &gt; 20 <span class="kwrd">Then</span>
        ReadingsY.RemoveAt(0)
    <span class="kwrd">End</span> <span class="kwrd">If</span>
    <span class="kwrd">If</span> ReadingsZ.Count &gt; 20 <span class="kwrd">Then</span>
        ReadingsZ.RemoveAt(0)
    <span class="kwrd">End</span> <span class="kwrd">If</span>

    <span class="kwrd">If</span> <span class="kwrd">Me</span>.Magnitude &gt; <span class="kwrd">Me</span>.Sensitivity <span class="kwrd">Then</span>
        Status = <span class="kwrd">String</span>.Format(<span class="str">&quot;Big movement! ({0} G's)&quot;</span>, Magnitude)
        System.Media.SystemSounds.Exclamation.Play()
    <span class="kwrd">End</span> <span class="kwrd">If</span>
<span class="kwrd">End</span> Sub</pre>
<p><strong>Visual C#</strong></p>
<pre class="csharpcode"><span class="kwrd">void</span> UpdateData()
{
    _optionsUI.Dispatcher.Invoke(<span class="kwrd">new</span> Action(
        <span class="kwrd">delegate</span>()
        {
            <span class="kwrd">if</span> ((_accelSensor == <span class="kwrd">null</span>) || (_accelSensor.TryUpdateData() == <span class="kwrd">false</span>)) <span class="kwrd">return</span>;
                    
            var currentAccel = _accelSensor.CurrentAcceleration;
            DateTime sampleTime = DateTime.Now;

            <span class="kwrd">this</span>.LastDataReportX = currentAccel[AccelerationAxis.X];
            <span class="kwrd">this</span>.LastDataReportY = currentAccel[AccelerationAxis.Y];
            <span class="kwrd">this</span>.LastDataReportZ = currentAccel[AccelerationAxis.Z];

            <span class="kwrd">this</span>.Magnitude =
                Math.Sqrt(Math.Pow(<span class="kwrd">this</span>.LastDataReportX, 2) &#43; Math.Pow(<span class="kwrd">this</span>.LastDataReportY, 2) &#43;
                            Math.Pow(<span class="kwrd">this</span>.LastDataReportZ, 2));

            <span class="kwrd">if</span> (_perfCounter != <span class="kwrd">null</span>) _perfCounter.RawValue = Convert.ToInt64(<span class="kwrd">this</span>.Magnitude * 10);

            ReadingsX.Add(<span class="kwrd">new</span> SensorReading { Reading = <span class="kwrd">this</span>.LastDataReportX, Timestamp = sampleTime });
            ReadingsY.Add(<span class="kwrd">new</span> SensorReading { Reading = <span class="kwrd">this</span>.LastDataReportY, Timestamp = sampleTime });
            ReadingsZ.Add(<span class="kwrd">new</span> SensorReading { Reading = <span class="kwrd">this</span>.LastDataReportZ, Timestamp = sampleTime });

            <span class="kwrd">if</span> (ReadingsX.Count &gt; 20) ReadingsX.RemoveAt(0);
            <span class="kwrd">if</span> (ReadingsY.Count &gt; 20) ReadingsY.RemoveAt(0);
            <span class="kwrd">if</span> (ReadingsZ.Count &gt; 20) ReadingsZ.RemoveAt(0);

            <span class="kwrd">if</span> (<span class="kwrd">this</span>.Magnitude &gt; <span class="kwrd">this</span>.Sensitivity)
            { 
                Status = <span class="kwrd">string</span>.Format(<span class="str">&quot;Big movement! ({0} G's)&quot;</span>, Magnitude);
                System.Media.SystemSounds.Exclamation.Play();
            }
    }));
}</pre>
<p>These ReadingsX/Y/Z collections contain the last 20 readings and are used in the next section…</p>
<h3>Flooded with Data</h3>
<p>With so much data flowing in, it can be hard to really visualize it.&nbsp; This is why I decided that it made sense to chart it.&nbsp; There are a few charting options out there that are free and a few that are commercial.&nbsp; Some free options include Visifire, and
 Dynamic Data Display (D3).&nbsp; I chose to use Visifire with a line graph and have a data series for each axis.&nbsp; I'm not sure how useful this information is, but it looks nice!</p>
<p>Behind the scenes, I have three instances of <strong>ObservableCollection </strong>
of type <strong>SensorReading</strong>.&nbsp; <strong>SensorReading </strong>simply holds a data point and a point in time.&nbsp; In XAML, I'm able to perform full data-binding from these collections to datasets in the graph.&nbsp; Each time I add a value I check to see if
 I have over twenty items, and if so I remove the oldest one (element zero).&nbsp; I'm sure I could graph more than that, but it seemed sufficient.</p>
<p><a href="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10053939/2425.SS_2D00_2010_2D00_08_2D00_20_5F00_00.04.16_5F00_2.png"><img title="SS-2010-08-20_00.04.16" border="0" alt="SS-2010-08-20_00.04.16" src="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10053939/7120.SS_2D00_2010_2D00_08_2D00_20_5F00_00.04.16_5F00_thumb.png" width="472" height="470"></a></p>
<p>The other use for the data was to send it to the Windows Performance Monitor.&nbsp; You've probably seen the charts of the CPU load, memory, disk write, and other low-level data, but you may not realize that you can track your own data this way as well.&nbsp; Some
 companies add performance counters for number of simultaneous users, failed logins, cache misses, or whatever else is relevant to their application.&nbsp; Adding counters for your own data is really easy.&nbsp; You can choose to either have a number of items, or an
 increment/decrement counter to keep track of something.</p>
<p><a href="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10053939/1854.SS_2D00_2010_2D00_08_2D00_20_5F00_00.02.56_5F00_2.png"><img title="SS-2010-08-20_00.02.56" border="0" alt="SS-2010-08-20_00.02.56" src="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10053939/8625.SS_2D00_2010_2D00_08_2D00_20_5F00_00.02.56_5F00_thumb.png" width="644" height="450"></a></p>
<p>Start by creating a category, then create the counter.&nbsp; You can set names, descriptions, and data types.&nbsp; For this project, I crated a category called “Sensors” and a counter called “Net force.”&nbsp; This is of type
<em>NumberOfItems64</em> so I set the <em>RawValue </em>property with each new value.&nbsp; The only caveat with performance counters, is that if you add the counter while Performance Monitor is running you won't see it until you restart it.</p>
<p><strong>Visual Basic</strong></p>
<p></p>
<pre class="csharpcode"><span class="kwrd">Private</span> <span class="kwrd">Sub</span> CreatePerfCounter()
    <span class="kwrd">If</span> (PerformanceCounterCategory.Exists(PerfCategoryName)) <span class="kwrd">Then</span>
        PerformanceCounterCategory.Delete(PerfCategoryName)
    <span class="kwrd">End</span> <span class="kwrd">If</span>

    <span class="rem">' Create a collection of type CounterCreationDataCollection.</span>
    <span class="kwrd">Dim</span> CounterCreationData <span class="kwrd">As</span> <span class="kwrd">New</span> CounterCreationDataCollection()

    <span class="rem">' Create the counter, set properties, and add to collection</span>
    <span class="kwrd">Dim</span> ccd <span class="kwrd">As</span> <span class="kwrd">New</span> CounterCreationData()
    <span class="kwrd">With</span> (ccd)
        .CounterName = PerfNetForceName
        .CounterHelp = <span class="str">&quot;The net acceleration value (in G's)&quot;</span>
        .CounterType = PerformanceCounterType.NumberOfItems64
    <span class="kwrd">End</span> <span class="kwrd">With</span>

    CounterCreationData.Add(ccd)

    <span class="rem">' Create the category and pass the collection to it.</span>
    _category = PerformanceCounterCategory.Create(PerfCategoryName, _
        <span class="str">&quot;The Sensors performance object tracks the value of various sensors over time&quot;</span>, _
        PerformanceCounterCategoryType.SingleInstance, CounterCreationData)

    _perfCounter = <span class="kwrd">New</span> PerformanceCounter(PerfCategoryName, PerfNetForceName, <span class="kwrd">False</span>)
<span class="kwrd">End</span> Sub</pre>
<strong>Visual C#</strong>
<pre class="csharpcode"><span class="kwrd">private</span> <span class="kwrd">void</span> CreatePerfCounter()
{
    <span class="kwrd">if</span> (PerformanceCounterCategory.Exists(PerfCategoryName))
    {
        PerformanceCounterCategory.Delete(PerfCategoryName);
    }

    <span class="rem">// Create a collection of type CounterCreationDataCollection.</span>
    var counterCreationData = <span class="kwrd">new</span> CounterCreationDataCollection();

    <span class="rem">// Create the counter, set properties, and add to collection</span>
    counterCreationData.Add(<span class="kwrd">new</span> CounterCreationData
    {
        CounterName = PerfNetForceName,
        CounterHelp = <span class="str">&quot;The net acceleration value (in G's)&quot;</span>,
        CounterType = PerformanceCounterType.NumberOfItems64
    });

    <span class="rem">// Create the category and pass the collection to it.</span>
    _category =
        PerformanceCounterCategory.Create(
        PerfCategoryName,
        <span class="str">&quot;The Sensors performance object tracks the value of various sensors over time&quot;</span>,
        PerformanceCounterCategoryType.SingleInstance,
        counterCreationData);

    _perfCounter = <span class="kwrd">new</span> PerformanceCounter(PerfCategoryName, PerfNetForceName, <span class="kwrd">false</span>);
}</pre>
<h3>Utility Runner</h3>
<p>This is not the first article to use my MEF-based Utility Runner application as the base.&nbsp; As usual, you'll need to install that package (listed at the top in the prerequisites) in order for this to work.&nbsp; You'll also need to go to your project's properties,
 to Debug, and tell it to use a specific executable for debugging.</p>
<p><a href="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10053939/4503.SS_2D00_2010_2D00_08_2D00_23_5F00_16.42.49_5F00_2.png"><img title="SS-2010-08-23_16.42.49" border="0" alt="SS-2010-08-23_16.42.49" src="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10053939/0880.SS_2D00_2010_2D00_08_2D00_23_5F00_16.42.49_5F00_thumb.png" width="622" height="193"></a></p>
<p>If you use Utility Runner and want to add this is a plugin, go into the bin\debug\Addins folder and create a ZIP file from the
<em>contents</em> of the MEFUtil-Seismo.util folder and rename it to MEFUtil-Seismo.util.&nbsp; From the
<strong>Addins </strong>tab in Utility Runner, click the <strong>Install Addin From File</strong> command from within Utility Runner.</p>
<h3>Possible Enhancements</h3>
<p>In addition to a sound, it might make sense to support other notifications like growl, Twitter, or email.&nbsp; It might also make sense to respond to changes in a different sensor, for example ambient light.&nbsp; If I turn off the light in my office, it could sound
 an alarm if the light went on and I didn't sign in within a certain amount of time.&nbsp; That would require a change to monitor a different sensor (not difficult), and to check to see if the desktop is locked or not.</p>
<h3>Conclusion</h3>
<p>Sensors really change the nature of your code by allowing you to interact with the real world.&nbsp; If your system isn't equipped with sensors (like mine, unfortunately), make do with an add-on/prototyping board so you can try things out.&nbsp; These sensors are
 basically standard on smartphones these days, and will quickly become common on laptops as well.&nbsp; Windows 7 included a great feature by providing common hardware and device support.&nbsp; Take advantage of it today!</p>
<h3>About Arian</h3>
<p><a href="http://www.ariankulp.com">Arian Kulp</a> is a software developer living in Western Oregon.&nbsp; He creates samples, screencasts, demos, labs, and articles; speaks at programming events about data, UI, Silverlight, and more; and enjoys spending time
 with his family. </p>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:306396dff57142389eaf9e7600c8ada5">]]></description>
      <comments>http://channel9.msdn.com/coding4fun/articles/Feeling-the-Earth-Move</comments>
      <itunes:summary>
Want to know if the earth is shaking?&amp;nbsp; How about if someone is moving your laptop?&amp;nbsp; Create a utility to detect movement so you&#39;ll know right away when something is happening! 
The Windows 7 sensors platform exposes a standard way of communicating with hardware for determining location, light, magnetic north (compass), distance, movement, and much more.&amp;nbsp; Through the accelerometer, movement is measured as force (G&#39;s) in up to three
 dimensions.&amp;nbsp; The Freescale Badge board that I use for sensor development includes ambient light, touch, and a 3D accelerometer. 
Working with the three axes of accelerometer data is incredibly easy.&amp;nbsp; Each sensor data report indicates the number of G&#39;s felt along each axis.&amp;nbsp; You can watch the values of movement in order to know more about the environment. 
My first thought with this application was to create a seismometer to measure ground tremors, but I&#39;m not so sure the one that I have would be nearly sensitive for that.&amp;nbsp; Then it occurred to me that the accelerometer would work great to detect a laptop being
 moved.&amp;nbsp; I see people leaving their laptop on a table and going up for a refill at a coffee shop.&amp;nbsp; When I do that I always feel pretty nervous.&amp;nbsp; Knowing that it could sound an alarm if someone moved it would make me feel more secure.&amp;nbsp;
 
For this application, you&#39;ll need a Windows 7 system, with a built-in or hardware add-on accelerometer.&amp;nbsp; Some hard drives have them, some Lenovo laptops have them, but you need to be able to access the sensor using standard Windows 7 Devices and Sensors
 drivers. 
With hardware in place, download Visual Studio 2010 Express, the Windows API Code Pack, and the Sensors and Location API, then you&#39;re ready to get started! 
Good Vibrations
The accelerometer is an interesting sensor.&amp;nbsp; You wiggle something physical around and get numbers that change.&amp;nbsp; The numbers represent how many G&#39;s are being experienced in up to three dimensions.&amp;nbsp; </itunes:summary>
      <link>http://channel9.msdn.com/coding4fun/articles/Feeling-the-Earth-Move</link>
      <pubDate>Wed, 25 Aug 2010 13:00:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/coding4fun/articles/Feeling-the-Earth-Move</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/c4f/images/10053939_100.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/c4f/images/10053939_220.jpg" height="165" width="220"></media:thumbnail>      
      <dc:creator>ArianKulp</dc:creator>
      <itunes:author>ArianKulp</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/coding4fun/articles/Feeling-the-Earth-Move/RSS</wfw:commentRss>
      <category>Sensor</category>
      <category>utility</category>
      <category>Windows 7</category>
      <category>sensors</category>
      <category>UtilRunner</category>
    </item>
  <item>
      <title>Building your own game controller!</title>
      <description><![CDATA[
<p><img title="xna_game[1]" border="0" alt="xna_game[1]" align="right" src="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/10003557/xna_game_5B1_5D_thumb.jpg" width="240" height="181">Donn Morse created a slightly modified
 version of the <a href="http://code.msdn.microsoft.com/GameController">XNA Racing Game Starter Kit to work with a custom game controller that has an accelerometer</a>!</p>
<p></p>
<p>The sample driver supports communication between a Windows 7 application and the sensor. (Note that in addition to a dual axis accelerometer, the driver also supports a compass, a passive-infrared sensor, and an ultra-sonic distance sensor.)</p>
<p>The <a href="http://creators.xna.com/en-us/starterkit/racinggame">XNA Racing Game Starter Kit</a> sample demonstrates how you can write a complete auto-racing game in C# with .Net. Included with this project are three updated source files and a COM Interop
 which let the game receive input from your game controller.</p>
<p>To get this up and going, you'll have to download the <a href="http://creators.xna.com/en-us/starterkit/racinggame">
XNA Racing Game Starter Kit</a> and swap out the files proved <a href="http://code.msdn.microsoft.com/GameController/Release/ProjectReleases.aspx">
zip file found in the Game Controller project</a>.</p>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:88e92061c5f449318cb09e7600c97b5b">]]></description>
      <comments>http://channel9.msdn.com/coding4fun/blog/Building-your-own-game-controller</comments>
      <itunes:summary>
Donn Morse created a slightly modified
 version of the XNA Racing Game Starter Kit to work with a custom game controller that has an accelerometer! 
 
The sample driver supports communication between a Windows 7 application and the sensor. (Note that in addition to a dual axis accelerometer, the driver also supports a compass, a passive-infrared sensor, and an ultra-sonic distance sensor.) 
The XNA Racing Game Starter Kit sample demonstrates how you can write a complete auto-racing game in C# with .Net. Included with this project are three updated source files and a COM Interop
 which let the game receive input from your game controller. 
To get this up and going, you&#39;ll have to download the 
XNA Racing Game Starter Kit and swap out the files proved 
zip file found in the Game Controller project. 
</itunes:summary>
      <link>http://channel9.msdn.com/coding4fun/blog/Building-your-own-game-controller</link>
      <pubDate>Wed, 28 Apr 2010 13:00:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/coding4fun/blog/Building-your-own-game-controller</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/c4f/images/10003557_100.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/c4f/images/10003557_220.jpg" height="165" width="220"></media:thumbnail>      
      <dc:creator>Clint Rutkas</dc:creator>
      <itunes:author>Clint Rutkas</itunes:author>
      <slash:comments>1</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/coding4fun/blog/Building-your-own-game-controller/RSS</wfw:commentRss>
      <category>Sensor</category>
      <category>Windows 7</category>
      <category>XNA</category>
      <category>sensors</category>
      <category>XNA framework</category>
      <category>C4FNews</category>
    </item>
  <item>
      <title>Want Windows 7 Sensors that are Arduino powered?</title>
      <description><![CDATA[
<p><a href="http://milesburton.com/wiki/index.php?title=Dallas_Temperature_Control_Library"><img title="TCL310_On_AtMega8[1]" border="0" alt="TCL310_On_AtMega8[1]" align="right" src="http://ecn.channel9.msdn.com/o9/c4fcontent/migration/9949045/TCL310_On_AtMega8_5B1_5D_3.jpg" width="240" height="180"></a>Am
 I the only one warming up their soldering iron?&nbsp;&nbsp; I posted a bit ago on being able to do a
<a href="http://blogs.msdn.com/coding4fun/archive/2009/12/10/9934884.aspx">Windows 7 sensor with a parallax board</a>, but Brian Jepson (<a href="http://twitter.com/bjepson">@bjepson</a>) of
<a href="http://www.makezine.com/">MAKE</a> and O'Reilly helped port that driver into a more generic driver that works with Arduino!</p>
<p>Right now there is one Arduino sketch in there from <a href="http://twitter.com/skobalczyk">
@skobalczyk</a>; but they plan to add more soon.</p>
<p>Head over to <a href="http://win7sensorserial.codeplex.com">http://win7sensorserial.codeplex.com</a> to get the driver and how to do more!</p>
 <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:8d088ae34fc9414d8c169e7600ca4d37">]]></description>
      <comments>http://channel9.msdn.com/coding4fun/blog/Want-Windows-7-Sensors-that-are-Arduino-powered</comments>
      <itunes:summary>
Am
 I the only one warming up their soldering iron?&amp;nbsp;&amp;nbsp; I posted a bit ago on being able to do a
Windows 7 sensor with a parallax board, but Brian Jepson (@bjepson) of
MAKE and O&#39;Reilly helped port that driver into a more generic driver that works with Arduino! 
Right now there is one Arduino sketch in there from 
@skobalczyk; but they plan to add more soon. 
Head over to http://win7sensorserial.codeplex.com to get the driver and how to do more! 
</itunes:summary>
      <link>http://channel9.msdn.com/coding4fun/blog/Want-Windows-7-Sensors-that-are-Arduino-powered</link>
      <pubDate>Fri, 15 Jan 2010 15:06:29 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/coding4fun/blog/Want-Windows-7-Sensors-that-are-Arduino-powered</guid>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/c4f/images/9949045_100.jpg" height="75" width="100"></media:thumbnail>
      <media:thumbnail url="http://ecn.channel9.msdn.com/o9/c4f/images/9949045_220.jpg" height="165" width="220"></media:thumbnail>      
      <dc:creator>Clint Rutkas</dc:creator>
      <itunes:author>Clint Rutkas</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/coding4fun/blog/Want-Windows-7-Sensors-that-are-Arduino-powered/RSS</wfw:commentRss>
      <category>Hardware</category>
      <category>Sensor</category>
      <category>Windows 7</category>
      <category>sensors</category>
    </item>
  <item>
      <title>EMIC - Popfly &amp; Sensors</title>
      <description><![CDATA[ <p>Back in October, the <a href="http://www.microsoft.com/EMIC">European Microsoft Innovation Center</a> celebrated its 5th anniversary with a reception at its offices in Aachen, Germany. &nbsp;In addition to enjoying the party atmosphere, researchers were on hand to demo some of their current project.&nbsp; I had my camera with me and made a video of two of the demos.</p><p>The first demo is shown by Marcel Tilly, Program Manager at EMIC.&nbsp; He demonstrates a feature that was added to <a href="http://www.popfly.com/">Microsoft Popfly</a> called the alternative block.&nbsp; Popfly is an online tool to build mashups, games, web applications and websites.&nbsp; In Popfly, services and data are represented as blocks and to create a mashup you just combine the blocks. The alternative block that the EMIC researchers created recommends alternatives for other blocks that could be used in a mashup.</p><p>The second demo has to do with sensor networks and is being performed by Andreas Lachenmann, EMIC Software Design Engineer.&nbsp; The EMIC team built a framework for sensor networks to program the sensor nodes.&nbsp; Andreas shows us how they integrated it into Powerpoint and what the acceleration, light and pressure sensor nodes do to the program.</p><p>For more information on EMIC research, projects and partners, visit:<br><a href="http://www.microsoft.com/EMIC">http://www.microsoft.com/EMIC</a></p> <img src="http://m.webtrends.com/dcs1wotjh10000w0irc493s0e_6x1g/njs.gif?dcssip=channel9.msdn.com&dcsuri=http://channel9.msdn.com/Tags/sensors/RSS&WT.dl=0&WT.entryid=Entry:RSSView:01432a134afb425ea2af9e100018f8ff">]]></description>
      <comments>http://channel9.msdn.com/Blogs/lorigros/EMIC-Popfly--Sensors</comments>
      <itunes:summary> Back in October, the European Microsoft Innovation Center celebrated its 5th anniversary with a reception at its offices in Aachen, Germany. &amp;nbsp;In addition to enjoying the party atmosphere, researchers were on hand to demo some of their current project.&amp;nbsp; I had my camera with me and made a video of two of the demos. The first demo is shown by Marcel Tilly, Program Manager at EMIC.&amp;nbsp; He demonstrates a feature that was added to Microsoft Popfly called the alternative block.&amp;nbsp; Popfly is an online tool to build mashups, games, web applications and websites.&amp;nbsp; In Popfly, services and data are represented as blocks and to create a mashup you just combine the blocks. The alternative block that the EMIC researchers created recommends alternatives for other blocks that could be used in a mashup. The second demo has to do with sensor networks and is being performed by Andreas Lachenmann, EMIC Software Design Engineer.&amp;nbsp; The EMIC team built a framework for sensor networks to program the sensor nodes.&amp;nbsp; Andreas shows us how they integrated it into Powerpoint and what the acceleration, light and pressure sensor nodes do to the program. For more information on EMIC research, projects and partners, visit:http://www.microsoft.com/EMIC </itunes:summary>
      <itunes:duration>295</itunes:duration>
      <link>http://channel9.msdn.com/Blogs/lorigros/EMIC-Popfly--Sensors</link>
      <pubDate>Thu, 08 Jan 2009 14:28:00 GMT</pubDate>
      <guid isPermaLink="false">http://channel9.msdn.com/Blogs/lorigros/EMIC-Popfly--Sensors</guid>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_large_on10.jpg" height="240" width="320"></media:thumbnail>
      <media:thumbnail url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_small_on10.jpg" height="64" width="85"></media:thumbnail>
      <media:group>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_2MB_on10.wmv" expression="full" duration="295" fileSize="91271722" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_on10.mp3" expression="full" duration="295" fileSize="2362015" type="audio/mp3" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_on10.mp4" expression="full" duration="295" fileSize="59839455" type="video/mp4" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_on10.wma" expression="full" duration="295" fileSize="4781349" type="audio/x-ms-wma" medium="audio"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_on10.wmv" expression="full" duration="295" fileSize="17863213" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_Zune_on10.wmv" expression="full" duration="295" fileSize="38615193" type="video/x-ms-wmv" medium="video"></media:content>
        <media:content url="mms://mschnlnine.wmod.llnwd.net/a1809/d1/on10/5/1/3/4/2/EMICPartyDemos_s_on10.wmv" expression="full" duration="295" fileSize="208" type="video/x-ms-wmv" medium="video"></media:content>
      </media:group>      
      <enclosure url="http://mschnlnine.vo.llnwd.net/d1/on10/5/1/3/4/2/EMICPartyDemos_on10.wmv" length="17863213" type="video/x-ms-wmv"></enclosure>
      <dc:creator>Lori Grosland</dc:creator>
      <itunes:author>Lori Grosland</itunes:author>
      <slash:comments>0</slash:comments>
      <wfw:commentRss>http://channel9.msdn.com/Blogs/lorigros/EMIC-Popfly--Sensors/RSS</wfw:commentRss>
      <category>EMIC</category>
      <category>European Microsoft Innovation Center</category>
      <category>Popfly</category>
      <category>Sensor</category>
      <category>sensors</category>
    </item>    
</channel>
</rss>