<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
<?xml-stylesheet type="text/css" href="http://www.datenfreihafen.org/~stefan/weblog/"?>


<title type="html">My place to share some bits and bytes</title>
<subtitle type="html">datenfreihafen.org, linux, and computer science.</subtitle>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog"/>
<link rel="self" type="application/atom+xml" href="http://www.datenfreihafen.org/~stefan/weblog/atom.xml"/>
<updated>2010-05-24T13:45:27+02:00</updated>
<author>
<name>Stefan Schmidt</name>
<uri>http://www.datenfreihafen.org/~stefan/weblog</uri>
</author>
<id>http://www.datenfreihafen.org/~stefan/weblog/</id>
<generator uri="http://nanoblogger.sourceforge.net" version="3.4.2">
NanoBlogger
</generator>

<entry>
<title type="html">dfu-util 0.1 release is out</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2010/05/index.html#e2010-05-24T13_45_27.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2010/05/index.html#e2010-05-24T13_45_27.txt</id>
<published>2010-05-24T13:45:27+02:00</published>
<updated>2010-05-24T13:45:27+02:00</updated>
<category term="openmoko" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>The title says it all. I just released the first dfu-util
<a href="http://dfu-util.gnumonks.org/releases/">release</a> to the public. Please test it
and package it for your distro. :)</p>
</div>
</content>

</entry>
<entry>
<title type="html">Towards a dfu-util 0.1 release</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2010/05/index.html#e2010-05-10T12_31_03.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2010/05/index.html#e2010-05-10T12_31_03.txt</id>
<published>2010-05-10T12:31:03+02:00</published>
<updated>2010-05-10T12:31:03+02:00</updated>
<category term="linux" />
<category term="openmoko" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>We are making good progress towards a first release of dfu-util. Harald was kind
enough to prepare a subdomain for it under <a href="http://gnumonks.org/">gnumonks.org</a>
and I already setup a simple <a href="http://dfu-util.gnumonks.org/">website</a>, a <a href="http://git.openezx.org/dfu-util.git">git
repo</a> with the complete svn history imported
and pushed out a <a href="http://dfu-util.gnumonks.org/releases/dfu-util-0.1-rc1.tar.gz">release
candidate</a> for 0.1.</p>
<p>If no show-stopper crosses my way I will make the release Sunday 2010-05-23. Once
this is done I will try to make sure that this release replaces the various svn
snapshots distros have already packaged while waiting for a real release.</p>
<p>This is of course only the first step. On my agenda is better support for other
hardware, more DFU 1.0 compliance and support for the changes from DFU 1.1. Next
to this improvements I'm also thinking about the ecosystem around DFU on
embedded linux systems. Getting the DFU u-boot patches fixed and merged would be
a nice target as well. Be warned though that this will progress slowly as it is
just one of my spare time projects and has to compete with others.</p>
</div>
</content>

</entry>
<entry>
<title type="html">Playing with 802.15.4 under linux</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2010/05/index.html#e2010-05-07T11_51_50.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2010/05/index.html#e2010-05-07T11_51_50.txt</id>
<published>2010-05-07T11:51:50+02:00</published>
<updated>2010-05-07T11:51:50+02:00</updated>
<category term="linux" />
<category term="computer science" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Until recently I had not much interest to play with the low-rate wireless
personal area networks, thats what the formal description of
<a href="http://standards.ieee.org/getieee802/download/802.15.4-2006.pdf">802.15.4</a> is.
Often it is also referenced as ZigBee, but while Zigbee is based on it it adds some
more layers on top which I'm not going to play with.</p>
<p>The main reason why I so far had not much interest in 802.15.4 is that it was
almost always used in small micro-controller based systems. While I understand
that for low power consumption products like sensor network nodes it is the
right approach I never felt like I would enjoy to work on such systems.</p>
<p>In my study thesis I'm doing right now I have to get <a href="http://www.rfc-editor.org/rfc/rfc5050.txt">delay tolerant
networking</a>
working over a 802.15.4 link. For this I'm using a setup with two
<a href="http://www.xbow.com/Products/productdetails.aspx?sid=253">iMote2</a> boards
which are based on a powerful PXA27x SoC and are able to run linux. The linux
port of the board was already in a really good shape and already included in the
mainline kernel which gave me a good base to work from.</p>
<p>On the board is a Chipcon <a href="http://focus.ti.com/docs/prod/folders/print/cc2420.html">CC2420 802.15.4 RF
transceiver</a> which
connected over SPI with some additional GPIO and IRQ lines. The linux kernel
already is prepared with a <a href="http://sourceforge.net/apps/trac/linux-zigbee/">802.15.4
stack</a> and luckily there was
already posted a driver for the cc2420 which I had to bug fix it a bit over the
last weeks. All my changes are already in, or on the way to, the linux zigbee tree
which contains the mac802154 layer for the driver. This layer had not made its way
upstream yet, but I hope that will happen within the next 2 or 3 release cycles.
Next step on my agenda is to make it work with
<a href="http://www.ibr.cs.tu-bs.de/projects/ibr-dtn/">ibrdtn</a>.</p>
</div>
</content>

