<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Loren Halvorson's Blog : Workflow</title><link>http://weblogs.asp.net/lorenh/archive/tags/Workflow/default.aspx</link><description>Tags: Workflow</description><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Just for fun, controlling a Lego Mindstorms NXT robot with Windows Workflow Foundation</title><link>http://weblogs.asp.net/lorenh/archive/2008/03/06/just-for-fun-controlling-a-lego-mindstorms-nxt-robot-with-windows-workflow-foundation.aspx</link><pubDate>Thu, 06 Mar 2008 21:09:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:5928887</guid><dc:creator>lorenh</dc:creator><author>lorenh</author><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://weblogs.asp.net/lorenh/rsscomments.aspx?PostID=5928887</wfw:commentRss><comments>http://weblogs.asp.net/lorenh/archive/2008/03/06/just-for-fun-controlling-a-lego-mindstorms-nxt-robot-with-windows-workflow-foundation.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;Recently I was asked to give a presentation on Windows Workflow Foundation to some developers. Unfortunately I had never worked with it.&amp;nbsp;So last week while I was reading an article about workflow, it occurred to me that the designer seemed very similar to the NXT-G programming environment my kids use to program their Lego (R) Mindstorms (R) NXT robot. There's no better way to learn something than to actually try to do something real with it, so&amp;nbsp;I decided to try to write my own custom activities to control a robot through Bluetooth connection.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Now this is a silly little app that doesn't do anything useful, but I thought it was too interesting to let the code just languish on my hard-drive only to be cleaned up someday when I'm low on space. It served it's purpose for me to learn Workflow Foundation better. I just posted the code to the MSDN Code Gallery here:&amp;nbsp;&lt;A href="http://code.msdn.microsoft.com/NXTWorkflow"&gt;http://code.msdn.microsoft.com/NXTWorkflow&lt;/A&gt;. There's plenty of room for improvement, but it was sure fun to write. &lt;/P&gt;
&lt;P mce_keep="true"&gt;It includes a console driver program, as well as a Winforms based application that hosts the Workflow designer. The designer hosted version is based on the excellent MSDN hosting example by Vihang Dalal found at &lt;A class=externalLink href="http://msdn2.microsoft.com/en-us/library/aa480213.aspx"&gt;http://msdn2.microsoft.com/en-us/library/aa480213.aspx&lt;SPAN class=externalLinkIcon&gt;&lt;/SPAN&gt;&lt;/A&gt;. The bluetooth communication uses a wrapper called NXT# written by Bram Fokke at &lt;A class=externalLink href="http://nxtsharp.fokke.net/"&gt;http://nxtsharp.fokke.net&lt;SPAN class=externalLinkIcon&gt;&lt;/SPAN&gt;&lt;/A&gt;.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;IMG src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=NXTWorkflow&amp;amp;DownloadId=1111" mce_src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=NXTWorkflow&amp;amp;DownloadId=1111"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;The robot I used to develop the application:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;IMG src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=NXTWorkflow&amp;amp;DownloadId=1109" mce_src="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=NXTWorkflow&amp;amp;DownloadId=1109"&gt;&lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=5928887" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/lorenh/archive/tags/Robotics/default.aspx">Robotics</category><category domain="http://weblogs.asp.net/lorenh/archive/tags/Workflow/default.aspx">Workflow</category><category domain="http://weblogs.asp.net/lorenh/archive/tags/WWF/default.aspx">WWF</category><category domain="http://weblogs.asp.net/lorenh/archive/tags/C_2300_/default.aspx">C#</category></item></channel></rss>