DVB-T transmit in pure PC software
I recently discovered this
paper about Soft-DVB, a full PC-software DVB-T transmitter, it apparently
is now possible on a 1.8GHz Celeron M based system to do a full software
encode/modulation of a MPEG2 transport stream onto a DVB-T compliant carrier
that can be received by off-the-shelf consumer DVB-T receivers. And all this
on Linux, using gnuradio and the USRP.
This is really great news, and an incredible achievement by the authors of the
software, particularly Vincenzo Pellegrini.
There is one (at this time still) moot point, though: The code has not been
released yet. It has been demoed at SDR related conferences, so it really
exists. Vincenzo has announced on the gnuradio-discuss mailinglist that
eventually it will be public - without stating some kind of date, though.
I suppose he probably has to wait until his master thesis has been finalized
and approved. That should be in the order of months, not years...
[ /linux/gnuradio |
permanent link ]
Nokia, FOSS, SIM Locks, DRM and the universe + Motorola's failure
As Bruce Perens points out at this blog entry, it is very
much possible to design a product, particularly an embedded Linux device such
as a mobile handset with all the usual bits and pieces (DRM for mobile media
content, SIM locks, etc.) while preserving the freedom of Free Software.
I'm really pissed off by the kind of FUD that big vendors try to spread about
it. There are so many claims that the user has to be locked down, that he
cannot be allowed to modify/replace the Linux kernel or other bits of the
software stack, etc.
I can only agree full-heartedly with Bruce's article. Such claims are all
bullshit. I've worked for a long enough time with Free Software, the Licenses
involved, the legal framework of those licenses (Copyright Law), the Hardware
Industry, lately even a mobile handset manufacturer. I've seen the software
and hardware architecture of a number of phones myself by reverse engineering.
Never have I found any reason why the bright-line philosophy (see Bruce's
article) should not result in a perfectly working, all-interests-satisfied
solution.
Let me use this opportunity to point out my disappointment at the failure of
Motorola to solve this problem properly. Instead of designing their MotoMAGX
family of handsets in a way that preserves the freedom of the Free Software
[community, users] and protects their valid business interests, they chose to
go the easy shortcut of walking borderline on what they think the GPL permits
them: They use cryptographically signed kernel images, a bootloader that only
accepts binaries signed by them, plus a kernel that only accepts signed
modules, plus a SELinux locked-down userspace that is very restrictive on
what userspace programs can still do.
This would all be nice and good _if_ they were to provide the user with a way
to either sign his own kernel images with their key, or (better) to store his
own signature in the bootloader. So the hardware would accept Motorola-signed
kernels and kernels signed by the user (actual owner!) of the device.
The further proprietary bits of the software stack required for DRM
protection can simply refuse to operate if not run under a Motorola-signed
kernel. Especially with TPM's and similar technologies becoming more
widespread in the mobile world, there is a very straight-forward solution to
this problem. The bootloader can store the hash of the kernel image in some
TPM protected register, and the proprietary DRM system can refuse to operate if the hash is not the original one.
With regard to SIM-Lock, Operator-Lock and all the other locks: As Bruce
points out, those are restrictions of the GSM/3G modem. All implemented in the
firmware of this device. It doesn't matter if you run Windows Mobile, Symbian,
Motorola's own locked-down Linux kernel or a custom user-built Linux kernel on
the application processor. The various GSM/3G related locks are never
implemented on that processor, but on the baseband side.
I hereby challenge the mobile industry to come up with hard, technical fact
about what particular problem they have in designing open, FOSS-compatible
devices, where every user can modify and/or replace the FOSS programs, while
ensuring the integrity of their DRM, IPR, SIM lock and other business model
related technologies. I will sit down and look at any such issue brought
forward and I'm extremely confident that for all of such problems there's a
straight-forward technical solution (bright-line in Bruce's terminology) which
will not require the proprietary or FOSS side to make any sort of moot
compromise.
If not only for the reason of legal safety and security, such solutions should
always preferred to going borderline with FOSS licenses or against the FOSS
developers and users community!
[ /linux |
permanent link ]
Persistent Google recruiters suck
I think I've read this before by one or the other Linux/FOSS developers blog:
Googles persistent recruitment sucks. At least I've spoken with a number of
well-known developers in the community, and they all have been contacted before.
What makes the situation even more difficult is that there are apparently
different recruitment teams, so sometimes they want to hire you in Australia,
sometimes somewhere else. I've heard rumors that they now have a company-wide
blacklist, and I've asked a number of times to not receive further recruitment
mail, so I should be on that list by now.
The worst message arrived today. The particular recruiter actually _knew_ that
the same department had last contacted me six months ago, and that I was
completely not interested. But she was hoping that by now my mind or my job
situation had changed, and that she would want to talk to me about employment
options at Google.
I'm now really running out of options. I've tried to state it politely a
number of times over many years that I am not interested and do not want to
receive further emails. As if this wouldn't occur to me automatically, given
their omnipresence in the Internet world, and their numerous previous
recruitment mails, even in the case I actually was seeking employment now.
I guess I will have to try to be rude now, maybe then they think my personality
wouldn't fit the company spirit. I don't know.
Just let me say that this kind of aggressive recruiting is in itself alone
reason enough for me to not want to work for this company :(
[ /linux |
permanent link ]
Last minute: Presenting at LinuxTag
As apparently there was a last-minute drop-out in the Security track of LinuxTag 2008, I have been invited to
present. It is great that I could convince them to do a talk about my current
favorite subject: Enabling more security research in communications protocols
outside the TCP/IP/Ethernet based Internet.
I don't want to spoil it by providing too much information upfront. I'm sure
there will be recordings available afterwards. For now, you can get the main points from the abstract
[ /linux/conferences |
permanent link ]
Bought another motorbike: Yamaha FZ6 Fazer
During the last week or so, I spent a lot of time test riding a number of
various motorbikes. Both real sports / supersports bikes, as well as 'sportive
touring bikes'. I wasn't really sure if I should go for a true/real sports
bike like the Suzuki GSX-R (750/1000) or start with something less 'extreme'
first. One thing I learned, though, is if I went for a sports/supersports
bike, I'd definitely have to keep my BMW F650ST around. Those racing bikes are
just not useful for casual riding in city traffic. But I want both, fun at the
motorway, as well as a useful bike for local travel inside Berlin.
Then I got a really irresistible offer for a two-year-old FZ6 Fazer (with ABS),
and I had to buy it. So for now, it is this. It's probably reasonable to
first go from the familiar 48bhp to 98bhp before reaching to the 160bhp range
of the Suzuki GSX-R. So in the end, I can even claim that I'm being rational
and reasonable here, going "only" to an (already-ridiculous) amount of power,
than a beyond-ridiculous amount ;)
And please don't worry too much. I'm not suicidal, and I've been riding quite
safely for more than 11 years now ;) This is not going to change!
[ /personal |
permanent link ]
Chaosradio on Software Defined Radio
I've had the pleasure of being invited to Chaosradio Express
maker Tim Pritlove to talk about Software Defined Radio in general, and
gnuradio plus USRP specifically. You can listen to the resulting 2+ hours of podcast (in
German).
It's been a great experience, and I have a good feeling that it was possible for
us to explain this fairly detailed subject to our already at least moderately
technical audience.
SDR is really hard since it combines aspects of traditional radio, i.e. physics
of electric waves, electrical engineering both analog and digital, digital
signal processing and software. The biggest part is really advanced
mathematics, and at least from all the subjects that I've seen, it's probably
the most direct and close-to-theory incarnation of applied math.
Luckily, a fairly high-level understanding of the algorithms and principles
involved are already sufficient to do a lot, since most of the deep-down
mathematical details of many algorithms have already been implemented as
building blocks for gnuradio. Still, I assume the number of developers who
are actually able to use gnuradio is far too low. If you're looking for an
interesting field of software right now, I suggest going for digital signal
processing. It's in every area of communications, ranging from analog modems
over ISDN, DSL, WiFi, USB2, Bluetooth, GSM, UMTS, DECT, ZigBee, Ethernet, VoIP
and probably any other communication technology that we use today.
[ /ccc |
permanent link ]
Motorbike troubles again
It seems like I lost all my luck. Only a three weeks ago, the Yamaha TW-225 in
Taipei had problems after my arrival. Now that I'm back to Berlin, my BMW
F-650 had some serious trouble, too.
Starting the engine turned out to be really hard (started only on something
like the 10th attempt, even though usually the first one is sufficient).
Furthermore, pulling the gas handle only the tiniest little bit kills off the
engine completely, independent of how far the choke is asserted.
So today I spent some five hours in disassembling almost the entire bike,
removing the twin-carburetor, disassembling and cleaning it and putting the
entire bike back together again. The engine is running fine again. I just
wonder why I have this kind of carburetor problem already the second time in
the last couple of years.
There's almost no visible dirt inside the carburetor, and all the fittings are
fine, no signs of any leakage, no signs of any significant wear of any of the
involved parts. Still, cleaning and re-assembling it clearly removes the
problem.
[ /personal |
permanent link ]
Back from WGT
There are two fixed dates every year that I never miss: The annual Chaos
Communication Congress in Berlin between Christmas and new years eve, and the
Wave Gotik Treffen music
festival in Leipzig.
This year I was camping at the event campsite again, following two lazy years
in a hotel. I enjoyed it a lot, especially since the weather was perfect.
Only sunshine, not a single drop of rain for the entire four days.
The festival itself was like always. Great. :) I think my personal favorites
this year was the industrial (probably better: rhythmic noise) act NULLVEKTOR as well as INADE.
[ /personal |
permanent link ]
Victory: Skype withdraws appeals case, judgement from lower court accepted
The court hearing in the "Welte vs. Skype Technologies SA" case went pretty
well. Initially the court again suggested that the two parties might reach
some form of amicable agreement. We indicated that this has been discussed
before and we're not interested in settling for anything less than full GPL
compliance.
The various arguments by Skype supporting their claim that the GPL is violating
German anti-trust legislation as well as further claims aiming at the GPL being
invalid or incompatible with German legislation were not further analyzed by the
court. The court stated that there was not enough arguments and material
brought forward by Skype to support such a claim. And even if there was some
truth to that, then Skype would not be able to still claim usage rights under
that very same license.
The lawyer representing Skype still continued to argue for a bit into that
direction, which resulted one of the judges making up an interesting analogy
of something like: "If a publisher wants to publish a book of an author that
wants his book only to be published in a green envelope, then that might seem
odd to you, but still you will have to do it as long as you want to publish the
book and have no other agreement in place".
In the end, the court hinted twice that if it was to judge about the case,
Skype would not have very high chances. After a short break, Skype decided to
revoke their appeals case and accept the previous judgement of the lower court
(Landgericht Muenchen I, the decision was in my favor) as the final judgement.
This means that the previous court decision is legally binding to Skype, and we
have successfully won what has probably been the most lengthy and time
consuming case so far.
[ /linux/gpl-violations |
permanent link ]
Back from the trip to Taiwan
It's been some time since my last blog post, mainly because I've been quite
busy in Taiwan. First there was the conference, then there were a number of
meetings with various companies to educate them about GPL licensing and how
to interoperate with the FOSS community for better hardware/driver support.
The other part was actual spare time. I spent many months in Taipei during my
work for OpenMoko, but I never really had much time to explore the city, or
even other parts of the country.
This time I explored quite a bit of the Taipei nightlife, visiting places like
Luxy, Lava, Room18, Barcode, ageha, and even the so-called "meat market" of Carnegies and Tavern.
I've also had time to try one of the many hot spa's of Taipei in Beitou, as
well as a really great motorbike trip to the national forest in the Wulai
mountain region.
Unfortunately the weather wasn't that great, so I had to postpone my plans to
visit the northeastern and the eastern coast to some future trip.
And the most interesting part is: I actually made contact to Taiwanese people
who are not at all in any way related to work :)
Further Taipei exploration brought me to the Wufenpu fashion wholesale area,
as well as Ximending. Most impressive is also the "Taipei underworld", i.e.
the various underground shopping malls near Taipei Main Station, such as the
Taipei City Mall, Station Front Mall and ZhongShen Mall I and II. You can
literally walk for many kilometers underground...
Now I am one day in Frankfurt, and tomorrow one day in Munich, Friday one half
day at home, and then there will be four days of music festival at WGT 2008.
[ /personal |
permanent link ]
Tomorrow: Court hearing in Welte vs. Skype GPL case
Tomorrow at 10:30am at the Oberlandesgericht Muenchen
(higher regional court of Munich) there will be an oral hearing in the "Welte
vs. Skype Technologies SA" case. The hearing is to be held in room E.06.
This case is about a GPL violation of Skype, related to their sales of Wifi
Skype phones based on the Linux operating system kernel.
I'm fighting as part of the gpl-violations.org project in enforcing the GPL
against Skype since February 2007. Initially Skype didn't respond, we then
applied for a preliminary injunction. That injunction was granted by the
court in June 2007, but Skype chose to file an appeals case against it.
The court hearing tomorrow is exactly to debate about this appeal.
Interestingly, Skype is arguing against the validity of the GPL as a whole,
asserting that it is violating anti-trust regulation and similarly strange
claims.
[ /linux/gpl-violations |
permanent link ]
First ASUS day of OpenTechSummit Taipei
As I might have indicated before, I have the pleasure of being invited to the
OpenTechSummit 2008 in Taiwan. Two days ago, I was at the opening dinner. The
problem of that dinner was the lack of attendees. There were loads of delicious
(free, sponsored) food, but not even remotely enough people to eat it.
Today I had a bit of a problem finding the ASUS venue, since it was said to be
at "exit 2" of the MRT station. Unfortunately it had two exits of that name,
one on each side of the station :)
One presentation there I found particularly embarrassing was the one about the
eePC SDK. First of all, I will ignore my thoughts about why you actually need
such an SDK if it really is nothing more than a customized Debian Linux with
Eclipse. But even then, why fly in a foreing speaker to do a click-by-click
walk-thhrough on how to create a 'hell world' Qt program using eclipse?
My favourite of the day was definitely the presentation on the OpenPattern
router board.
[ /linux/conferences |
permanent link ]
Back to Taipei
After a break of almost six months, I'm back to Taipei. Obviously I now see
everything from a quite different angle: I no longer work for OpenMoko, Inc.,
thus I actually have spare time here and can explore both the capital city as
well as the country much better than before with that ever-growing OpenMoko
workload.
However, the first day wasn't quite as relaxing as it should have been. First,
the apartment key that was supposed to be with the guard of the apartment
building accidentally was mixed up with some other key and got sent to the
landlord.
A couple of hours later I discover that my Yamaha TW225 motorbike doesn't work
anymore. First diagnosis: Battery is empty (not surprisingly). I try for like
15minutes to kickstart it, to no avail. Not even a single explosion in the
engine. Then I tried to push it, and got it to a couple of explosions after
which it died again. Further push-starting was prevented by the way-too-smooth
floor of the parking garage, where the wheel just slides as soon as you release the clutch :(
Some disassembly revealed where the battery is (I don't know this bike at all,
much opposed to my F650ST in Germany). The battery was severely short of
acid/fluid, maybe somebody pushed the bike over and it leaked. Obtaining
battery additive and refilling results in only 800mA charge current. I think
it's dead. Now I'm in the process of ordering a new battery.
Let's hope the next couple of days are better than the start of this trip...
[ /personal |
permanent link ]
Review of DORS/CLUC 2008 in Zagreb, Croatia
I've spent the last five days in beautiful Croatia - most of the time in its
capital Zagreb. The local conference DORS/CLUC has been around for a couple of
years, and in fact I've been at a previous incarnation three years ago.
It's a nice, small but great event. And in fact, for the invited speakers as
myself it feels more like an all-inclusive holiday than a conference. The
organizers went out of their way to make us feel at home, including a trip to
the waterfalls of Plitvice
national park (photos will be available shortly at my public photo album.
It was also great to spend some time with Alan Cox again, who to my surprise
was also attending the event with two lectures. Hope his luggage didn't get
lost again on his way home...
[ /linux/conferences |
permanent link ]
Further studying of Abis protocols, moving towards implementation
The first quarter of 2008 is already gone, and I still haven't found all the
time that I wanted to find to play with my BS11 base station[s].
However, I've spent quite a bit of time over the last couple of days further
studying the GSM/3GPP 08.5x documents, as well as a thorough read through the
mISDN source code.
GSM/3GPP 08.5x describe the layer1, 2 and 3 protocols of the Abis link between
BSC (Base Station Controller) and BTS (Base Transceiver Station) in a GSM
network. It's modelled on top of a E1 link in PCM30C configuration, i.e. TS0 is
for CRC4 and synchronization, TS16 is used for the layer2+layer3 protocols,
whereas the other time slots are used for transfer of the actual voice call
data.
After looking at the various different driver options on Linux, I have
determined that mISDN is the most promising and flexible architecture
available. mISDN also has a layer0 + layer1 driver for the NT mode of the
HFC-E1 card that I'm using. mISDN is great in a way that every layer is
strictly separated from the other layer, and that at any layer parts of the
stack can be implemented in userspace using library API.
Thus, I've started to write some mISDNuser based code to attach to the
kernel-side hardware and lower-layer drivers. I'm not yet sure if the Q.921
(ISDN Layer2, also called LAPD) of the mISDN kernel side can be reused for Abis
or not. The differences between standard Q.921 used on European ISDN and the
Abis Layer2 are fairly small, so I hope to get it working with the existing
LAPD code.
Unfortunately, I have paid work to take care of, so I will once again be
distracted from this most interesting of my toy projects.
[ /gsm |
permanent link ]
Report from FSFE FTF Licensing and Legal workshop
I'm on seven-hour train ride back from Amsterdam, where I've been attending the
first Licensing and Legal workshop of the Freedom Task Force (FTF) of the Free Software Foundation Europe (FSFE).
While having a somewhat lengthy name, the FTF has been doing great work on
bringing together a large group of legal and technical experts in the field
of Free Software licensing. So far this was all 'virtual', happening on
mailing lists.` The meeting in Amsterdam was the first of its kind, and was a huge success.
By the nature of the FSFE, most of the people were from Europe, though there
were attendees from the US and even Australia, too.
There were many interesting and surprisingly interactive workshops. It was
also a good opportunity to meet Armijn (the second half of gpl-violations.org)
and Shane (full-time manager of the FSFE FTF), as well as many lawyers, both
corporate legal counsel and from law firms.
The interest in Armijns presentation about gpl-violations.org and Till Jaeger's
overview about the legal cases we've handled over the years in Germany were
very well received and there was more interest and questions than the short
time permitted.
What was really good for me to see is that large consumer electronics companies
in Europe and the US are now implementing internal business processes to ensure
GPL and other FOSS license compliance. They're also increasingly using very
clear contractual language throughout their supply chain to minimize the potential
risk of any "hidden" GPL surprises in products they source from OEM/ODM
companies.
[ /linux/gpl-violations |
permanent link ]
We don't do Advertisement on the netfilter.org homepage
For some reason, the amount of inquiries about companies who want to put ads
on netfilter.org has significantly increased. Since the content of that
site has not really changed much in the last (at least) four years, this
sudden interest is somewhat surprising to me.
However, we are absolutely not interested in advertisements. I personally
hate any form of advertisement, whether in print media, radio, TV, WWW or on
billboards. In fact, advertisements are the reason for me to not watch any
privately owned TV or radio stations for at least eight years.
So to all the advertising companies out there: Only over my dead body will
there be any kind of banner ads on any of the websites of the projects in which
I have anything to say.
[ /linux/netfilter |
permanent link ]
Schiphol airport uses active millimeter wave screening
I was quite surprised that Amsterdam airport is beginning to introduce
active millimeter wave screening instead of the good old metal detectors.
The specific device seen in operation at one of the queues between the
international and the Schengen area of the airport was L3 Communications ProVision(TM).
While doing some research about this subject on the net, I discovered
cargo X-ray solutions such as those described in
this article. You can mount a mobile unit onto a track and then go as deep
as 200mm of steel to x-ray through the metal plating of a cargo container. This
is really scary stuff...
[ /electronics |
permanent link ]
I don't work for Google - no matter what the rumors say
A number of people have recently independently approached me about rumours that
I'm now working for Google/Android, after having left OpenMoko, Inc. in
November 2007.
According to one source, some friend who visited Android was told by Android
that I would be now working for them. There is no truth to this.
Please put an end to those rumours. I'm not working with or for either Google
or Android. There also are no plans to do so, and there have never been any
negotiations, aside from the usual Google headhunters that approach anyone
visible in the FOSS world every so often - which I always decline, indicating
that I am not interested in a dependent employment position, no matter for
which company.
I will continue to be doing freelance contract work on projects that are
interesting to me and within my fields of expertise. Should anyone chose to
approach me with an interesting technical Android system-level and/or hardware
related project, that would certainly potentially be interesting. But I'd look
at it like any other inquiry.
[ /linux/openmoko |
permanent link ]
KLM also using Linux in their Entertainment System
The intercontinental KLM flight from Sao Paulo to Amsterdam was using a fairly
new (05/2007) Boeing 777-300, and it was equipped with something like an 8"
wide screen entertainment system, not unlike the one that I saw some months
back in a Shanghai Airlines flight.
This time I had the luck to see the Linux based system boot twice. The boot
time is horrible (on the order of 4 minutes) and you can see many hardware
details. It's using a Geode type CPU and a realmagic GPU, has a natsemi
Ethernet chip and the credit card reader is actually a USB HID device.
All over the place they have fairly low-level debug code spit out to the
console, this really looks like "it worked on one developer board, ship it to
the airline" product. You can see mistakes in shell scripts ("ls: no such file
or directory" and similar stuff from init scripts, as well as debug code from
their UI applications.
It would really be interesting to get my hands onto an Ethernet link in that
in-plane network. Guess one could have quite a bit of fun with that :)
I've taken a series of snapshots throughout the boot process. Will post them
once I'm back home and find time to wade through the holiday pics.
[ /linux |
permanent link ]
Back from holidays
I'm currently sitting at Amsterdam Schiphol Airport, waiting for the last
connection in my Recife - Sao Paulo - Amsterdam - Berlin return trip.
I'll be wading through the several thousand emails over much of the next
couple of days, so please give me some time to get back to you.
[ /personal |
permanent link ]
Receiving the 2007 FSF Award for Advancement of Free Software
The news has already made it to the net during my (offline) holidays, so this
entry in my journal will come hardly as a surprise to you: The Free Software
Foundation Award for the Advancement of Free Software 2007 has been granted to
me :)
I am deeply honored to be the recipient of the award, joining the list of (much
more distinguished) recipients of the award. At the same time I'm sorry to not
having been able to personally attend the awards ceremony. I've outlined the
three key reasons for this in the statement that I prepared to be read at the
ceremony.
[ /linux |
permanent link ]
Update from first week of holidays
For those of you who're curious: The first week of holidays went just fine,
spending something three days in Sao Paulo and three days in Curitiba In
Curitiba, I had a rental car and went to Vila Velha, as well as driving the
serpentines of the Rua Graciosa through Morretes to the Beach. Oh, and
obviously in Curitiba I had to go to Homem Pizza and Happy Burger, the two
restaurants that I frequented the most while working at Conectiva 7 years ago.
The biggest problem so far was the malfunction of the in-room Save of the Hotel
in Curitiba, resulting in not being able to access any of my cash reserves,
credit/debit cards, passport or laptop for two days. They actually had to
physically break the safe open since the lock mechanism was stalled/clogged in
a way that it did no longer move.
Now I've just arrived in Recife, where after two days, the journey will
continue towards Porto de Galinhas.
[ /personal |
permanent link ]
Almost offline for holidays
I'm hereby announcing that I'll be offline most of the time between March 3rd
and March 26. This is the longest time that I've been offline for quite some
time - and it's a much deserved holiday after the intense work of the last
year.
I'll be doing quite a bit of travel in Brazil through those more than 3 weeks,
meeting some old friends and ex-colleagues from my time in 2001 at Conectiva.
I'll also be spending some time at the beach, plus exploring a bit of Parana
and Pernambuco by [rental] car.
This also means that I'll likely end up being forced to use my horrible
Brazilian Portuguese again. But well, at least for me, unless forced to speak
a certain language, I won't speak it at all. So this must be a good thing,
then.
Please don't expect any reaction to e-mails, snail mail, phone calls, faxes or
any of the like during that period of time. I won't even have my German GSM
phone online to avoid roaming charges killing me.
[ /personal |
permanent link ]
Thoughts on FOSDEM 2008
I really have been disappointed quite a bit with my visit to FOSDEM this year.
In fact, many of my observations might actually apply to Brussels as a whole, I really don't know.
It all started with arriving at Bruxelles Central station on friday, where the
entire station was so crowded it took me ages to fight my way through the
crowds. Then something like only the fourth idle cab driver was willing to
actually take us to the hotel. The others for whatever reason didn't want to
earn those 15 EUR. Aren't there some regulations forcing them to transport paying passengers?
Then, let's talk about the social event on friday. How can you hold such an
event in a place that's about one third of the required size, and which has a
music volume level that effectively prevents any form of communication. I left
after about 10 minutes there, since there just was no point at all. One wonders what happens if there is a fire. Aren't there some kind of regulations of the max number of people you are allowed to cram into tiny places like that pub?
At the conference venue the problem seemed to re-occur. All the rooms are
significantly too small. Combined with the lack of ventilation and the lack of
a PA system it was not possible to stand more than a single talk in the X.org
devroom, before I had to get out to get fresh air.
Getting in and out of the DevRooms is also a challenge by itself, since the
hallways are over-crowded and full of noisy and loud conversations. Opening
the door for even a small amount of time is barely impossible, since that would
expose the talk on the inside to the enormous noise levels on the hallway.
Especially since the DevRooms don't have any PA system, it's already quite a
challenge to understand the speaker inside the room. Somebody opening the door
just completely kills the communication flow
The entire idea of putting up all the projects with tables in the hallways
seems questionable to me. They do nothing but block the path for other people
(also blocking emergency escape paths). Furthermore, cold air gets in all the
time since many people have to use the doors in order to walk between the
different buildings. It would make much more sense to keep the hallways for what they are: Ways where people walk between rooms. The project tables should be
inside rooms. Those rooms would self-contain the noise generated by the tables, be more comfortable (warm, no wind) and keep the hallways free for people to walk on.
The same problem exists for the "BAR" where you get food and drinks. It's too
small, too crowded, and absolutely not comfortable at all (cold wind coming in
through the permanently open doors, ...)
And then consider the public transport "performance" on weekends. It took me
regularly more than an hour for something that was a 2.6km distance between
hotel and venue. That's quite ridiculous. Given how crammed those few trams
are that actually run, it doesn't seem to be a shortage of passengers that
makes them operate so few trains per hour.
All in all, I could not do anything else but to attribute FOSDEM 2008 as
something like "the most inefficient event", i.e. where I wasted a lot of time
for reasons stated above, rather than actually attending lectures.
[ /linux/conferences |
permanent link ]
Flying from Berlin to Brussels without showing any ID
It was really surprising to see that there was absolutely zero control of any
ID on the flight between Berlin and Brussels. I'm well aware of the marvels
(and data protection nightmares) associated with the Schengen agreement. However,
zero form of identification on air travel was really a big surprise to me. Not
even my flights inside Germany had this 'feature'
How did this work? First of all, I booked the tickets through a travel agent
quite some time in advance. No form of ID required (though he has my banking
details). Next, I did a Lufthansa online check-in from my home, printed the
boarding pass. On the airport, used the self-service luggage drop-off counter.
Then directly went to the security check, and then to the gate. During the
entire time, nobody asked for any form of ID.
So if I did buy the tickets on cash rather than with bank transfer, it would
actually still be possible to travel under false name and thus anynomously.
Amazing. Am I missing something?
[ /politics |
permanent link ]
flu provides opportunity to watch linux.conf.au video recordings
A quite serious flu hit me four days ago. While this prevented me from
getting any serious work done (my doctor actually explicitly asked me to
refrain even from mental work), it provided me with ample opportunity to
watch through all the exciting video recordings of linux.conf.au 2008.
The various technical X.org driver side related talks were really good to hear,
and I'm happy that there is so much innovation and development happening
there now.
The most hilarious talk according to my scale of humor was Matthew Garrett's
presentation on suspend to disk. I had to watch it twice, just because
it's so entertaining. Rusty: Even you'll have a hard time competing against
that level of entertainment :)
[ /linux |
permanent link ]
Something is wrong if your mail client is using 13.0GB of memory
On my fairly new quad-core 4GB RAM system I noticed that suddenly closing tabs
in the web browser resulted in tons of disk accesses, which I [correctly] attributed
to swap usage. This is quite a big surprise, since I don't use any integrated desktop
and generally only run lots of uxterms in ion3 (over two 1600x1200 heads with 8 virtual
desktops on each head) plus firefox.
As it turns out, earlier today I started thunderbird (Debian calls it icedove) in order
to do some cleanup (moving folders around) on my IMAP server. After about half a day,
I was looking at the following line in top:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3474 laforge 20 0 13.1g 3.1g 10m D 1 81.7 47:49.91 icedove-bin
This is ridiculous. 13GB virtual, 3.1GB resident set size. And all that with
something like roughly 3 million e-mails spread over about 200 IMAP folders.
Who is supposed to use those programs? What do they use for testing? People
with 10 mails in their inbox? Also, if you actually download the headers of a
new folder, or headers of new mails in a folder, it takes _ages_. It looks
actually like they individually request the headers of each email, without
using the tagged command features of IMAP, thereby removing all the pipelining
effects and being bound to one complete
thunderbird-through-kernel-through-network-through-imap-server roundtrip per
message. I haven't actually looked at the code, but just from observing the
application, this seems to be the case. Also, every time I use the 'search
messages' feature for any header that the IMAP server does not have an index
for, thunderbird refuses to wait long enough until the server responds.
So far I always thought mutt's memory usage of 40-80MB is already excessive,
considering all it does is displaying a bit of plain-text emails. Well, for
once I've been happy again that I'm not a regular user of those kind of bloated
GUI programs. firefox somehow being the sole exception to that. It's barely
useable on my 1.06GHz / 512MB laptop, where you already notice quite considerable
lag in the responsiveness of the UI. :/
Guess next time I have to move folders, I'll probably revert to something like
cyradm (that's a minimalistic imap client with command shell, not unlike the
old 'ftp' command for FTP).
[ /linux |
permanent link ]
Working on ISO15693 support for librfid
It's really been bugging me for a long time that librfid was lacking support
for the ISO15693 protocol. The supported reader hardware ASIC can do it, but
librfid always was lacking the respective code. It has been on my agenda even
three years ago, but there were always higher priority items to pre-empt it.
In December 2007, Bjoern Riemer submitted a long patch to add partial ISO15693
support to librfid. The size of the patch reflected the huge amount of work
that must have went in that code. So I couldn't really afford to let all that
work bit-rot. I went through several iterations of code cleanup, starting with
cosmetic issues, and digging deeper and deeper. I think it now doesn't really
look all that similar to what Bjoern originally did, but at least now we have
a working and fairly well-organized ISO15693 anti-collision implementation in
librfid.
However, ISO15693 has many different options with regard to speed, modulation,
coding, etc. All those combinations have to be carefully tested. What's also
missing is a way how to iteratively cycle through all available ISO15693 tags
within range, similar to what we do with ISO14443A and B.
Once that work has been finished, the actual higher-level standard commands, as
well as the nxp I*Code2 and TI Tag-it vendor-specific extensions can be
implemented on top. This can probably be done on one or two more days of
additional work. Stay tuned...
[ /linux/mrtd |
permanent link ]
Meeting between gpl-violations.org and FSFE FTF
The last two days, I enjoyed a meeting between gpl-violations.org and the FSF Europe Freedom Task Force.
Participating were Armijn Hemel (whom I have to thank to assure
gpl-violations.org doesn't die while I was in Taiwan for OpenMoko), Shane
Coughland (who is doing an excellent job coordinating the FTF) and myself.
For a couple of hours we've also been joined by Till Jaeger, who has handled
all the legal cases of gpl-violations.org so far.
This meeting has been over-due, mostly because I basically dropped off the
planet for way too long time. We've discussed all the current matters
regarding strategies for license enforcement, current cases, progress of the
FTF legal and technical networks, as well as future plans for incorporating the
gpl-violations.org project.
Yes, you have read correctly. I've been planning to do this for quite some
time, and I'm confident that 2008 will finally be the year in which this
happens. It's too early to talk about any details, but this is the logical
step to assure both financial and legal independence of the project from my
person, as well as scalability. As you might know, we have a couple of hundred
reported violations and can only cherry-pick those we consider particularly
important.
In any case, it was a very productive meeting. I seriously believe it has
helped to make all of us work together in a coherent manner, i.e. increased
productivity and effectiveness for a long-term strategy to increase the amount
of free software license compliance in the industry.
[ /linux/gpl-violations |
permanent link ]
Disrespect for election observers in Hessen
My fellow friends from the CCC have tried their
best to observer the elections in Hessen (Germany) yesterday. The amount of
resistance they've met is more than shocking. If you want to read more about
this (in German), I'd suggest reading Frank's blog entry, Holger's
blog entry and the official CCC release on this subject.
In fact, in some of the municipalities the election supervisors have received
official statements warning them about the CCC's intention to disturb the
elections. What nonsense is this ?!?
Having been part of a CCC election observer team in the past, I can only state
that this is beyond anything that we've seen before. Why would there be any
resistance against quiet and peaceful observation of the elections?
The CCC election observers have absolutely zero history of ever having
disturbed an election in any possible way. I'm sure you can ask about any
municipality that has had first-hand contact about this. We know the laws and
regulations very well, and want to do nothing else but to _observe_ the
[ /politics |
permanent link ]
Learning about NAS chipsets
For gpl-violations.org, I've been analyzing a number of NAS devices recently.
While most of them are based on some kind of more or less general purpose CPU
(Intel StrongARM based IOP or e.g. VIA's embedded x86) plus standard peripherals,
there appear to be more and more special purpose SoC's for this purpose.
To some extent, this is only a logical development. NAS appliances seem to be
a growing market, and the desire to achieve higher integration by e.g. moving
the SATA/IDE controllers into the SoC make development easier and reduce BOM
cost.
It's quite amazing how much effort some companies actually go through. One
series of chips that particularly caught my attention is the Stormlink Gemini
series of NAS CPU's, e.g. the SL-3516. Looking at the public data sheets is
particularly boring since they only have two pages. Instead of that, I'd
recommend looking through the kernel sources that their downstream appliance
vendors publish. They actually have hardware crypto, hardware IPsec
acceleration, TSO (TCP segmentation offloading), hardware NAT, ...
As if that wasn't enough already, they also now have a dual core variant, which
has two ARM920 cores next to the hardware crypto and pimped-up Ethernet controller!
While reading through the code, I made a slightly
cleaned up diff against vanilla 2.6.15. It reveals a number of things that
I'd like to point out:
- They have actually managed to implement a arch/arm/mach-sl2312 directory (instead of just editing some existing machine), though there seems no distinction between 2312/3516/3518/...
- They have GPL licensed drivers for their entire hardware functionality, not
a single bit of proprietary stuff. It even comes with proper license headers
and MODULE_LICENSE tags. This is really remarkable, especially for stuff
coming from Taiwanese hardware companies. Congratulations!
- They integrate DMA capable RAID5 hardware generation, integrated with the
Linux raid code
- They have two OTG capable EHCI USB controllers
- The ARM core they use is a FA526. It seems to originate from (another
Taiwanese) ASIC/IP vendor called Faraday. Apparently an independent
implementation of the ARMv4 instruction set, allegedly 100% compatible, even
including a replica of the ARM ICE/JTAG. Could Faraday be to ARM what VIA is
to Intel? In any case, definitely exciting.
- While the vendor-released GPL licensed sources contain support for this
FA526 in a fairly decent way, it has not been merged into the mainline kernel.
That's a pity. Does anyone know more about this? I think this should definitely be
cleaned up and merged mainline.
- they re-use an entry from the mach-types registry for the sl2312. Not only
do they use that machine type for all Stormlink SoC, but also the downstream hardware vendors use the same for all their products. not good. Did anyone tell them that registering new machine types is free?
- They're doing some obscure I/O pin sharing between IDE and the flash controller resulting in lots of ugly code. Probably a hardware workaround :)
- They have very invasive code all across the Linux crypto code, probably because they need async crypto support, which the crypto framework of 2.6.15 doesn't yet provide
- They seem to integrate their crypto with cryptoloop, but not dm-crypt
- They seem to be able to store their OS image in NOR, NAND or serial SPI(!) flash
- They have four hardware queues per Ethernet MAC
- They have done some serious hacks to the network stack in order to integrate their TCP offloading engines and hardware NAT. This code is obviously not the most beautiful you have seen. But what surprises me is that they actually have it working, and went all they way to get it developed. And all that for some obscure NAS chipset. I would be interested to learn how many man-years of engineering time they have in that code... Oh, and they do actually have code for TCP-over-IPv6 offloading
- Hardware-accelerated recvfile support
As a summary: Kudos to those who have designed the product, and actually
implemented all its features, in purely GPL licensed code. It's just such a
pity that none of the code, not even the most generic and clean bits have been merged mainline.
[ /linux |
permanent link ]
Securitization
As a friend of mine (who has studied political science) recently told me about
the process of securitization.
Finally I know a word for the process that seems so commonplace in todays politics: Framing something
that is actually a minor problem with some criminals into a question of
essential survival, thus eliminating any rational debate about it.
[ /politics |
permanent link ]
Repairing VIA EPIA-ME6000 busted capacitors
Just before Christmas, my vdr
powered diskless Linux-based digital video recorder went bust. A bit of
testing revealed that the VIA EPIA-ME6000 main board itself must be dead.
I immediately ordered a replacement mini-ITX board without further
investigating the broken one, expecting that the replacement might actually
arrive before the Christmas holidays. Unfortunately this didn't happen. While
replacing the board, I discovered that six of the 1000uF electrolytic capacitors
went bust.
So today I finally found a bit of time (it's great to be able to find time to
do things again) to try and replace the broken capacitors. Despite the new
ones being slightly larger, the board now works again like a charm. And that
at a total cost of 1.62 EUR.
So now I have two working mini-ITX boards. Guess I have to either find some
use for it, or sell the new one again...
[ /electronics |
permanent link ]
My personal favourite from 24C3: Xbox 360 hacking
I've seen quite a number of presentations live at 24C3 as well as recorded ones in
the days following the event. While many of them cover important subjects,
there is one lecture that is outstanding: "Deconstructing Xbox 360 Security".
The level of technicality of this presentation was just right. Finally
something that went deep down into the technical details. Explaining what kind
of flaws they found in the disassembled power PC object code.
I definitely want to see more lectures/presentations like this. Don't be
afraid to overload the audience with technical details. Just go ahead with it :)
Also, this presentation has shown how far advanced the game console hacking is
compared to mobile phone hacking (at least from what I've seen in the ETC
(Ada-developers) and and Motorola hacker communities). The problems are
similar: Completely undocumented hardware, cryptographic authentication of code
by the boot loader (sometimes down to mask ROM), ...
So I hope that the mobile phone hacker community will grow and more people with
this skillet, attitude and time will join. Free your phones!
[ /ccc |
permanent link ]
|