</entry>
<entry>
<title type="html">Angular rate driver work finished</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2010/04/index.html#e2010-04-26T12_30_18.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2010/04/index.html#e2010-04-26T12_30_18.txt</id>
<published>2010-04-26T12:30:18+02:00</published>
<updated>2010-04-26T12:30:18+02:00</updated>
<category term="linux" />
<category term="openmoko" />
<category term="freelancer" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Last week I finished the contract work for the angular rate drivers I mentioned in
my last post.</p>
<p>During the final meeting we also verified that the output of the sensors are
what we expect them to be. While coding them I was able to check that I'm using
the right registers, values are changing when I turn the device, but I had no
test equipment to see if the measurement is really correct.</p>
<p>At the DLR we could use an angular rate table for this. The device itself was
mounted on the rotating table with power and data connection on sliding
contacts. Some pictures of the setup can be found
<a href="http://www.datenfreihafen.org/~stefan/DLR/Drehtisch/">here</a>.</p>
<p>From the measurement point the MLX90609 and the SAR100 variant we used are quite
different. The MLX is capable of 300 degree per second while the SAR100 was able
to measure 1500. In our test we even had good results with 1800. During this
testing we found a bit different offsets as described in the data sheets but
still pretty close to what we expected.</p>
<p>I'm really looking forward to the launch of the rocket to hear about the results
the sensors produced and how it compares to the big money equipment that it used for
the flight control of the rocket. Once the rocket is back and the data is
analyzed I also should be able to get a board back and do my part on getting the
drivers into mainline. For now I have posted them as demo to the openmoko kernel
list.</p>
</div>
</content>

</entry>
<entry>
<title type="html">Freerunner preparing for his second outer space trip</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2010/02/index.html#e2010-02-28T15_40_36.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2010/02/index.html#e2010-02-28T15_40_36.txt</id>
<published>2010-02-28T15:40:36+02:00</published>
<updated>2010-02-28T15:40:36+02:00</updated>
<category term="linux" />
<category term="openmoko" />
<category term="freelancer" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p><img src="http://www.datenfreihafen.org/~stefan/DLR/IMG_2557-small.JPG"
alt="Freerunner with case" align="left" hspace="10" vspace="0">
In May last year the Freerunner had its debut in outer space. The <a href="http://www.dlr.de/rb/desktopdefault.aspx/tabid-4711/7804_read-12180/">Mobile Rocket Base</a>
department of the <a href="http://www.dlr.de/en/desktopdefault.aspx">German Aerospace Center</a>
<a href="http://www.dlr.de/en/desktopdefault.aspx/tabid-1/86_read-17565/">launched</a> a
research rocket into the aerospace (140Km height). On board was the pictured
Freerunner. Although the metal case you can see on the picture is new and was
not used.</p>
<p>The mission of the rocket was to experiment with materials physics under
conditions of weightlessness. The Freerunner had nothing to do with this
experiments and was only on board to verify that it survives the launch, travel and
landing. Battery, GSM and GPS antenna has been removed before launch. Everything
survived. During the flight the accelerometers have been used to collect
measurements.</p>
<p>In May this year it will enjoy its second trip into space. The case was designed
and build to offer space for the Freerunner as well as an extension board
connected to it. The board is connected to the debug board connector of
the Freerunner which offers a SPI and an I2C bus. It was designed to hold
different sensors the Freerunner does not offer and is equipped
with a <a href="http://www.bosch-sensortec.com/content/language1/downloads/BMP085_DataSheet_Rev.1.0_01July2008.pdf">BMP085 pressure sensor</a>
and two gyroscopes. The <a href="http://melexis.com/Sensor_ICs_Inertia/General/MLX90609_582.aspx">Melexis MLX90609</a> and
the <a href="http://www.sensonor.com/gyro-products/gyro-sensors/high-performance/sar100.aspx">Sensonor SAR100</a>.</p>
<img src="http://www.datenfreihafen.org/~stefan/DLR/IMG_2530-small.JPG"
alt="Freerunner with board" align="right" hspace="10" vspace="0">

