Monday, 18 February 2008

For my own future reference: How to quickly turn the neo1973 into a USB sound card, courtesy of avahi and pulseaudio:

ssh root@fic-gta01.local
ipkg install pulseaudio-module-zeroconf-publish
echo "load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/16" >> /etc/pulse/session
echo "load-module module-zeroconf-publish" >> /etc/pulse/session
/etc/init.d/pulseaudio restart


Now the padevchooser applet on the Desktop lists "output on fic-gta01" as audio sink. I really should stop ripping out my laptop's headphone jacks.

Thursday, 7 February 2008

DSP

Since that wicked N810 arrived, I've had to neglect the other devices a bit. The reason is mainly that the OMAP2420 CPU has an integrated TMS320C55x DSP. And thanks to the DSP Gateway it is possible to actually run our own code on it (see the DSPProgramming wiki page). Before, I could only dream about playing with those inaccessible DSPs on the OMAP850 and Calypso chipsets.

So I set out to learn C55x assembly and at the same time figure out how to play sound directly from the DSP. I somehow got the idea that this could be done by disassembling the pcm2 dsptask module (that is the backend for the dsppcm GStreamer sink, which unfortunately can't be built because the latest version of the DSP header files is nowhere to be found).
I think I have understood the bigger part of the pcm2 code by now, although trying to grasp indirect adressing using ARn registers gives me headaches. The stream setup and the command interface to the ARM processor is already recreated, but the most important part is still missing: the actual data transfer of PCM data from ARM to DSP via mmap and from DSP to EAC via SIO issue/reclaim.
Once that is done, I hope to make use of the knowledge gained by helping the DSP OGG Vorbis decoder project.

In the meanwhile, bricks keep falling into place in kernel land, so I have to do some catching up and submitting patches for at least Magician soon.

Wednesday, 16 January 2008

Maemo SDK

Having given away the shiny new n810 for a week, there was plenty of time to get the Maemo SDK to work. And I needed it.
After the Scratchbox installation, I was greeted by:

ph5@monster:~# /scratchbox/login
Inconsistency detected by ld.so: rtld.c: 1192: dl_main: Assertion `(void *) ph->p_vaddr == _rtld_local._dl_sysinfo_dos' failed!


Google helped to find out that my kernel is missing COMPAT_VDSO. So I used that as an opportunity to upgrade to 2.6.24-rc7 (and later -rc8). Then b43legacy locked up hard. dtl1_cs panicked. All kinds of ext3 file systems wanted to be fscked... I knew I wouldn't have the patience.
Anyway, now that the ancient glibc in Scratchbox worked I could install the Maemo SDK and the (ugh) proprietary binary packages. Because I'm lazy I need this script to start the Maemo environment inside Xephyr:

#!/bin/sh
Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac -extension Composite &
XEPHYR_PID=$!
DISPLAY=:2 /scratchbox/login -k af-sb-init.sh start
wait $XEPHYR_PID
DISPLAY=:2 /scratchbox/login -k af-sb-init.sh stop

Friday, 11 January 2008

happy_n810_owners++;

It arrived. And it is everything I expected it to be. Sure, the upper row of keys is far too close to the bottom of the screen. A first test showed GPS reception1 to be a joke. The window list and cancel keys to the left of the display may look nice, but they feel like somebody just cut them into the screen bezel as an afterthought, scraping metal against metal when I press them.
But the display is very nice, the overall size is great and I like metal casings. A worthy successor to the iPAQ hx4700 in every regard. Thanks again to Nokia and especially to the Maemo team!
Besides, it is my first gadget with an integrated keyboard at all (and the second one running Linux from the start, after the OpenMoko neo1973).

First programs installed: openssh and avahi-daemon
First programs missed: pulseaudio and freeciv. But there is hope.

1) at least for the initial locking

Saturday, 5 January 2008

N810 ordered ... not

Nokia is teasing me. Yesterday an eMail entitled "N810 maemo program instructions" arrived, and with it a new rebate code. I happily followed the included link to the German Nokia online shop and entered the code, only to learn that the shop still considers it invalid :/

Friday, 7 December 2007

Some more tangoish gadget icons:

- HTC Herald (P4350)

- Samsung F700

Monday, 12 November 2007

I'm happy that Nokia deemed me eligible for their N810 developer rebate program. I'm even more happy about Mickey's post, because that was exactly my motivation to apply at all.

Sunday, 7 October 2007

OpenMoko came a long way since my last post. But still, a current ångström 2008.1 openmoko-devel-image (+zImage) has quite some issues on the magician (and other QVGA devices). First impressions:
  • some panel icons (bt, usb) are still too big for qvga, others (gsm, battery) look washed out due to rescaling
  • keypad control doesn't work properly in many places, there is no support for shortcut buttons yet (except for the power button and the camera button, which is used as AUX on neo)
  • openmoko-dialer spews empty notification messages if there is no SIM inserted.
  • the media player does not start
  • bluetooth control doesn't work
  • and probably many more
And I could verify that the pxa27x mmc controller supports SDHC :-)

Friday, 30 March 2007

openmoko-dialer + ångström + magician = ?

This was a good week for the quest to a fully functional Ångström image on the HTC Magician. OpenEmbedded now has X11R7.2, gsmd works out of the box and with some patches it is even possible to run openmoko-dialer on top of that:

openmoko-dialer on a magician ångström image

I uploaded the test image. The openmoko-dialer patches are not really ready yet. The button to hang up a call is still off-screen...

Tuesday, 20 March 2007

it's a phone!

Daniel's hint was what I needed to understand that the GSM modem indeed works on my GTA01Bv3. Marcin already reported success. And now I can make calls with openmoko-dialer, too (as long as it doesn't segfault). Time to have another look at gsmd.

Friday, 16 March 2007

plotting battery voltage

As the neo1973 was mostly sitting around for the last few days, I decided it could do something with its time. I started to capture some data for the battery voltage scale:

gnuplot on neo1973
From the first two discharge curves (taken while idling at 200MHz with full display brightness), it looks like my battery still has to be conditioned a bit.

Sunday, 11 March 2007

games!

I didn't get the GSM modem to work and there is no way to access the GPS yet. So obviously I had to install puzzles and FreeCiv:

freeciv on neo

The former causes quite high CPU load wherever you have to pull things around, probably because the redraw is tied to mouse movement and the touchscreen produces a lot of events per second. The latter works quite nicely, thanks to 128MB RAM.

Friday, 9 March 2007

around the world in two days

Today I received my neo1973!

just arrived

First impressions:
  • The display is awesome.
  • The bezel is a bit thick, making it hard to hit the touchscreen near the edges.
  • Although the rounded edges seem to waste a lot of space, they make the neo comfortable to hold.
  • It is slightly bigger in every dimension than the Magician and doesn't feel as solid due to the plastic/rubber case.
  • I like the buzz when turning on the device.
  • There is some pressure on the back of the LCD. I can see some discolouration in the middle of the screen when pressing against it with the stylus.
  • The case design is nice. It's really as easy to open as I came to expect from the wiki. The fact that I broke my guitar pick is only due to my own inaptitude.
  • Did I mention the awesome display?

Tuesday, 6 March 2007

good morning

I made some more or less tango style device icons for these gadgets:

- HP iPAQ hx4700,

- HTC Magician a.k.a. O
2 Xda mini,

- FIC neo1973

- Sony Ericsson J100i