<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Txzone</title>
	<atom:link href="http://txzone.net/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://txzone.net</link>
	<description>Stuff about Multitouch, tracking and audio</description>
	<lastBuildDate>Wed, 25 Aug 2010 18:26:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>PyMT 0.5 out, what&#8217;s next ?</title>
		<link>http://txzone.net/?p=165</link>
		<comments>http://txzone.net/?p=165#comments</comments>
		<pubDate>Wed, 25 Aug 2010 16:05:02 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PyMT]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=165</guid>
		<description><![CDATA[One week ago, we&#8217;ve released]]></description>
			<content:encoded><![CDATA[<p>One week ago, we&#8217;ve released <a href="http://pymt.eu/">PyMT 0.5</a> (<a href="http://pymt.eu/?page=releasenotes-0.5">release notes</a>). I&#8217;m very glad to see this release. We&#8217;ve working so much to make it stable, and we&#8217;ll continue. </p>
<p>The good part of this release is the availability on next Ubuntu Maverick. If you don&#8217;t know, <a href="https://lists.launchpad.net/multi-touch-dev/msg00218.html">Ubuntu Maverick will be multitouch</a>. Before making the announcement public, we&#8217;ve joined the <a href="https://launchpad.net/hci">HCI</a> group, and they have done documentation about <a href="https://wiki.ubuntu.com/Multitouch">Multitouch in Ubuntu</a>, and <a href="https://wiki.ubuntu.com/Multitouch/PyMT">PyMT in Ubuntu</a>.<br />
That&#8217;s a very good news, and i hope that we&#8217;ll be able to enhance our collaboration with Ubuntu, and share experience.</p>
<p>So, what&#8217;s next ?</p>
<p>Since people are asking always that &#8220;we should do a roadmap&#8221;, <a href="http://pymt.eu/wiki/Devel/Roadmap">PyMT Roadmap</a> is updated.<br />
Next version will be the PyMT 0.5.1, and release is scheduled for the 6 September. This will include another set of fixes, found during the 0.5 release. And this will be the version shipped on next Ubuntu too. Auto detection of MT Hardware, fixes text rendering outside of the text input, gstreamer appsink missing, more unit test&#8230; </p>
<p>Starting September, the &#8220;PyMT Week Report&#8221; will back. Since the community is growing, it will be a good thing to know what&#8217;s new on the toolkit every weeks, and explain if we are hitting trouble, or if all the developments is ok <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Then&#8230; I&#8217;ve lot of idea on my mind, and will focus on :</p>
<ul>
<li>Spatialization: be able to handle 1 millions of widgets, added on an infinite plane.</li>
<li>Graphics: finish and use graphics library (new from 0.5) for all of our widgets.</li>
<li>App subsystem: replace the old MTPlugin with a new Application subsystem, that permit the use to browse and launch any PyMT application available on his system</li>
<li>Enhance CSS writing (less or sass-lang)</li>
</ul>
<p>Then in november, i&#8217;ll try to port PyMT on Javascript&#8230; using Pyjamas and HTML5. </p>
<p>PyMT is really going to be&#8230; awesome !</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=165</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Joojoo, funny part :)</title>
		<link>http://txzone.net/?p=160</link>
		<comments>http://txzone.net/?p=160#comments</comments>
		<pubDate>Tue, 03 Aug 2010 12:57:57 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[joojoo]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=160</guid>
		<description><![CDATA[joojoo description: Desktop Computer product:]]></description>
			<content:encoded><![CDATA[<pre>
joojoo
    description: Desktop Computer
    product: PM235
    vendor: nVidia
    version: To Be Filled By O.E.M.
    serial: To Be Filled By O.E.M.
    width: 32 bits
    capabilities: smbios-2.6 dmi-2.6
    configuration: boot=normal chassis=desktop uuid=00020003-0004-0005-0006-000700080009
  *-core
       description: Motherboard
       product: To be filled by O.E.M.
       vendor: To be filled by O.E.M.
       physical id: 0
       version: To be filled by O.E.M.
       serial: To be filled by O.E.M.
       slot: To Be Filled By O.E.M.
</pre>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=160</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multitouch experience on Joojoo</title>
		<link>http://txzone.net/?p=142</link>
		<comments>http://txzone.net/?p=142#comments</comments>
		<pubDate>Tue, 03 Aug 2010 00:34:48 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[PyMT]]></category>
		<category><![CDATA[joojoo]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=142</guid>
		<description><![CDATA[I&#8217;m writing this blog post]]></description>
			<content:encoded><![CDATA[<p><img src="http://txzone.net/wp-content/uploads/2010/08/joojoo.jpg" alt=""  height="240" width="320" style="float: right; margin: 10px; border: 2px solid black;" /></p>
<p><em>I&#8217;m writing this blog post just to remember what i&#8217;ve done, and how. Don&#8217;t want to forget it for the next time <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  It&#8217;s incomplete, and done for developer.</em></p>
<p>Last week, i&#8217;ve got a Joojoo, the old named &#8220;Crunchpad&#8221;. The hardware look good: Intel ATOM N270 + NVidia ION (GeForce 9400M) + 4Go SSD + 1Go Ram + 1.3M Webcam + USB + eGalax dualtouch screen + Wifi. At least, it look like a good hardware to hack on. Before you ask, i&#8217;ve buyed this tablet cause of NVidia ION, it support OpenGL 3.0, enough to run PyMT ! I&#8217;ll not say anything about the default OS installed on Joojoo&#8230; but will start directly how to install custom OS on it.</p>
<h2>How to install custom OS on JooJoo</h2>
<ol>
<li>You can use any usb device on the joojoo (CD or USB). I&#8217;ve used <a href="http://unetbootin.sourceforge.net/">Unetbootin</a> to create a custom USB boot key for Lucid Ubuntu. Don&#8217;t select net install, wifi driver is not included in the setup.</li>
<li>Plug a usb switch + usb keyboard + usb key on the usb port of Joojoo</li>
<li>Stay pressed on the DEL key + press twice the power button (once to make Joojoo logo appear, and a second longer to power the screen)</li>
<li>In the boot menu, change the order of Joojoo SSD and your USB key, to make your USB key primary.</li>
<li>Reboot by pressing twice the power button as described.</li>
</ol>
<p>If you see nothing on the screen, reset the joojoo with the tool, and press the power button twice again.<br />
Twice is really important, without that, the screen will stay black. On the second time, you must see the screen power up.</p>
<p>About drivers :</p>
<ul>
<li>The default wifi driver is not working, so go on http://www.realtek.com/downloads/ , search for 8192SE, and take RTL8192SE drivers for linux 2.6.</li>
<li>For Nvidia ION, just download latest drivers from http://nvidia.com/.</li>
<li>For touchscreen&#8230; that&#8217;s the whole problem. It&#8217;s not working by default. You can use the constructor driver available http://home.eeti.com.tw/web20/eGalaxTouchDriver/linuxDriver.htm, but dual touch is not working.</li>
</ul>
<p>So, i&#8217;ve buyed this tablet for Dual Touch + OpenGL 3.0&#8230; Let&#8217;s check if windows is working with dual touch.</p>
<h2>How to install window 7 on JooJoo</h2>
<p>On this part, i would like to thank a lot <a href="http://www.fabienvincent.fr/">Fabien</a> for his experience on this domain.<br />
The problem is, with 4Go SSD, you can&#8217;t install Normal Windows Seven. You must build a custom Window. To do that :</p>
<ol>
<li>go on <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=2287a698-746c-4f80-b9ad-79435f4cea92&#038;displaylang=en">Microsoft Windows 7 Embedded</a></li>
<li>download the Standard 7 Toolkit</li>
<li>launch the image configurator</li>
<li>select all the things you want on windows&#8230; Like Window desktop, USB Boot, Power Management&#8230; I&#8217;ll upload my &#8220;answer&#8221; file tomorrow.</li>
<li>your image must be < 2Go.</li>
<li>burn your answer on usb (Tool menu). You&#8217;ll have a USB boot key ready to install Window Seven Embedded !</li>
</ol>
<p>Then, it&#8217;s the same step as before, plug, reboot, install.</p>
<p>After installation of eGalax windows driver, the touchscreen work with dual touch !</p>
<h2>How to capture USB on windows seven ?</h2>
<p>Since wireshark is not able to capture USB, and no free toolkit is able to do it at this moment, i&#8217;ve used <a href="http://www.hhdsoftware.com/Products/home/usb-monitor.html">HHD Usb monitor</a>, in trial version. Just run it, select Raw capture, Start, play with the screen, reboot the screen, play again with the screen (1 finger, then 2). And export the whole capture into HTML.<br />
And here is the <a href="http://txzone.net/files/contrib/joojoo/joojoo%20usb.htm">Joojoo eGalax USB Capture</a>.</p>
<p>And that&#8217;s a bingo. We have bulk message with a 0&#215;6 len, and other with 0xc len (double of 0&#215;6.) Look really like we got 2 touch ! I don&#8217;t know what is the setup message, but look like theses messages activate the screen ! Now&#8230; go back on linux to test <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2>Check eGalax dual touch support with python-usb</h2>
<h3>Enable usb_debug (optionnal)</h3>
<p>Ok, this was really easy, cause of the old experience of <a href="http://txzone.net/?p=44">Hack of Dell SX2210T</a> screen. Even if the experience was not a success, learning how USB work was really funny. First thing, activate USB sniffing to check if we are doing it right :</p>
<p><code><br />
$ sudo modprobe usb_debug<br />
$ sudo cat /sys/kernel/debug/usb/usbmon/0u (0u is where my device is connected)<br />
</code></p>
<p>You&#8217;ll have a bunch of message, as soon as you play with the device. You can read <a href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/usb/usbmon.txt;hb=HEAD">usbmon/usb_debug documentation</a> about the format of the message.</p>
<h3>Search your device with python-usb</h3>
<p>When you&#8217;re searching for device on dmesg, you&#8217;ll have :<br />
<code><br />
generic-usb 0003:0EEF:720C.0001: input,hiddev96,hidraw0: USB HID v2.10 Pointer [eGalax Inc. USB TouchController] on usb-0000:00:06.0-1/input0<br />
</code></p>
<p>You can also use lsusb :<br />
<code><br />
Bus 004 Device 002: ID 0eef:720c D-WAV Scientific Co., Ltd<br />
</code></p>
<p>The 0EEF is your vendor ID, and 720C is your product ID. Let&#8217;s search our device in USB busses:</p>
<pre name="code" class="python">
def get_egalax_device(vendor=0x0eef, product=0x720c):
    busses = usb.busses()
    for bus in busses:
        for device in bus.devices:
            if device.idVendor != vendor:
                continue
            if device.idProduct != product:
                continue
            return device
    return None
</pre>
<h3>Send SETUP configuration</h3>
<p>To understand more how USB work, you can check <a href="http://www.beyondlogic.org/usbnutshell/usb6.htm">USB nut shell</a>, the first part is talking about Setup packet.<br />
This is exactly what we want, since on the capture we have :</p>
<p><code><br />
000006: Control Transfer (UP), 02.08.2010 01:50:04.275 +0.0. Status: 0x00000000<br />
Pipe Handle: 0x855dbe94</p>
<p> 0A 01 41 0A 01 41</p>
<p>Setup Packet</p>
<p> 40 00 00 00 00 00 06 00</p>
<p>Recipient: Device<br />
Request Type: Vendor<br />
Direction: Host->Device<br />
Request: 0x0 (Unknown)<br />
Value: 0x0<br />
Index: 0x0<br />
Length: 0x6<br />
</code></p>
<p>We have exactly 2 setup packet to transfer to the device. The most complicated is to understand python-usb.</p>
<ul>
<li>Recipient -> usb.RECIP_DEVICE</li>
<li>Request Type -> usb.TYPE_VENDOR</li>
<li>Direction -> usb.ENDPOINT_OUT</li>
</ul>
<p>So, let&#8217;s send the first setup packet. This packet activate the device to talk with us (we&#8217;re receiving lot of packet from him).</p>
<pre name="code" class="python">
conf = '\x40\x00\x00\x00\x00\x00\x06\x00'
reqType = usb.ENDPOINT_OUT | usb.TYPE_VENDOR | usb.RECIP_DEVICE
handle.controlMsg(reqType, usb.REQ_SET_CONFIGURATION, conf)
</pre>
<p>And the second request activate dual touch support (without him, we&#8217;re receiving only one touch) :</p>
<pre name="code" class="python">
conf = '\x0a\x01\x41\x0a\x01\x41'
handle.controlMsg(reqType, usb.REQ_SET_CONFIGURATION, conf)
</pre>
<p>And, that&#8217;s done ! When we read the device, we are receiving packet !<br />
The format is :</p>
<ul>
<li>Flags : 8 bits (161 = ALIVE, 160 = UP)</li>
<li>X : 16 bits</li>
<li>Y : 16 bits</li>
<li>ID : 8 bits (65 = touch 1, 66 = touch 2)</li>
</ul>
<p>The flags and id is not really flags/id&#8230; because the value is not common. But it&#8217;s not changing on pressure, and not in the time&#8230; Dunno why.</p>
<p>Still, here is the full source code of the <a href="http://paste.pocoo.org/show/245004/">eGalax Joojoo dual touchscreen with python-usb</a>.</p>
<h3>And after ?</h3>
<p>Normally, 2.6.35 include eGalax driver, but it&#8217;s not working. Will check another day why the kernel driver don&#8217;t support dual touch for this screen !</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=142</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Internet @home</title>
		<link>http://txzone.net/?p=138</link>
		<comments>http://txzone.net/?p=138#comments</comments>
		<pubDate>Thu, 15 Jul 2010 14:48:54 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Life]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=138</guid>
		<description><![CDATA[Before: DOWN: 7030Kbps / UP:]]></description>
			<content:encoded><![CDATA[<p>Before: DOWN: 7030Kbps / UP: 870Kbps<br />
Now: DOWN: 72464Kbps / UP: 4731Kbps</p>
<p>/me smile</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=138</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>FITG 2010 finished, debriefing.</title>
		<link>http://txzone.net/?p=133</link>
		<comments>http://txzone.net/?p=133#comments</comments>
		<pubDate>Tue, 15 Jun 2010 13:35:57 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PyMT]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=133</guid>
		<description><![CDATA[Another awesome event, organized by]]></description>
			<content:encoded><![CDATA[<p>Another awesome event, organized by <a href="http://www2.lifl.fr/~marchal/static/index.html">Damien Marchal </a>and <a href="http://interaction.lille.inria.fr/~roussel/">Nicolas Roussel</a>. And for the first time, the <a href="http://pymt.eu/">PyMT</a> Core team was in the same place. Thanks to all my friends in Lille for coming during the show, it was really nice to see you too !</p>
<p>We&#8217;ve done one conference, using the &#8220;presemt&#8221; application. For all who wanted to use our presentation application, you can get it on <a href="http://github.com/tito/pymt-apps/tree/master/presemt/">PyMT Apps</a> repository. The slides will be available in PDF soon. A lot of peoples was interested, and impressed by PyMT itself. I&#8217;ve been very glad to meet some PyMT users, specially Jay !</p>
<p>On the barcamp, we&#8217;ve animated 3 sessions: </p>
<ol>
<li>Write your first PyMT Application (mathieu)</li>
<li><a href="http://pymt.eu/wiki/Snippets/LineRiderForPyMTPhysicsSimulation">Make a game with PyMT + PyMunk</a> (christopher + thomas)</li>
<li>Advanced OpenGL optimization + Python optimization</li>
</ol>
<p>(Content will be available soon)</p>
<p>During the event, some work have been done :</p>
<ul>
<li>finish blobtracker in Movid</li>
<li>ability to record / save PyMT events (event-recording branch)</li>
<li>ability to share event over network (event-share branch)</li>
<li>using PyMT + Ogre 3D with Anthony Martinet</li>
</ul>
<p>And we&#8217;ve think a lot about the future of PyMT, and where we want to go for 1.0. More information soon <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Also, a intern in the <a href="http://www.inria.fr/recherche/equipes/mint.fr.html">MINT</a> team is actually <a href="http://www.inria.fr/travailler/mrted/fr/jd/details.html?id=PGTFK026203F3VBQB6G68LONZ&#038;LOV5=4510&#038;LOV2=4486&#038;ContractType=4545&#038;LG=FR&#038;Resultsperpage=20&#038;nPostingID=4480&#038;nPostingTargetID=9303&#038;option=52&#038;sort=DESC&#038;nDepartmentID=10">researched to work on a project with PyMT</a>. If any people is interested, don&#8217;t hesitate to send our CV to Nicolas.</p>
<p>It look like the future of PyMT is very good, and it&#8217;s just a start&#8230;.</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=133</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PyMT/Movid @FITG2010</title>
		<link>http://txzone.net/?p=131</link>
		<comments>http://txzone.net/?p=131#comments</comments>
		<pubDate>Thu, 03 Jun 2010 19:09:15 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=131</guid>
		<description><![CDATA[That&#8217;s going to be a]]></description>
			<content:encoded><![CDATA[<p>That&#8217;s going to be a very nice event, again. A big UP to ircica team which have work with PyMT nearly from the start, and special thank to Damien Marechal for his contribution !</p>
<p>Now, they are doing a event on 3 days&#8230; and they are more.</p>
<p><a href="http://blog.tehansen.de/">Thomas Hansen</a> and <a href="http://the-space-station.com/">Christopher Denter</a> from PyMT/Movid will be here ! For the very first time, our core team will be at the same place, IRL. That&#8217;s will change a lot from IRC <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Be ready for our workshop, we are scheduled in Friday, 13h30, for 15 minutes + 5 minutes for discussion.<br />
We have some ideas about how we can be really wonderful during only 15 little minutes <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;ll animate a session around coding with PyMT in Saturday. If you want to join, be ready with your laptop. It would be better if you already have <a href="http://pymt.eu/">PyMT</a> installed.</p>
<p>For more information, you can read the <a href="http://fitg10.lille.inria.fr/">FITG2010 website</a> !</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=131</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>THSF 2010 finished, debriefing.</title>
		<link>http://txzone.net/?p=114</link>
		<comments>http://txzone.net/?p=114#comments</comments>
		<pubDate>Mon, 31 May 2010 16:10:36 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[PyMT]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=114</guid>
		<description><![CDATA[First of all, thanks to]]></description>
			<content:encoded><![CDATA[<p>First of all, thanks to every awesome guys i&#8217;ve meet on this event. In particular to Marc Bruyère who give me a nice seat in his appartment. And every other guys in the <a href="http://tetalab.org/">tetalab</a> !</p>
<p><img src="http://lh4.ggpht.com/__t5JDCs2ggs/TAOEXnKuR4I/AAAAAAAABTw/DzoDGv4pG6Y/s800/DSC00913.JPG" alt=""  height="240" width="320" style="float: right; margin: 10px; border: 2px solid black;" />I&#8217;ve been in <a href="http://www.mixart-myrys.org/">Mix&#8217;art &#8211; Myrys</a>, where living lot of artists, very nice. Creativity and OpenMind spirit is the keyword of the place.<br />
The event involved <a href="http://www.k-danse.net/corpusmedia">Corpus Media</a>, and they made fantastic show, based on the body, with video visualization and voice/audio transformation. I&#8217;ve take lot of <a href="http://picasaweb.google.fr/txprog/THSF2010">pictures of mix&#8217;art, myrys</a>, just browse them a little bit to feel the spirit <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;ve made a <a href="http://vimeo.com/groups/tetalab/videos/12168854">conference on PyMT</a> on saturday. Unfortunatly, the streaming was cutted due to some guys using Free Internet connectivity for downloading torrents&#8230; Thanks guys ): Part of the streaming is available, but audio is desync. Specially for this event, you can see the Presemt application, made with Thomas and I. It&#8217;s available on PyMT-Apps : http://github.com/tito/pymt-apps/tree/master/presemt/. Presemt is a application to make dynamic presentation, based on PyMT.<br />
I&#8217;ll record a little video, and push it on the website !<br />
I think people have really appreciated the conference, and we already got new users <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><img src="http://lh5.ggpht.com/__t5JDCs2ggs/TAOEqLmVvDI/AAAAAAAABYY/ayHJzzTs1t8/s800/DSC00993.JPG" alt=""  height="240" width="320" style="float: left; margin: 10px; border: 2px solid black;" /><br />
During the workshop day, <a href="http://sassexperience.org/">Jimmy</a> ask me if we can do an SMS Wall with <a href="http://pymt.eu/" alt="">PyMT</a>, and play with it&#8230; I&#8217;ve spend more than 1 hour to check how i can get SMS from my HTC Hero. And i found <a href="http://code.google.com/p/android-notifier/">Remote Notifier</a>. Once a message is received on my Phone, it broadcast a TCP Packet using Wifi. 30 minutes later, we&#8217;ve got our first version of the SMSWall.<br />
With a nice girl from tetalab (i don&#8217;t remember his name :/), we&#8217;ve started to make a V2 on saturday, with some other vizualization. But i&#8217;ve not been able to finish the code&#8230;</p>
<p><img src="http://lh5.ggpht.com/__t5JDCs2ggs/TAOEyobzdNI/AAAAAAAABaw/NQ9Yq28nEAk/s800/DSC01039.JPG" alt=""  height="240" width="320" style="float: right; margin: 10px; border: 2px solid black;" /><br />
During the last day, i wanted to play with their <a href="http://tetalab.org/lionel/2010/04/12/led-pong-des-nouvelles/">LedWall in construction</a>. An awesome work made by Lionel and Fabrice. This was my first attempt to use Arduino&#8230; and success ! After fixing some issues in the Arduino code, they have been able to use a sketch: Camera -> Pixelize -> Gray scale -> Send to arduino.</p>
<p>Now, you can check the video :<br />
<a href='http://vimeo.com/12173592' >THSF &#8211; PyMT SMSWall</a><br />
<a href='http://vimeo.com/12170424' >THSF &#8211; PyMT SMSWall + Deaf people</a><br />
<a href='http://vimeo.com/12173592' >THSF &#8211; Led Wall !</a></p>
<p>And the pictures : <a href="http://picasaweb.google.fr/txprog/THSF2010">http://picasaweb.google.fr/txprog/THSF2010</a></p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=114</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>PyMT/Movid @THSP</title>
		<link>http://txzone.net/?p=109</link>
		<comments>http://txzone.net/?p=109#comments</comments>
		<pubDate>Thu, 06 May 2010 15:37:55 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Movid]]></category>
		<category><![CDATA[PyMT]]></category>
		<category><![CDATA[event]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=109</guid>
		<description><![CDATA[THSP is a Festival in]]></description>
			<content:encoded><![CDATA[<p><a href="http://tetalab.org/thsf/">THSP</a> is a Festival in Toulouse, with lot of events and hackers, from the 28 to the 30 May.</p>
<p>Saturday, i&#8217;ll do a talk/introduction about PyMT and Movid. Jimi is doing a workshop during the whole event, to build another Wall, and some other Multitouch Table. It will be a nice playground for both software! Thanks to Marc Bruyere and <a href="http://sassexperience.org">Jimi Hertz</a> for giving me the possibility to talk here <img src='http://txzone.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Read more about the event with the <a href='http://txzone.net/wp-content/uploads/2010/05/thsp-programme.pdf'>THSP Program May 2010</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=109</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multitouch Linux Support for PyMT</title>
		<link>http://txzone.net/?p=104</link>
		<comments>http://txzone.net/?p=104#comments</comments>
		<pubDate>Fri, 30 Apr 2010 16:01:47 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[PyMT]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=104</guid>
		<description><![CDATA[Since the last week, i've done some jobs about supporting nativly multitouch screens in PyMT. Linux was missing in the native support, next to Windows and MacOSX, already available.

2 supports have been realized : HID Input Support, and MPX/XI2 Support.
]]></description>
			<content:encoded><![CDATA[<p>Since the last week, i&#8217;ve done some jobs about supporting nativly multitouch screens in PyMT. Linux was missing in the native support, next to Windows and MacOSX, already available.</p>
<p>2 supports have been realized : HID Input Support, and MPX/XI2 Support.</p>
<p><strong>1. Kernel Part</strong></p>
<p>HID Input is the <a href="http://lxr.free-electrons.com/source/Documentation/input/input.txt?v=2.6.34-rc2">Input part of Linux Kernel</a>. Since 2.6.34, lot of multitouch screens got their drivers integrated in the source code. Most of the drivers have been done by the <a href="http://www.recherche.enac.fr/~chatty/">Stephane Chatty</a> from the <a href="http://lii-enac.fr/en/index.html">ENAC Laboratory</a>, inside the ShareIT project.</p>
<p>HID Input is reading the Event generated by the kernel, using /dev/input/eventX.</p>
<p>The Event are documented in the <a href="http://lxr.free-electrons.com/source/include/linux/input.h?v=2.6.34-rc2">input.h</a>. New event type have been added for Multitouch support: all the ABS_MT_. As today, we support :</p>
<ul>
<li>ABS_MT_POSITION_X : X position</li>
<li>ABS_MT_POSITION_Y: Y position</li>
<li>ABS_MT_PRESSURE : pressure</li>
<li>ABS_MT_TOUCH_MAJOR : width of the object</li>
<li>ABS_MT_TOUCH_MINOR : height of the object</li>
</ul>
<p>Other event are ignored, but would be interested to add the support, like ABS_MT_ORIENTATION. But right now, no device support them.</p>
<p>This work is available on the latest version of <a href="http://pymt.eu/">PyMT</a>. Check our <a href="http://github.com/tito/pymt">PyMT github repository</a>. If you want to known how to use it, you can read the <a href="http://groups.google.com/group/pymt-dev/browse_thread/thread/ba21861742ba1316">mail sent to the pymt-dev</a> mailing list.</p>
<p>The result of my work : <a href='http://vimeo.com/11342272' >PyMT + HIDInput support on Linux</a></p>
<p><strong>2. Xorg</strong></p>
<p>Since Xorg 7.5, MPX is available. MPX is the support of Multi Pointer inside X. Benjamin (from the Enac too), have provided a <a href="http://lii-enac.fr/en/projects/shareit/xorg.html">modified evdev module for Xorg</a>, to read Multitouch Event from kernel, and pass them to Xorg.<br />
This work require a running daemon, actually called multitouchd (on the same page as evdev). The daemon detect all the devices with Multitouch support, and create by default 5 fake mouse device, attached to the main multitouch device. With this way, each touch control one fake mouse device.</p>
<p>Unfortunaly, this is not stable, and with a stantum screen, once i get more that 4 or 5 touch, Xorg crash.</p>
<p>Anyway, i&#8217;ve start the support in the <a href="http://github.com/tito/pymt/tree/input-xi2">PyMT branch input-xi2</a>. This rely on python-xlib, but this library required some change to make our work run.<br />
Since it&#8217;s really more complicated than HID Input, i&#8217;ll not explain all the work right now. Maybe in another blog post.</p>
<p><strong>3. So, which screen i could buy to play with ?</strong></p>
<p>That&#8217;s pretty simple. ENAC (again) maintain a <a href="http://lii-enac.fr/en/projects/shareit/multitouch-devices.html">full list of multitouch screen working on linux</a>, and the status of the support in linux kernel.<br />
For my part, i&#8217;m playing with an <a href="http://us.acer.com/acer/seu30e.do?LanguageISOCtxParam=en&#038;link=ln374e&#038;CountryISOCtxParam=US&#038;acond125e=69956&#038;kcond48e.c2att101=69956&#038;sp=page17e&#038;ctx1g.c2att92=453&#038;ctx2.c2att1=25&#038;ctx1.att21k=1&#038;CRC=2614415465">Acer T230H</a>. A little bit bugged, and support only 2 points. But enough to play and debug with right now.</p>
<p>That&#8217;s all for the moment, enjoy !</p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=104</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Blog updated !</title>
		<link>http://txzone.net/?p=102</link>
		<comments>http://txzone.net/?p=102#comments</comments>
		<pubDate>Tue, 27 Apr 2010 15:05:37 +0000</pubDate>
		<dc:creator>tito</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://txzone.net/?p=102</guid>
		<description><![CDATA[My website is now part]]></description>
			<content:encoded><![CDATA[<p>My website is now part of the blog. The correct url is now :<br />
<a href="http://txzone.net/">http://txzone.net/</a></p>
<p>Please also update your rss to the new url :<br />
<a href="http://txzone.net/?feed=rss2">http://txzone.net/?feed=rss2</a></p>
]]></content:encoded>
			<wfw:commentRss>http://txzone.net/?feed=rss2&amp;p=102</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
