<?xml version="1.0"?>
<rss version="2.0">

<channel>
	<title>Planet Linux-to-go</title>
	<link>http://planet.linuxtogo.org/</link>
	<language>en</language>
	<description>Planet Linux-to-go - http://planet.linuxtogo.org/</description>

<item>
	<title>Richard 'RP' Purdie: The spirit of Linux lives on (literally)</title>
	<guid>http://www.rpsys.net/wp/?p=280</guid>
	<link>http://www.rpsys.net/wp/?p=280</link>
	<description>&lt;p&gt;One memory that springs to mind this evening is something tglx said at a plumbers conference about modern Linux hackers of the modern generation not being able to hold to traditional values, like properly enjoying beer!&lt;/p&gt;
&lt;p&gt;I think this evening we proved that wrong. If the team here in Romania was trying to get me drunk, they&amp;#8217;re going to have to try harder but it was an enjoyable evening and I think there are people who appreciate those traditional values, long may it continue! &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.rpsys.net/wp/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;</description>
	<pubDate>Mon, 14 May 2012 21:03:40 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Solar cell types and their looks</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-7133301657067081518</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/05/solar-cell-types-and-their-looks.html</link>
	<description>Following &lt;a href=&quot;http://jeelabs.org/2012/05/09/not-long-enough/&quot;&gt;cool solar experiments&lt;/a&gt; at &lt;a href=&quot;http://jeelabs.org/&quot;&gt;jeelabs.org&lt;/a&gt;, I also got idea to attach something to a solar cell. But first, figure out what types of them exists and available. Regarding the first, you can read in Wikipedia. But that's example of dried-out wikipedia article, giving a lot of formal facts, but little practical knowledge. What I'd like to know is what types are typically available in small consumer products.&lt;br /&gt;&lt;br /&gt;Here's what I researched. First type is brownish, with regular vertical or horizontal lines. It's the type of solar cell which have been see for at least 20 years in calculators. So, that's amorphous silicon solar cell, less expensive (explains why we had it for 20 years around) and less efficient, they say. But they also say that there're special subtypes, designed to work in low-light conditions (specifically, provide enough voltage, even though current may be miniscule). Here's how it typically looks:&lt;br /&gt;&lt;div class=&quot;separator&quot;&gt;&lt;a href=&quot;http://1.bp.blogspot.com/-_Z10BzYE2ik/T6vNsNVexEI/AAAAAAAAABw/6fyyFYRf8k4/s1600/amorphous-si.jpg&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://1.bp.blogspot.com/-_Z10BzYE2ik/T6vNsNVexEI/AAAAAAAAABw/6fyyFYRf8k4/s1600/amorphous-si.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Last years, another type became widely available in cheap stuff - crystalline silicon solar cells. In cheap stuff, they look like black (or dark) colored plate, covered with few millimeter of something like epoxy, in which you can clearly see metal wires - oftentimes in irregularly spaced groups. Looking closely, it can be seen that epoxy actually holds individual bars of crystalline silicon, and irregular spacing of builtin wires are in particular due to irregular cuts of these bars in the original wafer.&lt;br /&gt;&lt;br /&gt;Here's close up:&lt;br /&gt;&lt;div class=&quot;separator&quot;&gt;&lt;a href=&quot;http://4.bp.blogspot.com/-vspk06OU2pw/T6vPLdz-tkI/AAAAAAAAAB4/6YGWD80j-6c/s1600/crystalline-si.jpg&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://4.bp.blogspot.com/-vspk06OU2pw/T6vPLdz-tkI/AAAAAAAAAB4/6YGWD80j-6c/s320/crystalline-si.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;They say that crystalline is more efficient than amorphous, but more expensive. Explains why we started to see it around much later than amorphous. There's also mono-crystalline and poly-crystalline varieties, the first being more expensive, so my guess is that in cheap stuff we have poly-crystalline. It appears that small-size crystalline are rated for smaller voltage (2v) than an amorphous, which you can find for ~5V.&lt;br /&gt;They also say that under dimmer lighting, crystalline cells provides reduced voltage.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-7133301657067081518?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 10 May 2012 14:28:37 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: &quot;Arduino Hosted&quot; Python Module</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-3527996072689463208</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/05/arduino-hosted-python-module.html</link>
	<description>Here's what I've been hacking for some time now - a &lt;a href=&quot;https://github.com/pfalcon/arduino-hosted&quot;&gt;Python module which allows to run Arduino, etc. code&lt;/a&gt; on a host computer, while still allowing to access Arudino (etc.) hardware.  Of course, this is very obvious idea, so announcement of such project should proceed with explaining why yet another one? Two requirements I had was: using human readable/writable underlying protocol for communication with the board and being as much as possible compatible with original Arduino API/syntax. Regarding the latter, Arduino wiki's &lt;a href=&quot;http://arduino.cc/playground/Interfacing/Python&quot;&gt;Interfacing/Python&lt;/a&gt; lists few modules which allow to control Arduino from Python, but you may find it amusing how they go out of their way to deviate from standard Arduino API (I saw as funky stuff as &quot;&lt;span&gt;board.digital[13].write(1)&lt;/span&gt;&quot;, but even the humblest has &lt;span&gt;digital_write()&lt;/span&gt; instead of &lt;span&gt;digitalWrite()&lt;/span&gt;). On the contrary, with Arduino Hosted, standard Blink example looks like:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;#!/usr/bin/env python&lt;br /&gt;import arduino&lt;/div&gt;&lt;span&gt;arduino.init(debug=True)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;from arduino import *&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;def setup():&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinMode(LED, OUTPUT)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;def loop():&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; digitalWrite(LED, HIGH)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; delay(1000)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; digitalWrite(LED, LOW)&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; delay(1000)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;arduino.run(globals())&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;That's pretty direct translation of C code (plus few idioms), and directly translatable back to C. And that's idea - you prototype and debug code in hosted environment, and then can easily translate it to native code (to keep debugging on, because latency of of hosted and native execution is quite different which hides/adds lots of timing issues).&lt;br /&gt;&lt;br /&gt;Regarding the board communication protocol, I knew about BusPirate before that, and was really happy to find Joby Taffey's BusNinja implementation for Arduino. Even more, I found the implementation for TI Launchpad from the same author (Launchpad's version somehow named &quot;SPI Explorer&quot;). So, BusPirate's protocol with extensions is what I based on. Of course that doesn't too well, especially with TI Launchpad, which has particularly crippled UART support. Other issue is that BusPirate (even binary protocol version) supports working with only one bus at time. That's fine for BusPirate's original purpose, but limiting for a project like this (well, so far I didn't have to use I2C and SPI at the same time).&lt;br /&gt;&lt;br /&gt;What about Firmata? First of all, it doesn't support SPI, and working with SPI devices was the immediate need behind implementing this module. Secondly... Well, there's a saying &quot;If the only thing you know is a hammer, then any thing around looks like a nail.&quot; That's must have been the idea behind designing a MCU control protocol basing on MIDI protocol. NO WAI.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-3527996072689463208?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 10 May 2012 14:03:44 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Tizen: first impressions</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2520</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/ZuGaiIrsBzo/</link>
	<description>&lt;p&gt;During my stay in Oakland, CA (due to Ubuntu Developer Summit) I decided to attend also Tizen Developers Conference. Not that I have any relations with this platform &amp;#8212; just wanted to meet some friends from Maemo times. And I did not had plans for Tuesday evening while Tizen visitors had social event planned in &lt;a href=&quot;http://www.calacademy.org/&quot;&gt;The California Academy of Sciences&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;For those which do not know what Tizen is a bit of history. Years ago Nokia made few internet tablet devices (770, n800, &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/tag/n810/&quot;&gt;n810&lt;/a&gt;) and phone (&lt;a href=&quot;http://marcin.juszkiewicz.com.pl/tag/n900/&quot;&gt;n900&lt;/a&gt;) which were running Linux distribution named &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/tag/maemo/&quot;&gt;Maemo&lt;/a&gt;. It was loosely based on Debian. In meantime Intel created Moblin which was their distribution for mobile devices. Few years passed and they joined forces and &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/02/18/maemo-meego/&quot;&gt;MeeGo was born&lt;/a&gt;. Nokia released N9 phone with it, ASUS had netbook running MeeGo and maybe few other devices appeared on market. Then history repeated: MeeGo merged with LiMo and they created Tizen project.&lt;/p&gt;&lt;p&gt;It is hard to tell was conference success or not because I did not attended any sessions there &amp;#8212; just opening keynote by Jim Zemlin. On first day I also came for technical showcase and partner demos. But they were squeezed in very small room so it was hard to discuss with people showing their work. Maybe next time organizers will give at least 4m² per demo &amp;#8212; this should be a minimum.&lt;/p&gt;&lt;p&gt;But today I got Tizen Developer Platform device and thumbdrive with SDK on it. So decided to play a bit with it. It was not enjoyable experience.&lt;/p&gt;&lt;p&gt;First ugly part was Tizen SDK &amp;#8220;so-called&amp;#8221; installer. 823MB shell script&amp;#8230; I thought that those times passed long time ago. Anyway tried to run it. All I got was message that 64bits systems are not supported. Good to know that, but my x86-64 systems are able to run x86 binaries without problems. Ok, I made workaround and then got message about missing qemu, rpm, libsdl packages. No, I will not install rpm on my Ubuntu systems.&lt;/p&gt;&lt;p&gt;So I decided to cut that crappy shell script and take a look at tarball. Fast &amp;#8220;tail -n+122 tizen-sdk-0423.bin &gt;tizen-sdk.tar.gz&amp;#8221; and I was able to extract SDK. Got 26 zip archives.&lt;/p&gt;&lt;p&gt;One of them contains rootfs created from packages based on Debian/Ubuntu packages. Some are from times when dinosaurs ruled the Earth (debianutils 2.17 was released in 2006), some are  more fresh (like gcc-4.5 based on version from May 2011). In other words &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/01/04/are-maemo5-developer-tools-obsolete/&quot;&gt;tradition started by Maemo&lt;/a&gt; is continued in Tizen and developers are given mix of fresh tools with long time forgotten ones. And Scratchbox 2.&lt;/p&gt;&lt;p&gt;To connect with device there is &amp;#8220;sdb&amp;#8221; tool. It introduces itself as &amp;#8220;Smart Development Bridge&amp;#8221; but in past it was named &amp;#8220;Samsung Development Bridge&amp;#8221; (run &amp;#8216;strings&amp;#8217; on binary). And it&amp;#8217;s father has a name &amp;#8220;Android Development Bridge&amp;#8221; and has some more options.&lt;/p&gt;&lt;p&gt;Anyway if you want to connect to device then few steps are required:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;On device go to settings and set USB to &amp;#8216;USB debugging&amp;#8217; mode. This will switch it into cdc_ether gadget.&lt;/li&gt;&lt;li&gt;On host do &amp;#8220;sudo ifconfig usb0 192.168.129.1&amp;#8243; to configure networking.&lt;/li&gt;&lt;li&gt;Connect to device: &amp;#8220;ssh root@192.168.129.3&amp;#8243;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;And then you can enjoy system which is a mixture of few Debian/Ubuntu versions. And forget about updates &amp;#8212; unless you know how to get to 165.213.180.233 and know password of &amp;#8220;kb0929.kim&amp;#8221; user there (taken from /etc/apt/sources.list file).&lt;/p&gt;&lt;p&gt;Device uses Linux 2.6.36 kernel with unknown patches on top including CMA and Android ones. Quite old one but works. Hope to get newer one from someone.&lt;/p&gt;&lt;p&gt;What I do not like is availability of sources. There is &lt;a href=&quot;http://review.tizen.org/&quot;&gt;review.tizen.org&lt;/a&gt; website with git repositories but I want to vomit when I see commits like &amp;#8220;let&amp;#8217;s add 2.6.36 kernel in one commit&amp;#8221;. Lovely lack of ideas how to help developers.&lt;/p&gt;&lt;p&gt;What I will do with device? Not decided yet. Waiting for instructions how to get into bootloader to boot own kernels. Then who knows&amp;#8230; replacing Tizen with Android or Ubuntu?&lt;/p&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/12/07/is-this-the-end-of-maemo5/&quot; title=&quot;Permanent link to Is this the end of Maemo5?&quot;&gt;Is this the end of Maemo5?&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/12/13/going-to-android/&quot; title=&quot;Permanent link to Going to Android&quot;&gt;Going to Android&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/01/04/are-maemo5-developer-tools-obsolete/&quot; title=&quot;Permanent link to Are Maemo5 developer tools obsolete?&quot;&gt;Are Maemo5 developer tools obsolete?&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/06/16/linuxtag-2010/&quot; title=&quot;Permanent link to LinuxTag 2010&quot;&gt;LinuxTag 2010&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/01/05/2010-timeline/&quot; title=&quot;Permanent link to 2010 timeline&quot;&gt;2010 timeline&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/05/10/tizen-first-impressions/&quot;&gt;Tizen: first impressions&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=ZuGaiIrsBzo:4YaE3K0FC2s:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=ZuGaiIrsBzo:4YaE3K0FC2s:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=ZuGaiIrsBzo:4YaE3K0FC2s:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=ZuGaiIrsBzo:4YaE3K0FC2s:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=ZuGaiIrsBzo:4YaE3K0FC2s:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=ZuGaiIrsBzo:4YaE3K0FC2s:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=ZuGaiIrsBzo:4YaE3K0FC2s:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/ZuGaiIrsBzo&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 10 May 2012 01:17:29 +0000</pubDate>
</item>
<item>
	<title>Koen Kooi: Beaglebone software docs</title>
	<guid permalink="False">http://dominion.thruhere.net/koen/314 at http://dominion.thruhere.net/koen/cms</guid>
	<link>http://dominion.thruhere.net/koen/cms/beaglebone-software-docs</link>
	<description>&lt;h2&gt;Tutorials&lt;/h2&gt;
&lt;p&gt;Have a look at these websites to get an idea of what people have been working on.&lt;/p&gt;
&lt;p&gt;The Ångström website has links to various tutorials and projects, you can find it at &lt;a href=&quot;http://www.angstrom-distribution.org/&quot;&gt;http://www.angstrom-distribution.org/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Limor Fried of adafruit.com fame has started a colletion of beaglebone related tutorials of one which deals with wifi: &lt;a href=&quot;http://ladyada.net/products/beaglebone/index.html&quot;&gt;http://ladyada.net/products/beaglebone/index.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Dan Watts has a number of tutorial on how to use the GPIOs and PWM pins: &lt;a href=&quot;http://www.gigamegablog.com/tag/beaglebone/&quot;&gt;http://www.gigamegablog.com/tag/beaglebone/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Graeme Gregory has published an example kernel development workflow: &lt;a href=&quot;http://www.slimlogic.co.uk/2011/05/openembeddedangstrom-kernel-workflow/&quot;&gt;http://www.slimlogic.co.uk/2011/05/openembeddedangstrom-kernel-workflow/&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Reinstalling&lt;/h2&gt;
&lt;p&gt;To reinstall the SD card image you can completely reimage the SD card:&lt;/p&gt;
&lt;p&gt;Visit &lt;a href=&quot;http://downloads.angstrom-distribution.org/demo/beaglebone/&quot;&gt;http://downloads.angstrom-distribution.org/demo/beaglebone/&lt;/a&gt; and get the img.xz you want. Then find out which drive corresponds with your SD card reader:&lt;/p&gt;
&lt;pre&gt;$ dmesg | grep sd&lt;/pre&gt;&lt;p&gt;
The output should look something like this:&lt;/p&gt;
&lt;pre&gt;sd 8:0:0:0: Attached scsi generic sg4 type 0
&lt;b&gt;sd 8:0:0:0: [sde] 7626752 512-byte logical blocks: (3.90 GB/3.63 GiB)&lt;/b&gt;
sd 8:0:0:0: [sde] Write Protect is off
sd 8:0:0:0: [sde] Mode Sense: 03 00 00 00
sd 8:0:0:0: [sde] No Caching mode page present
sd 8:0:0:0: [sde] Assuming drive cache: write through
sd 8:0:0:0: [sde] No Caching mode page present
sd 8:0:0:0: [sde] Assuming drive cache: write through
 sde: sde1 sde2&lt;/pre&gt;&lt;p&gt;
