What we are doing now, and how to join force.

We have been receiving a lot of emails asking about what 0xlab is doing now, and exactly how to cooperate with us.

First of all, we have been fairly busy recently. If you have tried to port Android to other platform, then you will know it’s not an easy task. We have some familiar porting issues, such as the documents provided by hardware manufactures are either vague or incomplete, the BSP is outdated (ancient), code is a mess or even completely unusable. And we also have some new issues, such as Android platform’s big code base and lack of proper document (I’m talking about lower level here), or what Goggle said in their presentations is way different then what’s in the code, and I don’t even want to start with many hard-coded assumptions about hardware (G1), etc.

Rant aside. What’s been keeping us busy:

  • Port several wireless modules to several popular platforms.
  • Graphic acceleration.
  • Multimedia enrichment. (Reads: port other open source codes)I’m not going to dive into details here. We will do a code drop sometime in June, and our members will blog about their work, so the technical details will be revealed then. We will also open up our development mailing list, so people can discuss there.

Next question is: how to join force? The answer is quite simple: just like any open source project. After the code drop, try it out, report bugs, send us patches, join mailing list, talk on the IRC (#0xlab), etc. - all the usual stuffs. That also means we won’t work on any specific product. So, if you’re interested in developing android based product, send your own developers to join and grow with us.

Now, advertisement time: join FreedomHEC Taipei, Matt and Jserv will talk about bootloader there.

Doxygen and Android source code

It turns out doxygen can be quite handy if you want to read android code. It supports javadoc style, so it could generate documents for the java files. It supports qt style, so the c++ code is also taken care of. Inheritance diagrams, integration with gnu global, etc. are quite useful as well.

0xlab Launch

0xlab is a innovative movement. Taiwan, our home country, has been doing IT hardware manufacture for quite a long time and is fairly successful. The thing about hardware manufacture is that it’s all about cost-down. Once your competitors know how to make the same product, it all goes down to the scale and production management.

On the other hand, the software industry in Taiwan has always been poor, as long as I can remember. The only two big local (maybe not so local) software companies here are TrendMicro and Cyberlink. Considering the fact that Taiwanese students always do great in the global programming competitions, the performance of software industry is relatively not that significant.

The involvement of FOSS here used to be in a really really bad condition. Giants like Asus has been using FOSS to create consumer products for years, but they didn’t really understand how to play nice with other kids, until suited by people like Harald Welte. It’s not like “I’ll only open up if I absolutely have to”, the involvement of FOSS is actully becoming a good business strategy now. Just think about why giants like Intel, Novell, Apple and Google are getting more and more involved in open source. There are reasons behind all these.

We should really use our advantage in hardware to join this trend. 0xlab is the first step, and I hope there are many to follow.

Google Calendar: offline mode broken?

If I access Google Calendar with Google Chrome now it will ask me to enter password again. After that it will do a brief redirect then drop me right back to the password screen. The redirect looks like below, so I would guess the “locallogin” view doesn’t work for me.

Since Google Gears is always enabled in Chrome, it means I cannot use it to access my calendar now.

Slashdotted.

So now the news is in the open. After Harald mentioned the recent status of Openmoko, Sean talked at openexpo to explain the whole thing.

In my opinion, Sean was more honest then I expected, and I admire that. It’s hard to admit so many mistakes as the CEO of a company.

Anyway, leave the past in the past. Life still needs to move on. I still got my gta02 (freerunner), and it’s still an interesting device that has all kinds of possibilities. What’s missing is just the right software. I still haven’t decided where to put my energy into, whether it should be freesmartphone based or Android. As a FOSS developer, it seems I should really support freesmartphone, but since my next job will most likely be related to Android and my time/energy is limited, maybe I will start with android.

I didn’t put this into Openmoko category by purpose so it won’t show up on planet.openmoko.org.

http://www.amd.com and .gz

There seems to be something strange about the apache server of AMD.com. If you try to wget a .tar.gz file from it, the file will be automatically unzipped. But if you try to get the same file by firefox, it won’t. The file in question is http://www.amd.com/files/connectivitysolutions/geode/geode_lx/Patches_Linux2.6.11_Common_02.03.0100.tar.gz

I guess the reason is this. The .gz files get Content-Encoding: gzip, so wget believes the data stream is compressed. The downloaded tar.gz will in fact become a tar file instead of the expected gz. Firefox actually has a workaround for this.

Maybe I should notify the webadmin of www.amd.com about it… if I can find the email address.

Portege 2000 and Ubuntu 8.10

8.10 Release Notes

BAD :(

Now I have to use this to do presentation:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
john@john-laptop:/etc/acpi$ cat videobtn.sh
#!/bin/sh
test -f /usr/share/acpi-support/key-constants || exit 0
. /usr/share/acpi-support/key-constants
acpi_fakekey $KEY_VIDEOOUT
CRT=/proc/acpi/video/VGA/CRT/state
LCD=/proc/acpi/video/VGA/LCD/state
if grep "state:.*0x0d" $CRT 1>/dev/null 2>&1
then
echo 0x80000001 > $CRT
# echo 0x80000001 > $LCD
else
echo 0x80000000 > $CRT
echo 0x80000001 > $LCD
fi