<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule">
<channel>
    <title>http://united-geeks.org/blog - SX1</title>
    <link>http://united-geeks.org/blog/</link>
    <description>Für die tägliche Portion Info-Gulasch...</description>
    <dc:language>en</dc:language>
    <generator>Serendipity 1.0 - http://www.s9y.org/</generator>
    <pubDate>Mon, 06 Aug 2007 21:51:39 GMT</pubDate>

    <image>
        <url>http://united-geeks.org/blog/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: http://united-geeks.org/blog - SX1 - Für die tägliche Portion Info-Gulasch...</title>
        <link>http://united-geeks.org/blog/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>GNUPoc - Symbian SDK on GNU/Linux</title>
    <link>http://united-geeks.org/blog/index.php?/archives/12-GNUPoc-Symbian-SDK-on-GNULinux.html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/12-GNUPoc-Symbian-SDK-on-GNULinux.html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=12</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=12</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    GnuPoc makes it possible to develop EPOC applications on your GNU/Linux machine. It is using GNU make, Wine and GCC crosscompiler for ARM.&lt;br /&gt;
&lt;br /&gt;
Read the full story at the &lt;a href=&quot;http://www.gnupoc.org/&quot; &gt;GNUPoc Website&lt;/a&gt;  
    </content:encoded>

    <pubDate>Tue, 15 Mar 2005 21:47:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/12-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>
<item>
    <title>SX1: SyncML, Multisync, Evolution 2, Gentoo / Linux</title>
    <link>http://united-geeks.org/blog/index.php?/archives/10-SX1-SyncML,-Multisync,-Evolution-2,-Gentoo-Linux.html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/10-SX1-SyncML,-Multisync,-Evolution-2,-Gentoo-Linux.html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=10</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=10</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    The following information may be outdated, i just keep for personal reasons.&lt;br /&gt;