This shows that it detected a 4GB card and assigned it to /dev/sde. In the next steps replace /dev/sdX with the name from the previous step. Be very careful with this using the wrong name can result in an erased hard drive.&lt;/p&gt;
&lt;p&gt;To reimage the SD card do the following:&lt;/p&gt;
&lt;pre&gt;$ sudo -s&lt;/pre&gt;&lt;p&gt;  	 (type in your password)&lt;/p&gt;
&lt;pre&gt;# xz -dkc imagename.img.xz &gt; /dev/sdX&lt;/pre&gt;&lt;pre&gt;# exit&lt;/pre&gt;&lt;p&gt;
This will take more than 20 minutes, usually 45-60 minutes, depending on the speed of your card reader and SD card.&lt;/p&gt;
&lt;h2&gt;Rebuilding&lt;/h2&gt;
&lt;p&gt;The SD card image in the box is based on the Ångström distribution. All Ångström binaries are built using OpenEmbedded. This document describes the steps necessary to setup an environment where you can rebuild the images and packages yourself.&lt;/p&gt;
&lt;p&gt;The build is managed by scripts to make things easier, so get the setup scripts:&lt;/p&gt;
&lt;pre&gt;$ git clone git://github.com/Angstrom-distribution/setup-scripts.git&lt;/pre&gt;&lt;p&gt;
If you are behind a firewalling proxy, have a look at the oebb.sh file, it has built-in proxy handling.&lt;/p&gt;
&lt;p&gt;Configure the setup scripts for the beaglebone:&lt;/p&gt;
&lt;pre&gt;$ MACHINE=beaglebone ./oebb.sh config beaglebone&lt;/pre&gt;&lt;p&gt;
Start with a kernel build:&lt;/p&gt;
&lt;pre&gt;$ MACHINE=beaglebone ./oebb.sh bitbake virtual/kernel&lt;/pre&gt;&lt;p&gt;
Or a small command line image:&lt;/p&gt;
&lt;pre&gt;$ MACHINE=beaglebone./oebb.sh bitbake systemd-image&lt;/pre&gt;&lt;p&gt;
Or rebuild the SD card image:&lt;/p&gt;
&lt;pre&gt;$ MACHINE=beaglebone ./oebb.sh bitbake cloud9-gnome-image&lt;/pre&gt;&lt;p&gt;&lt;!--break--&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 09 May 2012 14:40:05 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: UDS-Q</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2503</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/eZmqm6TKLlM/</link>
	<description>&lt;p&gt;Another May, another Ubuntu Developers Summit. This time I am in Oakland, California, USA (even if my tweets shows Dallas, Texas as geolocation).&lt;/p&gt;&lt;p&gt;As usual with US trips this one took insane amount of time. But I was 3cm from not going here&amp;#8230; Why? Because I got stuck in toilet at home. Hopefully with help from neighbour I was able to bash door out and get to the bus stop on time.&lt;/p&gt;&lt;p&gt;Then standard set of bus, plane, plane, train and finally arrived in hotel. As my room was not yet ready I got 30$ coupon to bar to not waste time on waiting. Free meal/beer ;)&lt;/p&gt;&lt;p&gt;My room is at 17th floor (which means 15th) and has a nice view in the evening:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/-lVuSJBvrSMo/T6cPGrEWCAI/AAAAAAAABsI/LouGM85xdOU/s800/IMG_20120505_224344.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120505_224344.jpg&quot; src=&quot;http://lh4.ggpht.com/-lVuSJBvrSMo/T6cPGrEWCAI/AAAAAAAABsI/LouGM85xdOU/s128/IMG_20120505_224344.jpg&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh3.ggpht.com/-mRhq_l5Bno0/T6cPGoj9YKI/AAAAAAAABsI/c8O6nuSH5PQ/s800/IMG_20120505_224400.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120505_224400.jpg&quot; src=&quot;http://lh3.ggpht.com/-mRhq_l5Bno0/T6cPGoj9YKI/AAAAAAAABsI/c8O6nuSH5PQ/s128/IMG_20120505_224400.jpg&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh3.ggpht.com/--etQfBFVSZE/T6cPGrgJNMI/AAAAAAAABsI/LK-QrCh2yEk/s800/IMG_20120505_224411.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120505_224411.jpg&quot; src=&quot;http://lh3.ggpht.com/--etQfBFVSZE/T6cPGrgJNMI/AAAAAAAABsI/LK-QrCh2yEk/s128/IMG_20120505_224411.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;On Sunday I went to see San Francisco centre (I saw Golden Gate on earlier visit). Chinatown was interesting experience. Lot of people speaking language which I do not understand, shops full of food which I do not recognize.&lt;/p&gt;&lt;p&gt;Some random photos:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/-47ZR4zBRnDE/T6cfhYqB3VI/AAAAAAAABsk/pbyehIifW0A/s800/DSC09946.JPG&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;DSC09946.JPG&quot; src=&quot;http://lh6.ggpht.com/-47ZR4zBRnDE/T6cfhYqB3VI/AAAAAAAABsk/pbyehIifW0A/s128/DSC09946.JPG&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh6.ggpht.com/-AH0o-vnaZE0/T6cyYmY0a1I/AAAAAAAABuk/hgn6aCmcqI8/s800/IMG_20120506_092639.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120506_092639.jpg&quot; src=&quot;http://lh6.ggpht.com/-AH0o-vnaZE0/T6cyYmY0a1I/AAAAAAAABuk/hgn6aCmcqI8/s128/IMG_20120506_092639.jpg&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh4.ggpht.com/-B12eVUMOP_c/T6cyYheSKPI/AAAAAAAABuk/YIMRMtK0wsk/s800/IMG_20120506_114901.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120506_114901.jpg&quot; src=&quot;http://lh4.ggpht.com/-B12eVUMOP_c/T6cyYheSKPI/AAAAAAAABuk/YIMRMtK0wsk/s128/IMG_20120506_114901.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/-9Ked5zWrQ3I/T6cyYuvKmNI/AAAAAAAABuk/8QwXLM8xAic/s800/IMG_20120506_114920.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120506_114920.jpg&quot; src=&quot;http://lh4.ggpht.com/-9Ked5zWrQ3I/T6cyYuvKmNI/AAAAAAAABuk/8QwXLM8xAic/s128/IMG_20120506_114920.jpg&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh4.ggpht.com/-mRJMfM8LqY0/T6cyYugm-FI/AAAAAAAABuk/XCx-sTpE7ng/s800/IMG_20120506_103517.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120506_103517.jpg&quot; src=&quot;http://lh4.ggpht.com/-mRJMfM8LqY0/T6cyYugm-FI/AAAAAAAABuk/XCx-sTpE7ng/s128/IMG_20120506_103517.jpg&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh6.ggpht.com/-4Ns7oPd8kx4/T6cyYlCQeiI/AAAAAAAABuk/xSJMJrGSo1c/s800/IMG_20120506_114851.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120506_114851.jpg&quot; src=&quot;http://lh6.ggpht.com/-4Ns7oPd8kx4/T6cyYlCQeiI/AAAAAAAABuk/xSJMJrGSo1c/s128/IMG_20120506_114851.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;After getting some souvenirs and refilling of my US T-Mobile sim card I decided to go to the cinema for &amp;#8216;The Avengers&amp;#8217; movie. It was nice experience. Touchscreen operated ticket machines which allow to buy ticket in one minute (but people were standing in long queue to buy tickets in &amp;#8216;normal way&amp;#8217;) made it even better. As in Poland there was big amount of commercials before movie (including some in style &amp;#8220;our Army/Navy is great, why not join us&amp;#8221;) but what I liked was just-before-movie animation reminding about not talking/texting/tweeting during movie (made with characters from &amp;#8220;Madagaskar&amp;#8221; series). Have to admit that RealD 3D glasses were more comfortable than Dolby 3D ones used by Polish cinemas. Movie itself was great but I think that will have to see it in Poland due to my English ;D&lt;/p&gt;&lt;p&gt;During evening there was usual Canonical internal plenary and then dinner. I even managed to sleep 6 hours despite jet lag ;D&lt;/p&gt;&lt;p&gt;Monday started with interesting keynote and presentation of Calxeda ARM server using technology &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/11/02/calxeda-announced-arm-server-product/&quot;&gt;they were talking about&lt;/a&gt; at previous UDS. Photos:&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/-P3qki_lbXoE/T6gHQTDeYyI/AAAAAAAABvw/uN1P1nHrnCU/s800/IMG_20120507_095638.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120507_095638.jpg&quot; src=&quot;http://lh4.ggpht.com/-P3qki_lbXoE/T6gHQTDeYyI/AAAAAAAABvw/uN1P1nHrnCU/s128/IMG_20120507_095638.jpg&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://lh6.ggpht.com/-etQpM0AWUiM/T6gHQSJIXtI/AAAAAAAABvw/4_Oc1ZjM_3k/s800/IMG_20120507_095942.jpg&quot; rel=&quot;lightbox[2503]&quot; title=&quot;&quot;&gt;&lt;img alt=&quot;IMG_20120507_095942.jpg&quot; src=&quot;http://lh6.ggpht.com/-etQpM0AWUiM/T6gHQSJIXtI/AAAAAAAABvw/4_Oc1ZjM_3k/s128/IMG_20120507_095942.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;It is 2U case with 24 Serial-ATA discs and 12 nodes with 4 quad-core EnergyCore processors per node. The only cables inside are power ones as rest of connections is on pcb. Connection with world by four Ethernet connectors.&lt;/p&gt;&lt;p&gt;I went to &amp;#8220;Create filesystems for embedded devices&amp;#8221; session where we discussed how to make Ubuntu Core even smaller. People mentioned OpenEmbedded, OpenWRT, buildroot as usual, we got some strange use cases too. What will come from it? Time will show.&lt;/p&gt;&lt;p&gt;Plenaries were interesting. First Chris Kenyon told about cooperation with OEMs and ODMs and how it relates with Ubuntu. Laptop in a pizza box picture was nice &amp;#8212; reminded developer boards. Then Bdale Garbee from HP shown us that there is no way to go though life without being served by HP technologies or hardware. Both talks were great and I hope that rest of plenaries will be like that.&lt;/p&gt;&lt;p&gt;After plenaries I went to San Francisco to register at Tizen conference and to meet some friends from Maemo times. Technical showcase and partner demos were boring and it was hard to feel that it is something innovative. But who knows&amp;#8230; maybe Tizen will be yet another phone/tablet/ivi/etc OS even when Moblin, Maemo, MeeGo did not succeed.&lt;/p&gt;&lt;p&gt;During evening (back at UDS) there was &amp;#8216;Meet &amp;amp; greet&amp;#8221; social event. Our Linaro group (Amber, Ricardo, Paul, me) was showing member boards and replying to misc questions from audience.&lt;/p&gt;&lt;p&gt;What next? Sessions, social events, discussions about my patches with other developers, some sight-seeing.&lt;/p&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/07/08/dublin-ubuntu-sprint-and-more/&quot; title=&quot;Permanent link to Dublin: Ubuntu sprint and more&quot;&gt;Dublin: Ubuntu sprint and more&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/05/13/uds-o/&quot; title=&quot;Permanent link to UDS-O&quot;&gt;UDS-O&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2008/08/01/nokia-n8x0-emulation-part-ii/&quot; title=&quot;Permanent link to Nokia N8x0 emulation part II&quot;&gt;Nokia N8x0 emulation part II&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2006/01/15/highlander-endgame/&quot; title=&quot;Permanent link to Highlander: Endgame&quot;&gt;Highlander: Endgame&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2008/04/11/nokia-n800-emulation/&quot; title=&quot;Permanent link to Nokia N800 emulation&quot;&gt;Nokia N800 emulation&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/05/08/uds-q/&quot;&gt;UDS-Q&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=eZmqm6TKLlM:inMky5iUzmU:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=eZmqm6TKLlM:inMky5iUzmU:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=eZmqm6TKLlM:inMky5iUzmU:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=eZmqm6TKLlM:inMky5iUzmU:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=eZmqm6TKLlM:inMky5iUzmU:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=eZmqm6TKLlM:inMky5iUzmU:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=eZmqm6TKLlM:inMky5iUzmU:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/eZmqm6TKLlM&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 08 May 2012 13:14:38 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Thanks to Kindle I am back to reading</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2497</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/tR3xzHVsCqE/</link>
	<description>&lt;p&gt;I always loved to read. In 6th class in elementary school I took fourteen books from school library at once (when only 3 were allowed). In 8th class I was going there only for required readings as there were no books there which could interest me (tough timing as I read all what liked and no money for new ones).&lt;/p&gt;&lt;p&gt;Basically during my school life I used several libraries and at most of them has a status of &amp;#8216;frequent visitor&amp;#8217; which meant no need to say name during books exchange. Also booking of rare books was possible.&lt;/p&gt;&lt;p&gt;After studies I moved to other city then to another then to another&amp;#8230; My amount of books was slowly growing because I wanted not to have too many things. Interesting new books were also usually expensive so compared to my income was not helping. And I somehow skipped searching for new libraries &amp;#8212; instead were checking friends&amp;#8217; bookshelves.&lt;/p&gt;&lt;p&gt;Once I settled down in Poznań and then in Szczecin my collection was slowly growing. And then, in November 2011 I bought myself Kindle Classic. Life got changed&amp;#8230;&lt;/p&gt;&lt;p&gt;First I loaded it with some documents and books which I had on hard drive &amp;#8212; technical, science fiction etc. Reading was pleasure. Then I loaded more and more&amp;#8230;&lt;/p&gt;&lt;p&gt;Recently I started making use of promotions announced on &lt;a href=&quot;http://swiatczytnikow.pl/&quot;&gt;&amp;#8220;Świat Czytników&amp;#8221;&lt;/a&gt; website which resulted in more and more books in queue. Then evenings, travels, waiting in queues transformed into reading spaces ;)&lt;/p&gt;&lt;p&gt;It is good to read a lot again.&lt;/p&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2008/01/09/reading-books-for-children/&quot; title=&quot;Permanent link to Reading books for children&quot;&gt;Reading books for children&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/04/23/thanks-to-kindle-i-am-back-to-reading/&quot;&gt;Thanks to Kindle I am back to reading&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=tR3xzHVsCqE:hErNOeQjMwc:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=tR3xzHVsCqE:hErNOeQjMwc:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=tR3xzHVsCqE:hErNOeQjMwc:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=tR3xzHVsCqE:hErNOeQjMwc:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=tR3xzHVsCqE:hErNOeQjMwc:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=tR3xzHVsCqE:hErNOeQjMwc:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=tR3xzHVsCqE:hErNOeQjMwc:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/tR3xzHVsCqE&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 23 Apr 2012 12:19:30 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Links for 2012-04-10 [del.icio.us]</title>
	<guid permalink="False">http://del.icio.us/Hrw#2012-04-10</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/UZf-rMA0GOQ/Hrw</link>
	<description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://gtdfh.branchable.com/&quot;&gt;GTD For Hackers&lt;/a&gt;&lt;br /&gt;
David Allen's &quot;Getting Things Done&quot;, or GTD for short, is a popular, powerful system for managing one's life. If you have trouble dealing with your e-mail inbox, or feel you're drowning under a flood of inputs and information, or just don't seem to have time to do everything you think you should be doing, or others want you to do, then GTD may be a good thing for you to consider.

This book explains how author, a computer geek, has implemented it in my own life. It is aimed at everyone whose lives include a lot of computer use, and who know how to use their computers.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://dunetna.probeta.net/doku.php/debian:non-dd_to_dd_steps&quot;&gt;Non-DD to DD steps&lt;/a&gt;&lt;br /&gt;
If you've been collaborating to Debian as a non-DD and then you become a DD with uploading rights, you have to do some changes in all your configurations.&lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/UZf-rMA0GOQ&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Wed, 11 Apr 2012 07:00:00 +0000</pubDate>
</item>
<item>
	<title>Holger 'zecke' Freyther: Introducing Poettering scale of software awesomeness and using</title>
	<guid>tag:blogger.com,1999:blog-13875843.post-7902309465472560298</guid>
	<link>http://zecke.blogspot.com/2012/04/introducing-poettering-scale-of.html</link>
	<description>I would like to quickly introduce the &lt;a href=&quot;http://0pointer.de/blog/projects/why.html&quot;&gt;Poettering scale of software awesomeness&lt;/a&gt;. The scale appears to be number of features over time, the higher the number the better. Evidence has shown that this scale is the best to compare software and should be used whenever one needs to decide on competing projects.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now that we learned how easily one can find the better piece of software, let's apply it. First Emacs vs. vim. Both are more or less the same age, this allows us to find out if vim or Emacs is better solely by looking at the features. As Emacs can send email, has a tons of lisp scripts it is clearly more &quot;Poettering awesome&quot; than vi. The second example is KDE and GNOME, again both are more or less the same age and we only need to compare the amount of features to know which one is better. We do this by looking at the configuration dialogs, KDE has clearly more options than GNOME. So KDE is clearly more &quot;Poettering awesome&quot; than GNOME.&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/13875843-7902309465472560298?l=zecke.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sat, 07 Apr 2012 12:54:39 +0000</pubDate>
	<author>noreply@blogger.com (zecke)</author>
</item>
<item>
	<title>Holger 'zecke' Freyther: Device profiles in Qt5</title>
	<guid>tag:blogger.com,1999:blog-13875843.post-1394586365074887916</guid>
	<link>http://zecke.blogspot.com/2012/04/device-profiles-in-qt5.html</link>
	<description>&lt;h2&gt;OpenGL and Devices&lt;/h2&gt;&lt;div&gt;&lt;span&gt;The future of Qt's graphic stack is OpenGL (ES 2.0), but this makes things more complicated in the device space. The library names and low level &lt;/span&gt;&lt;span&gt;initialization needed for OpenGL is not standardized.&lt;/span&gt;&lt;span&gt; This means that for a given board one needs to link libQtGui to different libraries and one needs to patch the QPA platform plugins to add device specific bits. The GPU vendor might provide DirectFB/eGL integration but one needs to call a special function to bind eGL to DirectFB.&lt;/span&gt;&lt;/div&gt;&lt;h2&gt;Historic Approach&lt;/h2&gt;&lt;div&gt;The historic Qt approach is to keep patches out of tree, custom mkspecs files that need to be copied into Qt before building. I have had two issues with this approach:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;&lt;span&gt;Device support should be an essential part of Qt5.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;Build testing (and later unit testing) is more complicated.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;h2&gt;Device Profile Proposal&lt;/h2&gt;&lt;div&gt;The approach we took is a pragmatic one, it should be easy for device manufacturers to do the right thing, it should not be a burden for the maintainability of Qt. After some iterations we ended up with &lt;a href=&quot;http://wiki.qt-project.org/QtEcosystemTeamTasklist/DeviceProfileProposal&quot;&gt;device profile proposal&lt;/a&gt; and began to implement to it. Most of it is merged by now.&lt;/div&gt;&lt;h2&gt;Key Features&lt;/h2&gt;&lt;div&gt;It begins with the &lt;i&gt;./configure &lt;/i&gt;script that now has the &lt;i&gt;-device=DEVICE&lt;/i&gt; and &lt;i&gt;-device-option KEY=VALUE &lt;/i&gt;to select a device and to pass options, e.g. additional include paths, BSP package, to Qt. The second part is a device to influence the behavior of QPA platform plugins. Right now this applies to the DirectFB and EGLFS plugin. A device can install hooks that are called as part of the initialization of these plugins. The hook is the pragmatic approach to get a mix-in with the existing code base.&lt;/div&gt;&lt;br /&gt;&lt;h2&gt;Supported Devices&lt;/h2&gt;&lt;div&gt;Right now we have completed device support for the &lt;a href=&quot;http://wiki.qt-project.org/Devices/RaspberryPi&quot;&gt;RaspberryPi&lt;/a&gt;,&lt;a href=&quot;http://wiki.qt-project.org/Devices/Broadcom97425&quot;&gt;BCM97425&lt;/a&gt; and &lt;a href=&quot;http://wiki.qt-project.org/Devices/AML8726-M&quot;&gt;AMLogic 8726-M&lt;/a&gt;. We do support some more &lt;a href=&quot;http://wiki.qt-project.org/Devices&quot;&gt;devices&lt;/a&gt; but they might still require external patches.&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/13875843-1394586365074887916?l=zecke.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Fri, 06 Apr 2012 11:43:38 +0000</pubDate>
	<author>noreply@blogger.com (zecke)</author>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Links for 2012-04-02 [del.icio.us]</title>
	<guid permalink="False">http://del.icio.us/Hrw#2012-04-02</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/AUd4fPPwX8Q/Hrw</link>
	<description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.travelagency.me.uk/travelling-north-vhs-reviews/&quot;&gt;Travelling North [VHS] Reviews&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/AUd4fPPwX8Q&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 03 Apr 2012 07:00:00 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: OpenSource Sensor Node firmware for BlueCore-based Bluetooth Modules</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-4774763449736355450</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/04/opensource-sensor-node-firmware-for.html</link>
	<description>BlueCore4-Ext is a popular Bluetooth chip used in many Bluetooth modules, some priced below $10. The idea is to create Wireless Sensor/Control Network using this modules, as Bluetooth is really ubiquitous technology nowadays, so any smartphone can be used to provide user UI/control for such network. This is especially facilitated by the fact that BlueCore4-Ext is a SoC (system-on-chip) integrating microcontroller and peripherals in one package (small too), allowing it to be programmed with a user firmware for autonomous functioning with minimum of additional components. It even has built-in temperature sensor, so just add a battery and you have ready-made wireless temperature sensor (not too precise, granted, but you can calibrate it yourself ;-) ).&lt;br /&gt;&lt;br /&gt;(Image by &lt;a href=&quot;http://robocraft.ru&quot;&gt;robocraft.ru&lt;/a&gt;) &lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot;&gt;&lt;a href=&quot;http://robocraft.ru/files/bluetooth/module_annotated.jpg&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;http://robocraft.ru/files/bluetooth/module_annotated.jpg&quot; width=&quot;220&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;BluTuNode is a firmware for such a Bluetooth Wireless Node, which allows to control it from a host over the air.&lt;br /&gt;&lt;br /&gt;Source code: &lt;a href=&quot;http://github.com/pfalcon/blutunode&quot;&gt;http://github.com/pfalcon/blutunode&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Features implemented:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Full control of GPIO: input/output, configuring direction, pullups/pulldowns, etc.&lt;/li&gt;&lt;li&gt;Reading sampled from build ADCs.&lt;/li&gt;&lt;li&gt;Reading of temperature sensor.&lt;/li&gt;&lt;li&gt;Querying other system parameters.&lt;/li&gt;&lt;li&gt;Querying Bluetooth parameters.&lt;/li&gt;&lt;li&gt;Poll mode, when module automatically reads some sensor at specified period and sends information to host.&lt;/li&gt;&lt;/ul&gt;Features planned/ideas:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;UART control (note that this is generally not a priority, because UART is mostly used to connect to host/microcontroller, and this firmware is designed for autonomous modules).&lt;/li&gt;&lt;li&gt;SPI/I2C/1-wire support to connect external sensors.&lt;/li&gt;&lt;li&gt;More Bluetooth-level information and control.&lt;/li&gt;&lt;li&gt;OpenSource tools to program/manage BlueCore modules.&lt;/li&gt;&lt;li&gt;Flash access/writing, over-the-air firmware updates.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Appendix:&lt;br /&gt;&lt;br /&gt;Some technical characteristics of BC4-based module:&lt;br /&gt;&lt;br /&gt;SoC: BC417 (BC417143B full model ID)&lt;br /&gt;CPU: XAP2+, 16-bit RISC (no special 8-bit data support), Harward architecture, 64Kword data space, 1Mword+ code space&lt;br /&gt;Flash: 1Mbyte (512Kwords, 75% typically occupied by Bluetooth stack/OS)&lt;br /&gt;RAM: 24Kword&lt;br /&gt;Execution environment: Virtual machine, no native hardware access (later versions of firmware OS support &quot;native&quot; mode, heavily bounds-checked still).&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-4774763449736355450?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 02 Apr 2012 20:59:56 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Links for 2012-04-01 [del.icio.us]</title>
	<guid permalink="False">http://del.icio.us/Hrw#2012-04-01</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/UOjUnAMsu7s/Hrw</link>
	<description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://coverclock.blogspot.com/2012/03/small-town-big-city.html&quot;&gt;Chip Overclock: Small Town Big City&lt;/a&gt;&lt;br /&gt;
Since 2005 I have been passionately and aggressively pursing two goals.

    Find an economical hardware and software platform on which to teach embedded and real-time software development. It must support a gradual learning curve, accomodating beginners needing a gentle introduction, but also experienced developers who need to learn the advanced concepts used in bleeding edge commercial development environments.

    Demonstrate that the advanced object-oriented software techniques, idioms, patterns, and architectures that I have seen evolve for embedded software development over the past several decades can be applied to this small and inexpensive platform.

This has resulted in a number of projects that long-time readers of this blog (if there should be any) will recognize.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://dmitry.co/index.php?p=./04.Thoughts/07.+Linux+on+8bit&quot;&gt;Dmitry Grinberg&lt;/a&gt;&lt;br /&gt;
It is common to see newbies asking in microcontroller forums if they can run Linux on their puny little 8-bit micro. The results are usually laughter. It is also common to see, in Linux forums, asked what the minimum specs for Linux are. The common answer is that it requires a 32-bit architecture and an MMU and at least a megabyte of ram to fit the kernel. This project aims to (and succeeds in) shatter(ing) these notions. The board you see on the right is based on an ATmega1284p. I've made one with an ATmega644a as well, with equal success. This board features no other processor and boots Linux 2.6.34. In fact, it can even bring up a full Ubuntu stack, including (if you have the time) X and gnome.&lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/UOjUnAMsu7s&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 02 Apr 2012 07:00:00 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Developing for TI LaunchPad MSP430 board on Ubuntu</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-5559676454626678666</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/03/developing-for-ti-launchpad-msp430.html</link>
	<description>If you google for it, you'll find quite a few blog posts, but most of them are from 2010. But starting with Ubuntu 11.10 (Oneiric), &lt;a href=&quot;http://sourceforge.net/projects/mspgcc&quot;&gt;gcc-msp430&lt;/a&gt; and friends are included in the main repositories, so you can just apt-get install them:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;apt-get install binutils-msp430 gcc-msp430 \&lt;br /&gt;    msp430-libc msp430mcu mspdebug&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;There's one annoying bug in Oneiric's version of binutils-msp430 which breaks build with &lt;span&gt;-ffunction-sections -Wl,--gc-sections&lt;/span&gt; options (which is kinda common trick in embedded world to remove unused functions and reduce code size): &lt;a href=&quot;https://sourceforge.net/tracker/?func=detail&amp;aid=3386145&amp;group_id=42303&amp;atid=432701&quot;&gt;mspgcc #3386145&lt;/a&gt;. It is fixed in Ubuntu 12.04 (Precise).&lt;br /&gt;&lt;br /&gt;I'm however still running Maverick, so instead I &lt;a href=&quot;http://packages.ubuntu.com/oneiric/i386/&quot;&gt;downloaded&lt;/a&gt; following Oneiric packages:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;binutils-msp430_2.21~msp20110421-2_i386.deb&lt;br /&gt;gcc-msp430_4.5.3~mspgcc-4.5.2-20110612-1_i386.deb&lt;br /&gt;libgmp10_5.0.1+dfsg-7ubuntu2_i386.deb&lt;br /&gt;libmpc2_0.9-3_i386.deb&lt;br /&gt;msp430-libc_20110612-1_i386.deb&lt;br /&gt;mspdebug_0.16-1_i386.deb&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Then few from Precise:&lt;br /&gt;&lt;pre&gt;binutils-msp430_2.22~msp20110716p5-1_i386.deb&lt;br /&gt;msp430mcu_20110613-3_all.deb&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;(If you try to install Precise versions of other packages on Maverick, they want to pull upgrades to system libs, which I wanted to avoid).&lt;br /&gt;&lt;br /&gt;and installed them manually with dpkg.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-5559676454626678666?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 29 Mar 2012 23:38:56 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Connetcing to preprogrammed TI Launchpad demo under Linux</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-4158161550853918346</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/03/connetcing-to-preprogrammed-ti.html</link>
	<description>TI Launchpad board comes with preprogrammed demo application for temperature sensing which is touted to output temperature values to host via USB-encapsulated UART. By connecting to it via terminal you can see that it indeed sends something, but that doesn't look anything like temperature represent in ascii digits, like someone naively could expect. It turns out that it's well kept secret on Launchpad wiki pages how to make sense out of it - at least, you get advertisements for CCS and Java-based GUIs to read out the output, but not straight docs of how to use builtin demo without all those crutches. So well, wrong approach - it's your random user-friendly arduino, approach of reading docs doesn't work here, better go straight to the &lt;a href=&quot;http://processors.wiki.ti.com/index.php/MSP430_LaunchPad_%28MSP-EXP430G2%29#Complete_Projects&quot;&gt;source&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And, here's step by step instructions:&lt;br /&gt;&lt;br /&gt;First thing to note is that Launchpad's UART-via-USB emulation is extremely fragile. It seems that if MCU started to produce UART output but host doesn't read it out, then buffer in USB bridge just gets overflowed and it stops responding to USB. So, if you want to get it working, follow each step below precisely and if any issue happens, restart from beginning (with unplugging LaunchPad).&lt;br /&gt;&lt;ol&gt;&lt;li&gt;If you have plugged LaunchPad into USB, unplug it now to make sure you start with properly reset device.&lt;/li&gt;&lt;li&gt;Plugin the board into USB, general-purpose green and red should blink interchangeably. The demo app doesn't yet sense temperature or sends it out yet in this mode.&lt;/li&gt;&lt;li&gt;Execute &lt;span&gt;stty 2400 -F /dev/ttyACM0&lt;/span&gt; . That's right - the demo app communicates at 2400 bit/s data rate and using any other rate will produce garbage input. (One reason for such low speed is that LaunchPad's MCU actually doesn't have hardware UART, it is emulated in software).&lt;/li&gt;&lt;li&gt;Run &lt;span&gt;hexdump -v -C /dev/ttyACM0&lt;/span&gt; . It shouldn't produce any output yet.&lt;/li&gt;&lt;li&gt;Press GPIO button. The demo app goes into measurement mode and starts to send out temperature in Fahrenheit as raw bytes over UART. Try to heat/cool air around the board to see values change.&lt;/li&gt;&lt;/ol&gt;Sample output:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;00000020&amp;nbsp; 60 60 60 60 60 60 60 60&amp;nbsp; 60 60 60 60 60 60 60 60&amp;nbsp; |````````````````|&lt;br /&gt;00000030&amp;nbsp; 60 60 60 60 60 60 60 60&amp;nbsp; 60 60 60 60 60 60 60 60&amp;nbsp; |````````````````|&lt;br /&gt;00000040&amp;nbsp; 60 60 60 60 60 60 60 60&amp;nbsp; 60 60 61 60 60 61 60 60&amp;nbsp; |``````````a``a``|&lt;br /&gt;00000050&amp;nbsp; 61 60 60 61 61 61 60 61&amp;nbsp; 61 61 61 61 61 61 61 61&amp;nbsp; |a``aaa`aaaaaaaaa|&lt;br /&gt;00000060&amp;nbsp; 61 61 61 61 61 62 61 62&amp;nbsp; 62 62 62 62 62 62 62 61&amp;nbsp; |aaaaababbbbbbbba|&lt;br /&gt;00000070&amp;nbsp; 62 62 62 62 62 62 62 62&amp;nbsp; 62 62 62 62 62 62 62 62&amp;nbsp; |bbbbbbbbbbbbbbbb|&lt;br /&gt;00000080&amp;nbsp; 62 62 62 62 62 62 62 62&amp;nbsp; 62 62 62 62 62 62 62 62&amp;nbsp; |bbbbbbbbbbbbbbbb|&lt;br /&gt;&lt;/pre&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-4158161550853918346?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Thu, 29 Mar 2012 01:38:11 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Rodrigo 'vivijim' Vivi: git + proxy</title>
	<guid permalink="False">http://labs.vivi.eng.br/blog/?p=131</guid>
	<link>http://labs.vivi.eng.br/blog/?p=131</link>
	<description>&lt;p&gt;The easiest way of using git behind a proxy is using tsocks. It is just Straightforward:&lt;/p&gt;
&lt;p&gt;1 &amp;#8211; Install tsocks&lt;/p&gt;
&lt;p&gt;2 &amp;#8211; Configure tsocks by creating a /etc/tsocks.conf like this:&lt;/p&gt;
&lt;p&gt;local = &amp;lt;localnet&amp;gt;/255.0.0.0&lt;br /&gt;
server = proxy_ip&lt;br /&gt;
server_type = 5&lt;br /&gt;
server_port = proxy_port&lt;/p&gt;
&lt;p&gt;3 &amp;#8211; Use it:&lt;/p&gt;
&lt;p&gt;$ tsocks git pull&lt;/p&gt;
&lt;p&gt;Just that!&lt;/p&gt;
&lt;p&gt;I had also tried the proxy using the GIT_PROXY_COMMAND=&amp;#8221;/usr/bin/proxy-wrapper&lt;/p&gt;
&lt;p&gt;where proxy-wrapper is&lt;/p&gt;
&lt;p&gt;#!/bin/bash&lt;br /&gt;
nc -xproxy_addreess:proxy_port -X5 $*&lt;/p&gt;
&lt;p&gt;But IMHO tsocks is more convenient because it is not needed to set and unset GIT_PROXY_COMMAND every time.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
	<pubDate>Tue, 27 Mar 2012 20:23:48 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Ubuntu 12.04 ‘precise’ and cross compilation of ARM kernels</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2470</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/Y1eWa9stphM/</link>
	<description>&lt;p&gt;Over year ago &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/10/19/how-to-cross-compile-arm-kernel-under-ubuntu-10-10/&quot;&gt;I wrote How to cross compile ARM kernel under Ubuntu 10.10&lt;/a&gt; and this became one of most popular posts on my website. It may work still but it is terribly outdated so I decided that it is a time for update.&lt;/p&gt;&lt;p&gt;Users of Ubuntu 12.04 &amp;#8216;precise&amp;#8217; have much simpler situation when it comes to cross compilation of Linux kernels than ones who use older releases. Everything is now in distribution, we have a lot of packages converted to multiarch so instruction is much shorter.&lt;/p&gt;&lt;p&gt;There are few steps to cross compile Linux kernel under Ubuntu 12.04 &amp;#8216;precise&amp;#8217; (for &amp;#8220;armhf&amp;#8221; which is officially supported now):&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Install cross compiler:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;apt-get install gcc-arm-linux-gnueabihf&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;Fetch kernel source:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;apt-get source linux-source-3.2.0&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;Install packages required to build kernel:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;apt-get build-dep linux-source-3.2.0&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;Build kernel:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;cd linux-3.2.0;
dpkg-buildpackage -b -aarmhf&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;And that&amp;#8217;s all. Linaro kernels will be as easy to build as Ubuntu one on next days as we have to update packaging to recent Ubuntu version.&lt;/p&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/10/19/how-to-cross-compile-arm-kernel-under-ubuntu-10-10/&quot; title=&quot;Permanent link to How to cross compile ARM kernel under Ubuntu 10.10&quot;&gt;How to cross compile ARM kernel under Ubuntu 10.10&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/09/10/ubuntu-cross-compilers-part-2/&quot; title=&quot;Permanent link to Ubuntu cross compilers &amp;#8211; part 2&quot;&gt;Ubuntu cross compilers &amp;#8211; part 2&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/03/06/updated-cross-toolchain-for-ubuntu/&quot; title=&quot;Permanent link to Updated cross toolchain for Ubuntu&quot;&gt;Updated cross toolchain for Ubuntu&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/06/20/linux-3-0-under-ubuntu-natty-11-04/&quot; title=&quot;Permanent link to Linux 3.0 under Ubuntu &amp;#8216;natty&amp;#8217; 11.04&quot;&gt;Linux 3.0 under Ubuntu &amp;#8216;natty&amp;#8217; 11.04&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/03/26/ubuntu-12-04-precise-and-cross-compilation-of-arm-kernels/&quot;&gt;Ubuntu 12.04 &amp;#8216;precise&amp;#8217; and cross compilation of ARM kernels&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Y1eWa9stphM:IItWNld_WdM:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Y1eWa9stphM:IItWNld_WdM:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=Y1eWa9stphM:IItWNld_WdM:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Y1eWa9stphM:IItWNld_WdM:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=Y1eWa9stphM:IItWNld_WdM:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Y1eWa9stphM:IItWNld_WdM:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=Y1eWa9stphM:IItWNld_WdM:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/Y1eWa9stphM&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 26 Mar 2012 10:30:30 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: I joined MOTU team in Ubuntu</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2471</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/UihtTX9xLO0/</link>
	<description>&lt;p&gt;I applied for MOTU (Masters Of The Universe) membership few days ago and today during Developer Membership Board meeting my application was part of agenda.&lt;/p&gt;&lt;p&gt;Becoming MOTU is more complicated than gaining PPU (Per Package Upload) permissions which &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/05/13/uds-o/&quot;&gt;I got during UDS-O&lt;/a&gt; in Budapest. Members of board asked me many questions &amp;#8212; it took 45 minutes to get from introduction to voting.&lt;/p&gt;&lt;p&gt;But this is how it should be done &amp;#8212; MOTU is responsibility for quite big amount of packages in Ubuntu. Anyway, we got to voting:&lt;/p&gt;&lt;blockquote&gt; 15:57  meetingology&gt; Voting ended on: Should Marcin Juszkiewicz become MOTU?
15:57  meetingology&gt; Votes for:5 Votes against:0 Abstentions:0&lt;/blockquote&gt;&lt;p&gt;And now I am proud member of MOTU team! Looks like next thing to apply for would be Debian Membership. I planned to do it in 2004 but OpenEmbedded took my attention ;)&lt;/p&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/03/12/i-joined-motu-team-in-ubuntu/&quot;&gt;I joined MOTU team in Ubuntu&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=UihtTX9xLO0:KJL63DB7xgY:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=UihtTX9xLO0:KJL63DB7xgY:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=UihtTX9xLO0:KJL63DB7xgY:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=UihtTX9xLO0:KJL63DB7xgY:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=UihtTX9xLO0:KJL63DB7xgY:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=UihtTX9xLO0:KJL63DB7xgY:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=UihtTX9xLO0:KJL63DB7xgY:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/UihtTX9xLO0&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 12 Mar 2012 15:42:35 +0000</pubDate>
</item>
<item>
	<title>Rodrigo 'vivijim' Vivi: OSTS 2012</title>
	<guid permalink="False">http://labs.vivi.eng.br/blog/?p=126</guid>
	<link>http://labs.vivi.eng.br/blog/?p=126</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://labs.vivi.eng.br/blog/wp-content/uploads/2012/03/osts20121.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignleft size-full wp-image-128&quot; height=&quot;182&quot; src=&quot;http://labs.vivi.eng.br/blog/wp-content/uploads/2012/03/osts20121.png&quot; title=&quot;osts2012&quot; width=&quot;219&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;OSTS 2012 has ended and it&amp;#8217;s time to say goodbye. Tomorrow I&amp;#8217;m getting the flight back to Brasil with the &amp;#8221; Mission accomplished&amp;#8221; feeling.&lt;/p&gt;
