Updating Nokia firmware in Vmware under Linux

It was a bit of a struggle to get everything working... but here's how I did it.

  1. Install VMWare 2.0.0 under Ubuntu Linux (due to kernel changes, the older version of vmware could no longer compile the kernel modules (asm/semaphore.h changed to linux/semaphore.h and the kill_proc function was removed from the kernel).
  2. Browse to vmware's localhost web page and install the Firefox/Mozilla plugin for it, restart firefox.
  3. Upgrade VMWare hardware version of my pre-existing Windows vmware image, add USB hardware if not there, let Windows hardware detect and install drivers as necessary, reboot if needed.
  4. mount -t usbfs none /proc/bus/usb -o devgid=500,busgid=500,busmode=664,devmode=664 (I set the devgid and busgid to my uid, which was the admin account in vmware. Maybe you use root and don't need to do something, or maybe it was just strange for me.. no idea.)
  5. Browse to Nokia's website and install the Nokia Software Updater. Reboot windows.
  6. Plug in the Nokia phone, select Nokia mode (as opposed to storage mode or another mode).. mount the device in the VMware image. Any read/write errors here are probably permission related in regard to /proc/bus/usb/.
  7. Shutdown Windows, find the vmware.log file and do "grep path:" vmware.log.. find the entry corresponding to the Nokia phone. Copy & Paste the Numbers/Numbers after the path: bit. (maybe it's 1/2/3 for you or just 1/2)
  8. Edit the .vmx file in the same directory, add usb.autoConnect.device0 = "path:THOSE/NUMBERS". I also added usb.generic.skipsetconfig = "true" but I'm not sure that's necessary. You are actually binding that particular USB port on the host to that VMware image. You may want to undo this afterwards.
  9. Start up the Windows guest again. The phone should now connect automatically.
  10. Run the Nokia Software Updater.. cross your fingers.. if it doesn't work, uninstall and reinstall the software. Apparently the USB device drivers get screwed up often enough and this fixes them - at least, it did for me.
  11. The Nokia Software Updater SHOULD now detect your phone.. if it doesn't, it's probably the device driver.. uninstall and reinstall Nokia Software Updater. It should find any new firmware for your phone and commence installing it.

The reason why you need to use usb autoconnect with the path option is because (it would seem) that the phone reboots into a firmware update mode and changes its identity.. and if it doesn't respond fast enough, then the Nokia Software Updater aborts (causing you to wonder whether you just turned your phone into a brick - luckily it wasn't the case for me).

Good luck!

(For the record, I ended up embarking on this journey when the Nokia Software Updater just stalled at the start screen on my girlfriend's laptop - a common problem, google would suggest.. Please Nokia, give us a Linux firmware updater!)

— by Robert Thomson, created 12th Dec, 2008, last modified 12th Dec, 2008 | 1 comment | Tags: Tech

gnokii --reset hard != reboot

I held a short memorial service for my SMS archive. At least I'd backed up my phonebook before doing it. Seriously, it looks innocuous if you read the gnokii manpage.

— by Robert Thomson, created 11th Dec, 2008, last modified 11th Dec, 2008 | Tags: Tech

Why git is better than X

WhyGitIsBetterThanX.com prompted me to take more than a superficial look at git (Version Control System), and I'm very impressed. I think I'm a convert, forever destined to look down on other VCS' with a slight air of disgust.

Update: Commenter KK wanted to point out http://git.or.cz/gitwiki/GitSvnComparsion for a less koolaidy comparison.

— by Robert Thomson, created 7th Dec, 2008, last modified 8th Dec, 2008 | 1 comment | Tags: Tech

Internet in Perugia

We have achieved that which we thought impossible. We now have Internet at our apartment in Perugia! It is a miracle! After over a month of wrangling with technical difficulties (which they never mentioned when we called to find out about our order - instead claiming that we were not customers, and trying to sell us something, thus leading us to assume our order was dropped, and to us placing a second order).. And so it is, that we now have Internet in our apartment. We probably could have had it a couple of weeks ago, had the modem (or instructions, since we had a spare modem) arrived sooner. But now we are officially customers, and we shall cherish our new-found status.

— by Robert Thomson, created 9th Oct, 2008, last modified 9th Oct, 2008 | Tags: Tech

Will work for food

.. if I'm ever that desperate. But seriously, since I'm going to Italy for 10 months, and quitting my job to do it, I will probably look for some projects to keep me busy, and with the current state of the share market, I'd feel better earning money instead of digging into my savings. :-) So if anybody has any 100% remote part-time work for me (python, perl, linux, whatever) at realistic rates, starting November, let me know. The Django remote work job-board looks like an interesting option, if you weed out the adverts wanting something-for-nothing.

— by Robert Thomson, created 2nd Oct, 2008, last modified 2nd Oct, 2008 | Tags: Tech

Java, Android, XML

Does it irk other people as much as me that we are expected to read & write XML in order to build and run programs? What ever happened to real configuration files? How about editing tools for XML? Did half the world forget that XML is intended for machines, not humans? I always get a bit annoyed when I see end user documentation telling humans to edit XML. Sure, sometimes the tools come later, but quite often not, or they eat up 200 MB of RAM and require a GUI to edit a 30 line configuration file. EOR.

— by Robert Thomson, created 22nd Jul, 2008, last modified 5th Aug, 2008 | 1 comment | Tags: Tech

iRiver Clix2 arrived..

The iRiver Clix2 that I ordered finally arrived. It was supposed to be here after 2–3 weeks, but instead it took 8 weeks… in the meantime, I was given a free 1GB iShuffle by T-Systems (my new contracting client following Shell’s outsourcing), which I also quite like due to its small size and the clip, making it perfect for when I’m on my bike.

I’m happy with the Clix2. Right now, I’m using it to listen to the radio (and switching stations whenever they start talking their horrible language). It came configured in USB mass storage device mode, instead of the alternative MTP mode.. I’ve installed some new themes and some flash lite games on it.. I’ve transcoded some TV shows for it (320×240 OLED screen) .. wouldn’t want to watch a full length movie on it though.

In other news, Sophia and I are going to Perugia, Italy, later this month, to see if we can find some accommodation for her Erasmus year and my extended-holiday, and generally check out the place. We’re eagerly counting down the days until we’re both in Perugia!

— by Robert Thomson, created 13th Jul, 2008, last modified 13th Jul, 2008 | Tags: Tech

C++ gives me static

Defective C++

Scripting languages, managed runtimes and similar (CLR, Parrot and D) make me smile.

— by Robert Thomson, created 24th Apr, 2008, last modified 24th Apr, 2008 | Tags: Tech

Fix for strange colours when playing movies

I’ve an NVidia card with driver version 169. Sometimes when playing movies with Totem, the colours would be off. It took me a while to figure it out, thinking it was maybe a bug I couldn’t do anything about except for downgrading the NVidia driver (which seemed like too much work with Fedora).. Not sure exactly where the bug lies, but the hue setting for XV changes sometimes, resulting in odd colours. I think gstreamer may reset it sometimes. The quick fix is to install xvattr and run the following:

xvattr -a XV_HUE -v 0
.

— by Robert Thomson, created 2nd Feb, 2008, last modified 2nd Feb, 2008 | Tags: Tech

Laptop news..

I wiped Vista with a fresh copy of Fedora 8. I'm normally a Debian & Ubuntu person, but I decided to give Fedora a go for a change. It installed without any major problems. It would've been nice if it had started NetworkManager for me, so I could easily configure my wireless network.

Yesterday I decided to install a copy of Windows XP, which I had lying around. Once again, I'm not a Windows person and booted into Windows maybe twice a year on my old laptop, but since I have a license, I may as well put it on. There were issues with the boot CD and it not going any further. Recommended BIOS tweaks for the HDD to be detected did nothing either. So I am now trying an alternative method. I installed Windows XP under VMWare, installed all the drivers for the laptop that I could, and will try to copy the vmware image to the real partition, resize using ntfsresize, modify the boot sector and the boot.ini, and then see what happens. I will of course document my steps if I'm successful. Sounds neat, no? :-)

— by RobertThomson, created 26th Nov, 2007, last modified 26th Nov, 2007 | Tags: Tech

Ordered a Dell Inspiron 1520

I just ordered myself a new toy - a Dell Inspiron 1520. The specs are:

My current laptop (Compal PowerNote CL50) has served me well for 4 years now, and I hope that this new laptop will serve me just as well. Choosing a new laptop is a tough decision and unfortunately having to make compromises is par for the course. I think I've made a good choice... not too small, not too big, and powerful enough to last me for a few years. It's hard to find similarly spec'd laptops here with the same resolution.

For a case I ordered the Kensington Contour Cargo Notebook Messenger

For your information, the other main contender was: the Acer Aspire 5920G (mixed review - a few differences in the EU market though)

So.. I bet you're all wondering what I plan to do with a spankin' new laptop, and what I couldn't do on my current beloved laptop. Here's what:

¹ That's a joke, folks. I'll be installing Linux ASAP. :-)

Update - 9 Nov 2007

Still in preproduction. :-( Why, oh why, must I wait so long? Newsflash Dell - it's not Just In Time if you have to wait days or weeks for parts. I'm a child of the Internet age - I want instant satisfaction. Hop Hop.

— by RobertThomson, created 3rd Nov, 2007, last modified 9th Nov, 2007 | Tags: Tech

Fedora's Build System - Mock and Koji now working

I'm helping to revamp the build infrastructure here. Until now, we've been using a bunch of home-rolled scripts and Test::AutoBuild.

We decided to look at Fedora's build system and processes, since we're developing RHEL and using RHN Satellite, didn't want to re-invent the wheel, and Red Hat would similarly be trying to keep closely aligned with Fedora's processes also. Yum repository support is official in RHEL5 and supported by RHN Satellite 5.

Mock was relatively simple. Create a Yum repository (extract latest version information from Satellite and copy the RPMS and comps.xml to a directory, then run createrepo), create a group and the directory structures, the configuration files for our build targets (x86_64 and i386) and it's a go.

Koji's a different story. Koji doesn't support straight Username/Password logins - it uses SSL certificates and/or Kerberos to authenticate. I tried to follow the instructions for the Koji Server HowTo but my setup is a bit different in that I'm installing everything on one machine. For me it meant that I didn't need (and couldn't use) a separate cert for kojiweb and kojihub..

For the ClientCert's, you need a combined PEM file containing both the cert and the private key. If you don't have that, you will see a python error with PEM something-or-other in it. This applies for ~/.fedora.cert (whatever path's mentioned in $HOME/.koji/config for the cert), as well as for the WebCert in /etc/httpd/conf.d/kojiweb.conf, that used by kojid (cert= in /etc/kojid/kojid.conf), and of course that used by kojira (as explained in the Koji Server HowTo.)

The "Python ProxyDNs" option should correspond to the DN of the web host (or maybe hub, but for me it's the same) .. if you get this wrong, don't worry, you will (when the rest is correctly setup) receive an error from the web interface with the proper string.

Now that I can login, I just have to learn how to use Koji. :-)

Update: Koji turned out to be too much of a pain. It really is a complete distribution management solution, and we already use RHN Satellite for that.. so I built my own distributed build system based around Mock. It works quite well, although it lacks a lot of the pizazz of Koji.

— by Robert Thomson, created 25th Oct, 2007, last modified 28th Jan, 2008 | Tags: Tech

Cheap/free phone calls

I signed up with the VSP (Virtual Service Provider) VoipBuster. It's actually one of the many VOIP websites run by BetaMax, a German company. After paying €11.90 (€10 + 19% VAT) I can now make calls freely or cheaply to many countries for 120 days or until I run out of credit. From home, where I have a VOIP adapter, I can call Australia or Dutch numbers gratis. With my mobile, I can call a landline number in the Netherlands (relatively cheap, plus it's a work mobile) and then use the VoipBuster service to dial to Australia or Germany for 1¢/minute (OK, 1.19¢ with VAT). German mobiles cost just 20¢/minute, thereby undercutting the new EU roaming tariffs, if you ignore the local phonecall required from my mobile (as I do).

VoipBuster and the similar websites do occasionally switch which countries are free to call to, and rates do vary between the websites (smsdiscount.com has 1¢ SMS', whereas VoiceBuster has 5¢), but overall it is (they are?) still one of the cheaper VSPs that exist. The multiple websites and the requirement to register using the Windows client turned me off at first (and the client requirement still does) but I can accept that the multiple websites are largely just a marketing game to generate buzz, differentiate themselves from the competition, and get around the one-size-fits-all model to exploit niches.

— by Robert Thomson, created 24th May, 2007, last modified 26th Oct, 2007 | Tags: Tech

I own an integer!

I own an integer!!!! It's ED 1B BF B4 78 1E 4B 51 7A 86 E7 DE 8A E8 4A AC. And it's protecting a work of art!

And if you dare reproduce it in any form whatsoever, I shall set the wrath of the USA's DMCA gods upon thee for circumventing a copyright protection device! Why don't you get your own number?!

If you don't see the humour in this, why don't you read about why copyright-related jokes with numbers are funny at the moment.

— by Robert Thomson, created 8th May, 2007, last modified 9th May, 2007 | 1 comment | Tags: Private, Tech

Finally entering the 20th century

I've just purchased a Linksys SPA 3102 SIP gateway.. now I'll just have to wait for delivery.

It will allow me to use my standard home phone as a land-line, and also route calls to/from PSTN & SIP through it.

I shall configure it to use my voxalot account (sip:111555@voxalot.com) but also register my landline number on E.164.

Not certain which SIP provider(s) I'll go with yet.. I just know that I really didn't want to give KPN (the local telco monopoly here) any more than the required €10/month copper-tax here.

Update: The SPA 3102 works quite well, but the configuration was a bit confusing for a first time telephony user - the supplied documentation is virtually non-existent. I've also configured it as a PSTN-to-SIP gateway, so that I can call home then make an international call through my VOIP accounts (and land-line calls are cheap). The quality is quite good. Now the only task now is to encourage enough other people to switch to VOIP also, and therefore remove all middlemen. I suspect, unfortunately, that it's not as easy as one would hope to configure a VOIP adapter or phone, so getting sweet old Aunt Betty online may require a personal visit. Now, all I need is a cheap SMS gateway, since most of the time I'm near a computer and I could save considerable amounts and not be subject to the whims of bastard telcos

— by RobertThomson, created 27th Apr, 2007, last modified 6th May, 2007 | Tags: Tech

I have the contract..

I'm told that the paperwork will be sorted out by the end of today, but I've given the recruiter permission to accept on my behalf based on our discussed rates and start-dates. Now - to find accommodation. I may be one of the better paid homeless in Den Haag.

I'm actually going to stay with Thom May for a couple/few days when I first arrive.. but I don't want to impose so I'll do some frantic apartment hunting. I'll also use this time to get my SOFI (tax file) number, a bank account, and a dutch phone number.

It's quite sad to be leaving Passau, but Passau has no IT industry to speak of, and this is very much the kind of opportunity I was looking for last time I was looking for work in Europe.. but at that time I wasn't prepared to move too far from Passau. I'll probably keep my apartment here for now - I may sublease it, or just give up the lease.. but I've got a reasonable amount of stuff to move, so I'll have to come back and sort through things soon enough.

Update (9 Jan 2007)

I just heard, I start on Monday, and I get the rate I hoped for. I'm dusting off my suitcase as we speak. Farewell dinner/drinks on Wednesday.. probably train on Thursday.

Update (11 Jan 2007)

Leaving tomorrow morning at 11:22am, arriving around 8:30pm.. changing trains once in Frankfurt, and once in Utrecht in the Netherlands. I'm sure I'll be up for a good meal and a beer after that journey.

— by Robert Thomson, created 8th Jan, 2007, last modified 11th Jan, 2007 | Tags: Passau, Tech, World

New Bliki using Django

A few weeks ago I thought I'd jump into the 21st century and check out a web framework or two. I looked at RoR first, and after a little mind-bending I understood it reasonably well. It really requires you to be one with RoR to grok it fully. Shortly after that, however, I noticed the Netherlands contract advertised, which was of course for a Python developer. Since things were going well there, I decided to focus once again on Python.

There are a few interesting web frameworks for Python.. but my eyes fell on Django and I gave it a go. I must say, I'm impressed. It's far less hyped than Rails, and it's really quite simple. I wrote this entire website with under 350 lines of Python code, plus HTML templates. The administrative interface is quite neat, although I wish it were a little more customisable and a little less tied to the database structure. The basics required only 200 lines of code -- comment spam checking, email integration, and custom captcha code took up the rest. It took quite a while to get here, though, as I was learning on the way.

I'm using SQLite, because I really don't need or want anything more. In fact, I still think that a database is overkill for a blog/wiki. I am, however, mildly impressed with the result. I'm also using Markdown (modified) for a more wiki-style of editing.

— by Robert Thomson, created 3rd Jan, 2007, last modified 4th Jan, 2007 | Tags: Tech