<?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>Never Use This Font &#187; Projects</title>
	<atom:link href="http://neverusethisfont.com/blog/topics/projects/feed/" rel="self" type="application/rss+xml" />
	<link>http://neverusethisfont.com/blog</link>
	<description>Aaron Parecki is the co-founder of Geoloqi.com, and specializes in backend systems development.</description>
	<lastBuildDate>Mon, 11 Jul 2011 22:50:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Tools for Co-Working Spaces</title>
		<link>http://neverusethisfont.com/blog/2011/03/tools-for-co-working-spaces/</link>
		<comments>http://neverusethisfont.com/blog/2011/03/tools-for-co-working-spaces/#comments</comments>
		<pubDate>Sat, 19 Mar 2011 00:06:38 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[coworking]]></category>
		<category><![CDATA[geoloqi]]></category>
		<category><![CDATA[location]]></category>
		<category><![CDATA[phono]]></category>
		<category><![CDATA[sms]]></category>
		<category><![CDATA[souk]]></category>
		<category><![CDATA[tropo]]></category>

		<guid isPermaLink="false">http://neverusethisfont.com/blog/?p=406</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_411" class="wp-caption alignleft" style="width: 310px"><a href="http://www.soukllc.com/"><img src="http://neverusethisfont.com/blog/wp-content/uploads/2011/03/souk-IMG_1308-300x225.jpg" alt="Souk Co-Working Space" title="Souk Co-Working Space" width="300" height="225" class="size-medium wp-image-411" /></a><p class="wp-caption-text">Souk Co-Working Space</p></div> I recently spent some time at <a href="http://soukllc.com">Souk</a>, a co-working space in Portland. It&#8217;s a great space with lots of room and lots of light, which is important when you&#8217;re going to spend hours on end somewhere. Over the course of a couple days, it became apparent that there are several tools that can help facilitate the coming and going of people in spaces like these.</p>