&lt;p&gt;I cannot say that this was the best conference ever because it is difficult to overcome the dead Bossa Conference. However there were so many great presentations, talks and important meetings happening here. It was an amazing Conference in a Wonderful place.&lt;/p&gt;
&lt;p&gt;And the most important part was to put faces to the irc/emails nicknames after 7 months working here.&lt;/p&gt;
&lt;p&gt;Nice to meet you face to face guys! I hope to see you soon.&lt;/p&gt;</description>
	<pubDate>Fri, 09 Mar 2012 08:52:44 +0000</pubDate>
</item>
<item>
	<title>Rodrigo 'vivijim' Vivi: starting over and over again!</title>
	<guid permalink="False">http://labs.vivi.eng.br/blog/?p=124</guid>
	<link>http://labs.vivi.eng.br/blog/?p=124</link>
	<description>&lt;p&gt;I was going to start this post with a yet another &amp;#8220;back to blogging&amp;#8221; phrase, but this is already becoming a cliche here, so I&amp;#8217; m starting just telling that I&amp;#8217;m not doing any promises at this time and also telling what to &lt;strong&gt;not&lt;/strong&gt; to expect here since this is the first post after I&amp;#8217;ve joined Intel&amp;#8217;s Linux Graphics Team .&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Don&amp;#8217; t expect regular posts.&lt;/li&gt;
&lt;li&gt;Don&amp;#8217; t expect Intel&amp;#8217;s Linux Graphics Status and Updates. Eugeni is already doing this job very well on &lt;a href=&quot;http://dodonov.net/blog/&quot; target=&quot;_blank&quot; title=&quot;Eugeni' s blog&quot;&gt;his blog&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Don&amp;#8217; t expect Intel&amp;#8217;s news&lt;/li&gt;
&lt;li&gt;Don&amp;#8217; t expect Performance Status or Benchmarks. &lt;a href=&quot;http://www.phoronix.com/scan.php?page=home&quot; target=&quot;_blank&quot; title=&quot;Phoronix&quot;&gt;Phoronix&lt;/a&gt; already does it vey well.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So, to finish this &amp;#8220;first&amp;#8221; post I&amp;#8217;d like just to mention that the new front page&amp;#8217;s picture is just a part of our new OTC-BR lab!&lt;/p&gt;</description>
	<pubDate>Fri, 09 Mar 2012 08:25:27 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Updated cross toolchain for Ubuntu</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2460</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/iuztMChNEM0/</link>
	<description>&lt;p&gt;During last two weeks I was working on updating &lt;a href=&quot;https://launchpad.net/~linaro-maintainers/+archive/toolchain&quot;&gt;PPA with cross toolchain for Ubuntu&lt;/a&gt;. Current development branch (12.04 &amp;#8216;precise&amp;#8217;) got gcc 4.6.2 and 4.5.3, binutils 2.22, eglibc 2.15 and linux 3.2 headers.&lt;/p&gt;&lt;p&gt;Then I started work on getting those updates also for previous LTS (10.04 &amp;#8216;lucid&amp;#8217;) and for previous stable release (11.10 &amp;#8216;oneiric&amp;#8217;). Versions between those two (10.10 &amp;#8216;maverick&amp;#8217; and 11.04 &amp;#8216;natty&amp;#8217;) are not supported but binaries built for &amp;#8216;lucid&amp;#8217; should work just fine on them.&lt;/p&gt;&lt;p&gt;It is time-consuming cause I had to run many builds to make sure that everything is properly patched etc. I listed all required tasks in &lt;a href=&quot;https://blueprints.launchpad.net/linaro-ubuntu/+spec/toolchain-backports-ppa-update-12.03&quot;&gt;&amp;#8220;Toolchain update for Linaro Toolchain Backports PPA for 12.03&amp;#8243; blueprint&lt;/a&gt; on Launchpad. Most time-consuming is waiting for PPA builders but at that phase I was just checking did they finished already due to working on other projects.&lt;/p&gt;&lt;p&gt;So if you are stuck on one of released versions of Ubuntu and need fresh cross compiler targetting &amp;#8220;armel&amp;#8221; (there is no &amp;#8220;armhf&amp;#8221; for this PPA) consider using &lt;a href=&quot;https://launchpad.net/~linaro-maintainers/+archive/toolchain&quot;&gt;PPA with cross toolchain for Ubuntu&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;And do not forget to report any bugs found to &lt;a href=&quot;https://bugs.launchpad.net/ubuntu/+source/armel-cross-toolchain-base/&quot;&gt;armel-cross-toolchain-base&lt;/a&gt; and &lt;a href=&quot;https://bugs.launchpad.net/ubuntu/+source/gcc-4.6-armel-cross&quot;&gt;gcc-4.6-armel-cross&lt;/a&gt; (or &lt;a href=&quot;https://bugs.launchpad.net/ubuntu/+source/gcc-4.5-armel-cross&quot;&gt;gcc-4.5-armel-cross&lt;/a&gt; if you use older one).&lt;/p&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/09/10/ubuntu-cross-compilers-part-2/&quot; title=&quot;Permanent link to Ubuntu cross compilers &amp;#8211; part 2&quot;&gt;Ubuntu cross compilers &amp;#8211; part 2&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/10/19/how-to-cross-compile-arm-kernel-under-ubuntu-10-10/&quot; title=&quot;Permanent link to How to cross compile ARM kernel under Ubuntu 10.10&quot;&gt;How to cross compile ARM kernel under Ubuntu 10.10&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/10/06/bazaar-what-is-wrong-with-it/&quot; title=&quot;Permanent link to Bazaar &amp;#8212; what is wrong with it?&quot;&gt;Bazaar &amp;#8212; what is wrong with it?&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/08/22/2162/&quot; title=&quot;Permanent link to Generic Linux cross toolchain for tests&quot;&gt;Generic Linux cross toolchain for tests&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/04/07/linaro-porting-jam/&quot; title=&quot;Permanent link to Linaro porting jam&quot;&gt;Linaro porting jam&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/03/06/updated-cross-toolchain-for-ubuntu/&quot;&gt;Updated cross toolchain for Ubuntu&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=iuztMChNEM0:UZYEIX8s1zM:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=iuztMChNEM0:UZYEIX8s1zM:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=iuztMChNEM0:UZYEIX8s1zM:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=iuztMChNEM0:UZYEIX8s1zM:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=iuztMChNEM0:UZYEIX8s1zM:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=iuztMChNEM0:UZYEIX8s1zM:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=iuztMChNEM0:UZYEIX8s1zM:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/iuztMChNEM0&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 06 Mar 2012 10:28:43 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: I am tired of Raspberry/Pi</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2454</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/r22yBk8-bjk/</link>
	<description>&lt;p&gt;Please people&amp;#8230; stop asking me about Raspberry/Pi. I do not want it, do not plan to buy one (when they will be finally available for normal people) and for sure do not plan to support it.&lt;/p&gt;&lt;p&gt;Raspberry/Pi may look as interesting hardware to you but it does not have to mean same to others. Want to run desktop? 256MB of memory means really crippled one (last time I saw this amount of RAM in desktop computer right before opening it to add 512MB stick). Sure, for 25-35 USD it is proper range as memory is probably the most expensive part. Device may be good for using it in more embedded environment where GPIO/I²C/I²S/SPI/UART matter &amp;#8212; expansion connector provides those signals.&lt;/p&gt;&lt;p&gt;But I would rather buy &lt;a href=&quot;http://beagleboard.org/bone&quot;&gt;BeagleBone&lt;/a&gt; to play with peripherials connected to such pins. Someone may ask &amp;#8220;why? it is more expensive&amp;#8221;. Reason is simple &amp;#8212; it is in production, already has expansions which adds things like video output, touchscreens. And it has ARMv7 cpu which allows me to run &lt;em&gt;any&lt;/em&gt; ARM distribution available today &amp;#8212; so Debian &amp;#8216;armel/armhf&amp;#8217;, Ubuntu, Fedora, OpenSUSE, Ångström (which is preinstalled with great IDE to play with device already) or anything other.&lt;/p&gt;&lt;p&gt;I do not need small device which can run XMBC or Quake &amp;#8212; have private PandaBoard which can do that too and has few things more than Raspberry/Pi.&lt;/p&gt;&lt;p&gt;And I do not think that companies which do software should start working on &amp;lt;100USD hardware like &lt;a href=&quot;http://techlaze.com/2012/03/what-ubuntu-can-take-away-from-the-raspberry-revolution/&quot;&gt;article at Techblaze&lt;/a&gt; suggests.&lt;/p&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/03/05/i-am-tired-of-raspberrypi/&quot;&gt;I am tired of Raspberry/Pi&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=r22yBk8-bjk:bLlGqe2nFvQ:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=r22yBk8-bjk:bLlGqe2nFvQ:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=r22yBk8-bjk:bLlGqe2nFvQ:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=r22yBk8-bjk:bLlGqe2nFvQ:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=r22yBk8-bjk:bLlGqe2nFvQ:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=r22yBk8-bjk:bLlGqe2nFvQ:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=r22yBk8-bjk:bLlGqe2nFvQ:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/r22yBk8-bjk&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 05 Mar 2012 12:23:38 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: SD cards die</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2449</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/9O0hrM-KBF4/</link>
	<description>&lt;p&gt;So called &amp;#8216;low cost&amp;#8217; developer boards (like BeagleBoard xM, PandaBoard, Snowball, MX53 Quick Start) do not have NAND flash on them so people are using SD/MMC cards as boot media and storage. So we, developers, went to shops and bought SD cards. Some got class4 ones cause budget was low already, some grabbed class10 ones hoping that they will be fast, other took class6.&lt;/p&gt;&lt;p&gt;I got some 4GB Transcend class10 ones. They worked, gave me 15MB/s on read and were fine. Until recently they started giving strange kernel output, MMC timeouts, I/O errors which resulted in filesystem going into read only mode. As I prefer to have working board then wondering how much time it will survive I trashed both cards. Good that I had some spare unknown 8GB microSD ones. But in last ~year I had to throw away 4 SD cards&amp;#8230;&lt;/p&gt;&lt;p&gt;One of solution for it is moving rootfs to some more reliable storage. I did that with MX53 Quick Start &amp;#8212; it has 320GB Serial-ATA harddrive connected. So for PandaBoards I could use 8-16GB thumb drives or USB connected hard drives. I had this in past when there was no mx53 hardware at my desk. But this means extra costs, additional cables, probably even another set of power cables&amp;#8230;&lt;/p&gt;&lt;p&gt;Will have to check market for good reliable SD cards soon. 8-16GB ones so there will be space available for doing builds. Or will switch to old school NFS root which requires only 64MB cards &amp;#8212; just to load bootloader, kernel, initrd. Other option is a network storage like NBD, AoE or iSCSI but this requires more configuration.&lt;/p&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/03/02/sd-cards-die/&quot;&gt;SD cards die&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=9O0hrM-KBF4:-fJT0Yl7evI:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=9O0hrM-KBF4:-fJT0Yl7evI:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=9O0hrM-KBF4:-fJT0Yl7evI:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=9O0hrM-KBF4:-fJT0Yl7evI:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=9O0hrM-KBF4:-fJT0Yl7evI:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=9O0hrM-KBF4:-fJT0Yl7evI:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=9O0hrM-KBF4:-fJT0Yl7evI:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/9O0hrM-KBF4&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 02 Mar 2012 11:54:24 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: NSLU Optware for Android</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-945011947639201016</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/02/nslu-optware-for-android.html</link>
	<description>Yes, there was kind of &lt;a href=&quot;http://nookdevs.com/Optware_for_Android&quot;&gt;attempt&lt;/a&gt; at that already, but:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;It's no longer available at the link announced and spread over the Internet (yep, it's available at &lt;a href=&quot;https://github.com/ka6sox/nook-color/&quot;&gt;another&lt;/a&gt;, but why so ... complicated?)&lt;/li&gt;&lt;li&gt;It ships binary blobs of unknown origin. Yup, maybe one could trace their origins, but who'd bother, and telepaths are on vacation as usual. It should be described stringently where they are from, if not scripted to be collected in user's build directory from known good sources, so users can actually trust them.&lt;/li&gt;&lt;li&gt;It is marketed as supporting only something called &quot;Nook Color&quot;. What's that, I thought it was Optware for Android? Could I have Optware specifically for my HP nx9420 notebook, serial number XYZZY, 3Gb of RAM? Just make sure it's different from the Optware for the same notebook, but with 4Gb of RAM, and from any other Optwares in the world!&lt;/li&gt;&lt;li&gt;It goes as far as patching rootfs ramdisk. That may work on Nook Color or may brick it. That may work on next firmware upgrade of Nook Color or may brick. That may work on another device or may brick. The talk is not about this, it's about the fact that it's two big differences - to be able to install and run bash and to have sshd started automatically after the boot. I definitely want first, but I will do good consideration if/when I need second. So, I don't want setup for those 2 stages to mixed and done without myself being ready for stage 2.&lt;/li&gt;&lt;li&gt;It still appears to rely on presence of some other 3rd party stuff (look at that #!/bin/sh line, there's no such thing on pristine Android device, only #!/system/bin/sh)&lt;/li&gt;&lt;/ul&gt;So well, I decided to take my turn on hacking up an Optware bootstrap script for pure Android (root and adb access are the only prereqs). It's hosted here: &lt;a href=&quot;https://github.com/pfalcon/optware-android&quot;&gt;https://github.com/pfalcon/optware-android&lt;/a&gt; and intended to be run on a Linux hosts. It starts by downloading CodeSourcery toolchain for libc and ipkg and immediate dependencies from &lt;a href=&quot;http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable&quot;&gt;http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable&lt;/a&gt; to bootstrap ipkg on device. Yep, it's being tested on Nook Tablet so far, but at least it is called Optware for Android and I have that aim ;-). So, bugreports and patches are welcome. And I have few more devices to test it on, just steal me some time...&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-945011947639201016?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 20 Feb 2012 22:46:57 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Bought Archos 80 G9 Turbo tablet</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2428</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/TkQ0MmGoINk/</link>
	<description>&lt;p&gt;During last Linaro Connect I bought myself an Android tablet. &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/01/13/want-to-buy-android-tablet-again/&quot;&gt;After checking what is  on market&lt;/a&gt; decided to buy Archos 80 G9 Turbo. According to &lt;a href=&quot;http://www.amazon.com/Archos-80-G9-16GB-Turbo/dp/B005MECBIS&quot;&gt;Amazon product page&lt;/a&gt; it had to have 1.5GHz OMAP4460 cpu and 1GB of memory. But it did not&amp;#8230;&lt;/p&gt;&lt;p&gt;Marketing droids from Archos company should be &amp;#8230; and &amp;#8230; then &amp;#8230; and again &amp;#8230; &amp;#8212; after that &amp;#8230; or &amp;#8230; and finally &amp;#8230; (put any ways of doing deadly harm into &amp;#8230; and repeat any amount of times). Why? There is no such thing as &amp;#8220;Archos 80 G9 Turbo&amp;#8221; &amp;#8212; nevermind that I have one of them on my desk. So far there are at least three models with this name:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;OMAP4430 1.2GHz 512MB ram&lt;/li&gt;&lt;li&gt;OMAP4460 1.5GHz 512MB ram&lt;/li&gt;&lt;li&gt;OMAP4460 1.5GHz 1GB ram&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;You can easily buy first model. Best Buy has it, Adorama has it, J&amp;amp;R has it, Amazon sells it. Second model was expected to land on shelves in December 2011. According to XDA developers forum few of them were even sold as people have them. Last model is listed on Amazon (but first one is what you get) and according to one sources it will be released in March 2012, other says that there will not be such thing. Marketing mess is lightest description which I can write without swearing.&lt;/p&gt;&lt;p&gt;So I got first one. First though was &amp;#8220;WTF?!?!!?!?!?!!!&amp;#8221; as I got slowest option. Even started returning procedure but as all US shops had only this version I gave up and decided that even with this technical specification it is better tablet then I had before (&lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/09/30/my-opinion-about-hannspree-hannspad-sn10t1/&quot;&gt;which was Hannspad SN10T1&lt;/a&gt;). Fast cpu, 4:3 screen with 1024&amp;#215;768 resolution, quite good build quality, video output.&lt;/p&gt;&lt;p&gt;Tablet runs Android 3.2 &amp;#8216;honeycomb&amp;#8217; and does it nicely. Upgrade to 4.0 &amp;#8216;ice cream sandwich&amp;#8217; was announced to be done in this month. So from software perspective it is done properly. I had some problems with &lt;a href=&quot;http://forum.xda-developers.com/showthread.php?t=1456875&quot;&gt;rooting procedure from XDA developers&lt;/a&gt; but once you do it in order (and take files from other thread to get 3.2.80 firmware) device will work just fine. Have to admit that system layout on device looks overcomplicated (175MB squashfs as / for example) but it works. Anyway I am waiting for developer firmware (I was told that they will be available &amp;#8216;soon&amp;#8217; (for any definition of &amp;#8216;soon&amp;#8217;)).&lt;/p&gt;&lt;p&gt;During first days of using I noticed that some applications refuse to work properly on XGA screen, some are resized/rescaled but problems usually are with games or poorly written apps (like Facebook one). But it is visible that keeping Honeycomb under stone (aka &amp;#8216;closed source&amp;#8217;) resulted in many applications not ready to be used on tablets. Even Google+ looks like it does on a phone&amp;#8230;&lt;/p&gt;&lt;p&gt;I am slowly moving to use Archos as a morning news device (&lt;a href=&quot;https://twitter.com/haerwu&quot;&gt;Twitter&lt;/a&gt;, &lt;a href=&quot;https://facebook.com/marcin.juszkiewicz&quot;&gt;Facebook&lt;/a&gt;, &lt;a href=&quot;https://plus.google.com/u/0/105007947798310229700/posts&quot;&gt;Google+&lt;/a&gt; and Google Reader) &amp;#8212; it is perfect for it. Reading webpages in landscape or portrait modes is pleasure as device is easy to hold and screen is wide enough in any of them (which was my main complain with Hannspad).&lt;/p&gt;&lt;p&gt;Had to order miniHDMI -&gt; HDMI adapter (normal size connector would even fit but it is too big for this form factor) cause they do not add it in a box.  When it will arrive I will check how good movies are played after connecting to 42&amp;#8243; plasma capable of 1080p. OMAP4 cpu should decode any video at this resolution without problems but I wonder how device deals with 4:3 internal screen and 16:9 external one. Would be nice to watch Youtube videos fullscreen.&lt;/p&gt;&lt;p&gt;Playing games is fun. Fieldrunners finally does not need scrolling, Great Little War Game is also better than on my Nexus S. From &amp;#8220;racing&amp;#8221; games so far I tried Asphalt6 (&lt;a href=&quot;http://forum.xda-developers.com/showthread.php?p=20931534#post20931534&quot;&gt;available at XDA developers forum&lt;/a&gt;), Shine Runner and Reckless Getaway &amp;#8212; all run and look cute but accelerometr based steering is not comfortable with tablet size. Also games like Mahjongg or Solitaire are possible (I consider such games unplayable on phone).&lt;/p&gt;&lt;p&gt;Battery life is better than on my Nexus S. Partially because lack of GSM and bigger battery, but I think that due to power management done better.&lt;/p&gt;&lt;p&gt;I will not tell how good it is when it comes to read e-books because I have Kindle for it already.&lt;/p&gt;&lt;p&gt;Back to hardware. There is USB socket for optional 3G stick. Plugged dongle from wireless keyboard/trackball combo there &amp;#8212; not recognized due to not be USB 2.0 device. Plugged thumbdrive and got it recognized (first time I got some kernel oops and no access to storage, had to reboot tablet). Did not tried other devices.&lt;/p&gt;&lt;p&gt;There is just one speaker at back of device. Definitelly too small and lonely. Nokia N800 which was released 5 years ago had stereo speakers&amp;#8230; So for gaming I strongly suggest headphones.&lt;/p&gt;&lt;p&gt;Ugly thing is that when you push back of case with left hand fingers screen will react to it &amp;#8212; looks like something is pushing screen. It does not look professional&amp;#8230;&lt;/p&gt;&lt;p&gt;Ending summary: so far I am satisfied. Maybe one day will try one of those crazy builds like Ubuntu ;D&lt;/p&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/01/13/want-to-buy-android-tablet-again/&quot; title=&quot;Permanent link to Want to buy Android tablet (again)&quot;&gt;Want to buy Android tablet (again)&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/09/30/my-opinion-about-hannspree-hannspad-sn10t1/&quot; title=&quot;Permanent link to My opinion about Hannspree Hannspad SN10T1&quot;&gt;My opinion about Hannspree Hannspad SN10T1&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/02/09/month-with-nexus-s/&quot; title=&quot;Permanent link to Month with Nexus S&quot;&gt;Month with Nexus S&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/12/13/going-to-android/&quot; title=&quot;Permanent link to Going to Android&quot;&gt;Going to Android&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/01/04/2011-timeline/&quot; title=&quot;Permanent link to 2011 timeline&quot;&gt;2011 timeline&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/02/20/bought-archos-80-g9-turbo-tablet/&quot;&gt;Bought Archos 80 G9 Turbo tablet&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=TkQ0MmGoINk:nPmW6OTMMy8:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=TkQ0MmGoINk:nPmW6OTMMy8:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=TkQ0MmGoINk:nPmW6OTMMy8:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=TkQ0MmGoINk:nPmW6OTMMy8:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=TkQ0MmGoINk:nPmW6OTMMy8:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=TkQ0MmGoINk:nPmW6OTMMy8:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=TkQ0MmGoINk:nPmW6OTMMy8:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/TkQ0MmGoINk&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 20 Feb 2012 13:19:56 +0000</pubDate>