&lt;br /&gt;
So, my aim was to syncronize my phone and my evolution calendar and addressbook, and Multisync seemed to be what I was looking for. &lt;br /&gt;
But, there&#039;s trouble ahead. Read on for how to get over it... Turns out Symbian/S60 phones have a rather special (buggy?) dialect of wbxml (WAP-XML) which needs a patched libwbxml2. Since it was not in the Gentoo Portage-Tree, i got the already patched version from here.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Multisync&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
I knew I had to compile multisync (Gentoo ebuild) with libwbxml2 support which turned out to be tricky (=impossible) when sticking to Gentoo-ebuilds. &lt;br /&gt;
The problem is:&lt;br /&gt;
The compile-script looks for the libwbxml2 header files in &quot;/usr/include/wbxml2/&quot;, but the patched version puts them in &quot;/usr/include/&quot;. So I manually copied all of the headerfiles to the newly &quot;/usr/include/wbxml2/&quot; directory and voila: during the compile process I can see:&lt;br /&gt;
&lt;blockquote&gt;&lt;br /&gt;
checking for wbxml_conv_wbxml2xml in -lwbxml2... yes&lt;br /&gt;
checking for correct libwbxml2 version... yes&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
Now i expected a new button in Multisync to appear, but no &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/sad.png&quot; alt=&quot;:-(&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
The libs seem to be present, but it builds it without libwbxml2-support. I tried a little more to get it working, but without any progress, so I decided to try something else (I was impatient, but there&#039;s probably a way to do this the &quot;Gentoo-Way&quot;)&lt;br /&gt;
&lt;br /&gt;
I unmerged multisync and d/l the latest cvs-snapshot of Multisync from here. I compiled everything and the long-awaited &quot;Disable String Tables&quot; Checkbox appeared in the menu. &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
Now I had everything ready to try syncing&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Setup Multisync:&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Start Multisync&lt;br /&gt;
The settings you need are:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;1st plugin: syncML&lt;br /&gt;
2nd plugin: Evolution2&lt;br /&gt;
syncML settings:&lt;br /&gt;
&lt;br /&gt;
SyncML Role: SyncML Server&lt;br /&gt;
Connection: http://this computer:PORT&lt;br /&gt;
Authentification: USERNAME/PASSWORD&lt;br /&gt;
In the &quot;Options&quot;-menu tick both checkboxes (&quot;Interpret UTC as local time&quot; / Disable string tables&quot;)&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Evolution2 settings:&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Pick the right calendar, addressbook and tasks file from the menu.&lt;br /&gt;
Setup the SX1&lt;br /&gt;
&lt;br /&gt;
Start the SyncML app and create a new profile:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Bearer Type: Internet&lt;br /&gt;
Access Point: DEFINED PREVIOUSLY (see TCP-IP over Bluetooth Howto)&lt;br /&gt;
Host Address: IP of Multisync-Server&lt;br /&gt;
Port: PORT (like in Multisync)&lt;br /&gt;
Username &amp;amp; password (like in Multisync)&lt;br /&gt;
Remote Calendar: calendar Remote Contacts: addressbook HTTP Auth: No&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
OK, now you need the right &lt;em&gt;Gnapplet.sis&lt;/em&gt;, which is this one. Transfer it to the phone and install it there.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Putting the pieces together&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Start Multisync on PC&lt;br /&gt;
Get TCP-IP on the phone working&lt;br /&gt;
Start Gnapplet&lt;br /&gt;
Start SyncML Process on the phone&lt;br /&gt;
Pray to your favourite god(s)&lt;strong&gt;&lt;br /&gt;
&lt;/strong&gt;=As many other things, this does not work very &quot;stable&quot;. For me, i.e. the first try when starting the sync-process on the phone never works. So what I do is: &#039;cancel first attempt&#039;&amp;&#039;try again&#039;. This works most of the time &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
Just try...&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Last words&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
There are some minor issues with the mapping of some field descriptions, e.g. SyncML and Evolution2 won&#039;t work together perfectly atm., but I was told by a Multisync developer that maybe in the 0.9 release this will be fixed.&lt;br /&gt;
For the moment you should definetely backup both devices (phone and Evolution) before you try anything. Also, you might run into wrong handling of duplicates. I did not want to move back to the old evolution, but maybe there are no such problems like in the Evo2-plugin right now (which is considered &#039;beta&#039;).&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;BTW:&lt;/strong&gt;&lt;br /&gt;
SX1-Firmware: 14&lt;br /&gt;
Evolution: 2.0.3-r2&lt;br /&gt;
Multisync: cvs-snapshot from 02/16/2005&lt;br /&gt;
Patched wbxml2-0.9.0 
    </content:encoded>

    <pubDate>Thu, 17 Feb 2005 21:15:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/10-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>
<item>
    <title>SX1: Optimizing videos with Transcode</title>
    <link>http://united-geeks.org/blog/index.php?/archives/9-SX1-Optimizing-videos-with-Transcode.html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/9-SX1-Optimizing-videos-with-Transcode.html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=9</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=9</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    The SX1 has quite enough power under the hood to watch movies in reasonable quality. However, the framerate isn&#039;t high enough to enjoy fast action movies, but it&#039;s perfect for my favourite TV-Show: The Simpsons. &lt;br /&gt;
&lt;br /&gt;
Learn see it&#039;s done.&lt;br /&gt;
 With transcode you have almost unlimited possibilities in En/Decoding and converting various video-formats to other formats. For a complete overview see the transcoding website.&lt;br /&gt;
&lt;br /&gt;
As player on my SX1 I use &#039;Smartmovie&#039; with the XVid-Codec. I did not find any other good players (mobiclip didn&#039;t work). &lt;br /&gt;
&lt;br /&gt;
So, to be able to watch Simpsons-episodes (22min, xvid) on my phone, I use this sequence of transcode operations to convert a ~170MB episode (XVid in avi) to a ~45MB big file:&lt;br /&gt;
(Of course, you have to replace $FILE with the right filename. The output file will be named SX1-movie.avi.) &lt;br /&gt;
&lt;blockquote&gt;&lt;br /&gt;
nice -n +19 transcode --print_status 5 --export_fps 15 -Z 208x156 -x mplayer -J modfps=buffer=7,hqdn3d -V -i $FILE -y xvid,null -w 164 -o tmp-video.avi &lt;br /&gt;
&lt;br /&gt;
nice -n +19 transcode --print_status 500 --export_fps 15 -u 35 -x null,auto -y null,wav -m tmp-sound.avi -i $FILE &lt;br /&gt;
&lt;br /&gt;
nice -n +19 transcode --print_status 500 -p tmp-sound.avi -J astat=alog -u 50 &lt;br /&gt;
&lt;br /&gt;
nice -n +19 transcode --print_status 50 -i tmp-video.avi -o SX1-movie.avi -p tmp-sound.avi -s `cat alog` -P1 -b 64 -y raw &lt;br /&gt;
&lt;br /&gt;
rm tmp-sound.avi&lt;br /&gt;
rm tmp-video.avi&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
ENJOY 
    </content:encoded>

    <pubDate>Mon, 06 Dec 2004 01:44:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/9-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>
<item>
    <title>SX1: Optimizing videos with Transcode</title>
    <link>http://united-geeks.org/blog/index.php?/archives/37-SX1-Optimizing-videos-with-Transcode.html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/37-SX1-Optimizing-videos-with-Transcode.html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=37</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=37</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    The SX1 has quite enough power under the hood to watch movies in reasonable quality. However, the framerate isn&#039;t high enough to enjoy fast action movies, but it&#039;s perfect for my favourite TV-Show: The Simpsons. &lt;br /&gt;
&lt;br /&gt;
Let&#039;s see how it&#039;s done:&lt;br /&gt;
 With transcode you have almost unlimited possibilities in En/Decoding and converting various video-formats to other formats. For a complete overview see the transcoding website.&lt;br /&gt;
&lt;br /&gt;
As player on my SX1 I use &#039;Smartmovie&#039; with the XVid-Codec. I did not find any other good players (mobiclip didn&#039;t work). &lt;br /&gt;
&lt;br /&gt;
So, to be able to watch Simpsons-episodes (22min, xvid) on my phone, I use this sequence of transcode operations to convert a ~170MB episode (XVid in avi) to a ~45MB big file:&lt;br /&gt;
(Of course, you have to replace $FILE with the right filename. The output file will be named SX1-movie.avi.) &lt;br /&gt;
&lt;blockquote&gt;&lt;br /&gt;
nice -n +19 transcode --print_status 5 --export_fps 15 -Z 208x156 -x mplayer -J modfps=buffer=7,hqdn3d -V -i $FILE -y xvid,null -w 164 -o tmp-video.avi &lt;br /&gt;
&lt;br /&gt;
nice -n +19 transcode --print_status 500 --export_fps 15 -u 35 -x null,auto -y null,wav -m tmp-sound.avi -i $FILE &lt;br /&gt;
&lt;br /&gt;
nice -n +19 transcode --print_status 500 -p tmp-sound.avi -J astat=alog -u 50 &lt;br /&gt;
&lt;br /&gt;
nice -n +19 transcode --print_status 50 -i tmp-video.avi -o SX1-movie.avi -p tmp-sound.avi -s `cat alog` -P1 -b 64 -y raw &lt;br /&gt;
&lt;br /&gt;
rm tmp-sound.avi&lt;br /&gt;
rm tmp-video.avi&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
ENJOY 
    </content:encoded>

    <pubDate>Mon, 06 Dec 2004 01:44:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/37-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>
<item>
    <title>SX1 and kbluetoothd discovery jobs</title>
    <link>http://united-geeks.org/blog/index.php?/archives/8-SX1-and-kbluetoothd-discovery-jobs.html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/8-SX1-and-kbluetoothd-discovery-jobs.html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=8</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=8</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    I&#039;ve just been playing a little with kbluetoothd&#039;s dicovery jobs. E.g. running scripts when a (specific) bluetooth device is in/out of range.&lt;br /&gt;
&lt;br /&gt;
The possible use of this depends on what you want to do with it. Some basic hints (esp. for the SX1) can be found here...&lt;br /&gt;
 To use this feature start up &quot;kbluetoothd&quot; and click your way to the &quot;configure services&quot; option, then click on the tab named &quot;Device Discovery&quot;. You can &quot;Add New Job&quot; which gives you these possibilities (atm):&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;Custom Job&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Discovery Protocol&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Kopete_AutoAway&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Photo Copy&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Screensaver&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Custom Job&lt;/strong&gt;&lt;br /&gt;
This is a template do use for your own scripts. Unmodified it just displays a small popup-window whenever a device is discovered.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Discovery Protocol&lt;/strong&gt;&lt;br /&gt;
This is essentially the same output as doing a &quot;sdptool browse&quot; from the shell. The protocols are by default saved as hmtl-files (name equals the MAC-Address of the discovered device) in /tmp &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Kopete_AutoAway&lt;/strong&gt;&lt;br /&gt;
This one is quite handy. Whenever your phone (or other BT-device) gets out of range (or if BT switched off) Kopete (the KDE Instant-Messenger / IRC-client) will set you &quot;Away&quot; (if you enabled the &quot;auto-away&quot; option in kopete before).&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Photo Copy&lt;/strong&gt;&lt;br /&gt;
This is a script to automatically download Photos (or whatever) from the phone once it&#039;s discovered. The unchanged script looks for photos in &#039;/Galerie/Fotos&#039; and stores them locally in &#039;/tmp&#039; .&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Screensaver&lt;/strong&gt;&lt;br /&gt;
This will trigger your standard KDE-screensaver, either with or without locking it. You have to change the file to your liking.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;SX1-Info&lt;/strong&gt;&lt;br /&gt;
Once again, the BT-application on the SX1 proves to be very unstable and crashes often. I could minimize this trouble by fiddling with &quot;Minimum time between two successive calls&quot; and &quot;Periodically update neighbor list&quot;. I&#039;ve set the first one to 00:00:05 (5 secs) for each job, and the latter to 00:00:10 (10 secs).&lt;br /&gt;
Seems this is OK for the SX1 (read: crashes, but only sometimes &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; ) 
    </content:encoded>

    <pubDate>Mon, 06 Dec 2004 01:37:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/8-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>
<item>
    <title>SX1 and Linux: What's hot, what's not...</title>
    <link>http://united-geeks.org/blog/index.php?/archives/7-SX1-and-Linux-Whats-hot,-whats-not....html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/7-SX1-and-Linux-Whats-hot,-whats-not....html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=7</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=7</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    The following Information is meant to be helpful to anybody trying to get the &quot;Siemens SX1&quot; mobile phone working together with our favorite OS: Gentoo-Linux.&lt;br /&gt;
&lt;br /&gt;
Of course, there shouldn&#039;t be many differences regarding other distributions. I will add relevant information about my experiences with my Debian system as soon as I get my hands on a second Bluetooth adapter. First, some words in general about the SX1 and about its bluetooth-functionality:&lt;br /&gt;
&lt;br /&gt;
The SX1 is a great phone - I just love it and did not regret buying it. There are, however, some issues with it. For example there were and are stability issues. A firmware upgrade may help for specific problems, but even though it is a rare situation, you may experience crashes, freezes and hanging applications on your SX1. This is especially true for applications relying on bluetooth and the bluetooth-implementation itself. So, you will find out, that sometimes it&#039;s best to restart bluetooth or the phone if things are misteriously failing or show somewhat strange behaviour.&lt;br /&gt;
&lt;br /&gt;
Another problem is the limitation to one bluetooth-connection at the same time (on the phone). This is not &quot;bluetooth-limitation&quot; in general, but seems to be true for all the chips to be found in mobile phones &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/sad.png&quot; alt=&quot;:-(&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
What&#039;s working so far:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;Pairing&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Sending and receiving files&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;TCP-IP over Bluetooth&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;GnuBox&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;SyncML/Multisync (with some minor issues)&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;Bemused&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;P3NFS (but very slow)&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt; 
    </content:encoded>

    <pubDate>Fri, 03 Dec 2004 01:33:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/7-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>
<item>
    <title>SX1: TCP-IP over BlueTooth</title>
    <link>http://united-geeks.org/blog/index.php?/archives/6-SX1-TCP-IP-over-BlueTooth.html</link>
            <category>SX1</category>
    
    <comments>http://united-geeks.org/blog/index.php?/archives/6-SX1-TCP-IP-over-BlueTooth.html#comments</comments>
    <wfw:comment>http://united-geeks.org/blog/wfwcomment.php?cid=6</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://united-geeks.org/blog/rss.php?version=2.0&amp;type=comments&amp;cid=6</wfw:commentRss>
    

    <author>nospam@example.com (n00dl3s)</author>
    <content:encoded>
    With this howto you will be able to use TCP-IP over BlueTooth, access your local LAN or the internet without restrictions (the speed is limited to what BlueTooth can handle)&lt;br /&gt;
&lt;br /&gt;
Getting TCP/IP to work is maybe going to be tricky. I ran into lots of trouble myself. So, if you expirience problems just don&#039;t give up and experiment a litte &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
 &lt;strong&gt;Basics:&lt;/strong&gt;&lt;br /&gt;
AFAIK this feature was never meant to be made public, but was instead used by Nokia-technicians to get remote access to phones while in development. That&#039;s probably the reason why there is no information to be found in official documents by i.e. Siemens or Nokia. &lt;br /&gt;
&lt;br /&gt;
Anyway, after buying  my SX1 I came across several websites saying it was possible to have TCP/IP working on certain Symbian/S60 phones (like the SX1 or the Nokia 6600). These websites provided much needed information (see links at the end of this section). Nevertheless, none of the sites totally matches my case here, so thats why I decided to put together this small howto.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;To get this going you need:&lt;/strong&gt;&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;A working BlueTooth-implementation on your computer&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;pppd to allow dial-in connections from the phone&#039;&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;iptables set up to act as router / NAT on the &#039;Bluetooth-PC&#039;&lt;/li&gt;&lt;br /&gt;
&lt;li&gt;a nameserver to resolve the &#039;mrouter&#039;-zone&lt;/li&gt;&lt;br /&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Setup the pppd&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Kernel-Options:&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;CONFIG_PPP=m&lt;br /&gt;
CONFIG_PPP_ASYNC=m&lt;br /&gt;
CONFIG_PPP_DEFLATE=m&lt;br /&gt;
CONFIG_PPP_BSDCOMP=m&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t have it in your kernel already recompile and reboot the machine with the new kernel. You don&#039;t have to load the modules manually, they&#039;ll get loaded automatically when needed.&lt;br /&gt;
&lt;br /&gt;
You need to create a &lt;em&gt;/etc/ppp/options&lt;/em&gt; file. Below you can see mine, see #comments for explanations.&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;noauth&lt;br /&gt;
local&lt;br /&gt;
modem&lt;br /&gt;
proxyarp&lt;br /&gt;
debug&lt;br /&gt;
ms-dns 192.168.0.254 # your DNS-Server &lt;br /&gt;
192.168.0.100:192.168.0.110 # First is the pppd server IP, second the one the phone gets&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Iptables / NAT&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Now you have to set up iptables for NAT, which is a easy and straightforward thing to do. Just issue two simple commands:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;echo 1 &gt; /proc/sys/net/ipv4/ip_forward &lt;br /&gt;
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you already have a ppp0 open (to dial in to your ISP) it has to be ppp1 (or X). Of course you can also have iptables act as a firewall, google for instructions if you don&#039;t know how to do that.&lt;br /&gt;
You can verifiy those settings with:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;hal root # iptables -t nat -L&lt;br /&gt;
Chain PREROUTING (policy ACCEPT)&lt;br /&gt;
target                         prot     opt     source         destination&lt;br /&gt;
&lt;br /&gt;
Chain POSTROUTING (policy ACCEPT)&lt;br /&gt;
target                         prot     opt     source         destination&lt;br /&gt;
MASQUERADE      all          --      anywhere    anywhere&lt;br /&gt;
&lt;br /&gt;
Chain OUTPUT (policy ACCEPT)&lt;br /&gt;
target                         prot     opt     source         destination&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;The Nameserver&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
I use bind9 as my nameserver. &lt;br /&gt;
&lt;br /&gt;
First you have to create a new file called &#039;db.mrouter&#039;. My file looks like this:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;# cat /etc/bind/db.mrouter&lt;br /&gt;
&lt;br /&gt;
$ttl 38400&lt;br /&gt;
mrouter.    IN    SOA    flux. flux.wg. (&lt;br /&gt;
        2003051402&lt;br /&gt;
        10800&lt;br /&gt;
        3600&lt;br /&gt;
        604800&lt;br /&gt;
        38400 )&lt;br /&gt;
&lt;br /&gt;
mrouter.                         IN      NS     flux.&lt;br /&gt;
wsockhost.mrouter.         IN      A       192.168.0.254&lt;br /&gt;
192.168.0.254.mrouter.    IN     PTR    wsockhost&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
Here, &#039;flux&#039; is the hostname of my server and &#039;192.168.0.254&#039; is its IP.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Starting the connection&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Some tips before you start:&lt;br /&gt;
&lt;br /&gt;
It seems that the kbemused-server is interfering with all this. so, if you see a kbluetoothd popup window that indicates your phone is connecting to the bemused-server, it&#039;s maybe a good idea to disable it first or to stop kbluetoothd alltogether (just switching channels does not work for me).&lt;br /&gt;
&lt;br /&gt;
The SX1&#039;s BlueTooth application suxx. It seems that it doesn&#039;t crash totally, but rather partially sometimes, e.g. I can still transfer files to / from the phone, but getting TCP-IP to work fails sometimes for no obvious reason. The simplest approach to this is switching Bluetooth (on the phone) off and on again, maybe even restart the phone.&lt;br /&gt;
&lt;br /&gt;
Then, at last, make sure the rfcomm devices you are about to use are created at first and are not already in use. To see current rfcomm activity run &#039;rfcomm&#039; without arguments. You can &quot;free&quot; rfcomm devices with &quot;rfcomm release &lt;device number&gt;OR&lt;all&gt;).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Let&#039;s try . To enable the tcp-ip connection, you have to do this:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;# sdptool add --channel=2 SP   &lt;br /&gt;
&lt;br /&gt;
Add the local bluetooth serial-port &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# dund --listen --channel=2&lt;br /&gt;
&lt;br /&gt;
Tell dund to listen for incoming ppp connections on the serial-port&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# rfcomm connect 2 00:01:E3:2C:F9:61 2&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
This is crucial now: we try to establish a connection to the phones serial port (NOT the serial port we established locally). The phone will disconnect immediately but this is exactly what we want.&lt;br /&gt;
That is normal behaviour and results from how the &quot;mrouter&quot; application on the phone is working. If a bluetooth-device is trying to connect to the phone&#039;s serial port, the phone &quot;remembers&quot; the MAC address of the device, disconnects and then tries to establish a connection to that MAC address. If mrouter gets a nameserver from the pppd and if NAT is working, you are done.  Watch the syslog for activity:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Dec  3 01:33:18 hal hcid[26480]: Bluetooth HCI daemon&lt;br /&gt;
Dec  3 01:33:18 hal hcid[26480]: Starting security manager 0&lt;br /&gt;
Dec  3 01:33:18 hal sdpd[26484]: Bluetooth SDP daemon&lt;br /&gt;
Dec  3 01:33:18 hal dund[26492]: Bluetooth DUN daemon&lt;br /&gt;
Dec  3 01:33:18 hal hcid[26480]: link_key_request (sba=00:10:DC:57:6D:BC, dba=00:01:E3:2C:F9&lt;br /&gt;
Dec  3 01:33:20 hal dund[26506]: New connection from 00:01:E3:2C:F9:61&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: pppd 2.4.1 started by root, uid 0&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: using channel 8&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: Using interface ppp0&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: Connect: ppp0 &lt;--&gt; /dev/rfcomm0&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: sent [LCP ConfReq id=0x1 &lt;asyncmap 0x0&gt; &lt;magic 0x8bdf7a9&gt; &lt;mp&gt;]&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: rcvd [LCP ConfReq id=0x1 &lt;magic 0xf97250ad&gt; &lt;asyncmap 0x0&gt;omp&gt;]&lt;br /&gt;
Dec  3 01:33:20 hal pppd[26512]: sent [LCP ConfAck id=0x1 &lt;magic 0xf97250ad&gt; &lt;asyncmap 0x0&gt;omp&gt;]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: rcvd [LCP ConfAck id=0x1 &lt;asyncmap 0x0&gt; &lt;magic 0x8bdf7a9&gt; &lt;mp&gt;]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: cbcp_lowerup&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: want: 2&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: sent [IPCP ConfReq id=0x1 &lt;addr 192.168.0.253&gt; &lt;compress VJ&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: sent [CCP ConfReq id=0x1 &lt;deflate 15&gt; &lt;deflate(old#) 15&gt; &lt;b&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: rcvd [IPCP ConfReq id=0x1 &lt;compress VJ 0f 01&gt; &lt;addr 0.0.0.0.0.0.0&gt; &lt;ms-dns3 0.0.0.0&gt;]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: sent [IPCP ConfNak id=0x1 &lt;addr 192.168.0.200&gt; &lt;ms-dns1 192&lt;ms-dns3 192.168.0.254&gt;]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: rcvd [IPCP ConfAck id=0x1 &lt;addr 192.168.0.253&gt; &lt;compress VJ&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: rcvd [CCP ConfRej id=0x1 &lt;deflate 15&gt; &lt;deflate(old#) 15&gt; &lt;b&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: sent [CCP ConfReq id=0x2]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: rcvd [IPCP ConfReq id=0x2 &lt;compress VJ 0f 01&gt; &lt;addr 192.168dns1 192.168.0.254&gt; &lt;ms-dns3 192.168.0.254&gt;]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: sent [IPCP ConfAck id=0x2 &lt;compress VJ 0f 01&gt; &lt;addr 192.168dns1 192.168.0.254&gt; &lt;ms-dns3 192.168.0.254&gt;]&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: found interface eth0 for proxy arp&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: local  IP address 192.168.0.253&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: remote IP address 192.168.0.200&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: Script /etc/ppp/ip-up started (pid 26521)&lt;br /&gt;
Dec  3 01:33:21 hal pppd[26512]: Script /etc/ppp/ip-up finished (pid 26521), status = 0x0&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Happy tcp-ip&#039;ing &lt;img src=&quot;http://united-geeks.org/blog/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
 
    </content:encoded>

    <pubDate>Fri, 03 Dec 2004 01:14:00 +0100</pubDate>
    <guid isPermaLink="false">http://united-geeks.org/blog/index.php?/archives/6-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/</creativeCommons:license>
</item>

</channel>
</rss>