<?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>Strombotne.com &#187; DIY</title>
	<atom:link href="http://www.strombotne.com/category/diy/feed" rel="self" type="application/rss+xml" />
	<link>http://www.strombotne.com</link>
	<description>Strombotne is an old Norwegian Family Name</description>
	<lastBuildDate>Wed, 01 Feb 2012 16:42:28 +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>soft top resto</title>
		<link>http://www.strombotne.com/2010/diy/3583</link>
		<comments>http://www.strombotne.com/2010/diy/3583#comments</comments>
		<pubDate>Tue, 07 Dec 2010 01:50:25 +0000</pubDate>
		<dc:creator>cs</dc:creator>
				<category><![CDATA[DIY]]></category>
		<category><![CDATA[S2000]]></category>

		<guid isPermaLink="false">http://www.strombotne.com/?p=3583</guid>
		<description><![CDATA[Not exactly an easy DIY, in fact there was a skull &#038; crossbones kind of warning to amateurs enclosed with the packing! There were no installation instructions included with the new top but fortunately there have been some &#8216;gone before me&#8216; who&#8217;ve posted walk throughs. I was grateful for the hints and spoilers. The most [...]]]></description>
			<content:encoded><![CDATA[<table>
<tr>
<td>Not exactly an easy DIY, in fact there was a<a href="http://www.strombotne.com/wp-content/uploads/robbins_disclaimer_scan.jpg" rel="lightbox[3583]"> skull &#038; crossbones kind of warning</a> to amateurs enclosed with the packing! There were no installation instructions included with the <a href="http://www.robbinsautotopco.com/honda.php">new top</a> but fortunately there have been some &#8216;<em>gone before me</em>&#8216; who&#8217;ve posted <a href="http://www.s2ki.com/forums/index.php?showtopic=448840&#038;st=0">walk through</a>s. I was grateful for the hints and spoilers. The most challenging, apart from remembering in which order to re-assemble the interior, was self learning the fundamentals of the <a href="http://en.wikipedia.org/wiki/Rivet#Blind_rivets">Rivet</a> fastener. Another bewildering moment was a &#8216;<em>fish out of water</em>&#8216; visit to a (women&#8217;s) fabric shop to procure new elastic material for the frame bows. </p>
<p>Three days into the project and the <a href="http://www.strombotne.com/wp-content/uploads/after_top_install.jpg" rel="lightbox[3583]">new canvas is in place</a> and may actually keep seats dry.</td>
<td><a href="http://www.strombotne.com/wp-content/uploads/IMG_2525-640x426.jpg" rel="lightbox[3583]"><img src="http://www.strombotne.com/wp-content/uploads/IMG_2525-640x426.jpg" alt="" title="tear_down_phase" width="300" height="199" class="alignnone size-medium wp-image-3585" /></a></td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.strombotne.com/2010/diy/3583/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>runmeter export display</title>
		<link>http://www.strombotne.com/2010/diy/3555</link>
		<comments>http://www.strombotne.com/2010/diy/3555#comments</comments>
		<pubDate>Mon, 15 Nov 2010 19:14:21 +0000</pubDate>
		<dc:creator>cs</dc:creator>
				<category><![CDATA[DIY]]></category>

		<guid isPermaLink="false">http://www.strombotne.com/?p=3555</guid>
		<description><![CDATA[Runmeter is an iPhone app useful for GPS tracking outdoor exercise and as such does a fine job eclipsing some of the other variants. Runmeter features the ability to export and share your (KML,GPX,CSV) data via email or link. Although Runmeter has excellent data analysis menu choices on the iPhone itself and can recall and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.abvio.com/runmeter/">Runmeter</a> is an iPhone app useful for GPS tracking outdoor exercise and as such does a fine job eclipsing <a href="http://www.strombotne.com/2010/biking/run-monster-3341">some of the other variants</a>. Runmeter features the ability to export and share your (KML,GPX,CSV) data via email or link. Although Runmeter has excellent data analysis menu choices on the iPhone itself and can recall and layout event history; the Runmeter does not have a co-branded display and summary website. However, it is possible to mirror your events and statistics on a personal <a href="http://www.strombotne.com/runmeter-stats">remote web page</a>. Using the Runmeter export feature you might try uploading a GPX file to <a href="http://www.everytrail.com/">Everytrail</a> or <a href="http://www.trailguru.com/wiki/index.php/Main_Page">Trailguru</a>. I prefer to roll my own and follows is a tutorial on how it can be done. </p>
<table>
<tr>
<td><a href="http://www.strombotne.com/runmeter-stats"><img src="http://www.strombotne.com/wp-content/uploads/screenshot_stats_output_sm.jpg" alt="" title="screenshot_stats_output" width="300" height="426" /></a></td>
<td>Add a table, which mimics Runmeters CVS file column headings, to your mysql database. </p>
<pre>
CREATE TABLE raw_runmeter_data (
  Route varchar(35) NOT NULL,
  Activity varchar(10) NOT NULL,
  Start_Time datetime NOT NULL,
  Time_normal time NOT NULL,
  Time_normal_seconds smallint(6) NOT NULL,
  Time_stopped time NOT NULL,
  Time_stopped_seconds int(11) NOT NULL,
  Distance decimal(5,2) NOT NULL,
  Average_speed decimal(5,2) NOT NULL,
  Average_pace time NOT NULL,
  Average_pace_seconds int(11) NOT NULL,
  Climb int(11) NOT NULL,
  Calories int(11) NOT NULL,
  Fastest_speed decimal(5,2) NOT NULL,
  Fastest_pace time NOT NULL,
  Fastest_pace_seconds int(11) NOT NULL,
  Notes text
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
</pre>
</td>
</tr>
</table>
<p>With this table constructed use PHP to retrieve your event data from the Runmeter server and store it in the mysql table. This code downloads your Runmeter CSV file and after some housekeeping, imports the data events to your mysql.</p>
<p>import_cvs.php</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php

/**********************************/
/* This file is named import_cvs.php
/* As the file name implies, this code will import your data from Runmeter.  You may run this file manually or better still, by setting up a cron job.
/* Edit the entry below to reflect the appropriate value i.e. your unique Runmeter export URL which should look something like this: &quot;http://share.abvio.com/438h2 53u978cd/Runmeter-Route-All.csv&quot;
/*********************************/
$inp = file('http://share.abvio.com/***********/Runmeter-Route-All.csv');
/*********************************/
/* If you use this code, find a flaw, enhance or otherwise improve it then please let me know
/* via comment or link.
/* End Edit (nothing to do below this line)
/*********************************/

include 'dbinfo.inc.php'; //   your variable constants for database access

if (!$inp) {
    echo &quot;&lt;p&gt;Unable to open remote file.\n&quot;;
    exit;
}
$out = fopen('runmeter_clean.csv','w');   //  a flat file which will temporaily hold your imported data
for ($i=1;$i&lt;count($inp)-1;$i++)  // step through the cvs file to leave out the first line ($i=1) and the last line of the file (count($inp)-1) because the first line is a header row and the last line has extraneous data
{
 fwrite($out,$inp[$i]);
}
fclose($out);

echo &quot;&lt;font color=red&gt;{$i} Runmeter events&lt;/font&gt;&lt;br&gt;&quot;; 

$file_handle = fopen('runmeter_clean.csv',&quot;r&quot;);

$con = @mysql_connect($databasehost,$databaseusername,$databasepassword) or die(mysql_error());
@mysql_select_db($databasename) or die(mysql_error());

// first task: let's empty the mysql table (remove all existing recors)
mysql_query(&quot;TRUNCATE $databasetable&quot;);

// now insert the new recent data. Process Each Line
	while (!feof($file_handle) ) {

		$data = fgetcsv($file_handle);

		$Route = mysql_real_escape_string($data[0]);   // this function escapes  out the pesky apostrophe character (and double quuotes etc.

		$sql_insert = &quot;insert into $databasetable ( Route, Activity, Start_Time, Time_normal, Time_normal_seconds, Time_stopped, Time_stopped_seconds, Distance, Average_speed, Average_pace, Average_pace_seconds, Climb, Calories, Fastest_speed, Fastest_pace, Fastest_pace_seconds, Notes)
		values ( '$Route', '$data[1]', '$data[2]', '$data[3]', '$data[4]', '$data[5]' ,'$data[6]' ,'$data[7]', '$data[8]', '$data[9]', '$data[10]' , '$data[11]', '$data[12]' , '$data[13]', '$data[14]', '$data[15]', '$data[16]' )&quot;;

                           echo $data[0].&quot;&lt;br&gt;&quot;;

                 mysql_query($sql_insert);
	}
fclose($file_handle);
@mysql_close($con);
?&gt;
</pre>
<p>Runmeter furnishes a unique and user specific download URL. Replace the URL (line #8) in import_csv.php file code above with yours. If not already familiar with the Runmeter app, review the screenshots from the app below. Start with the <em>Routes</em> Tab then touch <em>Email/Export All</em>. Next screen choose <em>CSV File URL</em>. (Runmeter sends your event data from your device to update your file CSV File on their server) In the third screen you are provided the discreet link which you will need for access. This URL does not normally change so you will not necessarily need to alter your php configuration above but note that current Runmeter app behavior does require you to refresh their data by doing this little procedure each time. </p>
<table>
<tr>
<td><img src="http://www.strombotne.com/wp-content/uploads/iPhone_screenshot_11.jpg" alt="" title="iPhone_screenshot_1" width="200" height="300" class="alignnone size-full wp-image-3557" /></td>
<td><img src="http://www.strombotne.com/wp-content/uploads/IPhone_screenshot_21.jpg" alt="" title="IPhone_screenshot_2" width="200" height="300" class="alignnone size-full wp-image-3558" /></td>
<td><img src="http://www.strombotne.com/wp-content/uploads/iPhone_screenshot_31.jpg" alt="" title="iPhone_screenshot_3" width="200" height="300" class="alignnone size-full wp-image-3559" /></td>
</tr>
</table>
<p>You can run import_csv.php as needed manually from a web browser. I created a cron job that will do this automatically. (once daily so as not to hammer the Runmeter server)</p>
<pre>
* * * * * wget -q http://www.strombotne.com/import_cvs.php > /dev/null 2>&#038;1
</pre>
<p>With the event data in place. It is a simple task of writing some queries that will display the information in meaningful way. For example, this snippet will count the number of days run within the last 30.</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
include (&quot;../dbinfo.inc.php&quot;);
/********************************/
/* Code from http://strombotne.com/
/* The query in this file is for PHP5 only
/* If you use this code, find a flaw, enhance or otherwise improve it then please let me know
/* via comment or link.
/********************************/
$con = @mysql_connect($databasehost,$databaseusername,$databasepassword) or die(mysql_error());
@mysql_select_db($databasename) or die('Could not connect: ' . mysql_error());

$dataArray=array();

//get data from database
$sql=&quot;SELECT COUNT(*) AS Last30Days FROM $databasetable WHERE Activity = 'run' AND DATE_SUB(CURDATE(),INTERVAL 30 DAY) &lt;= Start_Time&quot;;
$result = mysql_query($sql) or die('Query failed: ' . mysql_error());
$event_count=mysql_fetch_object($result);
$event_count=$event_count-&gt;Last30Days;

// days run will be $count_events_data from 30 == days off
$days_off = 30 - $event_count;

@mysql_close($con);
?&gt;
</pre>
<p>Google has an <a href="http://code.google.com/apis/chart/docs/chart_playground.html">API for charting</a> that neatly displays the query output.</p>
<pre class="brush: php; title: ; notranslate">

&lt;img src=&quot;http://chart.apis.google.com/chart?cht=p3&amp;chs=375x125&amp;chd=t:&lt;?php echo $event_count.','.$days_off.'&amp;chl='.$event_count.'+Days+Run|Days+Off&amp;chtt=Last+30+Days';?&gt;&quot;&gt;
&lt;!-- uses query_count_events_last_30.php --&gt;
</pre>
<p>And the output looks like this:<br />
<center><br />
<img src="http://www.strombotne.com/wp-content/uploads/chart.png" alt="" title="chart" width="375" height="125" class="alignnone size-full wp-image-3571" /><br />
</center><br />
There are additional queries and charts in the zip file, along with the complete code for this project for <a href="http://www.strombotne.com/wp-content/uploads/runmeter_stats_to_html.zip">download here</a>. Please share a link to YOUR Runmeter Statistics display in the comments section. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.strombotne.com/2010/diy/3555/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iphone stuck in recovery</title>
		<link>http://www.strombotne.com/2010/diy/3459</link>
		<comments>http://www.strombotne.com/2010/diy/3459#comments</comments>
		<pubDate>Sun, 11 Jul 2010 03:51:20 +0000</pubDate>
		<dc:creator>cs</dc:creator>
				<category><![CDATA[DIY]]></category>

		<guid isPermaLink="false">http://www.strombotne.com/?p=3459</guid>
		<description><![CDATA[With earlier iOS iterations, a manipulation of the sleep/wake and home buttons would abort iPhone recovery mode. There are plenty of helpful youTube video simplifications and mini tutorials on this subject, none of which apply to the newer (e.g. 3.1.3) devices. I spent hours sifting thru them and after attempting all combinations of holding down [...]]]></description>
			<content:encoded><![CDATA[<table>
<tr>
<td>With earlier iOS iterations, a manipulation of the sleep/wake and home buttons would abort iPhone recovery mode. There are plenty of helpful youTube video simplifications and mini tutorials on this subject, none of which apply to the newer (e.g. 3.1.3) devices. I spent hours sifting thru them and after attempting all combinations of holding down and sequentially releasing and reapplying buttons while counting for n seconds, I was still stuck in recovery loop with the <em>Connect to iTunes</em> screen. Here&#8217;s the fix:</p>
<p>Download <strong>iRecovery</strong> <a href="http://www.mediafire.com/file/ywhxqzdoimg/iHackintosh%20iRecovery%20Package%20for%20Windows%20&#038;%20Mac.rar">iHackintosh iRecovery Package for Windows &#038; Mac</a>, which is a compressed RAR file. Likely you will have to download a <a href="http://www.unrarx.com/">utility app</a> to extract from it.</p>
<p>To start iRecovery on a mac, simply open the command line application (Terminal), and then DRAG the iRecovery file from the location you&#8217;ve extracted it and DROP it inside the Terminal window A command line is automatically written. Now type the following:</p>
<ul>
<li>Append  &#8216;-s&#8217; so that the command line now reads &#8216;irecovery -s&#8217; &#8220;hit enter&#8221;</li>
<li>setenv auto-boot true &#8220;hit enter&#8221;</li>
<li>saveenv &#8220;hit enter&#8221;</li>
<li>/exit &#8220;hit enter&#8221;</li>
</ul>
<p>Finally, reboot your iPhone by pressing and holding the sleep/power button and the home button until the iPhone display turns off (black). Release the buttons.</p>
<p>This &#8211; saved the day &#8211; procedure courtesy of <a href="http://modmyi.com/forums/members/3282870.html">Rafay</a> on <a href="http://modmyi.com/forums/3g-s-downgrading/699990-downgrading-3-1-3-3-1-2-fixing-no-service-issue.html">this forum</a> was found after exhaustive trial &#038; error Google searching and worked perfectly.</td>
<td style="vertical-align:middle"><img src="http://www.strombotne.com/wp-content/uploads/2010/07/40799-175x300.jpg" alt=""  width="175" height="300"/></td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.strombotne.com/2010/diy/3459/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>brake job</title>
		<link>http://www.strombotne.com/2010/cars/3266</link>
		<comments>http://www.strombotne.com/2010/cars/3266#comments</comments>
		<pubDate>Fri, 19 Mar 2010 16:39:26 +0000</pubDate>
		<dc:creator>cs</dc:creator>
				<category><![CDATA[cars]]></category>
		<category><![CDATA[DIY]]></category>

		<guid isPermaLink="false">http://www.strombotne.com/?p=3266</guid>
		<description><![CDATA[No need to pay an automotive service center specialist the big bucks. This is maintenance that can be done in the garage. The local auto parts store has the replacement pads and special tools. Safety stands are necessary since the vehicle will be raised and the wheels removed. Supporting the vehicle with a floor jack [...]]]></description>
			<content:encoded><![CDATA[<table>
<tr>
<td>No need to pay an automotive service center specialist the big bucks. This is maintenance that can be done in the garage. The local auto parts store has the replacement pads and special tools. <a href="http://images.google.com/images?q=safety+stands">Safety stands</a> are necessary since the vehicle will be raised and the wheels removed. Supporting the vehicle with a floor jack is not recommended. Before lifting use your tire iron to loosen slightly the wheel lug nuts. The torque required to break them free will cause wheel rotation unless the weight of the vehicle rests upon it. <a href="http://www.strombotne.com/?page_id=3273">Continue reading&#8230;</a></td>
<td><a href="http://www.strombotne.com/wp-content/uploads/2010/03/IMG_1171.jpg" rel="lightbox[3266]"><img src="http://www.strombotne.com/wp-content/uploads/2010/03/IMG_1171-150x150.jpg" alt="" title="" width="150" height="150"  /></a></td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.strombotne.com/2010/cars/3266/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>current state of the art</title>
		<link>http://www.strombotne.com/2010/diy/faq/3237</link>
		<comments>http://www.strombotne.com/2010/diy/faq/3237#comments</comments>
		<pubDate>Wed, 03 Mar 2010 15:58:19 +0000</pubDate>
		<dc:creator>cs</dc:creator>
				<category><![CDATA[FAQ]]></category>

		<guid isPermaLink="false">http://www.strombotne.com/?p=3237</guid>
		<description><![CDATA[FAQ: What do you use to keep track of and journal your outdoor exercise? Use Nike Plus with an iPod Nano for repetitive routes. If you like, the iPhone 3G already has the receiver/software built in. You will still need to acquire a sensor for the shoe. Nike brand shoes are not required if you [...]]]></description>
			<content:encoded><![CDATA[<p>FAQ: What do you use to keep track of and journal your outdoor exercise? </p>
<p>Use <a href="http://www.apple.com/ipod/nike/">Nike Plus</a> with an iPod Nano for repetitive routes. If you like, the  iPhone 3G already has the receiver/software built in. You will still need to acquire a sensor for the shoe. Nike brand shoes are not required if you <a href="http://grantwoodtechnology.com/shoepouch/">buy</a> or <a href="http://www.youtube.com/watch?v=4gv5ZwTS3io">fabricate</a> a pouch to hold the sensor that typically attaches to shoe laces.</p>
<p>There is an excellent utility on the <a href="http://www.gmap-pedometer.com/">Gmaps Pedometer</a> website. You can calculate distance by strategising  beforehand or mapping your path after the fact &#8212; saving the route for future reference. These days high-end smartphones feature <a href="http://en.wikipedia.org/wiki/Global_Positioning_System">Global Positioning</a> which means that an expensive Garmin or Magellan accessory for that function is no longer necessary. With smartphone software to manage GPS one can record a trek in real time. There are quite a few applications of this genre from which to choose.  I use <a href="http://www.everytrail.com/iphone.php">this app</a> when I want to map a new trail I&#8217;ve not previously explored. This app uses the built-in GPS to track waypoints and even allows for picture snaps along the way. Tap a button and the whole shebang uploads to the cloud <a href="http://www.everytrail.com/view_trip.php?trip_id=515663">thusly</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.strombotne.com/2010/diy/faq/3237/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- This Quick Cache file was built for (  www.strombotne.com/category/diy/feed ) in 2.41542 seconds, on Feb 7th, 2012 at 8:35 pm UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 14th, 2012 at 8:35 pm UTC -->