</item>
<item>
	<title>Koen Kooi: Recommended kernel config options for a modern Angstrom system</title>
	<guid permalink="False">http://dominion.thruhere.net/koen/313 at http://dominion.thruhere.net/koen/cms</guid>
	<link>http://dominion.thruhere.net/koen/cms/recommended-kernel-config-options-for-a-modern-angstrom-system</link>
	<description>&lt;p&gt;Over the past year people have asked which options they need to enable when using a recent udev/systemd/udisks/powertop in angstrom so here's a list of the most important ones:&lt;/p&gt;
&lt;p&gt;devtmpfs:&lt;/p&gt;
&lt;pre&gt;CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y&lt;/pre&gt;&lt;p&gt;This is needed for modern udev versions. The kernel will handle all the device node creation and deletion. This removes the need for udev-cache.&lt;/p&gt;
&lt;p&gt;cgroups:&lt;/p&gt;
&lt;pre&gt;CONFIG_CGROUPS=y
CONFIG_CGROUP_DEBUG=y
CONFIG_CGROUP_NS=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CPUSETS=y
CONFIG_CGROUP_CPUACCT=y
CONFIG_RESOURCE_COUNTERS=y
CONFIG_CGROUP_MEM_RES_CTLR=y
CONFIG_CGROUP_MEM_RES_CTLR_SWAP=y
CONFIG_CGROUP_MEM_RES_CTLR_SWAP_ENABLED=y
CONFIG_CGROUP_SCHED=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_BLK_CGROUP=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
CONFIG_NET_NS=y
CONFIG_FREEZER=y&lt;/pre&gt;&lt;p&gt;
Cgroups are needed for systemd.&lt;/p&gt;
&lt;p&gt;Fuse/cuse:&lt;/p&gt;
&lt;pre&gt;CONFIG_FUSE_FS=y
CONFIG_CUSE=y&lt;/pre&gt;&lt;p&gt;
Fuse is nice to have and various libraries uses it for user-mounts (e.g. GIO).&lt;/p&gt;
&lt;p&gt;taskstats:&lt;/p&gt;
&lt;pre&gt;CONFIG_TASKSTATS=y
CONFIG_TASK_DELAY_ACCT=y
CONFIG_TASK_XACCT=y
CONFIG_TASK_IO_ACCOUNTING=y&lt;/pre&gt;&lt;p&gt;
This makes powertop give usefull info about the processes that drain your battery.&lt;/p&gt;
&lt;p&gt;Autofs:&lt;/p&gt;
&lt;pre&gt;CONFIG_AUTOFS4_FS=y&lt;/pre&gt;&lt;p&gt;
And this is what does the heavy lifting for the system on-demand mount feature.&lt;!--break--&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 06 Feb 2012 08:17:09 +0000</pubDate>
</item>
<item>
	<title>Michael 'Mickey' Lauer: Coming back from FOSDEM</title>
	<guid permalink="False">http://www.vanille-media.de/site/?p=159</guid>
	<link>http://www.vanille-media.de/site/index.php/2012/02/05/coming-back-from-fosdem/</link>
	<description>&lt;p&gt;After having skipped FOSDEM in 2011, I wanted to go this year, especially because of the Golden Delicious stand where we had the OpenPhoenux GTA04 on show. A lot of people came around and were excited that someone picked up where Openmoko had left in 2009. The GTA04 is the true successor of the FreeRunner and I strongly invite all of you to support this movement by buying one. You will not get a more open mobile phone anywhere else.&lt;/p&gt;
&lt;p&gt;I know that Brussels is always a bit colder than Frankfurt, so I tend to carry appropriate clothing&amp;#8230; what I didn&amp;#8217;t expect though was that it was frickin&amp;#8217; -20 on saturday. I have never been freezing more in my life. Lets cross fingers that I won&amp;#8217;t come back home with a cold. Especially due to the crazy public transportation situation. The Deutsche Bahn managed to accumulate a one hour delay on my way to Brussels – that&amp;#8217;s ok, however they managed to crash the engine in Aachen on my way back. So badly that we had to switch to a regional train and switch again in Cologne. Man&amp;#8230; *sigh*&lt;/p&gt;
&lt;p&gt;On to some good news&amp;#8230; another thing I didn&amp;#8217;t expect was kind of an Openmoko family reunion. It was amazing to find Jan Lübbe, Stefan Schmidt, Daniel Willmann, Harald Welte, and even Rasterman hanging around at FOSDEM. That was just great. I also happened to share my hotelroom with Boudewijn which was unexpected but again very cool.&lt;/p&gt;
&lt;p&gt;So despite the freezing, it was a great FOSDEM for me and I&amp;#8217;m looking forward to go again next year, perhaps bringing Sabine and Lara Marie as well.&lt;/p&gt;</description>
	<pubDate>Sun, 05 Feb 2012 18:08:12 +0000</pubDate>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Flashing U-Boot on Efika MX Smartbook</title>
	<guid permalink="False">http://marcin.juszkiewicz.com.pl/?p=2411</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/Vsxgt-8BVio/</link>
	<description>&lt;p&gt;From time to time I read posts where people wrote that their Efika MX Smartbook does not boot any more. The only thing which it does is white power led blinking about twice per second. Standard reply in such case is &amp;#8220;send device back to Genesi&amp;#8221;.&lt;/p&gt;&lt;p&gt;Some time ago a friend of mine borrowed Efika MX Smartbook from me. During his experiments he managed to get netbook into such state. I have &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/11/29/debug-board-for-efika-mx-smartbook/&quot;&gt;serial/jtag debug dongle&lt;/a&gt; so decided to take a look at it (and unbrick device). I managed to fix it but also somehow broke serial port so can not check why my automate way does not want to work.&lt;/p&gt;&lt;p&gt;What needs to be done to get Smartbook back to live? Few things:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;SD card&lt;/li&gt;&lt;li&gt;small screwdriver&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://marcin.juszkiewicz.com.pl/files/2012/02/ubootsb.bin&quot;&gt;U-Boot from EfikaMX updater image&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://marcin.juszkiewicz.com.pl/files/2012/02/boot.scr&quot;&gt;U-Boot script which will flash U-Boot into NOR&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Linux account with root permissions&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://marcin.juszkiewicz.com.pl/files/2012/02/u-boot.imx&quot;&gt;working SD-bootable U-Boot&lt;/a&gt; &amp;#8212; this one still requires serial dongle, sorry for that. Will replace it with proper one when will get serial port working again.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Needed steps:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Repartition SD card. You can use any tool for it. All what has to be done is set up first partition at 1MB offset so we have space for U-Boot.&lt;/li&gt;&lt;li&gt;Format partition (if needed) as FAT.&lt;/li&gt;&lt;li&gt;Run &amp;#8220;&lt;code&gt;sudo dd if=u-boot.imx of=/dev/sdd bs=1k seek=1&lt;/code&gt;&amp;#8221; (replace /dev/sdd with your SD card).&lt;/li&gt;&lt;li&gt;Put card into SD slot of Efika MX Smartbook.&lt;/li&gt;&lt;li&gt;Take out keyboard &amp;#8212; you need to use small screwdriver to push holes near F1, F6, F10, End keys.&lt;/li&gt;&lt;li&gt;Change DIP switches &amp;#8211; they are in a middle of motherboard. You need to reverse default setup.&lt;/li&gt;&lt;li&gt;Power on your Efika. There should be U-Boot output on screen. You may even get system loaded up at this step ;)&lt;/li&gt;&lt;li&gt;Take out SD card and copy &amp;#8216;boot.scr&amp;#8217; to it.&lt;/li&gt;&lt;li&gt;Power off Efika, put SD card and boot.&lt;/li&gt;&lt;li&gt;Old U-Boot will be stored into NOR flash (output will be visible on screen).&lt;/li&gt;&lt;li&gt;Change DIP switches &amp;#8211; they are in a middle of motherboard. You need to reverse them to default setup.&lt;/li&gt;&lt;li&gt;Put keyboard back.&lt;/li&gt;&lt;li&gt;Take out SD card.&lt;/li&gt;&lt;li&gt;Boot your Efika MX Smartbook &amp;#8212; operating system should load.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;Some information:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;old U-Boot got flashed because new one was not tested for NOR boot&lt;/li&gt;&lt;li&gt;finding out information for this how to took me few hours&lt;/li&gt;&lt;li&gt;this procedure can be done without &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/11/29/debug-board-for-efika-mx-smartbook/&quot;&gt;Efika MX Smartbook serial/jtag dongle&lt;/a&gt;&lt;/li&gt;&lt;li&gt;similar procedure can be used for Efika MX Smarttop but as I do not have such I can not offer help&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Thanks goes to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Genesi for giving me free Smartbook and serial/jtag dongle&lt;/li&gt;&lt;li&gt;Marek Vasut for his work on mainlining U-Boot support for Efika MX devices&lt;/li&gt;&lt;li&gt;Matt Sealey for some hints on IRC&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;betterrelated&quot;&gt;&lt;p&gt;&lt;strong&gt;Related content:&lt;/strong&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/11/04/efika-mx-smartbook-hacking-day-3/&quot; title=&quot;Permanent link to Efika MX SmartBook hacking day 3&quot;&gt;Efika MX SmartBook hacking day 3&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/10/29/i-got-efika-mx-smartbook-from-genesi/&quot; title=&quot;Permanent link to I got Efika MX Smartbook from Genesi&quot;&gt;I got Efika MX Smartbook from Genesi&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/11/29/debug-board-for-efika-mx-smartbook/&quot; title=&quot;Permanent link to Debug board for Efika MX Smartbook&quot;&gt;Debug board for Efika MX Smartbook&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2011/05/16/linux-2-6-38-on-efika-mx-smartbook/&quot; title=&quot;Permanent link to Linux 2.6.38 on Efika MX Smartbook&quot;&gt;Linux 2.6.38 on Efika MX Smartbook&lt;/a&gt;&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2010/10/05/coreboot-is-awesome/&quot; title=&quot;Permanent link to Coreboot is awesome&quot;&gt;Coreboot is awesome&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;p&gt;&lt;hr /&gt;&lt;p&gt;&lt;small&gt;All rights reserved &amp;copy; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt;&lt;br /&gt; &lt;a href=&quot;http://marcin.juszkiewicz.com.pl/2012/02/01/flashing-u-boot-on-efika-mx-smartbook/&quot;&gt;Flashing U-Boot on Efika MX Smartbook&lt;/a&gt; was originally posted on &lt;a href=&quot;http://marcin.juszkiewicz.com.pl&quot;&gt;Marcin Juszkiewicz&lt;/a&gt; website&lt;/small&gt;&lt;/p&gt;&lt;/p&gt; &lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Vsxgt-8BVio:XsRui7eW9A8:yIl2AUoC8zA&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?d=yIl2AUoC8zA&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Vsxgt-8BVio:XsRui7eW9A8:D7DqB2pKExk&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=Vsxgt-8BVio:XsRui7eW9A8:D7DqB2pKExk&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Vsxgt-8BVio:XsRui7eW9A8:F7zBnMyn0Lo&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=Vsxgt-8BVio:XsRui7eW9A8:F7zBnMyn0Lo&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?a=Vsxgt-8BVio:XsRui7eW9A8:V_sGLiPBpWU&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;http://feeds.feedburner.com/~ff/HrwWebsite?i=Vsxgt-8BVio:XsRui7eW9A8:V_sGLiPBpWU&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/Vsxgt-8BVio&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Wed, 01 Feb 2012 13:19:28 +0000</pubDate>
</item>
<item>
	<title>Cliff 'cbrake' Brake: A Linux Kernel Tracing Tutorial</title>
	<guid permalink="False">http://bec-systems.com/site/?p=865</guid>
	<link>http://feedproxy.google.com/~r/bec-systems/~3/DNN6MRKhftE/linux-tracing-tutorial</link>
	<description>&lt;p&gt;The Linux kernel has a fairly extensive tracing infrastructure that is quite useful for debugging.  There are a number of things you can do with tracing, but the focus of this article will be the traditional printk type debugging we often end up doing to trace initialization issues with a driver.  The following links provide additional information on the linux kernel tracing infrastructure:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://feeds.feedburner.com/%EF%BB%BFhttp%3A//git.kernel.org/?p%3Dlinux/kernel/git/torvalds/linux.git%3Ba%3Dtree%3Bf%3DDocumentation/trace&quot;&gt;﻿&lt;/a&gt;&lt;a href=&quot;http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=tree;f=Documentation/trace&quot;&gt;http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=tree;f=Documentation/trace&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Debugging the kernel using Ftrace &amp;#8211; part 1: &lt;a href=&quot;http://lwn.net/Articles/365835/&quot;&gt;http://lwn.net/Articles/365835/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Debugging the kernel using Ftrace &amp;#8211; part 2: &lt;a href=&quot;http://lwn.net/Articles/366796/&quot;&gt;http://lwn.net/Articles/366796/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Secrets of the Ftrace function tracer: &lt;a href=&quot;http://lwn.net/Articles/370423/&quot;&gt;http://lwn.net/Articles/370423/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://elinux.org/Kernel_Trace_Systems&quot;&gt;http://elinux.org/Kernel_Trace_Systems&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In this example, I am working on a new audio driver.  The typical experience with a new driver is that you install it and nothing happens because something is not registered correctly with the Linux driver model.  So, the first thing I do is start with with the platform_device_add() function in my drivers init function.  To observe the kernel activity around the kernel platform code, I can do the following:&lt;/p&gt;
&lt;p&gt;&lt;span&gt;﻿﻿cd /sys/kernel/debug/tracing/&lt;br /&gt;
echo 0 &amp;gt; tracing_on﻿ (keep trace from filling up until we set filter)&lt;br /&gt;
echo function_graph &amp;gt; current_tracer&lt;br /&gt;
echo platform* &amp;gt; set_ftrace_filter&lt;br /&gt;
echo 1 &amp;gt; tracing_on&lt;br /&gt;
cat trace_pipe (leave running in a different shell)&lt;br /&gt;
&amp;lt;insmod my driver&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;After executing the above, we see the following.  For this example, trace_pipe is preferred because the trace is then emptied and only new information is shown.&lt;/p&gt;
&lt;div id=&quot;_mcePaste&quot;&gt;
&lt;pre&gt;0) + 30.518 us   |  platform_device_alloc();
0)               |  platform_device_add() {
0)   0.000 us    |    platform_uevent();
0) + 30.518 us   |  platform_uevent();
0)   0.000 us    |  platform_uevent();
0) + 30.518 us   |    platform_match();
0) + 30.518 us   |    platform_match();
0)   0.000 us    |    platform_match();
0)   0.000 us    |    platform_match();

...

