Professor’s Cube Demystified

July 2nd, 2007

Solved my first Professor’s Cube just there. It’s a good workout for your damn hands not to mention your mind.

Professor’s Cube

Laptop wireless via mobile GPRS over bluetooth

June 21st, 2007

I’ve been using Vodafone Ireland as my mobile operator since my first mobile phone – so probably for the last 7 or 8 years now. I’m tied into a damned contract with them until early Jan 2008. I’ll hopefully be switching to 3 Ireland then because of their groovy mobile phone data plans – 100mb for €6 a month or unlimited for €20.

Now couple the “3 Ireland” data price plan with the Linux + Bluetooth + Mobile + GPRS tutorial below and I’ll be laughing.

1. Turn on bluetooth on your mobile phone (ensure visibility is enabled)

2. Find out your mobile phone mac address is:

sean@viper:~$ hcitool scan
Scanning ...
        00:19:2D:43:00:D9       button

3. Find out what channel DUN (dial up networking) is running on your device:

sean@viper:~$ sdptool search DUN
Inquiring ...
Searching for DUN on 00:19:2D:43:00:D9 ...
Service Name: Dial-Up Networking
Service RecHandle: 0x10002
Service Class ID List:
  "Dialup Networking" (0x1103)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 2
Language Base Attr List:
  code_ISO639: 0x454e
  encoding:    0x6a
  base_offset: 0x100
Profile Descriptor List:
  "Dialup Networking" (0x1103)
    Version: 0x0100

4. Establish a connection with your mobile’s DUN. With Ubuntu Feisty this will trigger an automatic pairing of your device if you haven’t already done so. Also this will automagically create a /dev/rfcomm0 device if all goes well.

sean@viper:~$ sudo rfcomm connect 0 00:19:2D:43:00:D9 2

5. Configure wvdial (this is how I do it at the moment – should be trivial to configure Ubuntu’s swish NetworkManager applet to do the same with a similar configuration). I’ve included both Vodafone and 3 Ireland settings below for completeness – both have been tested and work well.

sean@viper:~$ sudo vi /etc/wvdial.conf 

[Modem0]
Modem = /dev/rfcomm0
Baud = 115200
SetVolume = 0
Dial Command = ATDT
Init1 = ATZ
Init3 = ATM0
FlowControl = CRTSCTS

[Dialer vodafone]
Username = "vodafone"
Password = "vodafone"
Phone = *99#
Stupid Mode = 1
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","isp.vodafone.ie","",0,0
Inherits = Modem0

[Dialer three]
Username = "none"
Password = "none"
Phone = *99#
Stupid Mode = 1
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","3ireland.ie","",0,0
Inherits = Modem0

6. Launch wvdial

sean@viper:~$ wvdial vodafone

7. Ping google.com and shout “I am so wireless right now”

With all of the above in mind – why would one want the USB/PCMCIA GPRS modems these operators offer – which in some cases are more expensive?

Tambur MMS Library

June 21st, 2007

At work I’ve been using the Tambur MMS Library to encode and decode MMS messages. Recently I encountered an unusual bug; some data parts were not being encoded correctly. The bug was related to how the MMEncoder sets the indicated data length of the image/payload.

The packaging date of the MMS Library on the website says 18th April 2005 – So for anyone using that version of the library be aware of the bug. And heres how to fix it:

MMEncoder:

protected static void encodeUintvar(ByteArrayOutputStream res, int l)
throws Exception {
    //.....
    for (int i = 0; i < buf.length; i++) {
        if ((buf[i] & 0xFF) != 0x80)
            res.write(buf[i]);
    }
}

It should read:

protected static void encodeUintvar(ByteArrayOutputStream res, int l)
throws Exception {
    //.....
    boolean hasWrittenOnce = false;
    for (int i = 0; i < buf.length; i++) {
        if (hasWrittenOnce || (buf[i] & 0xFF) != 0x80) {
            res.write(buf[i]);
            hasWrittenOnce = true;
        }
    }
}

Reva Health Network

June 17th, 2007

I keep in regular touch with a good friend and former work colleague of mine Caelen King. He frequently visits the office and from time to time we’re lucky enough to enjoy a few drinks and talk about all things centric to us.

Caelen has been working very hard at his online startup Reva Health Network. Reva help people to find and compare hospitals, clinics and many forms of medical treatment throughout the world and facilitate people getting in touch with those endpoints directly. Reva’s current focus is on dental treatment – which I’m not too shy to say I’m going to be looking at in more detail very soon for myself.

My most enjoyable and valuable year of working life to date was my first year at NewBay. It was made so by people like Caelen King. I wish him the best and if anyone can transform the medical tourism industry…

Reva Health Network

aNobii – Online Book Community

June 6th, 2007

Paddy Benson pointed me to [anobii.com] – the latest in social networking / online communities. It all revolves around your bookshelf.

I’ve signed up and aNobii currently lists a slice of mine.

Moved to GoDaddy Hosting

June 6th, 2007

Just moved this site [thecentric.com] to a new home on my GoDaddy virtual dedicated server. Have more ram here – which allows me to run live some of my spike java web apps. Seems faster and cheaper… no complaints yet.

Also uploaded some pics of my few hours with Anna out on Lough Corrib.

Optimizing IntelliJ Key Bindings

May 23rd, 2007

Haven’t blogged in a while.

Interesting things to note may be:

  • Been busy working on projects in NewBay
  • Sony Vaio SZ330 laptop working out really well
  • Linux Sony Vaio Webcam driver kindly provided by Sam Revitch
  • Playing an online Civ/City building game called travian
  • My Valueweb hosting disappeared – not too worried here: saves me paying for it
  • GPLHost working out ok for hosting this site, although I was recently impressed at the ease of GoDaddy’s hosting solution
  • Bought a treadmill
  • Started playing tennis again cautiously
  • And finally…. Just added a local wiki entry about my usual set of IntelliJ Key Bindings.

iPod Nano

January 6th, 2007

A few weeks before Christmas; I bought an 8gb black iPod Nano. It’s the first mp3 I’ve owned and on the whole it’s been great – although there have been a few gotchas…

Having witnessed a few experiences in the office with Linux and iPod support I was confident there’d be no hitches. This wasn’t the case however as apparently I bought a Nano that’s a generation beyond the ones currently supported in my Linux distribution of choice – Ubuntu Edgy. I found a set of Edgy update debs created by a Martin Jürgens here. Thanks!

I also received 2 Nano accessories for Christmas which don’t work – again because it’s a next generation model: iTrip and Dock… It was a form factor issue rather than a software/hardware thing though.

Black Nano

Rubik’s Cube Demystified

December 27th, 2006

Solved my first Rubik’s Cube in the Warrick on Steven’s Night…

rubiks cube solved.jpg

IntelliJ 6.0.1 Released

October 15th, 2006

We’ve all upgraded at work and have started to use the new release of IntelliJ 6.0.1. I find it generally faster than previous releases which has been the biggest bonus… I haven’t taken *much* advantage of the new code coverage, and team features or j2ee/web improvements. The IntelliJ Blog as always is worth checking out.