<p><a href="http://tropo.com"><img src="http://neverusethisfont.com/blog/wp-content/uploads/2010/12/Tropo-Vert1.png" alt="" title="Tropo-Vert" width="180" height="150" class="alignright size-full wp-image-301" /></a> <strong><a href="https://github.com/tropo/CloudKnock">CloudKnock</a></strong> is an application built using <a href="http://tropo.com">Tropo</a> to facilitate letting people in to co-working spaces. When you need to get in, you can text &#8220;knock knock&#8221; to the application&#8217;s phone number. The application will then forward your message on to anyone who has checked in to the space. Since it uses Tropo it works not only by SMS but also by AIM, MSN, Yahoo IM, or Jabber! This means your &#8220;knock knock&#8221; SMS can be seamlessly forwarded on to people sitting at their desks using Gmail chat or AIM. While this app won&#8217;t actually open the door for you, that also means there is no physical hardware to install making it feasible to start using it today! <a href="https://github.com/tropo/CloudKnock">Download the source code</a> on Github, and <a href="https://www.tropo.com/account/register.jsp">sign up with Tropo</a> to get started.</p>
<p><a href="https://github.com/aaronpk/Tropo-Demos/blob/master/find-me-on-geoloqi/tropo.php"><img src="http://neverusethisfont.com/blog/wp-content/uploads/2011/03/where-is-aaron-200x300.png" alt="" title="Where is Aaron?" width="200" height="300" class="alignright size-medium wp-image-417" /></a> Have you ever wondered where someone in your group ran off to at lunch? Wouldn&#8217;t it be great if you could find out where they are without having to call them or text them and wait for their reply? Using Tropo, you can just send a quick IM to a bot which can find out where they are if they&#8217;re using <a href="http://geoloqi.com">Geoloqi</a>. </p>
<p>Every person who you want to track should download the <a href="http://geoloqi.com">Geoloqi app</a> for iPhone or Android.</p>
<p>From your map page, create a new shared link which never expires.<br />
<img src="http://neverusethisfont.com/blog/wp-content/uploads/2011/03/new-link-2011-03-18_1656.png" alt="" title="new-link-2011-03-18_1656" width="227" height="131" class="alignleft size-full wp-image-420" /></p>
<div style="clear:both;"></div>
<p>Copy the token at the end of the URL that is created, and paste it into the users array in the script.<br />
<img src="http://neverusethisfont.com/blog/wp-content/uploads/2011/03/geoloqi-link-2011-03-18_1654-300x184.png" alt="" title="geoloqi-link-2011-03-18_1654" width="300" height="184" class="aligncenter size-medium wp-image-423" /></p>
<p><img src="http://neverusethisfont.com/blog/wp-content/uploads/2011/03/user-setup-2011-03-18_1700.png" alt="" title="user-setup-2011-03-18_1700" width="576" height="81" class="aligncenter size-full wp-image-425" /></p>
<p>Copy the <a href="https://github.com/aaronpk/Tropo-Demos/blob/master/find-me-on-geoloqi/tropo.php">sample code</a> into a new Tropo scripting application, and add the Geoloqi shared link tokens for everyone in your group you want to track. You can give people nicknames so they can be identified by multiple names. </p>
<p>Then, you can send a message (via SMS or IM) like &#8220;Where is Aaron?&#8221; and you&#8217;ll get a quick reply with your friend&#8217;s location if they&#8217;re tracking themselves using Geoloqi!</p>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2011/03/tools-for-co-working-spaces/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>How to build a multi-user Delicious clone with WordPress and Delicious XML Exporter</title>
		<link>http://neverusethisfont.com/blog/2010/12/how-to-build-a-multi-user-delicious-clone-with-wordpress-and-delicious-xml-exporter/</link>
		<comments>http://neverusethisfont.com/blog/2010/12/how-to-build-a-multi-user-delicious-clone-with-wordpress-and-delicious-xml-exporter/#comments</comments>
		<pubDate>Fri, 17 Dec 2010 12:14:06 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[bookmark]]></category>
		<category><![CDATA[delicious]]></category>
		<category><![CDATA[scuttle]]></category>

		<guid isPermaLink="false">http://neverusethisfont.com/blog/?p=321</guid>
		<description><![CDATA[If you&#8217;re like me, you&#8217;ve probably got a lot of bookmarks saved on Delicious. If you&#8217;re not, you might know someone who does. With Delicious going offline, the question is where people are going to be taking their Delicious bookmarks? If you have a Delicious account (created after the Yahoo! acquisition), your only download option [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://deliciousxml.com/"><img class="alignleft" style="margin: 10px;" src="/blog/wp-content/uploads/2010/12/delicious-xml-exporter.png" alt="" width="457" height="133" /></a></p>
<p>If you&#8217;re like me, you&#8217;ve probably got a lot of bookmarks saved on Delicious. If you&#8217;re not, you might know someone who does. With Delicious going offline, the question is where people are going to be taking their Delicious bookmarks? If you have a Delicious account (created after the Yahoo! acquisition), your only download option is a html download exporting to browser bookmarks. This doesn&#8217;t give anyone much freedom in where you can take your data. To ease this frustration, <a href="http://twitter.com/caseorganic">@caseorganic</a> and I set out to solve this issue.</p>
<h3>WordPress and Delicious XML</h3>
<p><a href="http://links.aaron.pk"><img src="http://neverusethisfont.com/blog/wp-content/uploads/2010/12/aaronpk-bookmarks-site-300x184.png" alt="" title="aaronpk-bookmarks-site" width="300" height="184" class="alignright size-medium wp-image-328" /></a></p>
<p>Here&#8217;s a live <a href="http://links.aaron.pk/">Delicious clone running WordPress with data from Delicious XML</a>.</p>
<p><a href="http://deliciousxml.com">Delicious XML Exporter</a> is an export tool takes your Delicious bookmarks and exports them as XML, allowing you easily import them into other systems.</p>
<h3>Importing Delicious XML data to WordPress</h3>
<p>Install WordPress and the <a href="http://links.aaron.pk/about/">three plugins here</a>. This is a custom post type for storing bookmarks, a Twenty Ten child theme for displaying the custom post types, and an import tool which will import Delicious bookmarks from the XML export.</p>
<p>Once you install the plugins and theme, use the <a href="http://deliciousxml.com">Delicious XML</a> utility to download an XML file of all your bookmarks from Delicious. It&#8217;s secure OAuth, so you never have to enter your password.</p>
<p>Then, in WordPress, click on &#8220;Import&#8221;, and choose the &#8220;Delicious&#8221; option. Upload the XML file and press import. Your bookmarks and tags will be imported and functional!</p>
<h3>Happy bookmarking!</h3>
<p>Enjoy, and let me know if it works for you. If you find it helpful, let <a href="http://twitter.com/caseorganic">@caseorganic</a> and <a href="http://twitter.com/aaronpk">I</a> know!</p>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2010/12/how-to-build-a-multi-user-delicious-clone-with-wordpress-and-delicious-xml-exporter/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Random Hacks of Kindness &#8211; December 2010</title>
		<link>http://neverusethisfont.com/blog/2010/12/random-hacks-of-kindness/</link>
		<comments>http://neverusethisfont.com/blog/2010/12/random-hacks-of-kindness/#comments</comments>
		<pubDate>Wed, 08 Dec 2010 08:08:24 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[hackathon]]></category>
		<category><![CDATA[rhok]]></category>
		<category><![CDATA[speech]]></category>
		<category><![CDATA[speech recognition]]></category>
		<category><![CDATA[tropo]]></category>
		<category><![CDATA[voice]]></category>

		<guid isPermaLink="false">http://neverusethisfont.com/blog/?p=260</guid>
		<description><![CDATA[On the weekend of December 4th and 5th, people gathered in coworking spaces around the world for the Random Hacks of Kindness hackathon. In Seattle, two teams worked on Population Centers in Disaster, and Mobile Assessment of Damage for the Public. Results After a weekend of much hacking, good food, and good company, we came [...]]]></description>
			<content:encoded><![CDATA[<p>On the weekend of December 4th and 5th, people gathered in coworking spaces around the world for the <a href="http://rhok.org">Random Hacks of Kindness</a> hackathon. In Seattle, two teams worked on <a href="http://wiki.rhok.org/Population_Centers_in_Disaster">Population Centers in Disaster</a>, and <a href="http://wiki.rhok.org/MadPub.org">Mobile Assessment of Damage for the Public</a>.</p>
<p style="text-align: center;"><a href="http://www.flickr.com/photos/aaronpk/5237151780/in/photostream/"><img class="aligncenter" src="http://farm6.static.flickr.com/5245/5237151780_fac6620552.jpg" alt="" width="500" height="333" /></a></p>
<p><strong>Results</strong></p>
<p>After a weekend of much hacking, good food, and good company, we came away with solid problem definitions, UI mockups, and prototypes of an iPhone app, Android app, a website backend, and a voice-powered phone menu.</p>
<p><strong>Mobile Assessment of Damage for the Public</strong></p>
<p>The goal of MadPub.org is to build an application that streamlines the  process of reporting and assessing the amount of damage after the  occurrence of a natural disaster in the United States.  Beta testing  will be for the State of Washington.</p>
<p>In the event of a disaster, each county has a 72 hour window to report a  dollar estimate of damage to the state and federal government in order  meet the threshold for a federal declaration. The current system for  assessing and reporting damage has many inefficiencies, requiring  government personnel from each county to manually fill out a form after  talking on the phone with the person reporting the damage.</p>
<p>To solve this, we are building a system that allows businesses and  individuals to report damage on a variety of platforms including: a  phone tree with voice recognition managed with <a href="http://tropo.com">Tropo</a>, a web form, and Android and iPhone apps.</p>
<p><strong>Information Flow</strong></p>
<p><img class="aligncenter" src="http://snip.aaron.pk/2010-12-05_2048.png" alt="" width="640" /></p>
<p><img class="aligncenter" src="http://snip.aaron.pk/2010-12-05_2049.png" alt="" width="640" /></p>
<p><img class="aligncenter" src="http://snip.aaron.pk/2010-12-05_2050.png" alt="" width="640" /></p>
<p><strong>Mobile Apps</strong></p>
<p>Laurel (<a href="http://twitter.com/laurelfan">@laurelfan</a>) and Chi-Bong Ho built working prototypes of iPhone and Android apps! The apps allows you to enter the required information to gather information about the damage, and you can take photos and send them in the report as well. Mark (<a href="http://twitter.com/malept">@malept</a>) prototyped an HTML5 form using <a href="http://jquerymobile.com">jQuery Mobile</a>.</p>
<p><img class="size-full wp-image-856 alignleft" title="madpub-iphone-screenshot" src="/blog/wp-content/uploads/2010/12/madpub-iphone-screenshot.png" alt="MadPub.org iPhone Version" width="320" height="480" /> <img class="alignright" src="/blog/wp-content/uploads/2010/12/madpub-mobile-web.jpg" alt="MadPub.org Mobile Web Version" width="281" height="500" /></p>
<p><strong>Server</strong></p>
<p>Mark (<a href="http://twitter.com/malept">@malept</a>) and Pat Tressel built a Sahana-backed web form for submitting data, which the mobile applications can also send data to. While that was getting ready, Kav (@kavla) threw together a quick Rails app so uploading from the apps could be tested.</p>
<p><strong>Phone</strong></p>
<p>Aaron (@aaronpk) worked on a phone interface for entering the data. This involved a <a href="http://tropo.com">Tropo</a> app to handle the speech recognition.</p>
<p>Speech recognition is a difficult problem in general, but Tropo provides a great platform to make it a lot easier.</p>
<p>When someone calls the hotline, the Tropo application answers the call and offers to provide an overview of the information the caller will need to answer the questions. It then asks a series of questions needed to fill out the form.</p>
<p>Most questions can be answered with a simple &#8220;yes&#8221; or &#8220;no.&#8221; More complicated questions require more computing power to understand. Even the top of the line speech recognition technologies have a long way to go to understand what people are saying on the phone. How many times have you, a person, asked someone on the phone whether they said &#8220;b&#8221; or &#8220;d&#8221;? Now imagine a computer trying to hear that without any context!</p>
<p>Luckily, Tropo provides a way to recognize speech patterns from a smaller set of vocabulary. Tropo has built-in speech recognition to understand <strong>numbers, currencies and dates</strong>, and you can even specify your own set of options. What this means is that it&#8217;s far easier to get a computer to tell the difference between &#8220;sales&#8221; and &#8220;suppport&#8221; than it is to tell you what word a person said in no context. If you give the computer two options, it can more accurately match what the caller has said.</p>
<p>With this in mind, I set up a system for building survey applications with sets of options. For any questions that have completely free-form answers, such as &#8220;please describe the damages to the property,&#8221; the system records the audio from the caller so that the operator can play back that part of the message later. In fact, every response to every question has the audio recorded automatically so that the individual responses can be played back at a later date.</p>
<p>Here is some sample code showing what it takes to create a survey in this framework.</p>
<p><a href="https://github.com/rhok-seattle/mad-voice/blob/master/survey.php"><img src="/blog/wp-content/uploads/2010/12/madpub-voice-survey-config.png" alt="" title="madpub-voice-survey-definition" width="640" class="aligncenter size-full wp-image-267" /></a></p>
<p>You can see the different types of responses the Tropo can understand. I added the &#8220;[BOOLEAN]&#8221; and &#8220;[RECORD]&#8221; types to the framework which causes Tropo to listen for a &#8220;yes&#8221; or &#8220;no&#8221; response, and that will just accept a recording of whatever the caller speaks.</p>
<p>My goal in designing this <a href="http://tropo.com">Tropo</a> application was to make it as easy as possible to set up survey questions and change them in the future. The application takes care of recording responses and tracking answers, and provides the callers&#8217; responses in the admin&#8217;s web interface.</p>
<p>The data gathered from the call is presented to admins in a web view. Here is an example of a transcript of one of the calls. There are &#8220;listen&#8221; links which will play the audio for that response. Some questions don&#8217;t have recordings because the answers were determined based on other answers. For example, entering a zip code determines the county and state.</p>
<p><a href="http://neverusethisfont.com/blog/wp-content/uploads/2010/12/madpub-call-details.png"><img src="http://neverusethisfont.com/blog/wp-content/uploads/2010/12/madpub-call-details.png" alt="" title="madpub-call-details" width="338" height="315" class="aligncenter size-full wp-image-275" /></a></p>
<p>If you&#8217;d like to check out the source code to this application, you can <a href="https://github.com/aaronpk/madpub-voice">find it on Github</a>. For more information on Tropo, <a href="https://www.tropo.com/docs/">check out the Tropo documentation</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2010/12/random-hacks-of-kindness/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Mapping wifi access points in Portland</title>
		<link>http://neverusethisfont.com/blog/2010/01/mapping-wifi-access-points-in-portland/</link>
		<comments>http://neverusethisfont.com/blog/2010/01/mapping-wifi-access-points-in-portland/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 21:09:46 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Geo]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[geomena]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[mapping]]></category>
		<category><![CDATA[Portland]]></category>
		<category><![CDATA[Wifi]]></category>

		<guid isPermaLink="false">http://neverusethisfont.com/blog/?p=231</guid>
		<description><![CDATA[I&#8217;ve been logging GPS data for about a year and a half. I use an app on my Windows Mobile phone to log the GPS data, and my phone has a wifi antenna that stays in the &#8220;off&#8221; position most of the time. I met with @donpdonp the other day and he introduced me to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been <a href="http://aaronparecki.com/GPS_Visualization">logging GPS data</a> for about a year and a half. I use an app on my Windows Mobile phone to log the GPS data, and my phone has a wifi antenna that stays in the &#8220;off&#8221; position most of the time. I met with <a href="http://twitter.com/donpdonp">@donpdonp</a> the other day and he introduced me to the <a href="http://geomena.org">geomena.org</a> project. I realized it should be possible to log access points along with my existing GPS logging. It was easy to install Airomap on my phone, so now I can log wifi points too! </p>
<p>So far I&#8217;ve only made about a dozen trips with the wifi antenna on, but I&#8217;ve already logged 2200 unique mac addresses, and 427 open access points. And this is only on my normal route to and from work, I haven&#8217;t made any special wardriving trips yet. Here is a heatmap visualization of the access points I&#8217;ve logged so far. </p>
<p><img src="http://neverusethisfont.com/blog/wp-content/uploads/2010/01/Picture-17.png" alt="Wifi Hotspot Heatmap" title="Wifi Hotspot Heatmap" width="519" height="472" class="aligncenter size-full wp-image-232" /></p>
<p>This uses a custom tileserver I wrote to provide an additional data layer to the map. Hotter spots on the map correspond to more open access points in that area. </p>
<p>This is a version which shows each access point as a marker on the map so you can click on them.</p>
<div id="attachment_233" class="wp-caption aligncenter" style="width: 610px"><img src="http://neverusethisfont.com/blog/wp-content/uploads/2010/01/Picture-18.png" alt="Wifi Access Points in Portland. Red: encrypted, Blue: open" title="Wifi Access Points in Portland" width="600" height="759" class="size-full wp-image-233" /><p class="wp-caption-text">Wifi Access Points in Portland. Red: encrypted, Blue: open</p></div>
<p>Most of the access points appear to be in the middle of the street, because most have been seen only one time by my logger, which was in the middle of the street. As the access points are seen repeatedly from other positions, the points will adjust to a more accurate position. You can already see this happening for a few points which appear in the middle of blocks or on streets through which I did not drive.</p>
<p>Again, these maps are still in their infancy, since I&#8217;ve only logged a few days worth of points on very narrow routes. But it&#8217;s amazing that I&#8217;ve already driven by 2200 access points just in the normal course of the day. I&#8217;m looking forward to continuing logging data and eventually importing it into the geomena database. It&#8217;s easy to see how quickly we could map out the entire city with just a couple people running loggers!</p>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2010/01/mapping-wifi-access-points-in-portland/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>More tests with the Nike+iPod protocol</title>
		<link>http://neverusethisfont.com/blog/2008/02/more-tests-with-the-nikeipod-protocol/</link>
		<comments>http://neverusethisfont.com/blog/2008/02/more-tests-with-the-nikeipod-protocol/#comments</comments>
		<pubDate>Sat, 16 Feb 2008 19:14:14 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Nike+iPod]]></category>

		<guid isPermaLink="false">http://blog.neverusethisfont.com/2008/02/more-tests-with-the-nikeipod-protocol/</guid>
		<description><![CDATA[A lot of information about this device online is misleading. When I first heard about this, the site I was reading claimed the transmitter didn&#8217;t have a battery, and used the energy from the foot impact to power the burst transmission of the device&#8217;s ID. This is what got me excited about the device in [...]]]></description>
			<content:encoded><![CDATA[<p>A lot of information about this device online is misleading. When I first heard about this, the site I was reading claimed the transmitter didn&#8217;t have a battery, and used the energy from the foot impact to power the burst transmission of the device&#8217;s ID. This is what got me excited about the device in the first place: that it was so simple.<br />
<a href='http://blog.neverusethisfont.com/wp-content/uploads/2008/04/nikeipodinside-sparkfun.jpg'><img src="http://blog.neverusethisfont.com/wp-content/uploads/2008/04/nikeipodinside-sparkfun-150x150.jpg" alt="" title="nikeipodinside-sparkfun" width="150" height="150" class="alignright size-thumbnail wp-image-39" /></a></p>
<p>Other places I&#8217;ve read say there is an accelerometer inside. While not entirely inaccurate, it is again slightly misleading. It does not have an accelerometer the same way a Wii controller does. It has a piezoelectric sensor. (See <a href="http://www.sparkfun.com/commerce/present.php?p=Nike_iPod-Internals">SparkFun&#8217;s Nike+iPod Dissection</a> page) </p>
<p>I am not entirely confident that I know the capabilities of piezoelectric sensors, but if I am understanding correctly, they are primarily used to detect impact, and not smaller accelerations like the Wii controller does. What I am saying is that the sensor doesn&#8217;t know it is being dropped, it just knows that it hits the table.</p>
<p>Here is another data dump from the sensor. I tapped the sensor on the table two times every second. It&#8217;s two short taps followed by me waiting for the receiver to show it received a packet. </p>
<p><span id="more-35"></span></p>
<div style="font-family: courier,courier new; font-size: 10px; line-height: 1em;">
AF AC CD 2A 92 4E 71 EC 5B 3C 3A C9 72 EF 3A F0 75 AE 79 35 3E D9 B6<br />
A0 B3 69 55 76 0F 7E 19 C4 95 A0 A5 21 33 B1 8F AC 1F F9 01 8E E6 BA<br />
A1 23 53 40 75 8F 5C 2E 07 39 4B A3 97 12 26 BB EA 86 A4 3B 78 6E 80<br />
A2 6F 27 1A B8 E4 5D 4F 80 05 19 6A A1 75 6C 0B 96 D5 59 69 B7 C7 78<br />
A3 4A 58 38 55 F6 3D 1E B3 90 44 64 5B 5D 4F 9B 89 51 B8 CC 6E 3A 9C<br />
A4 37 16 36 AC A0 B3 B5 08 86 94 4E D4 9E 1C 6E 5B 85 85 53 8D AB 1B<br />
A5 FD AE FA 74 3B B6 88 CF 1B 95 32 56 75 BB F1 96 2B 19 A3 1D 73 E6<br />
A6 45 59 1F 41 38 6A 20 60 FD AC 44 91 1F F4 E8 EE 1A 8B 43 CC A6 CB<br />
A7 1C 94 06 CA E0 C4 7C 3F 87 4D 95 E8 9A 04 27 6D 4E 86 96 FC 11 D2<br />
A8 57 53 73 E9 4B 58 92 CB FE 99 F5 C0 91 C1 90 1E C7 8C 04 A6 E9 72<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AB EF DC BC 6D 0B 8F 0A 30 22 9A 70 22 3E C8 CE 04 F5 2B 39 5F CE 33<br />
AC 78 B4 0B F9 02 49 7C 05 4F 05 3B 2A 4D 4C F4 20 CD 73 16 2E 0F B1<br />
AD 2B 17 0E 5A 70 77 26 3C F6 C8 1F 92 58 F7 72 00 0E 27 14 74 A2 23<br />
AE A1 3E 49 FC EA 78 F6 A8 DA F9 AD AC 92 D4 E1 DF 35 A7 24 0D 6F B2<br />
AF AC CD 2A 12 D2 ED 70 C8 AF A9 56 EF 72 9F 55 D0 49 56 1E 97 6E 62<br />
A0 B3 69 55 F6 93 E2 85 61 30 05 48 CE DC 56 68 4B 46 40 48 85 1F 4E<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AB EF DC BC ED 8B 0F 8A B0 A2 1A F0 A2 BE 48 4E 84 75 AB B9 DF 4E 33<br />
AC 78 B4 0B 79 82 C9 FC 85 CF 85 BB AA CD CC 74 A0 4D F3 96 AE 8F B1<br />
AD 2B 17 0E DA F0 F7 A6 BC 76 48 9F 12 D8 77 F2 80 8E A7 94 F4 22 23<br />
AE A1 3E 49 7C 6A F8 76 28 5A 79 2D 2C 12 54 61 5F B5 27 A4 8D EF B2<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
AA 06 85 D1 36 2B 1F 03 6D 71 F4 08 2C 19 A8 26 9E 29 47 66 4A 91 8D<br />
AB EF DC BC 6D 0B 8F 0A 30 22 9A 70 22 3E C8 CE 04 F5 2B 39 5F CE 33<br />
AC 78 B4 0B F9 02 49 7C 05 4F 05 3B 2A 4D 4C F4 20 CD 73 16 2E 0F B1<br />
AD 2B 17 0E 5A 70 77 26 3C F6 C8 1F 92 58 F7 72 00 0E 27 14 74 A2 23<br />
AE A1 3E 49 FC EA 78 F6 A8 DA F9 AD AC 92 D4 E1 DF 35 A7 24 0D 6F B2<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92
</div>
<p>This dump is from tapping it once per second on the table:</p>
<div style="font-family: courier,courier new; font-size: 10px; line-height: 1em;">
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A4 37 16 36 7C D0 C3 C5 B8 36 24 BE 24 6E CC BE 8B B5 95 43 9D BB FB<br />
A5 FD AE FA 44 4B C6 F8 FF 2B A5 42 26 05 CB 81 E6 9B 89 33 8D 03 66<br />
A6 45 59 1F 11 68 3A 70 90 0D 5C F4 21 AF 44 58 5E 6A DB 13 9C 76 AB<br />
A7 1C 94 06 9A 10 34 8C 0F B7 7D 65 18 6A F4 D7 9D FE 16 06 6C A1 D2<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AB EF DC BC ED 8B 0F 8A B0 A2 1A F0 A2 BE 48 4E 84 75 AB B9 DF 4E 33<br />
AC 78 B4 0B 79 82 C9 FC 85 CF 85 BB AA CD CC 74 A0 4D F3 96 AE 8F B1<br />
AD 2B 17 0E DA F0 F7 A6 BC 76 48 9F 12 D8 77 F2 80 8E A7 94 F4 22 23<br />
AE A1 3E 49 7C 6A F8 76 28 5A 79 2D 2C 12 54 61 5F B5 27 A4 8D EF B2<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AB EF DC BC ED 8B 0F 8A B0 A2 1A F0 A2 BE 48 4E 84 75 AB B9 DF 4E 33<br />
AC 78 B4 0B 79 82 C9 FC 85 CF 85 BB AA CD CC 74 A0 4D F3 96 AE 8F B1<br />
AD 2B 17 0E DA F0 F7 A6 BC 76 48 9F 12 D8 77 F2 80 8E A7 94 F4 22 23<br />
AE A1 3E 49 7C 6A F8 76 28 5A 79 2D 2C 12 54 61 5F B5 27 A4 8D EF B2<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB
</div>
<p>Something really interesting happens if you group all of the lines together that begin with AA, AB, etc. A lot of them match up! This is a re-arrangement of both dumps of data. Blue is from the &#8220;1 tap&#8221; set, red is from the &#8220;2 taps&#8221; set.</p>
<div style="font-family: courier,courier new; font-size: 10px; line-height: 1em;">
<div style="color: rgb(51, 51, 204);">A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E
</div>
<div style="color: rgb(204, 51, 51);">A0 B3 69 55 76 0F 7E 19 C4 95 A0 A5 21 33 B1 8F AC 1F F9 01 8E E6 BA<br />
A0 B3 69 55 F6 93 E2 85 61 30 05 48 CE DC 56 68 4B 46 40 48 85 1F 4E<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E<br />
A0 B3 69 55 76 13 62 05 E1 B0 85 C8 4E 5C D6 E8 CB C6 C0 C8 05 9F 4E</p>
</div>
<div style="color: rgb(51, 51, 204);">A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE
</div>
<div style="color: rgb(204, 51, 51);">A1 23 53 40 75 8F 5C 2E 07 39 4B A3 97 12 26 BB EA 86 A4 3B 78 6E 80<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE<br />
A1 23 53 40 C5 01 D6 A4 92 AC DE 36 04 81 B5 28 79 F3 B9 26 14 CA DE</p>
</div>
<div style="color: rgb(51, 51, 204);">A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0
</div>
<div style="color: rgb(204, 51, 51);">A2 6F 27 1A B8 E4 5D 4F 80 05 19 6A A1 75 6C 0B 96 D5 59 69 B7 C7 78<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0<br />
A2 6F 27 1A 08 36 8F 9D B3 36 2A 9D 58 8C 85 E2 7F 6E C2 FE CF 7F A0</p>
</div>
<div style="color: rgb(51, 51, 204);">A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E
</div>
<div style="color: rgb(204, 51, 51);">A3 4A 58 38 55 F6 3D 1E B3 90 44 64 5B 5D 4F 9B 89 51 B8 CC 6E 3A 9C<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E<br />
A3 4A 58 38 A5 48 83 A0 52 71 A5 C5 FC FA F0 24 36 BC 0D 81 52 4E 6E</p>
</div>
<div style="color: rgb(51, 51, 204);">A4 37 16 36 7C D0 C3 C5 B8 36 24 BE 24 6E CC BE 8B B5 95 43 9D BB FB<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB
</div>
<div style="color: rgb(204, 51, 51);">A4 37 16 36 AC A0 B3 B5 08 86 94 4E D4 9E 1C 6E 5B 85 85 53 8D AB 1B<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB<br />
A4 37 16 36 FC 50 43 45 38 B6 A4 3E A4 EE 4C 3E 0B 35 15 C3 1D 3B FB</p>
</div>
<div style="color: rgb(51, 51, 204);">A5 FD AE FA 44 4B C6 F8 FF 2B A5 42 26 05 CB 81 E6 9B 89 33 8D 03 66<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66
</div>
<div style="color: rgb(204, 51, 51);">A5 FD AE FA 74 3B B6 88 CF 1B 95 32 56 75 BB F1 96 2B 19 A3 1D 73 E6<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66<br />
A5 FD AE FA C4 CB 46 78 7F AB 25 C2 A6 85 4B 01 66 1B 09 B3 0D 83 66</p>
</div>
<div style="color: rgb(51, 51, 204);">A6 45 59 1F 11 68 3A 70 90 0D 5C F4 21 AF 44 58 5E 6A DB 13 9C 76 AB<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB
</div>
<div style="color: rgb(204, 51, 51);">A6 45 59 1F 41 38 6A 20 60 FD AC 44 91 1F F4 E8 EE 1A 8B 43 CC A6 CB<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB<br />
A6 45 59 1F 91 E8 BA F0 10 8D DC 74 A1 2F C4 D8 DE EA 5B 93 1C F6 AB</p>
</div>
<div style="color: rgb(51, 51, 204);">A7 1C 94 06 9A 10 34 8C 0F B7 7D 65 18 6A F4 D7 9D FE 16 06 6C A1 D2<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2
</div>
<div style="color: rgb(204, 51, 51);">A7 1C 94 06 CA E0 C4 7C 3F 87 4D 95 E8 9A 04 27 6D 4E 86 96 FC 11 D2<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2<br />
A7 1C 94 06 1A 90 B4 0C 8F 37 FD E5 98 EA 74 57 1D 7E 96 86 EC 21 D2</p>
</div>
<div style="color: rgb(51, 51, 204);">A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92
</div>
<div style="color: rgb(204, 51, 51);">A8 57 53 73 E9 4B 58 92 CB FE 99 F5 C0 91 C1 90 1E C7 8C 04 A6 E9 72<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92<br />
A8 57 53 73 39 1B 08 C2 1B 2E 49 25 70 21 71 20 AE 37 3C B4 F6 39 92</p>
</div>
<div style="color: rgb(51, 51, 204);">A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0
</div>
<div style="color: rgb(204, 51, 51);">A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0<br />
A9 C4 7E 84 82 F0 98 4C ED EB 76 33 30 88 10 02 1E 37 52 05 BB 0B D0</p>
</div>
<div style="color: rgb(51, 51, 204);">AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D
</div>
<div style="color: rgb(204, 51, 51);">AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AA 06 85 D1 B6 AB 9F 83 ED F1 74 88 AC 99 28 A6 1E A9 C7 E6 CA 11 8D<br />
AA 06 85 D1 36 2B 1F 03 6D 71 F4 08 2C 19 A8 26 9E 29 47 66 4A 91 8D</p>
</div>
<div style="color: rgb(51, 51, 204);">AB EF DC BC ED 8B 0F 8A B0 A2 1A F0 A2 BE 48 4E 84 75 AB B9 DF 4E 33<br />
AB EF DC BC ED 8B 0F 8A B0 A2 1A F0 A2 BE 48 4E 84 75 AB B9 DF 4E 33
</div>
<div style="color: rgb(204, 51, 51);">AB EF DC BC 6D 0B 8F 0A 30 22 9A 70 22 3E C8 CE 04 F5 2B 39 5F CE 33<br />
AB EF DC BC ED 8B 0F 8A B0 A2 1A F0 A2 BE 48 4E 84 75 AB B9 DF 4E 33<br />
AB EF DC BC 6D 0B 8F 0A 30 22 9A 70 22 3E C8 CE 04 F5 2B 39 5F CE 33</p>
</div>
<div style="color: rgb(51, 51, 204);">AC 78 B4 0B 79 82 C9 FC 85 CF 85 BB AA CD CC 74 A0 4D F3 96 AE 8F B1<br />
AC 78 B4 0B 79 82 C9 FC 85 CF 85 BB AA CD CC 74 A0 4D F3 96 AE 8F B1
</div>
<div style="color: rgb(204, 51, 51);">AC 78 B4 0B F9 02 49 7C 05 4F 05 3B 2A 4D 4C F4 20 CD 73 16 2E 0F B1<br />
AC 78 B4 0B 79 82 C9 FC 85 CF 85 BB AA CD CC 74 A0 4D F3 96 AE 8F B1<br />
AC 78 B4 0B F9 02 49 7C 05 4F 05 3B 2A 4D 4C F4 20 CD 73 16 2E 0F B1</p>
</div>
<div style="color: rgb(51, 51, 204);">AD 2B 17 0E DA F0 F7 A6 BC 76 48 9F 12 D8 77 F2 80 8E A7 94 F4 22 23<br />
AD 2B 17 0E DA F0 F7 A6 BC 76 48 9F 12 D8 77 F2 80 8E A7 94 F4 22 23
</div>
<div style="color: rgb(204, 51, 51);">AD 2B 17 0E 5A 70 77 26 3C F6 C8 1F 92 58 F7 72 00 0E 27 14 74 A2 23<br />
AD 2B 17 0E DA F0 F7 A6 BC 76 48 9F 12 D8 77 F2 80 8E A7 94 F4 22 23<br />
AD 2B 17 0E 5A 70 77 26 3C F6 C8 1F 92 58 F7 72 00 0E 27 14 74 A2 23</p>
</div>
<div style="color: rgb(51, 51, 204);">AE A1 3E 49 7C 6A F8 76 28 5A 79 2D 2C 12 54 61 5F B5 27 A4 8D EF B2<br />
AE A1 3E 49 7C 6A F8 76 28 5A 79 2D 2C 12 54 61 5F B5 27 A4 8D EF B2
</div>
<div style="color: rgb(204, 51, 51);">AE A1 3E 49 FC EA 78 F6 A8 DA F9 AD AC 92 D4 E1 DF 35 A7 24 0D 6F B2<br />
AE A1 3E 49 7C 6A F8 76 28 5A 79 2D 2C 12 54 61 5F B5 27 A4 8D EF B2<br />
AE A1 3E 49 FC EA 78 F6 A8 DA F9 AD AC 92 D4 E1 DF 35 A7 24 0D 6F B2</p>
</div>
<div style="color: rgb(51, 51, 204);">AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62
</div>
<div style="color: rgb(204, 51, 51);">AF AC CD 2A 92 4E 71 EC 5B 3C 3A C9 72 EF 3A F0 75 AE 79 35 3E D9 B6<br />
AF AC CD 2A 12 D2 ED 70 C8 AF A9 56 EF 72 9F 55 D0 49 56 1E 97 6E 62<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62<br />
AF AC CD 2A 92 52 6D F0 48 2F 29 D6 6F F2 1F D5 50 C9 D6 9E 17 EE 62
</div>
</div>
<p>What&#8217;s really strange to me is that I got a lot of the same lines, even just from tapping it not terribly accurately by hand. With that many bits, it is no coincidence that so many of them match up. This suggests to me that the resolution of data transmitted is not as great as I originally thought.</p>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2008/02/more-tests-with-the-nikeipod-protocol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reverse Engineering the Nike+iPod Protocol</title>
		<link>http://neverusethisfont.com/blog/2008/02/reverse-engineering-the-nikeipod-protocol/</link>
		<comments>http://neverusethisfont.com/blog/2008/02/reverse-engineering-the-nikeipod-protocol/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 17:14:24 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Nike+iPod]]></category>

		<guid isPermaLink="false">http://blog.neverusethisfont.com/2008/02/reverse-engineering-the-nikeipod-protocol/</guid>
		<description><![CDATA[I just got a Nike+iPod gadget thingy. It&#8217;s pretty cool, and stores all the running stats in xml files on the iPod, making for easy hacking of the running data. However, that&#8217;s not what I really want to do with it. I got one of Sparkfun&#8217;s USB serial adapters for it, and can now get [...]]]></description>
			<content:encoded><![CDATA[<p>I just got a <a href="http://www.apple.com/ipod/nike/" target="_blank">Nike</a>+<a href="http://en.wikipedia.org/wiki/Nike%2BiPod" target="_blank">iPod</a> gadget thingy. It&#8217;s pretty cool, and stores all the running stats in xml files on the iPod, making for easy hacking of the running data. However, that&#8217;s not what I really want to do with it.</p>
<p>I got one of Sparkfun&#8217;s <a href="http://www.sparkfun.com/commerce/product_info.php?products_id=8245" target="_blank">USB serial adapters</a> for it, and can now get the raw data off of it. What I need to be able to detect is whether the sensor received an impact.</p>
<p>Before I bought this, I had heard that the sensor in the shoe transmits its ID every time the runner takes a step. However, after a little experimentation, I found this is not the case. Stepping on the sensor activates it, and once active, broadcasts some data chunks every 1 second. The dump below is from me dropping the sensor on the table, then letting it sit there until it stopped sending. You can see it took 13 seconds of just sitting there before it stopped sending data.</p>
<div style="font-family: courier,courier new; font-size: 9px; line-height: 1em;">FF 55 1E 09 0D 0D 01 70 C5 07 30 A5 FD AE FA C4 BF 32 0C 52 86 08 AF C9 EA 1C 56 31 CA B8 02 33 32 79<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 A6 45 59 1F 91 DC 8E C4 FB 66 37 DB 010 9E 75 69 6F 99 08 C4 0A 95 BE<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 A7 1C 94 06 1A 84 A8 010 9A 22 E8 F8 8B F9 67 44 0E 6B AB BB E0 C2 53<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 A8 57 53 73 39 0F 14 DE 0E 3B 5C 38 73 22 72 23 AD 3A 49 C9 1A 4A EF<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 AA 06 85 D1 B6 9F AB B7 20 3C B9 CD EF DA 6B E5 5D E8 86 A7 42 36 B0<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 AB EF DC BC ED 7F FB 7E 9B 89 31 07 57 4B B5 B3 79 DA FC E2 4B 8F CA<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 AC 78 B4 0B 79 76 3D 08 B8 F2 B8 C6 D5 B2 AB 13 C7 68 0E 6B E2 78 CC<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 AD 2B 17 0E DA E4 E3 B2 AF 65 5B 90 1F D5 72 F7 85 89 A8 9F A6 FD AE<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 AE A1 3E 49 7C 5E C4 4A 5B 29 0A 9A 9D A3 E5 D0 EE 66 D4 53 F9 010 F3<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 AF AC CD 2A 92 46 79 E4 53 34 32 D1 6A F7 22 E8 6D C6 D1 9D CB 67 03<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 A0 B3 69 55 76 07 76 11 CC 9D A8 AD 29 3B B9 87 A4 17 F1 F9 CB 06 65<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 A1 23 53 40 C5 F5 22 50 BD 83 F1 5D 69 EC D0 4D 1C D0 DA 49 EA A9 2D<br />
FF 55 1E 09 0D 0D 01 70 C5 07 30 A2 6F 27 1A 08 2A 93 81 B6 33 2F A0 6B BF B6 D1 4C 9B 0F 33 D1 16 41</div>
<p>(If you look closely, you&#8217;ll see some 010&#8242;s in there. That is obviously not a real hex byte, and has something to do with the VB program that Sparkfun put together. I can&#8217;t actually get the checksums to work out, otherwise I&#8217;d be able to tell what it should be.)</p>
<p>Here is what we know so far, compiled from <a href="http://www.ipodlinux.org/Apple_Accessory_Protocol" target="_blank" rel="nofollow">here</a> and <a href="http://www.ipodlinux.org/forums/viewtopic.php?t=24578" target="_blank" rel="nofollow">here</a></p>
<p>FF 55 : Apple Accessory Protocol header<br />
1E : length of packet data (from mode through data before checksum)<br />
09 : mode for Nike+<br />
0D 0D : command<br />
01 : unknown (start of parameter)<br />
70 C5 07 30 : my transmitter&#8217;s ID<br />
A5 : appears to be a counter, always starts with A, counts from 0-F<br />
next 21 bytes : unknown</p>
<p>79 : 8 bit additive checksum ((sum of all length/mode/command/parameter bytes) &amp; 0xFF) Note: I can&#8217;t actually get this to calculate out correct on any of the rows. I must be doing something wrong.</p>
<p>Currently I don&#8217;t have enough information in order to be able to tell whether a packet contains a footstep or not, since it continues to transmit even after it stops getting footsteps.</p>
<p>Links:<br />
<a href="http://www.ipodlinux.org/Apple_Accessory_Protocol">http://www.ipodlinux.org/Apple_Accessory_Protocol</a><br />
<a href="http://www.ipodlinux.org/forums/viewtopic.php?t=24578">http://www.ipodlinux.org/forums/viewtopic.php?t=24578</a><br />
<a href="http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-02/0005.shtml">http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-02/0005.shtml</a><br />
<a href="http://www.cs.washington.edu/research/systems/privacy.html">http://www.cs.washington.edu/research/systems/privacy.html</a><br />
<a href="http://en.wikipedia.org/wiki/Nike%2BiPod">http://en.wikipedia.org/wiki/Nike%2BiPod</a><br />
<a href="http://www.apple.com/ipod/nike/">http://www.apple.com/ipod/nike/</a>
<div id="zemanta-pixie" style="margin: 5px 0pt; width: 100%;"><a id="zemanta-pixie-a" href="http://www.zemanta.com/" title="Zemified by Zemanta"><img id="zemanta-pixie-img" src="http://img.zemanta.com/pixie.png?x-id=ec8d1833-f35f-4027-a790-2dba780f3c45" style="border: medium none ; float: right;"></a></div>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2008/02/reverse-engineering-the-nikeipod-protocol/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Caller ID Box</title>
		<link>http://neverusethisfont.com/blog/2007/06/caller-id-box/</link>
		<comments>http://neverusethisfont.com/blog/2007/06/caller-id-box/#comments</comments>
		<pubDate>Fri, 08 Jun 2007 19:02:32 +0000</pubDate>
		<dc:creator>aaron</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://blog.neverusethisfont.com/2007/06/caller-id-box/</guid>
		<description><![CDATA[Update: Everything looks like it should be working, and I even modified the answering_machine.c script a little bit. But for some reason, it appears as though the modem is just never receiving the ring signal. It may be because I am running it in a dual processor machine. I am going to reinstall linux in [...]]]></description>
			<content:encoded><![CDATA[<p>Update:</p>
<p>Everything looks like it should be working, and I even modified the answering_machine.c script a little bit. But for some reason, it appears as though the modem is just never receiving the ring signal. It may be because I am running it in a dual processor machine. I am going to reinstall linux in a single processor machine and try again.</p>
]]></content:encoded>
			<wfw:commentRss>http://neverusethisfont.com/blog/2007/06/caller-id-box/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