0) + 30.518 us   |    platform_match();
0)   0.000 us    |    platform_match();
0)   0.000 us    |    platform_match();
0)   0.000 us    |    platform_match();
0)   0.000 us    |    platform_match();
0) ! 3936.767 us |  }
0) + 30.518 us   |  platform_uevent();
0) + 30.518 us   |  platform_device_alloc();&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;span&gt;From the above, I can conclude that the platform_match() is not succeeding, because I would expect some more activity.  At this point I chose to add a printk:&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/p&gt;
&lt;pre&gt;diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index 7a24895..f9ce0c7 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -662,6 +662,8 @@ static int platform_match(struct device *dev, struct device_driver *drv)
        struct platform_device *pdev = to_platform_device(dev);
        struct platform_driver *pdrv = to_platform_driver(drv);

+       trace_printk(&quot;pdev-&amp;gt;name = %s, drv-&amp;gt;name = %s&quot;, pdev-&amp;gt;name, drv-&amp;gt;name);
+
        /* Attempt an OF style match first */
        if (of_driver_match_device(dev, drv))
                return 1;&lt;/pre&gt;
&lt;p&gt;Now, if I re-run the trace, I see the following:&lt;/p&gt;
&lt;pre&gt; 0)               |      /* pdev-&amp;gt;name = soc_audio, drv-&amp;gt;name = davinci_emac */
 0)   0.000 us    |    }
 0)               |    platform_match() {
 0)               |      /* pdev-&amp;gt;name = soc_audio, drv-&amp;gt;name = snd-soc-dummy */
 0)   0.000 us    |    }
 0)               |    platform_match() {
 0)               |      /* pdev-&amp;gt;name = soc_audio, drv-&amp;gt;name = soc-audio */
 0)   0.000 us    |    }
 0)               |    platform_match() {
 0)               |      /* pdev-&amp;gt;name = soc_audio, drv-&amp;gt;name = omap-pcm-audio */
 0)   0.000 us    |    }
 0) ! 4241.943 us |  } /* platform_device_add */&lt;/pre&gt;
&lt;p&gt;From the above, it looks like we have a simple mismatch between &amp;#8220;soc_audio&amp;#8221; and &amp;#8220;soc-audio.&amp;#8221;  Fixing this problem, and re-installing the module, we now have:&lt;/p&gt;
&lt;pre&gt; 0)               |    platform_match() {
 0)               |      /* pdev-&amp;gt;name = soc-audio, drv-&amp;gt;name = snd-soc-dummy */
 0)   0.000 us    |    }
 0)               |    platform_match() {
 0)               |      /* pdev-&amp;gt;name = soc-audio, drv-&amp;gt;name = soc-audio */
 0)   0.000 us    |    }
 0) + 91.553 us   |    platform_drv_probe();
 0) ! 4241.943 us |  } /* platform_device_add */&lt;/pre&gt;
&lt;p&gt;Now we can see that the names match, and the probe function is now being called.  At this point, we may want to turn on tracing of some additional functions to try to determine what is happening next.&lt;/p&gt;
&lt;pre&gt;echo &quot;platform* snd* mydriver*&quot; &amp;gt; set_ftrace_filter&lt;/pre&gt;
&lt;p&gt;And the result:&lt;/p&gt;
&lt;pre&gt; 0)               |      /* pdev-&amp;gt;name = soc-audio, drv-&amp;gt;name = snd-soc-dummy */
 0)   0.000 us    |    }
 0)               |    platform_match() {
 0)               |      /* pdev-&amp;gt;name = soc-audio, drv-&amp;gt;name = soc-audio */
 0) + 30.517 us   |    }
 0)               |    platform_drv_probe() {
 0)               |      snd_soc_register_card() {
 0) + 30.518 us   |        snd_soc_instantiate_cards();
 0) ! 17852.78 us |      }
 0) ! 17883.30 us |    }
 0) ! 22125.24 us |  } /* platform_device_add */&lt;/pre&gt;
&lt;p&gt;With the above additional information, we can continue to learn more about the flow through the kernel.&lt;/p&gt;
&lt;p&gt;While all of the above could have been done with printk&amp;#8217;s, it would have been more time consuming.  The kernel function tracing capabilities allow us to quickly get a high level view of the flow through the kernel without manually adding a bunch of printk statements.  The kernel tracing features are completely contained in the kernel without requiring additional user space utilities which makes it very convenient to use in embedded systems.  The low overhead is also important in resource constrained embedded systems.&lt;/p&gt;
&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/bec-systems/~4/DNN6MRKhftE&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 31 Jan 2012 13:12:46 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: HC-04 Bluetooth module and BlueCore4 Deep Sleep</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-4708777609524535431</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/hc-04-bluetooth-module-and-bluecore4.html</link>
	<description>The good news is that BlueCore indeed has Deep Sleep mode, it's not marketing hype. It can be verified by configuring PSKEY_CLOCK_REQUEST_ENABLE to drive PIO when chip uses/doesn't use external clock. The key here is not to keep PSTool run (which well, you need to tweak sleep settings).&lt;br /&gt;&lt;br /&gt;The bad news is that an HC-04 module in Deep Sleep still consumes 2.5mA, which is far too high for anything called Deep Sleep. So, something on the module besides BlueCore still consumes too much power. However, when BlueCore is held in reset state, entire module consumes 0.&lt;br /&gt;&lt;br /&gt;Without Deep Sleep, simple LED flash task consumes 3.5mA, so there's not that much gain from the Deep Sleep...&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-4708777609524535431?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 30 Jan 2012 00:26:21 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Enabling SPI logging in BlueSuite tools CSR BlueCore chips</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-4216456821905889313</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/enabling-spi-logging-in-bluesuite.html</link>
	<description>BlueFlashCmd.exe and other tools, part of CSR BlueSuite toolset to program BlueCore Bluetooth chips, has support for logging SPI communication with a chip. To enable it:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;BlueFlashCmd.exe -trans &quot;SPIDEBUG_FILE=spi.log SPIDEBUG=ON&quot; -chipver&lt;/div&gt;&lt;br /&gt;The key parameter here is &lt;span&gt;SPIDEBUG_FILE&lt;/span&gt; - logging is activated when it's specified, and thus logging is always done to a file. One way to have logging go to a console is to use &lt;span&gt;SPIDEBUG_FILE=con:&lt;/span&gt; , but then it won't be possible to redirect it.&lt;br /&gt;&lt;br /&gt;Besides &lt;span&gt;SPIDEBUG=ON&lt;/span&gt;, there're other logging levels/features:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;SPIDEBUG&lt;/li&gt;&lt;li&gt;SPIDEBUG_REPRODUCIBLE&lt;/li&gt;&lt;li&gt;SPIDEBUG_WRITES &lt;/li&gt;&lt;li&gt;SPIDEBUG_READS&lt;/li&gt;&lt;li&gt;SPIDEBUG_WIRE&lt;/li&gt;&lt;/ul&gt;The keys may be also specified in the environment instead of &lt;span&gt;-trans&lt;/span&gt; switch arguments.&lt;br /&gt;&lt;br /&gt;Looking at the output produced, it turns out it spends a lot in calibrating SPI speed, a way to that down is to use &lt;span&gt;SPISLOW=ON&lt;/span&gt; setting right away.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-4216456821905889313?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sun, 29 Jan 2012 15:25:00 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Richard 'RP' Purdie: Tarmac takes getting used to again</title>
	<guid>http://www.rpsys.net/wp/?p=279</guid>
	<link>http://www.rpsys.net/wp/?p=279</link>
	<description>&lt;p&gt;Due to the various building works last year, the 675 was laid up off the road. I had planned to wait until spring to get it MOT&amp;#8217;d (safety checked) and get it back on the road. With the mild weather there is not time like the present though.&lt;/p&gt;
&lt;p&gt;After riding the CRM/YZ for the past months, getting back on a true road bike was very very odd. The amount the bars moved for slow speed manouvering was scary, the brakes seemed weak (but aren&amp;#8217;t), the throttle rather responsive, the clutch immediate and the raw accelation, grin worthy.&lt;/p&gt;
&lt;p&gt;I did manage to remember how to ride it, the battery worked, the engine management didn&amp;#8217;t light up like a christmas tree and it gained an MOT. Triumph did a beautiful piece of engineering with that bike and I remember why I own it. We need some better weather but its ready and waiting &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.rpsys.net/wp/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; .&lt;/p&gt;</description>
	<pubDate>Fri, 27 Jan 2012 18:03:01 +0000</pubDate>
</item>
<item>
	<title>Cliff 'cbrake' Brake: The easy way to get serial terminal in Linux</title>
	<guid permalink="False">http://bec-systems.com/site/?p=859</guid>
	<link>http://feedproxy.google.com/~r/bec-systems/~3/suB2LZsxW9M/the-easy-way-to-get-serial-terminal-in-linux</link>
	<description>&lt;p&gt;When doing embedded Linux development, most of us spend out time tethered to a target system with a serial cable, which is used for a serial console.  Minicom is the defacto serial terminal software for Linux.  However, Minicom is a little fussy in that you typically have to set it up for each port you want to use.  This is no big deal, but is generally difficult for new users to understand, and yet another hurdle.  And with 8-port USB-&amp;gt;serial adapters, I have a lot of ports to set up.&lt;/p&gt;
&lt;p&gt;Just recently, I discovered that screen can be used as a serial terminal program:&lt;/p&gt;
&lt;pre&gt;screen /dev/ttyUSB0 115200&lt;/pre&gt;
&lt;p&gt;A few notes on using:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;to exit screen: Ctrl-a k&lt;/li&gt;
&lt;li&gt;to write a hardcopy of the screen image: Ctrl-a h&lt;/li&gt;
&lt;li&gt;to get help: Ctrl-?&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All the neat features of screen are two numerous to list here, but one more that I&amp;#8217;ll point out is the scrollback/copy feature (activated by Ctrl-a [ ).  This allows you to scroll back and the navigation works much like VI &amp;#8212; what could be nicer?&lt;/p&gt;
&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/bec-systems/~4/suB2LZsxW9M&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 26 Jan 2012 19:24:56 +0000</pubDate>
</item>
<item>
	<title>Koen Kooi: Fixing I²C timeouts during boot on the beaglebone</title>
	<guid permalink="False">http://dominion.thruhere.net/koen/312 at http://dominion.thruhere.net/koen/cms</guid>
	<link>http://dominion.thruhere.net/koen/cms/fixing-i-c-timeouts-during-boot-on-the-beaglebone</link>
	<description>&lt;p&gt;The beaglebone kernel was timing out on I²C bus 2 when no cape is attached. This was traced back to missing pullups on the 2 I²C lines. Looking at the source:&lt;/p&gt;
&lt;pre&gt;&quot;uart1_ctsn.i2c2_sda&quot;,    OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW \
 | AM33XX_PULL_ENBL | AM33XX_INPUT_EN&lt;/pre&gt;&lt;p&gt;
That seems to enable pullups, let's check on the device itself:&lt;/p&gt;
&lt;pre&gt;root@beaglebone:~# &lt;b&gt;devmem2 0x44e10978&lt;/b&gt;
devmem2 0x44e10978
/dev/mem opened.
Memory mapped at address 0x40313000.
Read at address  0x44E10978 (0x40313978): &lt;b&gt;0x00000063&lt;/b&gt;&lt;/pre&gt;&lt;p&gt;
The magic decoder ring gives us the following:&lt;/p&gt;
&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;bit&lt;/td&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;function&lt;/td&gt;
&lt;td&gt;Reserved&lt;/td&gt;
&lt;td&gt;Slewrate&lt;/td&gt;
&lt;td&gt;Receiver enable&lt;/td&gt;
&lt;td&gt;Pull up/down&lt;/td&gt;
&lt;td&gt;Pull disable&lt;/td&gt;
&lt;td colspan=&quot;3&quot;&gt;mode&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;value&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;No pullups enabled, but pulldowns! Let's change the kernel to make it try a bit harder to enable pullups:&lt;/p&gt;
&lt;pre&gt;&quot;uart1_ctsn.i2c2_sda&quot;,    OMAP_MUX_MODE3 | AM33XX_SLEWCTRL_SLOW \
 | &lt;b&gt;AM33XX_PIN_INPUT_PULLUP&lt;/b&gt;},&lt;/pre&gt;&lt;p&gt;
The timeouts seem to be gone, let's double check:&lt;/p&gt;
&lt;pre&gt;root@beaglebone:~# &lt;b&gt;devmem2 0x44e10978&lt;/b&gt;
devmem2 0x44e10978
/dev/mem opened.
Memory mapped at address 0x40313000.
Read at address  0x44E10978 (0x40313978): &lt;b&gt;0x00000073&lt;/b&gt;&lt;/pre&gt;&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;bit&lt;/td&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;function&lt;/td&gt;
&lt;td&gt;Reserved&lt;/td&gt;
&lt;td&gt;Slewrate&lt;/td&gt;
&lt;td&gt;Receiver enable&lt;/td&gt;
&lt;td&gt;Pull up/down&lt;/td&gt;
&lt;td&gt;Pull disable&lt;/td&gt;
&lt;td colspan=&quot;3&quot;&gt;mode&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;value&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;p&gt;Success!&lt;br /&gt;
&lt;!--break--&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 25 Jan 2012 12:08:11 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Notes on Android EGL/native windowing system interface</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-6952619296646642660</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/notes-on-android-eglnative-windowing_17.html</link>
	<description>EGL is defined here and appears to be in OpenGL ES something what GLUT was (?) in OpenGL world. At least, EGL is what takes care of actually displaying on screen what was rendered by OpenGL ES.&lt;br /&gt;&lt;br /&gt;Donut&lt;br /&gt;&lt;br /&gt;EGLNativeWindowType is defined in &lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=opengl/include/EGL/eglplatform.h;hb=refs/heads/donut&quot;&gt;opengl/include/EGL/eglplatform.h&lt;/a&gt; as struct egl_native_window_t* . egl_native_window_t is defined nearby in &lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=opengl/include/EGL/eglnatives.h;hb=refs/heads/donut&quot;&gt;opengl/include/EGL/eglnatives.h&lt;/a&gt; . This is nice, clean, standalone structure (unlike horror in Eclair+). It starts with a &quot;magic&quot; (signature) 0x600913, followed by &quot;version&quot; which is sizeof of the structure (now I know why Microsoft gets a buck on each Android phone sold - they for sure patented this (stupid? lazy?) trick widely used in Win32 API). There're some function pointers (virtual method table) used by EGL to call into native windowing system (deep, close to vendor drivers) to support its workings. Out of these, there's essentially one related to rendering finalization: swapBuffers(). So yes, it seems that eglSwapBuffers() just calls out to this. The structure also directly contains &quot;Base memory virtual address of the surface in the CPU side&quot; and other easily graspable memory/graphics notions.&lt;br /&gt;&lt;br /&gt;It's clear that in its young years, Android was fair and naive, not suitable at all for typical vendor OpenGL mumbo-jumbo. The &quot;fix&quot; came with the later versions.&lt;br /&gt;&lt;br /&gt;Eclair and following&lt;br /&gt;&lt;br /&gt;EGLNativeWindowType is defined (in include/EGL/eglplatform.h) to be struct ANativeWindow*. ANativeWindow was android_native_window_t in Eclair, but was renamed to ANativeWindow in Froyo (android_native_window_t is still available for compatibility). ANativeWindow is defined in platform/frameworks/base/include/ui/egl/android_natives.h:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=include/ui/egl/android_natives.h;hb=refs/heads/eclair&quot;&gt;Eclair&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=include/ui/egl/android_natives.h;hb=refs/heads/froyo&quot;&gt;Froyo&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=include/ui/egl/android_natives.h;hb=refs/heads/gingerbread&quot;&gt;Gingerbread&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;ANativeWindow not just emulates VMT, but seems to want to do entire C++ in C-like manner in its metes and bounds. It uses subclassing from android_native_base_t, and that contains fields for magic (&quot;_wnd&quot; for ANativeWindow) and version-sizeof. Methods defined are also more involved. Among the most interesting are dequeueBuffer(), lockBuffer(), queueBuffer(). Essentially, it appears that EGL takes a free buffer out of native system's rotation, locks it for changing its contents, then puts back into queue for display.&lt;br /&gt;&lt;br /&gt;Actual implementation of ANativeWindow for read device screen is in &lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=libs/ui/FramebufferNativeWindow.cpp;hb=refs/heads/eclair&quot;&gt;libs/ui/FramebufferNativeWindow.cpp&lt;/a&gt; . There's factory function to get its instance: android_createDisplaySurface(). &lt;br /&gt;&lt;br /&gt;All implementation details on buffers used are hidden in &lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=include/ui/android_native_buffer.h;hb=refs/heads/eclair&quot;&gt;android_native_buffer_t&lt;/a&gt; type. It is also subclassed from android_native_base_t, its magic is &quot;_bfr&quot;. Among simple things like width/height it contains buffer_handle_t, which leads in utero of vendor graphics driver. buffer_handle_t is native_handle*, and &lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/system/core.git;a=blob;f=include/cutils/native_handle.h;hb=refs/heads/eclair&quot;&gt;native_handle&lt;/a&gt; is a generic container for arbitrary number of fd's and pointers.&lt;br /&gt;&lt;br /&gt;native_handle's are produced by gralloc vendor module, and that's exactly what &lt;a href=&quot;http://android.git.linaro.org/gitweb?p=platform/frameworks/base.git;a=blob;f=libs/ui/FramebufferNativeWindow.cpp;hb=refs/heads/eclair&quot;&gt;FramebufferNativeWindow&lt;/a&gt; constructor does - it loads gralloc module, then uses it to open framebuffer and gralloc devices. It then allocates back and front buffers from gralloc devices with the size of the framebuffer. queueBuffer() method is implemented by calling framebuffer's post() method which well, shows the buffer on the screen.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-6952619296646642660?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Wed, 18 Jan 2012 01:00:56 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Thoughts/notes on Android version upgrades and reusing Android drivers</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-8958942659624483818</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/notes-on-android-eglnative-windowing.html</link>
	<description>So, what it takes to upgrade Android on an arbitrary Android device (from user perspective)? What takes to run Linux in full-fledged mode? This boils down to few things:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Kernel porting &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Upgrade kernel. This means forward-porting hardware support modules to a new kernel version. That's, when source code for such modules is available. Sometimes, it's not violating GPL (or tainting kernel, but who wants that? ;-) ). In an ideal world, that would all that's needed, but vendors don't like GPL, and try to move stuff outside of kernel. So, the list continues.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Bitblt acceleration porting&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Next step is making sure that basic hardware acceleration works - accelerated bitblt/compositing (defining compositing as bitblt with alpha). This is actually pretty important step - without accelerated bitblt, Android with more or less big screen will run pretty sluggishly. Well, X Windows won't run too zippy either. Bitblt code in Android lives in /system/lib/hw/copybit.*.so&amp;nbsp; and depends on gralloc.*.so from the same dir (* there is vendor/implementation identifier - Android support multiple, pluggable implementations). Needless to say, for a random device, source for these modules are not available - vendors don't have to provide it, it's Apache2-licensed, and very few choose to uphold OpenSource spirit nonetheless. So, if new Android version have changes the ABI for those modules, then oops - upgrade is &quot;not possible&quot; is layman terms. Of course, real men will immediately think about writing adapters, etc...&lt;br /&gt;&lt;br /&gt;What about other X and other &quot;foreign&quot; windowing systems? They would need drivers/adapters too, and base all their low-level FB access based on Android's gralloc/bitblt/etc. model.&lt;br /&gt;&lt;br /&gt;&lt;span&gt;OpenGL ES porting&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Last, least, but nonetheless. Curse of the modern world - OpenGL. You didn't have it on your Apple 2 (I mean Apple 2, yes, not what you thought about!) and everything was great, wasn't it? Apart from games you don't have time to play, what it's useful for? Yes, as soon as we'll stream videosignal directly into the brain, it will be useful for augmented reality, but I mean, *useful now*. They keep talking they added some hardware acceleration using OpenGL to the normal UI, then immediately say it didn't work that great, and depends on many things, because... Because OpenGL simply doesn't work that great, yeah. For example, even &quot;accelerated&quot;, it's pretty slow, buggy, inconsistent across devices, etc, etc.&lt;br /&gt;&lt;br /&gt;Anyway, thanks for listening to the rant. Let's de-emphasize usefulness of OpenGL, let's just take it as a challenge - vendors hacked it, so why can't hackers hack it? The basic idea is the same as with bitblt - there's an interface between closed vendor OpenGL ES implementation and Android. If interface changed, you're hosed. I mean, you write adapters. You also write adapters to make it talk with your windowing system of choice, and not Android. The core interfacing part of OpenGL ES/Android junction is EGL. How to deal about it is worth a separate post.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-8958942659624483818?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 17 Jan 2012 18:40:40 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: New Hack Toy - Zenithink ZT-180</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-5415405958426899222</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/new-hack-toy-zenithink-zt-180.html</link>
	<description>Recently I got new hack toy: cheap (well, depends) Chinese Zenithink ZT-180 tablet. This one seem to be (have been) pretty popular and hacker-friendly. Here's data about it:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Vendor: http://zenithink.com/&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://zenithink.com/Eproducts_ZT180-102.php&quot;&gt;Product home page&lt;/a&gt;, ZT180-102 (it's the oldest in the product list, so soon will go to &quot;Retired products&quot; (== /dev/null))&lt;/li&gt;&lt;li&gt;CPU: &lt;a href=&quot;http://www.infotmic.com/cn/products_xpxx3.asp&quot;&gt;IMAPx200&lt;/a&gt; (or IMAPx210, IMAPx220), ~1GHz&lt;/li&gt;&lt;li&gt;GPU (SoC-builtin): &lt;a href=&quot;http://www.vivantecorp.com/p_mvr.html#GC600&quot;&gt;GC600&lt;/a&gt; (tentative)&lt;/li&gt;&lt;li&gt;RAM: 512MB (Android boots with mem=384M)&lt;/li&gt;&lt;li&gt;Bootloader: u-boot &lt;/li&gt;&lt;li&gt;&lt;a href=&quot;https://github.com/atpboy444/ZT-180&quot;&gt;Kernel source from the vendor&lt;/a&gt; (github)&lt;/li&gt;&lt;li&gt; &lt;a href=&quot;http://www.slatedroid.com/topic/20377-open-source-project/&quot;&gt;Slatedroid forum announcement&lt;/a&gt; and discussion about the kernel release above&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;ftp://zenithink.cn/dyliao/zt-180/source/&quot;&gt;Vendor toolchain&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.slatedroid.com/topic/20377-open-source-project/page__view__findpost__p__246182&quot;&gt;Post&lt;/a&gt; saying that user yuray started upgrading kernel to 3.0.4. Following posts add more details, no source link provided.&lt;/li&gt;&lt;li&gt;yuray also appears to be the author of &lt;a href=&quot;https://github.com/atpboy444/ZT-180-Linux-Flash-Tool&quot;&gt;ZT-180-Linux-Flash-Tool&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://www.slatedroid.com/wiki/index.php/Wiki:ZT-180_FAQ&quot;&gt;Slatedroid ZT-180 Wiki&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href=&quot;https://sourceforge.net/apps/trac/linux-h4000/wiki/ZT180Tablet&quot;&gt;More detailed hacking information&lt;/a&gt;&lt;/b&gt;&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;It seems that I've got vendor model ZT180_G2 (maybe, ZT180_G0).&lt;br /&gt;&lt;br /&gt;Button combinations to hold during power on:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Home+Power - Upgrade firmware from /sdcard/zt-update/&lt;/li&gt;&lt;li&gt;Left arrow (of swing double-button)+Power - Boot with debug kernel from /sdcard/zt-debug/ . Debug kernel is booted and continues with the normal boot process.&lt;/li&gt;&lt;li&gt;Right arrow (of swing double-button)+Power - Multiboot support, select one of 3 modes:&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Android adb - kernel with ADB over USB support&lt;/li&gt;&lt;li&gt;Android mass storage - kernel with mass storage USB gadget support (tablet is presented as a mass storage when connected to host)&lt;/li&gt;&lt;li&gt; Other OS - WinCE&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;br /&gt;Random links:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;http://www.slatedroid.com/topic/10233-zenithink-zt-180-cpu-actually-infotmic-imap210-cpu/&lt;/li&gt;&lt;li&gt;http://www.androidtablets.net/forum/infotmic-based/2354-infotmic-chips.html&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-5415405958426899222?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 17 Jan 2012 17:16:11 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Stopping Android GUI services</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-2708237897449519812</guid>
	<link>http://pfalcon-oe.blogspot.com/2011/09/stopping-android-gui-services.html</link>
	<description>Well, &lt;a href=&quot;http://matejcik.blogspot.com/2010/10/starting-and-stopping-android-core.html&quot;&gt;this&lt;/a&gt; really worth a cross-post. The way to stop Android GUI services is (under root of course):&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span&gt;setprop ctl.stop zygote&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;UPDATE: Thanks to hint from &lt;a href=&quot;http://stackoverflow.com/a/5595906/496009&quot;&gt;StackOverflow&lt;/a&gt;: there're even simpler commands: &quot;&lt;span&gt;start&lt;/span&gt;&quot; &amp;amp; &quot;&lt;span&gt;stop&lt;/span&gt;&quot;. Surprise.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-2708237897449519812?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 16 Jan 2012 23:32:05 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Koen Kooi: Using 1-wire on a beaglebone</title>
	<guid permalink="False">http://dominion.thruhere.net/koen/311 at http://dominion.thruhere.net/koen/cms</guid>
	<link>http://dominion.thruhere.net/koen/cms/using-1-wire-on-a-beaglebone</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/koenkooi/6700621581/&quot; title=&quot;w1-gpio on a beaglebone by koenkooi, on Flickr&quot;&gt;&lt;img alt=&quot;w1-gpio on a beaglebone&quot; height=&quot;327&quot; src=&quot;http://farm8.staticflickr.com/7142/6700621581_f1ddecc75c.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The dedicated AM335x HDQ pin(s) aren't exposed on the beaglebone header, but there are enough GPIOs available to emulate one with the w1-gpio driver in linux. I connected a &lt;a href=&quot;http://www.sparkfun.com/products/245&quot;&gt;DS18B20+&lt;/a&gt; to the beaglebone as shown in the picture above.&lt;br /&gt;
