N900^H^H – Less Could be More

I’m a happy user of the N900 – an ageing device. As I recall it, I saw it for the first time in real life at Qt DevDays 2009. So, basically, my phone is older than my laptop, and I’m happy about it.

Yesterday, Nokia removed two zeroes from my old workhorse and announced the N9 – a Qt driven phone. You can find a detailed spec here (thanks Ubuntufreak). What I’m excited about is:

  • Unibody. Nokia’s phones have been a bit on the plastic side for my taste in the past.
  • Capacitive (i.e. multi-point) touch. This has really been the N900’s weak point recently.
  • Proper Linux, i.e. MeeGo. No virtual machine layer as in Android, native binaries on a powerful platform.
  • Qt – everywhere!

So, now the only remaining question is – is this a device that will keep me happy for the next three years?

Pidgin to Replace Skype

A while back I wrote about the need for a Skype-competator. We discussed this at work and decided to try to transition to XMPP and libjingle a.k.a. Google Talk. Many thanks for all commenters leading me this way.

The decision that we decided to go for was Pidgin (largely because some colleagues prefer OS X). On (k)ubuntu, Pidgin works with video + voice out of the box. It even detected the Mac Book Pro web camera right away – very nice! As Pelagcore is an all-geek-company, the internal transition has been smooth.

Basically, what the solution relies on is XMPP and libjingle. Jingle being an extension to XMPP for voice and audio.

So, what do I miss?

  • The ability to fix spelling errors by going back through the chat history
  • The ability to call land lines from within the application

There is also something that I have to look into – I just need to find the time (and colleagues to bother).

  • Is it possible to make group calls (group chat does work, but with voice and (optionally) video?

Apart from this, all that is left is convincing everyone that I interact with to make the transition.

Distributed MythTV Support Script

It has been a long time since I had time to play with my MythTV setup, but now it finally works. It turns out that the biggest hurdle was not to split the functionality, nor to configure the channels (one just has to get one’s head around the way that MythTV looks at receivers, channels and providers…). The big hurdle was that one of my frontends are connected over WiFi.

The issue was that the frontend application was launched before the WiFi connection was established. This resulted in the frontend running some sort of configuration guide each time the system was booted. Having realized the source of the issue, disabled the autostarting of the frontend and added my own autostart script:


#!/bin/bash

TRIES=0

ping 192.168.1.201 -c 1
RES=$?

while [ "$RES" -ne "0" ]
do
sleep 1
ping 192.168.1.201 -c 1
RES=$?

let "TRIES+=1"
if [ "$TRIES" -gt "100" ]
then
exit -1
fi
done

mythfrontend --service

Here, 192.168.1.201 is the IP of the backend. The script ensures that the backend can be pinged before the frontend process is launched. The end result is a stable boot every time.

Skype to Redmond?

Rumors indicate that Skype might be sold to Microsoft. This only raises the urgency to develop a simple free competator. So, a good starting point is to list the very basic requirements:

  • Peer-to-peer sound and video streams
  • Global, distributed contact book
  • Encrypted media-streams
  • Potential support for conference calls (with one peer acting as server?)

So, how does one meet these requirements?

  • GStreamer can solve the peer-to-peer sound and video streams
  • Conference calls are not limited by gstreamer
  • Encryption can be solved by gstreamer (put an encryption / decryption element in the pipe)
  • The global, distributed contact book, is needed but can hopefully be supported by XMPP (Jabber).

The benefit of choosing XMPP is secure and flexible base to build a protocol on. There encryption keys and such can be exchanged, as well as synchronizing the setup and connection of peer streams. Using this protocol we could also support speech.

Another benefit, or risk, depending on how you look at it, is that this solution would be close to Google Talk.

Well, enough talking, I’ll do some prototyping later on and see what I end up with :-)

MythTV getting TV

For the last few months I’ve run a MythTV frontend/backend combination as our upstairs entertainment center. I use it for SVT Play using Tommy Persson’s excellent plugin, but also to play some music and act as a DVD player.

Yesterday a box arrived with my brand new Hauppauge WinTV-NOVA-TD stick (from a sale on netonnet). Last time I fought with receiving TV through a Linux system, it was a proper struggle. This time, it was just a matter of plugging in the stick, setting up the MythTV backend and watch TV (I admit – I did spend a bit of time sorting and filtering channels, but nothing advanced).

Checking the system this morning, it had recorded all three shows I asked it to – on time. Even the ones colliding in time, i.e. requiring the dual tuners to be used. Very nice!

Now, all I have to do is to setup my dedicated backend machine and get the connection between it and the frontend working. If that goes smoothly,  a card reader and soft CAM would be the next step, but boxer is charging 89+21 SEK per month for a twin card, so I guess that would mean setting up a new frontend downstairs…

Necessitas

So, I’ve fought with Necessitas for a while now. I reported a bug on a flawed install, but then I hacked around it. Basically, what I did was the following:

  1. Create a directory: /data/data/eu.licentia.necessitas.ministro/files
  2. From that directory, create a symbolic link, qt, pointing at /opt/necessitas/Android/4.7.60

Then it works. I’ve built and deployed wiggly onto a poor old HTC Hero and it all seems to play nicely this far – just have to wait for Ministro to download Qt. Next step is an application built around plugins that I’d like to deploy. Looks like I might have to read up some more. Until then – thanks for the great work, BogDan!

Spring Cleaning

I did some cleaning, sorting and updating of various computers at home this weekend. In the process, I found a cup heater from Trolltech – great stuff.

Side note – in the picture, Tux the Linux mascot, Trolltech cup heater, Microsoft Natural keyboard, Apple hardware and HTC Android phone. Talk about Qt everywhere :-)