<p>Over the next month I'll working on drivers for these two gyroscopes and after
the flight we will see if the chips survived and if the data they had produced will
show that they are good enough for further testing.</p>
<p>All in all this shows pretty nicely how an open device with available
schematics, CAD files and hardware interfaces can serve together with an open
software stack for vertical markets. Be it for research purpose like in this case
or a crazy business idea on the other side. The fact that you have all resources
to understand the electrical design as well as being able to make changes over
the complete software stack brings you into the position to easily adapt it for
your needs.</p>
<p>Some more picture with a higher resolution can be found
<a href="http://www.datenfreihafen.org/~stefan/DLR/">here</a>.
<br />
<br />
UPDATE: Fix typos and rewrite some parts so people have a chance to understand
it.</p>
</div>
</content>

</entry>
<entry>
<title type="html">Palm releases source code for the DSP bridge in the Palm Pre</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2010/01/index.html#e2010-01-20T09_12_10.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2010/01/index.html#e2010-01-20T09_12_10.txt</id>
<published>2010-01-20T09:12:10+02:00</published>
<updated>2010-01-20T09:12:10+02:00</updated>
<category term="palm-pre" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Today I got informed that Palm has
<a href="http://palm.cdnetworks.net/opensource/1.3.5/bridge_driver.tar.gz">released</a> the
source code of the DSP bridge on the Palm Pre. This kernel module is used for
communication with the DSP on the OMAP3 the Pre is based on.</p>
<p>It was written by TI and is available under the GPL elsewhere, but we heard that
Palm did a lot modifications we would a) like to know about and b) having them
available when recompiling the module to keep the original userspace working.</p>
<p>The only outstanding issue now from the kernel side is the wifi driver. The
module itself states that it is licenced under the GPL, but Palm claims that
they licenced it from Marvel under a proprietary licence and will change the
module licence accordingly. If the module will still work then has to be seen.
(Hint, it will not if the driver uses any EXPORT_SYMBOL_GPL() symbols).</p>
<p>Anyway, its nice to see that at least one part is done now. Greg KH, Simon
Busch, Harald Welte and myself have been in contact with Palm for this quite
some time already for this issue.</p>
</div>
</content>

</entry>
<entry>
<title type="html">Linux support for Intel Corporation Turbo Memory Controller, ever?</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2009/12/index.html#e2009-12-15T15_00_23.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2009/12/index.html#e2009-12-15T15_00_23.txt</id>
<published>2009-12-15T15:00:23+02:00</published>
<updated>2009-12-15T15:00:23+02:00</updated>
<category term="Thinkpad X200s" />
<category term="linux" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Over a year ago I wrote a
<a href="http://lkml.indiana.edu/hypermail/linux/kernel/0812.0/01887.html">mail</a> to LKML
asking about Linux support for the turbo memory controller. All I got was
silence.</p>
<p>It really should not be more then a NAND flash controller with the flash
attached to it. I wonder what the problem is here. Neither the really active
kernel hackers form the Intel Open Source Labs are giving any comment on it nor
is any kind of documentation available for it. At least none that I was able to
find.</p>
<p>I'm well aware that it is marketed as Windows Vista, and now Windows 7, only,
but to be frank, its hardware. There is no technical limitation to write a
driver for it.</p>
<p>Given that I heard once that Intel has a great rule in place that there needs to
be a good reason if <em>no</em> GPL driver is available for Intel hardware I wonder
what is the blocker here. If it is no technical reason it must be something
else. A completely wild guess would be that Microsoft is paying for the
exclusive rights and active harm of other systems. I thought we were behind such
things. Anyone knows more and wants to enlighten me?</p>
</div>
</content>

</entry>
<entry>
<title type="html">FOSS.IN 2009 is over</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2009/12/index.html#e2009-12-06T12_39_03.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2009/12/index.html#e2009-12-06T12_39_03.txt</id>
<published>2009-12-06T12:39:03+02:00</published>
<updated>2009-12-06T12:39:03+02:00</updated>
<category term="palm-pre" />
<category term="openmoko" />
<category term="events" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>FOSS.IN 2009 is over and I'm sitting on the airport waiting for the first flight
on my way home. Time for a small wrap-up.</p>
<p>Both of my talks went ok I think, but its always hard to judge on your own
talks. People were asking questions directly after and also over the next days.
This kind of interest is all you can ask for as a speaker. :)</p>
<p>It was not only my first FOSS.IN but also my first visit in India at all. A new
country, a new culture and a lot of things I need to think about is all I can
say about it right now. I like it thats sure.</p>
<p>The format of not only advocating on FOSS, but understanding and embracing it as
well as the technology around it is something I could not agree more with. It is
this kind of understanding which makes innovation possible. Think about
technology and products not only the way the company selling it likes you to.
Open up your mind and think how else it can be used for something better.</p>
<p>Let me finish with a big thank you for the complete FOSS.IN team. They did a
great job in getting a high-class conference going and bringing people together
to collaborate and inspire. Their hospitality and energy needs to be seen
somewhere else.</p>
</div>
</content>