After patching the kernel and booting the update uImage:&lt;/p&gt;
&lt;pre&gt;root@beagleboneA3-0457:~# &lt;b&gt;dmesg | grep w1&lt;/b&gt;
[    0.208956] w1-gpio connected to P8_3&lt;/pre&gt;&lt;pre&gt;root@beagleboneA3-0457:~# &lt;b&gt;cat /sys/bus/w1/devices/28-00000256073a/w1_slave&lt;/b&gt;
b8 01 4b 46 7f ff 08 10 8a : crc=8a YES
b8 01 4b 46 7f ff 08 10 8a &lt;b&gt;t=27500&lt;/b&gt;&lt;/pre&gt;&lt;p&gt;
With a friendlier output:&lt;/p&gt;
&lt;pre&gt;root@beagleboneA3-0457:~# cat /sys/bus/w1/devices/28-00000256073a/w1_slave | tail -n1 | awk -F= '{print $2/1000 &quot; degrees Celsius&quot;}'
&lt;b&gt;27.687 degrees Celsius&lt;/b&gt;&lt;/pre&gt;&lt;p&gt;
The final tweak is to use some jumper wires to prevent the beaglebone from heating up the sensor:&lt;/p&gt;
&lt;pre&gt;root@beagleboneA3-0457:~# cat /sys/bus/w1/devices/28-00000256073a/w1_slave | tail -n1 | awk -F= '{print $2/1000 &quot; degrees Celsius&quot;}'
&lt;b&gt;19.125 degrees Celsius&lt;/b&gt;&lt;/pre&gt;&lt;p&gt;
&lt;a href=&quot;http://dominion.thruhere.net/koen/angstrom/beaglebone/beaglebone-w1.diff&quot;&gt;w1 patch&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 15 Jan 2012 12:20:37 +0000</pubDate>
</item>
<item>
	<title>Richard 'RP' Purdie: Ice, snow, hills, mud and new territory</title>
	<guid>http://www.rpsys.net/wp/?p=269</guid>
	<link>http://www.rpsys.net/wp/?p=269</link>
	<description>&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.rpsys.net/wp/rp/hartside.jpg&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Last Monday with it being a bank holiday I was invited out for a trip to the other side of Alston, starting from Allendale. I&amp;#8217;ve wanted to ride the lanes over there for a while and this was my opportunity. I didn&amp;#8217;t fancy setting off early in the morning in the dark and trying to find fuel in Allendale so I took the bike in the van to the starting point. On the way, I found the conditions were getting colder the further inland I went and approaching Allendale, there was one junction where it was gently snowing with snow lying on the ungritted sections of road.&lt;/p&gt;
&lt;p&gt;I managed to get there on time and eventually everyone was ready to set off. Everyone left apart from me and one other, I was playing my tail gunner role since I had a copy of the route. It was quickly clear we wouldn&amp;#8217;t be going anywhere whilst Stewie&amp;#8217;s chain was lying on the ground. Stewie has a reputation for breaking chains but not getting away from the van is a new record. Eventually the others noticed we weren&amp;#8217;t there and came back and we managed to get the chain repaired. We were off, really this time.&lt;/p&gt;
&lt;p&gt;I have a reputation of not doing so well on ice covered tarmac so I&amp;#8217;d decided I was going to take things very carefully. I was on the YZ which isn&amp;#8217;t really the ideal bike for those kind of conditions having too much power and totally knackered tyres (a dead mousse distorting the front and no tread on the back comparatively speaking). Sure enough as soon as we&amp;#8217;d done the first lane we were onto ungritted country roads covered in a thin layer of sheet (black) ice. There was one nasty off camber T junction covered in ice which I did not enjoy at all. Coming around a corner I then found a piece of road with a couple of tight turns over a bridge, all covered in ice. This would have been bad enough (but manageable) but one of the group was lying in the road, as was his bike. Thankfully I wasn&amp;#8217;t carrying much speed but even then there wasn&amp;#8217;t any chance of stopping on the ice, or steering around the obstacles. At this point it helps to remember the kind of vehicle and its capabilities. I quickly concluded my only chance was to ride onto the 12&amp;#8243; strip of verge between the road and the wall and whilst that was covered in snow and heavily banked and undulating, chances were I would have enough traction to stop. Thankfully this proved correct. Ben got himself and the bike upright and we set off again. At this point I went past a couple of the group stopped halfway up a hill. There was too much ice around for me to fancy stopping too. I spent the next couple of miles of tarmac going slowly wondering where they were but they caught me up just as we found the rest of the group.&lt;/p&gt;
&lt;p&gt;At this point I realised we were approaching Alston and were onto some trails I know. I only ever seem to see these ones in winter when they&amp;#8217;re covered in ice and they&amp;#8217;re heavily rutted making riding an interesting challenge. Rather than head into Alston, we bypassed it and did an interesting piece of trail which included a steep uphill section. Unfortunately one of the group was stopped half way up which meant everyone else had to stop. That person decided not to attempt the near vertical climb at the top and let someone else take the bike back down and take it at speed. I decided to just attempt it from stationary at the half way point which proved tricky and resulted in stalling the bike multiple times. The rear tyre&amp;#8217;s condition wasn&amp;#8217;t helping as it was just slipping. I was wary as the exit was onto a road with a parked car in the path if you applied too much speed/power. The first attempt ended up with the front wheel up, only to have the bike slide backwards back down it with me unable to grab the back brake, only keep the front locked solid which isn&amp;#8217;t a fun experience. I made it on the second attempt.&lt;/p&gt;
&lt;p&gt;After the next trail, the group had disappeared. My GPS appeared to indicate the route was left so I followed it, only to realise I was heading in the wrong direction and the tracks were confused on the map. I turned around and found two group members looking for me. One U turned and headed back the way they&amp;#8217;d come, the other continued past me. I sat in the middle and wondered what the heck I was supposed to do! We go that sorted out and found the rest of the group but I missed out on one of the trails. We then arrived in Alston and refueled. We were still on trails I&amp;#8217;d done before but not for a long time. We wound our way up to Hartside Cafe, beyond which I&amp;#8217;ve never ventured on green lanes. On road bikes, this marks the point the entrance to the Lake District and I&amp;#8217;ve been there many times on tarmac though. We started down some very interesting lanes. There were a lot of muddy ruts and I was having a lot of difficulty keeping the YZ going in a straight line at any kind of speed.&lt;/p&gt;
&lt;p&gt;We came across a group of horse riders (on tarmac) and slowly followed for a while until they pulled over onto some grass at a junction. The rest of the group went through but I was slightly behind having had trouble restarting the bike after stopping. As I approached and was about to pass, going slowly since I know how tricky these situations are, one of the horses reared up and set off down the road. I came to an instant stop despite the ice patches and waited as the rider controlled it and brought it back to the grass. At this point the horses were clearly getting nervous and it was spreading between them but I was able to carefully but quickly get off up the road past them, hopefully allowing the situation to diffuse. I can see these issues from both sides and I hope the horses/riders weren&amp;#8217;t too upset.&lt;/p&gt;
&lt;p&gt;Next up was a road with a sign about a ford being washed out and impassible. To us this was interesting, we&amp;#8217;ll see. Upon arrival, it was clear there was a *lot* of fast moving water going through the core channel and it had been roped off with warning tape. We couldn&amp;#8217;t see any indication of depth and some of the group thought it was possible but I was of the opinion it was too deep/fast and after some discussion we reached that consensus. It&amp;#8217;d be interesting to see it in summer.&lt;/p&gt;
&lt;p&gt;Periodically, Ben&amp;#8217;s bike was cutting out, likely due to the cold and some form of carb icing type effect. It was frustrating as he&amp;#8217;d have to sit for a while, then the bike would work just fine again. It was also proving a pain to kick start. I can sympathise with this after experiencing how draining kick starting the CRM was when I first started. At one point he&amp;#8217;d dropped it in the mud and couldn&amp;#8217;t get it started and was obviously worn out so I gave it a go whilst he recovered a bit. It started first kick, I know how annoying it is for someone to do that :/.&lt;/p&gt;
&lt;p&gt;At the end of one lane, we had a bit of confusion over the exact route to take with it turning out to be a drop down a hill, over a tiny stream, then through a much deeper ford crossing. On the drop, I managed to get a large tree branch stuck between the mud guard and the front wheel for which I had to stop and disentanhgle it. This isn&amp;#8217;t simple on a steep slope but I eventually managed. I only saw the last member of the group going through the ford but it was clear Ben had fallen in. I was given several pieces of conflicting advice about the best route over including mention of a large piece of old road which may or may not be in certain bits of the river but wasn&amp;#8217;t visible from where I was on the other side. Great. I set off through and about half way, it was clear I was riding on a piece of flat slab (old roadway?). So far so good but they&amp;#8217;d said there was a problem? Sure enough, all of a sudden it became cracked, pointing upwards and then stopped with a deep drop (1ft+) off the end. At this point I accelerated a little and attempted a small jump off the end, as best as is possible off a slime covered piece of rock in water. Thankfully the bike then landed upright in the properly deep water with both wheels and I could quickly power out the river. Apparently Ben had attempted something similar but had lost balance coming off the slab, needed to put a foot down and slipped off. Far too easily done. We emptied out the drowned bike, then towed it to get it started.&lt;/p&gt;
&lt;p&gt;We then had to stop in a village and wait whilst once again Stewie had to repair his chain. By this point we were running well behind schedule due to the stoppages and general slow progress made. There were some lovely relatively unused lanes we passed through. One memorable moment was coming to a shear decent, probably only a couple of metres in height which took some nerve to plunge the bike over. Again I was cursing the condition of the tyres on the muddy bits and couldn&amp;#8217;t carry any speed.&lt;/p&gt;
&lt;p&gt;By this point time was against us as it was going to be getting dark. There certainly wasn&amp;#8217;t time for a lunch stop and we pressed on. We winded over the A686 (heads to Alston) taking some interesting lanes although I was still fighting tyres and going slowly. We then went up a trail that leads to hardside cafe which I&amp;#8217;ve heard of but never done. I think I made the biggest hash of it I&amp;#8217;d made all day, being unable to get traction anywhere even vaguely muddy. I ended up stalling and having to drop the bike into ruts to find stone to get momentum up the hillside. There is a steep climb at the side of the trail here and one group member did attempt it but only got halfway. The trouble then is getting back down safely. I decided not to bother given my experiences so far that day (and experiences of steep climbs going wrong on other occasions).&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.rpsys.net/wp/rp/hartside1.jpg&quot; /&gt;&lt;/p&gt;
&lt;p&gt;We then headed over to Garrigill at which point I hit reserve fuel (eek!). I did warn the rest of the group and thought Alston for a top up might be wise but Steve thought we&amp;#8217;d make it back ok (he and another group member hit reserve too). We took the road over the top to Nenthead. I know this road well for various reasons and know that if there will be snow/ice anywhere, its on this road (17th highest road in Great Britain). Sure enough the whole thing was sheet ice. Making it the hill was bad enough. Once at the top, you then have the problem of getting down the other side. The only way I could do it was on the verge, being very mindful of the deep holes and drop offs (up to 6ft) in the verge. I was surprised to make it down there without some kind of incident, I was going very slowly/carefully. Apparently Steve did drop his bike at one point (I didn&amp;#8217;t for a change!).&lt;/p&gt;
&lt;p&gt;There was one more lane and then it was tarmac back to Allendale. At this point I ran out of fuel entirely. Thankfully Paul came back to look for me when I disappeared and using a water bottle, I was able to share some of his fuel, enough to get me back to the van. Meanwhile, Stewie had also run out and was towed the last couple of miles.&lt;/p&gt;
&lt;p&gt;Despite the issues, it was a great day out, one of the days I&amp;#8217;ll look back on with fond memories. I really enjoyed it and look forward to exploring more trails in that area when there is a bit more daylight.&lt;/p&gt;</description>
	<pubDate>Fri, 13 Jan 2012 12:38:27 +0000</pubDate>
</item>
<item>
	<title>Richard 'RP' Purdie: Crazy Insurance People</title>
	<guid>http://www.rpsys.net/wp/?p=271</guid>
	<link>http://www.rpsys.net/wp/?p=271</link>
	<description>&lt;p&gt;&amp;#8220;We are unable to quote for house insurance since our records show you are within 50m of water and are at risk of flooding&amp;#8221;.&lt;/p&gt;
&lt;p&gt;Well, yes I am within 50m of water. Its called the North Sea, its clearly visible out of all my front windows. What isn&amp;#8217;t being accounted for are the sea defenses, a lower and upper promenade and a road between me and it, not to mention the cliffs. A hint about the height of the cliffs is the &amp;#8220;High Point Hotel&amp;#8221; just up the street which oddly enough is built on &amp;#8220;High Point&amp;#8221;.&lt;/p&gt;
&lt;p&gt;Not quoting based on the risk of coastal erosion I could understand (although with the sea defenses here its extremely unlikely and they&amp;#8217;d protect the road) but flooding?! I guess its possible bits of Norway might fall into the sea and cause a tsunami but thats about what it would take&amp;#8230;&lt;/p&gt;</description>
	<pubDate>Fri, 13 Jan 2012 10:54:50 +0000</pubDate>
</item>
<item>
	<title>Holger 'zecke' Freyther: QtMediaHub on MIPS with Qt5 and DirectFb</title>
	<guid>tag:blogger.com,1999:blog-13875843.post-2862342745637331891</guid>
	<link>http://zecke.blogspot.com/2012/01/qtmediahub-on-mips-with-qt5-and.html</link>
	<description>Ever since the start of the Qt project I am working on DirectFB in Qt5 (and Qt4) with the remote goal of getting QtMediaHub to run. It started with catching up with the rather nice refactoring of lighthouse in Qt5, fixing memory and resource leaks in Qt5, DirectFB and mostly in the DirectFB lighthouse plugin.&lt;br /&gt;&lt;br /&gt;It moved to dealing with broken &quot;make install&quot;, broken QML2 examples and documentation, figuring out how to get patches for QtV8/V8 into the project, adding MIPS code for the Qml mode (a new global object), global compare for MIPS and finally working on OpenGL integration for QML2.&lt;br /&gt;&lt;br /&gt;In this specific case I had an OpenGL ES 2.0 library coming from a vendor and created the 'directfbegl' plugin to use EGL to go from IDirectFBSurface to an eglSurface. I think in this specific case there is unified 2D and 3D buffer space which should allow a lot of cool stuff.&lt;br /&gt;&lt;br /&gt;It mostly works, QML2 has some way to go to work on battery powered devices but it is looking quite nice.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/13875843-2862342745637331891?l=zecke.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 10 Jan 2012 13:10:18 +0000</pubDate>
	<author>noreply@blogger.com (zecke)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Bluetooth Park Mode Exposed</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-4518911199299630258</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/bluetooth-park-mode-exposed.html</link>
	<description>So well, as I settled on Bluetooth as a wireless sensor/automation protocol and grow my device base, I started to wonder what will happen when I'll have more than 7 slave devices. Bluetooth stack of master device (Bluez in our case) must be smart to put devices into and out of PARK mode to allow to communicate with more than 7 devices, right? Not in this world.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Not only Bluez doesn't support park management, according to Marcel Holtmann, the problem is that it's really not known if there're devices (masters) which can support more than very limited number of slaves, or even have decent park mode implementation at all:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.devel/287&quot;&gt;http://article.gmane.org/gmane.linux.bluez.devel/287&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/3813&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/3813&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/3815&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/3815&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/6032&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/6032&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/12689&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/12689&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/12719&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/12719&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.devel/13135&quot;&gt;http://article.gmane.org/gmane.linux.bluez.devel/13135&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;Anyway, I started to test parking with devices I have.&lt;br /&gt;&lt;br /&gt;&lt;span&gt;HC-04 Bluetooth module with CSR BlueCore4-Ext&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;# hcitool cc 00:11:10:xx:xx:xx; hcitool con&lt;/div&gt;&lt;span&gt;Connections:&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt; ACL 00:11:10:&lt;/span&gt;&lt;span&gt;xx:xx:xx&lt;/span&gt;&lt;span&gt; handle 12 state 8 lm MASTER &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What we need here is a connection handle 12 (0x0c). hcitool doesn't have dedicated command for part mode (and for lot of other things), so we'll use raw HCI command mode using &quot;cmd&quot; command:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;# hcitool cmd --help&lt;/span&gt;&lt;br /&gt;&lt;span&gt;Usage:&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cmd &amp;lt;ogf&amp;gt; &amp;lt;ocf&amp;gt; [parameters]&lt;/span&gt;&lt;br /&gt;&lt;span&gt;Example:&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cmd 0x03 0x0013 0x41 0x42 0x43 0x44&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What's important here is that &amp;lt;parameters&amp;gt; should be byte values. If words should be given as parameters, they should be give by bytes in little-endian format.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;# hcitool cc 00:11:10:xx:xx:xx; hcitool cmd 0x02 0x05 0x0c 0 0x50 0 0x40 0&lt;/div&gt;&lt;br /&gt;Here we run HCI_Park_State(Connection_Handle=0x000c, Beacon_Max_Interval=0x0050, Beacon_Min_Interval=0x0040) command (see Bluetooth spec). And here's communication as captured by hcidump (parts irrelevant to park command omitted):&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span&gt;2012-01-07 15:36:46.084074 &amp;lt; HCI Command: Park State (0x02|0x0005) plen 6&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; handle 12 max 80 min 64&lt;/span&gt;&lt;br /&gt;&lt;span&gt;2012-01-07 15:36:46.086040 &amp;gt; HCI Event: Command Status (0x0f) plen 4&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Park State (0x02|0x0005) status 0x00 ncmd 1&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;2012-01-07 15:36:46.271047 &amp;gt; HCI Event: Mode Change (0x14) plen 6&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status 0x24 handle 12 mode 0x00 interval 0&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Error: LMP PDU Not Allowed&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This &quot;LMP PDU Not Allowed&quot; was quite confusing and took me lot of googling to figure out. Fortunately, I found insightful post from a CSR guy right on this matter: &lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.devel/72&quot;&gt;http://article.gmane.org/gmane.linux.bluez.devel/72 &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;What we get here is that local Bluetooth master just forwards status it got from the remote device. As the message suggests, park might be disabled in remote device line policy. Let's see:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;# hcitool cc 00:11:10:&lt;/span&gt;&lt;span&gt;xx:xx:xx&lt;/span&gt;&lt;span&gt;; hcitool lp 00:11:10:&lt;/span&gt;&lt;span&gt;xx:xx:xx&lt;/span&gt;&lt;br /&gt;&lt;span&gt;Link policy settings: RSWITCH HOLD SNIFF PARK &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here's slight issue of what hcitool lp actually does. According to man, it &quot;displays link policy settings for the connection to the device with&amp;nbsp; Bluetooth&amp;nbsp; address&quot;. There's also &quot;hcitool lp&quot; command which &quot;Sets default link policy&quot;. So, reasonable assumption would be that every device may have default link policy, then during connection, they negotiate link policy which is suitable for the connection. Ok, let's set PARK policy explicitly:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;# hcitool cc 00:11:10:xx:xx:xx; hcitool lp 00:11:10:xx:xx:xx PARK; hcitool lp 00:11:10:xx:xx:xx; hcitool cmd 0x02 0x05 0x0c 0 0x50 0 0x40 0&lt;br /&gt;Link policy settings: PARK &lt;br /&gt;&amp;lt; HCI Command: ogf 0x02, ocf 0x0005, plen 6&lt;br /&gt;&amp;nbsp; 0C 00 50 00 40 00 &lt;br /&gt;&amp;gt; HCI Event: 0x0f plen 4&lt;br /&gt;&amp;nbsp; 00 01 05 08 &lt;/div&gt;&lt;br /&gt;But hcidump shows the the same &quot;LMP PDU Not Allowed&quot; error. So, what we have is that HC-04 module advertizes park support, it apparently negotiates its availability for connection, but when asked to actually perform it, it rejects it. This is so much correlates with this message: &lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/12710&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/12710&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;PS3 Bluetooth remote&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;# hcitool info 00:06:F5:xx:xx:xx&lt;br /&gt;Requesting information ...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BD Address:&amp;nbsp; 00:06:F5:xx:xx:xx&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Device Name: BD Remote Control&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LMP Version: 2.0 (0x3) LMP Subversion: 0x229&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Manufacturer: Broadcom Corporation (15)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Features: 0xbc 0x02 0x04 0x38 0x08 0x00 0x00 0x00&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;encryption&amp;gt; &amp;lt;slot offset&amp;gt; &amp;lt;timing accuracy&amp;gt; &amp;lt;role switch&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;sniff mode&amp;gt; &amp;lt;RSSI&amp;gt; &amp;lt;power control&amp;gt; &amp;lt;enhanced iscan&amp;gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;interlaced iscan&amp;gt; &amp;lt;interlaced pscan&amp;gt; &amp;lt;AFH cap. slave&amp;gt; &lt;/div&gt;&lt;br /&gt;So, this fair Broadcom device doesn't even conceal the fact that it's barely Bluetooth interoperatable - it doesn't support park state at all.&lt;br /&gt;&lt;br /&gt;No surprises when asking it to go there nontheless:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;2012-01-07 16:03:08.863586 &amp;lt; HCI Command: Park State (0x02|0x0005) plen 6&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; handle 13 max 80 min 64&lt;/span&gt;&lt;br /&gt;&lt;span&gt;2012-01-07 16:03:08.865636 &amp;gt; HCI Event: Command Status (0x0f) plen 4&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Park State (0x02|0x0005) status 0x1a ncmd 1&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Error: Unsupported Remote Feature / Unsupported LMP Feature&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;LG KS20 WindowsMobile phone&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;# hcitool info 00:1E:75:&lt;/span&gt;&lt;span&gt;xx:xx:xx&lt;/span&gt;&lt;span&gt; | grep park&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;park state&amp;gt; &amp;lt;RSSI&amp;gt; &amp;lt;channel quality&amp;gt; &amp;lt;SCO link&amp;gt; &amp;lt;HV2 packets&amp;gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So, this one advertizes park. But:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;2012-01-07 16:29:11.288514 &amp;lt; HCI Command: Park State (0x02|0x0005) plen 6&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; handle 12 max 80 min 64&lt;/span&gt;&lt;br /&gt;&lt;span&gt;2012-01-07 16:29:11.290485 &amp;gt; HCI Event: Command Status (0x0f) plen 4&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Park State (0x02|0x0005) status 0x00 ncmd 1&lt;/span&gt;&lt;br /&gt;&lt;span&gt;2012-01-07 16:29:11.466508 &amp;gt; HCI Event: Mode Change (0x14) plen 6&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status 0x0c handle 12 mode 0x00 interval 0&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Error: Command Disallowed&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Broadcom is such Broadcom...&lt;br /&gt;&lt;br /&gt;&lt;span&gt;Huawei U8160 aka Vodafone 858 Smart Android phone&lt;/span&gt;&lt;br /&gt;&lt;span&gt;# hcitool info 04:C0:6F:xx:xx:xx | grep park&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&amp;lt;empty&amp;gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;2012-01-07 16:19:01.322536 &amp;lt; HCI Command: Park State (0x02|0x0005) plen 6&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; handle 12 max 80 min 64&lt;/div&gt;&lt;div&gt;2012-01-07 16:19:01.324521 &amp;gt; HCI Event: Command Status (0x0f) plen 4&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Park State (0x02|0x0005) status 0x1a ncmd 1&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Error: Unsupported Remote Feature / Unsupported LMP Feature&lt;/div&gt;&lt;br /&gt;Broadcom is such Broadcom...&lt;br /&gt;&lt;br /&gt;&lt;span&gt;HTC Mogul WindowsMobile phone&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;2012-01-07 16:11:14.184067 &amp;lt; HCI Command: Park State (0x02|0x0005) plen 6&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; handle 12 max 80 min 64&lt;br /&gt;2012-01-07 16:11:14.186430 &amp;gt; HCI Event: Command Status (0x0f) plen 4&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Park State (0x02|0x0005) status 0x00 ncmd 1&lt;br /&gt;2012-01-07 16:11:14.528429 &amp;gt; HCI Event: Mode Change (0x14) plen 6&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status 0x00 handle 12 mode 0x03 interval 80&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mode: Park&lt;/div&gt;&lt;br /&gt;Bwahaha! TI rules! &lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span&gt;Samsung i740 WindowsMobile phone&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Manufacturer: Cambridge Silicon Radio (10)&lt;br /&gt;&lt;br /&gt;2012-01-07 17:54:17.141466 &amp;lt; HCI Command: Park State (0x02|0x0005) plen 6&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; handle 12 max 80 min 64&lt;br /&gt;2012-01-07 17:54:17.142911 &amp;gt; HCI Event: Command Status (0x0f) plen 4&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Park State (0x02|0x0005) status 0x00 ncmd 1&lt;br /&gt;2012-01-07 17:54:17.472919 &amp;gt; HCI Event: Mode Change (0x14) plen 6&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status 0x00 handle 12 mode 0x03 interval 80&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Mode: Park&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span&gt;Linux computer with Broadcom chip&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Park mode work here, supervised by Bluez.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;So, out of 7 devices (that's whole piconet, and I have more!)&amp;nbsp; only 3 supported park mode.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;More insightful posts:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.devel/291&quot;&gt;http://article.gmane.org/gmane.linux.bluez.devel/291&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=&quot;http://article.gmane.org/gmane.linux.bluez.user/3834&quot;&gt;http://article.gmane.org/gmane.linux.bluez.user/3834&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-4518911199299630258?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sat, 07 Jan 2012 17:05:05 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Linux kernel Bluetooth ACL connection auto-disconnect</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-4253032817139714190</guid>
	<link>http://pfalcon-oe.blogspot.com/2012/01/linux-kernel-bluetooth-acl-connection.html</link>
	<description>I finally found time to figure out why &quot;hcitool cc&quot; created connections die very soon (see previous posts). It turned out to be handled on the Linux kernel level. What's worse is that it's hardcoded at 2s - no provision for adjustment via sysfs for example. &lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L120&quot;&gt;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L120 :&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L118&quot; name=&quot;L118&quot;&gt;118&lt;/a&gt; &lt;b&gt;&lt;i&gt;/* HCI timeouts */&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L119&quot; name=&quot;L119&quot;&gt;119&lt;/a&gt; #define &lt;a href=&quot;http://lxr.free-electrons.com/ident?v=3.0;i=HCI_CONNECT_TIMEOUT&quot;&gt;HCI_CONNECT_TIMEOUT&lt;/a&gt;     (40000) &lt;b&gt;&lt;i&gt;/* 40 seconds */&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L120&quot; name=&quot;L120&quot;&gt;120&lt;/a&gt; #define &lt;a href=&quot;http://lxr.free-electrons.com/ident?v=3.0;i=HCI_DISCONN_TIMEOUT&quot;&gt;HCI_DISCONN_TIMEOUT&lt;/a&gt;     (2000)  &lt;b&gt;&lt;i&gt;/* 2 seconds */&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L121&quot; name=&quot;L121&quot;&gt;121&lt;/a&gt; #define &lt;a href=&quot;http://lxr.free-electrons.com/ident?v=3.0;i=HCI_PAIRING_TIMEOUT&quot;&gt;HCI_PAIRING_TIMEOUT&lt;/a&gt;     (60000) &lt;b&gt;&lt;i&gt;/* 60 seconds */&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L122&quot; name=&quot;L122&quot;&gt;122&lt;/a&gt; #define &lt;a href=&quot;http://lxr.free-electrons.com/ident?v=3.0;i=HCI_IDLE_TIMEOUT&quot;&gt;HCI_IDLE_TIMEOUT&lt;/a&gt;        (6000)  &lt;b&gt;&lt;i&gt;/* 6 seconds */&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L123&quot; name=&quot;L123&quot;&gt;123&lt;/a&gt; #define &lt;a href=&quot;http://lxr.free-electrons.com/ident?v=3.0;i=HCI_INIT_TIMEOUT&quot;&gt;HCI_INIT_TIMEOUT&lt;/a&gt;        (10000) &lt;b&gt;&lt;i&gt;/* 10 seconds */&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;a href=&quot;http://lxr.free-electrons.com/source/include/net/bluetooth/hci.h?v=3.0#L124&quot; name=&quot;L124&quot;&gt;124&lt;/a&gt; #define &lt;a href=&quot;http://lxr.free-electrons.com/ident?v=3.0;i=HCI_CMD_TIMEOUT&quot;&gt;HCI_CMD_TIMEOUT&lt;/a&gt;         (1000)  &lt;b&gt;&lt;i&gt;/* 1 seconds */&lt;/i&gt;&lt;/b&gt;&lt;/pre&gt;&lt;br /&gt;Actual disconnection happens in &lt;a href=&quot;http://lxr.free-electrons.com/source/net/bluetooth/hci_conn.c?v=3.0#L227&quot;&gt;hci_conn_timeout()&lt;/a&gt;. Other issue is that such disconnect reported as &quot;Remote User Terminated Connection&quot;, which is, well, not true, as I don't terminate it, the system does. There's another status code, &quot;Remote Device Terminated Connection due to Low Resources&quot; which IMHO more suitable (if there's no &quot;low resources&quot;, why do you disconnect so quickly, dear Linux?).&lt;br /&gt;&lt;br /&gt;I quickly made a patch to be able to adjust disconnect timeout via sysfs, to experiment with low level connection more comfortably. Unfortunately, it turns out that I can extend delay to max 10s, even if set value much higher. So, something appears to call disconnect routine, even though I don't see any other references or timer manipulation %).&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-4253032817139714190?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sat, 07 Jan 2012 13:14:13 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Florian Boor: Computer startup aid using a LEGO train</title>
	<guid permalink="False">http://fl0rian.wordpress.com/?p=269</guid>
	<link>http://fl0rian.wordpress.com/2012/01/06/computer-startup-aid-using-a-lego-train/</link>
	<description>&lt;p&gt;Some times it happens that I have to dig out some old piece of hardware and try to get it running again&amp;#8230; I recently got a very geek present for my birthday &amp;#8211; one that requires a working &lt;a href=&quot;http://en.wikipedia.org/wiki/SGI_Indigo&quot;&gt;SGI Indigo&lt;/a&gt; next to it. Luckily nothing gets lost at &lt;a href=&quot;http://www.kernelconcepts.de/en&quot;&gt;&lt;em&gt;kernel concepts&lt;/em&gt;&lt;/a&gt; and I was able to select from several Indigo gathering dust at the attic of our office. It looks like the machines survived quite some years not being used pretty well &amp;#8211; including most of the harddisks. Unluckily all batteries which are supposed to supply the real-time clock chip were flat and these batteries are hard to get and soldered to the board. I did not have a replacement for the 3.6V Lithium battery but it was pretty easy to replace the battery with some cables to supply the board with 3.6V. The first thing to supply 3.6V I found was the electric LEGO locomotive the kids left lying around&amp;#8230;&lt;/p&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_270&quot;&gt;&lt;a href=&quot;http://fl0rian.files.wordpress.com/2012/01/indigo_legotrain.jpg&quot;&gt;&lt;img alt=&quot;Indigo Lego Train&quot; class=&quot;size-full wp-image-270&quot; height=&quot;690&quot; src=&quot;http://fl0rian.files.wordpress.com/2012/01/indigo_legotrain.jpg?w=460&amp;h=690&quot; title=&quot;Indigo Lego Train&quot; width=&quot;460&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Indigo Lego Train&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;This one was powered by three 1.2V AA rechargeable batteries &amp;#8211; perfect for some startup aid for this old machine. After applying power I was able to boot into IRIX 6.2 installed on this historic piece of hardware (100MHz MIPS R4000 CPU, 192MB of RAM, 2GB SCSI hard disk, ELAN graphics). I have to admit I somehow enjoyed the &amp;#8220;time travel&amp;#8221; experience playing around with such an old system for a while. Someone here still remembers the Netscape browser? Or Electropaint? One really scary experience was the network setup: IRIX 6.2 has the ability to configure a static IP through the GUI but obviously you have to edit the network startup script in order to &lt;a href=&quot;http://software.majix.org/irix/network-setup.shtml&quot;&gt;set a default route&lt;/a&gt; on boot.&lt;/p&gt;
&lt;p&gt;A lot more of information about these machines can be found &lt;a href=&quot;http://www.sgistuff.net/hardware/systems/indigo.html&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/fl0rian.wordpress.com/269/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/fl0rian.wordpress.com/269/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=fl0rian.wordpress.com&amp;blog=100118&amp;post=269&amp;subd=fl0rian&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 06 Jan 2012 18:31:43 +0000</pubDate>
</item>
<item>
	<title>Nils Faerber: M$ to buy Nokia smartphone division? WTF!?</title>
	<guid permalink="False">http://www.linuxtogo.org/70 at http://www.linuxtogo.org</guid>
	<link>http://www.linuxtogo.org/m%24-to-buy-nokia-smartphone-division%3F-wtf%21%3F</link>
	<description>&lt;p&gt;According to many news tickers, Slashdot amongst them:&lt;/p&gt;
&lt;p&gt;http://mobile.slashdot.org/story/12/01/05/2325227/microsoft-in-talks-to-buy-nokias-smartphone-division&lt;/p&gt;
&lt;p&gt;rumors spread that Microsoft is about to take over the whole smartphone business from Nokia and as nice cream tip, Elop might change back to Microsoft and lead that pack.&lt;/p&gt;
&lt;p&gt;If I would be a Nokia share holder I would sue Elop personally for intentionally destroying Nokia's smartphone business in order to have it later on being taken over by Microsoft entirely.&lt;br /&gt;
Doesn't that seem like a good 'evil' plan by Microsoft?&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.linuxtogo.org/m%24-to-buy-nokia-smartphone-division%3F-wtf%21%3F&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 06 Jan 2012 17:49:51 +0000</pubDate>
</item>
<item>
	<title>Florian Boor: Android Lessions Part 1: Bluetooth Crash</title>
	<guid permalink="False">http://fl0rian.wordpress.com/?p=252</guid>
	<link>http://fl0rian.wordpress.com/2012/01/04/android-lessions-part-1-bluetooth-crash/</link>
	<description>&lt;p&gt;Finally &amp;#8211; some free days for family and friends and to write a few lines which might be useful for someone else. Since Android started to become more and more interesting for industrial and business applications I got involved in some projects porting Android to several devices. It turned out that the documentation of the lower layers (hardware and driver adaptation) is very thin in contrast to the SDK and NDK documentation. But I took some notes working on these projects&amp;#8230; this one might be useful for other people porting Android 2.3.x and experiencing issues with Bluetooth.&lt;/p&gt;
&lt;p&gt;I ran into the issue that activating Bluetooth in the settings application resulted in a crash of the whole GUI. It seems that only ARMv5 core based devices are affected so that only a few people ran into this so far. (Not that it would be correct on more common cores used for Android devices such as ARMv7A, but it does not seem to cause the same effect.) The solution I found in the Android 4 commit log is quite simple for a problem causing that much of hassle:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;--- a/core/jni/android_server_BluetoothEventLoop.cpp&lt;br /&gt;
+++ b/core/jni/android_server_BluetoothEventLoop.cpp&lt;br /&gt;
@@ -311,7 +311,7 @@ static int register_agent(native_data_t *nat,&lt;br /&gt;
{&lt;br /&gt;
DBusMessage *msg, *reply;&lt;br /&gt;
DBusError err;&lt;br /&gt;
- bool oob = TRUE;&lt;br /&gt;
+ dbus_bool_t oob = TRUE;&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/fl0rian.wordpress.com/252/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/fl0rian.wordpress.com/252/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=fl0rian.wordpress.com&amp;blog=100118&amp;post=252&amp;subd=fl0rian&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Wed, 04 Jan 2012 23:05:45 +0000</pubDate>
</item>
<item>
	<title>Richard 'RP' Purdie: Banks of the tyne</title>
	<guid>http://www.rpsys.net/wp/?p=262</guid>
	<link>http://www.rpsys.net/wp/?p=262</link>
	<description>&lt;p&gt;Its traditional for the local trail riders to want to escape into the countryside during the Christmas holidays and this year was no exception. Last year we had snowfall which made it all the more interesting but its been relatively mild this year so far. We met at Prudhoe to realise the usual fuel stop was closed due to the bank holiday but there was another garage open nearby thankfully. We did the usual lanes around Slaley noting that the obstructed right of way which we&amp;#8217;ve had long standing issues with and I mentioned in a previous post is finally being opened up on the correct route!&lt;/p&gt;
&lt;p&gt;Before long I noticed the last man behind me had disappeared so I turned back to find his chain had snapped (at the split link). I was starting to assist in the repairs when it was pointed out my number plate was half hanging off. Some rearranging of some bolts had it reattached in a different way and others had the a replacement split link fitted at the expense of a pair of my pliers by that time.&lt;/p&gt;
&lt;p&gt;We came across a shooting party who were not pleased to see us and thought we shouldn&amp;#8217;t be there. They were shooting from a public highway (illegal) and standing around with loaded guns on a highway (illegal) but it wasn&amp;#8217;t worth risking a discussion with them. &lt;/p&gt;
&lt;p&gt;I seemed to be having trouble on anything muddy with the bike sliding all over. At one point I started off down a deeply rutted trail and found the bike weaving all over. It got bad enough that I ended up stopping abruptly when the wheel ran into the side of the rut, hard. Its amazing what goes through your mind and how quickly it can think through things at a time like this. Upon consideration of the situation, I quickly realised there was only air on my right hand side and that was the direction the bike was going to fall over in. Rather than try and catch the bike when my leg did find ground (and likely break something), I evidently decided that escape was the best option so I dived off the bike. I rolled in the air, hitting the ground rolling on my shoulder, and right side. Something told me I had too much momentum to try and stop. I was probably remembering the motorcycle track day rider briefings where they warn you about trying to get up too early after falling off a bike at speed (wait for 2 seconds *after* you think you&amp;#8217;ve stopped as you likely haven&amp;#8217;t). The consequences of not waiting are described as &amp;#8220;breaking off your sticky out bits&amp;#8221;. I therefore let myself make another revolution at which point my speed was sufficiently reduced and I somehow made a relatively graceful transition to a standing position at which point I was laughing. The group stopped behind me gave my gymnastics top scores. The body armour did its job and I didn&amp;#8217;t really feel any of it. The bike was fine having really just been laid on its side.&lt;/p&gt;
&lt;p&gt;We wound our way over trails I&amp;#8217;m starting to know quite well heading down the south side of the Tyne and ended up at Twice Brewed for lunch. Its great to see some of the interesting places we get to on the trails although its frustrating not being able to sample the beer! We headed back along the north bank and did some trails I&amp;#8217;ve not been on for a while, probably not since I first joined the TRF. By this time is was starting to get dark and it was time to head home. It was good to be reminded of some of those lanes and there was at least one I never remember having ridden on before so it was an interesting day out.&lt;/p&gt;</description>
	<pubDate>Tue, 03 Jan 2012 16:43:23 +0000</pubDate>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Bluetooth link key types</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-1142444784281477159</guid>
	<link>http://pfalcon-oe.blogspot.com/2011/12/bluetooth-link-key-types.html</link>
	<description>From &lt;a href=&quot;http://lxr.linux.no/#linux+v3.1.6/include/net/bluetooth/hci.h#L254&quot;&gt;http://lxr.linux.no/#linux+v3.1.6/include/net/bluetooth/hci.h#L254&lt;/a&gt; :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span&gt;/* Link Key types */&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_COMBINATION&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_LOCAL_UNIT&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 0x01&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_REMOTE_UNIT&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 0x02&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_DEBUG_COMBINATION&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x03&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_UNAUTH_COMBINATION&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x04&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_AUTH_COMBINATION&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 0x05&lt;/span&gt;&lt;br /&gt;&lt;span&gt;#define HCI_LK_CHANGED_COMBINATION&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x06&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-1142444784281477159?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Fri, 30 Dec 2011 13:07:06 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Pairing Bluetooth devices from command line</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-2525264296051435019</guid>
	<link>http://pfalcon-oe.blogspot.com/2011/12/pairing-bluetooth-devices-from-command.html</link>
	<description>Following appear to be commands required to trigger pairing process from the command line:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;hcitool cc &amp;lt;bdaddr&amp;gt;; hcitool auth &amp;lt;bdaddr&amp;gt;&lt;/code&gt; &lt;br /&gt;&lt;br /&gt;Commands must be on the same line, separated by the semicolon, as described in &lt;a href=&quot;http://pfalcon-oe.blogspot.com/2011/10/making-hcitool-commands-work.html&quot;&gt;previous post&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;At this point, Bluez auth agent should kick in, asking for a code, if you have GUI one.&lt;br /&gt;&lt;br /&gt;I found &lt;a href=&quot;http://www.math.ucla.edu/%7Ejimc/documents/bluetooth-0703.html#pairing&quot;&gt;a page&lt;/a&gt; which suggests that only &quot;hcitool cc&quot; was enough for the author to trigger pairing, this could be explained by the fact that prior to 2.1, Bluetooth supported security modes which could protect either entire device access or just some of its profiles.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-2525264296051435019?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Fri, 30 Dec 2011 13:00:15 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Paul 'pfalcon' Sokolovsky: Making hcitool commands work</title>
	<guid>tag:blogger.com,1999:blog-3407720807708937392.post-6476384055884301812</guid>
	<link>http://pfalcon-oe.blogspot.com/2011/10/making-hcitool-commands-work.html</link>
	<description>It's a shame how some now-ubiquitous technologies, like Bluetooth, are under-used and under-understood. And by usage I don't mean here occasional business card exchange, net access, being bluesnarfed and other boring consumer-level activity, but page scans, inquiries and having secure wireless communication you can trust (or not).&lt;br /&gt;&lt;br /&gt;Anyway, if you ever tried using hcitool you may think it barely works. For example:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;# hcitool cc &amp;lt;bdaddr&amp;gt;&lt;br /&gt;# hcitool lq &amp;lt;bdaddr&amp;gt;&lt;br /&gt;Not connected.&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Ok, so here's the matter. First of all, hcitool accesses hci device directly, and that requires root access. Secondly, it works on low protocol level (ACL), so connection established by &quot;cc&quot; is of course not pairing or service-level connection. It's low level connection, which persist only while data is transferred and shutdown quickly to preserve the power. Yep, it shuts down while you type or even re-run next command. That's how it should be done:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;# hcitool cc &amp;lt;bdaddr&amp;gt;; hcitool lq &amp;lt;bdaddr&amp;gt;&lt;br /&gt;Link quality: 255&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;More fun:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;# hcitool cc $BDADDR; hcitool auth $BDADDR; hcitool enc $BDADDR; hcitool key $BDADDR; hcitool con&lt;br /&gt;Connections:&lt;br /&gt;&amp;lt; ACL 7D:75:75:xx:xx:xx handle 12 state 1 lm MASTER AUTH ENCRYPT SECURE &lt;br /&gt;&lt;/code&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/3407720807708937392-6476384055884301812?l=pfalcon-oe.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Fri, 30 Dec 2011 12:51:32 +0000</pubDate>
	<author>noreply@blogger.com (pfalcon)</author>
</item>
<item>
	<title>Marcin 'Hrw' Juszkiewicz: Links for 2011-12-29 [del.icio.us]</title>
	<guid permalink="False">http://del.icio.us/Hrw#2011-12-29</guid>
	<link>http://feedproxy.google.com/~r/HrwWebsite/~3/iHVROnYDkyQ/Hrw</link>
	<description>&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://dougvitale.wordpress.com/2011/12/21/deprecated-linux-networking-commands-and-their-replacements/&quot;&gt;Deprecated Linux networking commands and their replacements &amp;laquo; Doug Vitale Tech Blog&lt;/a&gt;&lt;br /&gt;
Specifically, the deprecated Linux networking commands in question are: arp, ifconfig, iptunnel, iwconfig, nameif, netstat, and route. These programs (except iwconfig) are included in the net-tools package that has been unmaintained for years. The functionality provided by several of these utilities has been reproduced and improved in the new iproute2 suite, primarily by using its new ip command. The iproute2 software code and documentation are available from the Linux Foundation.&lt;/li&gt;
&lt;/ul&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/HrwWebsite/~4/iHVROnYDkyQ&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 30 Dec 2011 08:00:00 +0000</pubDate>
</item>
<item>
	<title>Richard 'RP' Purdie: CRM Spares  Not looking so good</title>
	<guid>http://www.rpsys.net/wp/?p=247</guid>
	<link>http://www.rpsys.net/wp/?p=247</link>
	<description>&lt;p&gt;One of the reasons I like the CRM was the availability of spare parts. It may be an 18 year old bike but it was ahead of its time in design and you could still get most parts for it.&lt;/p&gt;
&lt;p&gt;After the last trip out, it was suspected the oil pump throttle cable was pinched somewhere causing the sticky oil pump action, likely after having had the tank off. I finally got around to taking the tank off and it was clear this was not the cause. Even having isolated the cable from the splitter box with the main throttle cable, it was still not moving freely. Even with the cable totally removed from the bike, it wasn&amp;#8217;t clear why it wasn&amp;#8217;t happy although there was a nasty looking stretch in the cable outer just as it exits the oil pump. Fiddling with the cable, a strand of frayed cable appeared at which point it became clear there was hidden internal damage. I got a little more forceful in separating some of the fittings and found it really was rather worn being down to a couple of strands:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.rpsys.net/wp/rp/crm-oilcable.jpg&quot; /&gt;&lt;/p&gt;
&lt;p&gt;I was lucky this hadn&amp;#8217;t snapped, cutting off the bike&amp;#8217;s two stroke oil supply. So, no problem, I&amp;#8217;ll just buy a new one. Upon enquiry with the usual purveyor of parts for CRMs I was told that it was not possible to order one and they had no replacement, sorry. This was a bit of a surprise and apparently likely due to the Japanese Tsunami disrupting the Honda parts supply chain. The likelihood of them ever retooling to produce these parts again was remote. I really wanted to have the bike available for use over the holidays too.&lt;/p&gt;
&lt;p&gt;Not to be stopped by something like this I went and took a look at my brother&amp;#8217;s box of throttle cable components and found he had the right pieces to make a new one (new end fittings, cable, inner liner and outer). The end result:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;&quot; src=&quot;http://www.rpsys.net/wp/rp/crm-oilcable1.jpg&quot; /&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;http://www.rpsys.net/wp/rp/crm-oilcable2.jpg&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Its now on the bike and should work as required. I&amp;#8217;ve rerouted it a bit to avoid pressure like the original had. I also had to tighten the return spring on the oil pump since the it wasn&amp;#8217;t fully closing the oil feed at closed throttle and is evidently weakened with age and probably the previous damaged cable.  Longer term, the lack of spares for the CRM might start to become an issue as there are many things that can&amp;#8217;t be copied as easily &lt;img alt=&quot;:(&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.rpsys.net/wp/wp-includes/images/smilies/icon_sad.gif&quot; /&gt; &lt;/p&gt;</description>
	<pubDate>Tue, 20 Dec 2011 23:29:29 +0000</pubDate>
</item>
<item>
	<title>Koen Kooi: Using the analog pins on a beaglebone</title>
	<guid permalink="False">http://dominion.thruhere.net/koen/310 at http://dominion.thruhere.net/koen/cms</guid>
	<link>http://dominion.thruhere.net/koen/cms/using-the-analog-pins-on-a-beaglebone</link>
	<description>&lt;p&gt;The long term plan is to use the IIO framework, but till that happens:&lt;/p&gt;
&lt;pre&gt;root@beaglebone:~# &lt;b&gt;for adc in /sys/devices/platform/tsc/ain* ; do echo &quot;$(basename $adc): $(cat $adc)&quot; ; done&lt;/b&gt;
ain1: 3967
ain2: 3762
ain3: 3930
ain4: 1993
ain5: 2096
ain6: 3748
ain7: 3814
ain8: 31&lt;/pre&gt;</description>
	<pubDate>Tue, 20 Dec 2011 17:48:13 +0000</pubDate>
</item>
<item>
	<title>Richard 'RP' Purdie: Green lanes, mid week, two bikes</title>
	<guid>http://www.rpsys.net/wp/?p=242</guid>
	<link>http://www.rpsys.net/wp/?p=242</link>
	<description>&lt;p&gt;[This happened back in September but I realised I never posted it]&lt;/p&gt;
&lt;p&gt;I&amp;#8217;ve promised my brother a try on a trail bike somewhere and things seemed to align to make it possible. Rather than a quick try, I suggested we just go for a run out. I&amp;#8217;ve never been trail riding mid week before and never just with two bikes. This would also be the YZ&amp;#8217;s second real trip out. What could possibly go wrong?&lt;/p&gt;
&lt;p&gt;We left my garage just after the rush hour traffic died down and had the horrible fight through traffic to reach the other side of Newcastle. After a few more miles we reached the first trail, a nice uphill section which is &amp;#8220;ideal&amp;#8221; for someone who&amp;#8217;s never had a bike offroad before. Chris did fine though. We looped over some further trails winding our way to Slaley forest. One of the routes there has had one end blocked up and we confirmed that was still the case. The local group is working on getting it fixed.&lt;/p&gt;
&lt;p&gt;Since Chris didn&amp;#8217;t want to destroy his road bike boots, I was trying to be careful where I took him. I couldn&amp;#8217;t resist demonstrating the bike was perfectly capable to going through mud over the wheels on at least one occasion though.&lt;/p&gt;
&lt;p&gt;We exited Slaley going through some water crossings which I got the bikes through, looped around some trails. At this point Chris was riding through the water crossings with his feet up. I did point out this was fine until you hit something. This is a lesson you learn the hard way though.&lt;/p&gt;
&lt;p&gt;We then came back to Slaley from a different direction and then up onto Emberly Fell. This trail is seasonal and closed from 30th Sept for six months of the year so it was nice to ride it before it was out of bounds for a while. I think Chris found the mud/moorland harder than the rockier pieces we&amp;#8217;d been on so far. He did have the bike stop standing in a rut as he went for a run. At least he didn&amp;#8217;t have to pick it up &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.rpsys.net/wp/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; . I was also bemused at one point to be sitting waiting and rather than ride up to me, he took a detour though several bushes &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.rpsys.net/wp/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;From here it was up onto Blanchland moor, over the top into the next valley. I&amp;#8217;d decided the best place to head was Hamsterly Forest, a dead end but good fun with no deep water crossings. We made it over the first part of the route, then my bike started sounding rough. Not good. At this point I realised I was out of fuel. We hadn&amp;#8217;t made a fuel stop when getting to the other side of Newcastle like I&amp;#8217;d planned.&lt;/p&gt;
&lt;p&gt;So what to do? I did have &amp;#8220;reserve&amp;#8221; although looking into the tank, I wasn&amp;#8217;t optimistic about how long it would last. The nearest garage was the one we were heading for in Wolsingham, quite a distance away and there was not one nearer. I&amp;#8217;d screwed up by not stopping for fuel once through Newcastle and was still thinking in CRM tank range. All we could do was press on. I went into fuel conservation mode, stopping the bike when I could although since it had no kill switch and has to stall in gear to stop the engine, it was hard to coast down hills.&lt;/p&gt;
&lt;p&gt;We continued to have some good fun with me riding into what looked like a little puddle that pretty much swallowed the bike. Fuel conservation was forgotten as I had to open it up to get out of that mess quickly, muddy water going everywhere. Apparently it was funny to watch.&lt;/p&gt;
&lt;p&gt;The fuel ran out on the flat tops of the hills overlooking the valley that Wolsingham is in. I assessed how much was in the CRM and decided to steal some of its for the YZ in the hope we&amp;#8217;d both make it to the garage. The easiest way to do this was simply to remove the CRM&amp;#8217;s tank and drain it in which we did. I got over the flat bit, stalled the bike,  then coasted down the hillside. I had enough fuel to ride the road to the garage and I don&amp;#8217;t think I&amp;#8217;ve ever been more relieved to reach a fuel station.&lt;/p&gt;
&lt;p&gt;After refueling we continued on to Hamsterly with Chris getting to see&lt;br /&gt;
some pretty nice landscape. The water eroded path we rode along contains&lt;br /&gt;
pretty scary drops, bumps, rocks and other obstacles and is a lovely&lt;br /&gt;
illustration of what those bikes can actually cope with. We reached the&lt;br /&gt;
far side of Hamsterly and had lunch.&lt;/p&gt;
&lt;p&gt;The trip back was pretty much the route out but with Slaley cut out. It was getting quite late by this point and we needed to get back. On the third last trail of the day, Chris asked me what the red light meant. It was either over temperature or low two stoke oil, we decided on over temperature and the radiator seemed low on water. It should have been fine for two stroke oil. It was also smoking quite a bit. I decided to abort the rest of the lanes and head for civilisation and a garage. It did take water but not as much as we&amp;#8217;d expected. I decided to head home and hope we made it.&lt;/p&gt;
&lt;p&gt;As we drew nearer my house, the smoke was getting worse and worse, it was like a smoke screen. I was dreading what state the engine was in but at this point we might as well try and make it back. We got back, washed off the bikes and put them away.&lt;/p&gt;
&lt;p&gt;I finally got around to a quick look at the bike to see what was wrong. Surprisingly after being left for a couple of days the bike had good compression and fired up first kick. The red warning light was still on. That means its the two stoke oil as it definitely was cold (or something was broken with the temperature sensing which is unlikely). I decided to check how much two stroke oil it had and pulled off the oil pump cover to disconnect the pipe to check there was still some in there. There was oil but the oil pump looked odd somehow, cue some staring at it. There was something not right, but what? I poked the pulley and it sprang back to closed position. Opening the throttle was indeed opening the oil pump but  closing the throttle was not closing the pump off, the cable was sticking.  Aha!, that would explain the problems. So the working theory is that when we put the tank back on we&amp;#8217;ve somehow trapped the oil pump cable and its not returning properly, I&amp;#8217;ve not checked into it further yet.&lt;/p&gt;
&lt;p&gt;Chris did extremely well for a first time out on green lanes and whilst its a shame the CRM decided to act up, I don&amp;#8217;t think it spoilt the day too much.&lt;/p&gt;</description>
	<pubDate>Tue, 20 Dec 2011 11:52:14 +0000</pubDate>
</item>
<item>
	<title>Michael 'Mickey' Lauer: IT has seen a crazy year</title>
	<guid permalink="False">http://www.vanille-media.de/site/?p=158</guid>
	<link>http://www.vanille-media.de/site/index.php/2011/12/13/it-has-seen-a-crazy-year/</link>
	<description>&lt;p&gt;Information Technology has seen a really crazy year. Among all the smaller incidents, the big bangs involved Nokia partnering with Microsoft, abandoning Maemo, HP driving with WebOS against the wall, patent lawsuits everywhere.&lt;/p&gt;
&lt;p&gt;What that means for FOSS-lovers is clear&amp;#8230; you can&amp;#8217;t trust any company to continue working on anything. Business demands are what counts in the world of mass markets. If you want longterm support for a platform, your best bet is to build a community around it. But you will also want to work on hardware support otherwise you&amp;#8217;ll run into the next dead end.&lt;/p&gt;
&lt;p&gt;To be honest, right now I don&amp;#8217;t see much of a future for any mobile Linux-inspired platform other than the mutation called Android. But that&amp;#8217;s not much of a problem per se. The smartphone market is crazy. To compete in that world, you have to give up on freedom. But is the mass market really what we want? Is it what mobile Linux needs?&lt;/p&gt;
&lt;p&gt;I don&amp;#8217;t think so. There are still &lt;em&gt;huge&lt;/em&gt; opportunities for using Linux-based mobile software platforms in niches such as machine2machine communication, home automation, research, teaching, and more. That&amp;#8217;s where a service-based middleware like FSO comes into the game: for special interests. However, even niche-adoption is hindered without a minimal set of applications. And that is where we still lack: Even special interest people want to use their smartphones to manage contacts, browse the web, send mails, play media, etc. We don&amp;#8217;t have an integrated software stack with a complete set of UI applications that would cover these needs. Openmoko worked on one, but failed. Nokia worked on multiple ones, but gave up (multiple times). What else do we have?&lt;/p&gt;
&lt;p&gt;With HP&amp;#8217;s recent announcement about releasing WebOS as open source, the game may have changed. If we could use the WebOS application stack on top of the FSO middleware, we may have a real chance to get something great and usable – and &lt;em&gt;complete&lt;/em&gt; – soon. I have always liked the WebOS UI. If it&amp;#8217;s a bit slower than other UIs, who cares as long as it is free?&lt;/p&gt;</description>
	<pubDate>Tue, 13 Dec 2011 07:55:07 +0000</pubDate>
</item>
<item>
	<title>Nils Faerber: Success - HP frees WebOS !</title>
	<guid permalink="False">http://www.linuxtogo.org/69 at http://www.linuxtogo.org</guid>
	<link>http://www.linuxtogo.org/success-hp-frees-webos-%21</link>
	<description>&lt;p&gt;According to HP and their own developer blog, WebOS indeed becomes open source!&lt;/p&gt;
&lt;p&gt;http://developer.palm.com/blog/2011/12/open-source/&lt;/p&gt;
&lt;p&gt;This is excellent and great news. I am looking forward to seeing the actual code and project. I sincerely hope that this will not just become a code-dump onto the community.&lt;/p&gt;
&lt;p&gt;I am very excited - let's hope for the best!&lt;/p&gt;
&lt;p&gt;Cheers&lt;br /&gt;
  nils&lt;/p&gt;</description>
	<pubDate>Sat, 10 Dec 2011 01:00:48 +0000</pubDate>
</item>
<item>
	<title>Florian Boor: WebOS goes Open Source</title>
	<guid permalink="False">http://fl0rian.wordpress.com/?p=258</guid>
	<link>http://fl0rian.wordpress.com/2011/12/09/webos-goes-open-source/</link>
	<description>&lt;p&gt;Amazing news! HP just announced that WebOS will become an Open Source project lead and supported by HP in future. The full annoncement can be found &lt;a href=&quot;http://developer.palm.com/blog/2011/12/open-source/&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;
HP has an official press release about this &lt;a href=&quot;http://www.hp.com/hpinfo/newsroom/press/2011/111209xa.html&quot;&gt;here&lt;/a&gt;. I&amp;#8217;m really looking forward to work with it&amp;#8230; It&amp;#8217;s quite an interesting framework for a large number of devices. The really funny thing is that Nils &lt;a href=&quot;http://www.linuxtogo.org/open-%2Aplease%2A%3A-hp-please-open-source-%28free%29-webos%21&quot;&gt;asked them&lt;/a&gt; to do so in his blog some weeks ago :-)&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;http://www.linuxtogo.org/~florian/webos-logo.png&quot; /&gt;&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/fl0rian.wordpress.com/258/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/fl0rian.wordpress.com/258/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=fl0rian.wordpress.com&amp;blog=100118&amp;post=258&amp;subd=fl0rian&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 09 Dec 2011 20:58:34 +0000</pubDate>
</item>
<item>
	<title>Michael 'Mickey' Lauer: Towards the end of 2011</title>
	<guid permalink="False">http://www.vanille-media.de/site/?p=157</guid>
	<link>http://www.vanille-media.de/site/index.php/2011/12/09/towards-the-end-of-2011/</link>
	<description>&lt;p&gt;Tempus fugit. I can tell you. Even more so, if you have a baby. I must confess I somewhat underestimated the impact the baby would have on my spare time. In some weird mindset I really thought I could continue working as usual on my open source projects&amp;#8230; as we know now I couldn&amp;#8217;t. I completely lost track and have to catch up with all changes that happened over the last 6 months.&lt;/p&gt;
&lt;p&gt;The first bunch of weeks with the baby were &lt;em&gt;really&lt;/em&gt; demanding. I mean, &lt;strong&gt;really&lt;/strong&gt;. She screamed a lot and could only sleep in our arms. Boy, were we tired. We carried her around so much we have Schwarzenegger arms now. But it&amp;#8217;s great to see her developing, err&amp;#8230; growing up, of course. With 6 months now she is a very interested baby, eager to learn new things and always trying to become more mobile.&lt;/p&gt;
&lt;p&gt;Luckily both my wife and me are self-employed. It so much easier when you can skip some hours at the usual start of the workday and also at the usual end. Of course, the work needs to be done, so we have to compensate when she&amp;#8217;s in bed. But still, it&amp;#8217;s very satisfying being able to see her twice a day for a couple of hours &amp;#8212; not all families have this luxury. Plus the existence of our two invaluable grandmas&amp;#8230; it&amp;#8217;s great.&lt;/p&gt;
&lt;p&gt;Company-wise, the &lt;a href=&quot;http://www.app-developers.de&quot; title=&quot;Lauer &amp; Teuber&quot;&gt;Lauer &amp;amp; Teuber GbR&lt;/a&gt; had an amazing year with many interesting iOS (and some Android) projects. We have reached the maximum we can do with the two guys we are, so we decided to grow and hire our first regular employee who&amp;#8217;s going to start in 2012. We also rented another office and are already moving.&lt;/p&gt;
&lt;p&gt;I&amp;#8217;m slowly getting back into some of my beloved open source projects&amp;#8230; it&amp;#8217;s great that work on e.g. &lt;a href=&quot;http://www.freesmartphone.org&quot; title=&quot;The freesmartphone.org middleware project&quot;&gt;FSO&lt;/a&gt; did not stall at all, but continued while I was &amp;#8220;away&amp;#8221;. Last week, I attended the 3rd installment of the &lt;a href=&quot;http://www.ohsw.de&quot; title=&quot;Open Hard- and Software Workshop&quot;&gt;Open Hard- and Software Workshop&lt;/a&gt; in munich, where the latest development of the very promising &lt;a href=&quot;http://www.gta04.de&quot; title=&quot;GTA04 Open Mobile Phone Hardware&quot;&gt;GTA04&lt;/a&gt; mobile phone was presented. I had a talk about &lt;a href=&quot;http://www.vala-project.org&quot; title=&quot;Vala Programming Language&quot;&gt;Vala&lt;/a&gt; which was well received. By the way, my Vala-book plans are not dead yet&amp;#8230; just in parking position &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.vanille-media.de/site/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Next week I&amp;#8217;m attending the FSOSHRCON, a joined conference with the people working on the freesmartphone.org middleware and the &lt;a href=&quot;http://www.shr-project.org&quot; title=&quot;SHR project&quot;&gt;SHR&lt;/a&gt; software. It&amp;#8217;s going to be great seeing all the folks again, concentrating a full weekend to agree on some important issues laying the path forward for the next year. Can&amp;#8217;t wait to be there.&lt;/p&gt;
&lt;p&gt;What&amp;#8217;s left is the feeling that an extremely busy year has passed by, spiced with incredibly intense emotions. I&amp;#8217;m a happy man and I love my life. I&amp;#8217;m given exciting opportunities, but also challenges – and I plan to accept everything &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://www.vanille-media.de/site/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;All the best to you guys!&lt;/p&gt;</description>
	<pubDate>Fri, 09 Dec 2011 08:10:31 +0000</pubDate>
</item>
<item>
	<title>Florian Boor: Summer Holidays</title>
	<guid permalink="False">http://fl0rian.wordpress.com/?p=243</guid>
	<link>http://fl0rian.wordpress.com/2011/12/02/summer-holidays/</link>
	<description>&lt;p&gt;Now that its autumn in Europe it is a good time to blog about the summer vacations :) The &lt;a href=&quot;http://events.ccc.de/camp/2011/wiki/Media&quot;&gt;Chaos Communication Camp&lt;/a&gt; was a real highlight &amp;#8211; just a perfect environment for Hacker&amp;#8217;s and their fork()^h^h^h offsprings summer vacations. I do not want to write too much&amp;#8230; saving some words for more technical posts, but maybe someone likes the photos I took:&lt;/p&gt;
&lt;div class=&quot;wp-caption alignnone&quot;&gt;&lt;a href=&quot;http://www.home.unix-ag.org/boor/pix/camp2011-11.jpg&quot;&gt;&lt;img alt=&quot;Quadcopter Nightflight&quot; class=&quot; &quot; height=&quot;320&quot; src=&quot;http://www.home.unix-ag.org/boor/pix/scaled/sc_camp2011-11.jpg&quot; title=&quot;Nightflight&quot; width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Quadcopter Nightflight&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot;&gt;&lt;a href=&quot;http://www.home.unix-ag.org/boor/pix/firstnight.jpg&quot;&gt;&lt;img alt=&quot;Camp at Night&quot; class=&quot; &quot; height=&quot;320&quot; src=&quot;http://www.home.unix-ag.org/boor/pix/scaled/sc_firstnight.jpg&quot; title=&quot;Camp at Night&quot; width=&quot;480&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Camp at Night&lt;/p&gt;&lt;/div&gt;
&lt;div class=&quot;wp-caption alignnone&quot;&gt;&lt;a href=&quot;http://www.home.unix-ag.org/boor/pix/antonov2.jpg&quot;&gt;&lt;img alt=&quot;Antonov AN-2&quot; class=&quot;   &quot; height=&quot;333&quot; src=&quot;http://www.home.unix-ag.org/boor/pix/scaled/sc_antonov2.jpg&quot; title=&quot;Antonov AN-2&quot; width=&quot;467&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Antonov AN-2&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;This nice machine was parked next to our caravan&amp;#8230; it&amp;#8217;s a little bit larger than you might guess from the photo. I have placed some more photos &lt;a href=&quot;http://www.home.unix-ag.org/boor/pix/html/index_0.html&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/fl0rian.wordpress.com/243/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/fl0rian.wordpress.com/243/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=fl0rian.wordpress.com&amp;blog=100118&amp;post=243&amp;subd=fl0rian&amp;ref=&amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 02 Dec 2011 21:03:53 +0000</pubDate>
</item>

</channel>
</rss>