</entry>
<entry>
<title type="html">Heading to FOSS.IN</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2009/11/index.html#e2009-11-28T17_01_30.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2009/11/index.html#e2009-11-28T17_01_30.txt</id>
<published>2009-11-28T17:01:30+02:00</published>
<updated>2009-11-28T17:01:30+02:00</updated>
<category term="events" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>Tomorrow I'm leaving for FOSS.IN, Bengaluru. Oman Air decided to squeeze in
another stop between Frankfurt and Muscat means I have a 2.5h longer trip. But
back to the topic.</p>
<p>I'm going there to participate. In contrast to other conferences you are not
going there to consume a show prepared for you. You are going there to really
participate, hack some code in the hackcenter, enrich the workouts with your
energy to get something done, give a talk to motivate people and work with them.</p>
<p>This year they are also integrating the hacker mindset a bit more. This always
have been near to the FOSS mindset but still different. Personally I welcome
this step. The game like nature of the hacker mindset playing with technology in
ways they have not been designed for opens up a complete new horizon for the
FOSS community.</p>
<p>The only pity is that I won't see much from Bengaluru due to the day and night
participation.</p>
</div>
</content>

</entry>
<entry>
<title type="html">9 days hacking on the Palm Pre</title>
<author>
<name>Stefan Schmidt</name>
</author>
<link rel="alternate" type="text/html" href="http://www.datenfreihafen.org/~stefan/weblog/archives/2009/10/index.html#e2009-10-21T21_16_37.txt"/>

<id>http://www.datenfreihafen.org/~stefan/weblog/archives/2009/10/index.html#e2009-10-21T21_16_37.txt</id>
<published>2009-10-21T21:16:37+02:00</published>
<updated>2009-10-21T21:16:37+02:00</updated>
<category term="palm-pre" />
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>I got myself a Palm Pre as they started selling them in Germany. Turns out that
we already hacking nine days on it now.</p>
<p>From a FSO perspective we set ourself the
<a href="http://www.freesmartphone.org/index.php/Palm_Pre_Challenge">challenge</a> to get a
GSM voice call working with FSO within a month. Since then we have done a lot of
research on different topics of the system.</p>
<p>Since the third day I'm running my own kernel on the device. Build from a 2.6.24
vanilla kernel with the patch from Palm applied. They are using standard uImages
in a /boot partition directly on the eMMC card. Changing which kernel will be
booted by default is as easy as changing a symlink. And for recovery you always
have the bootloader which you can enter by holding down the volume up key when
putting in the USB cable into a powered off device.</p>
<p>After this we spent most of the time oin researching how the communication with
UMTS/GSM modem is working and how we need to handle the audio routing for
different scenarios. It turns out that the Qualcomm modem is offers his service
over a high speed UART to the OMAP3430 as well as over USB. The USB ports show
up as ttyACM0 and ttyACM1, but there are plenty of changes in the kernel
usb-acm driver which have not been investigated yet. The second acm port is used
for diagnose purpose and we ignored him for now. The first port is what pppd
connects to for the WAN connection. It speaks plain AT, but sadly does not
report +CRING on incoming calls. So we mostly concentrated on the UART port. No
luck on plain AT here. Its an own
<a href="http://www.webos-internals.org/wiki/Research_Pre_GSM_Modem_Protocol">protocol</a>
which seems to be based rfc1662 (with HDLC). The research here is ongoing but we
are able to strace the telephony daemon on the palm system to gather all bytes
that flow from and to the UART. So far we have the packet end signature,
esacpinf sequences, CRC16 checksum working and also discovered different
sequences which should be sync, sync response, config, etc.</p>
<p>On the audio soide we also had some progress today. I was always looking for an
ASoC or pulseaudio way the would switch to an actual call, but it turned out
they do it completely different. Pulseaudio is used for different sinks where
applications can put there sounds in which then may have different priorities.
The lower layer for voice calls is actually handled in the twl4030 audio driver
part in an "interesting"
<a href="http://www.webos-internals.org/wiki/Research_Pre_Audio">way</a>. Over a sysfs file
you can create so called scripts which then are hold inside a list in the driver
and get executed when called up with the right script name being written into
another sysfs file. Among these scripts are call_started and call_ended and
more.</p>
</div>
</content>

</entry>

</feed>

