KrisWillis.com

Flower

Replacing the microphone in a Blackberry 8800

So I accidentally spilled a cup of tea over my Blackberry. Fortunately, after drying it off most of it worked perfectly bar one of the most important components in a mobile phone – The microphone.

After doing a little research, it turns out that the mic is surface mounted to the keyboard PCB so to replace the mic I’d need a new (or working) keyboard PCB. The only place I could find this component new was on some American website, which after shipping and other taxes involved in importing stuff, would have cost about £70. Or, I could have sent it off to Vodafone for repair at a cost of £60 and a few weeks Blackberry-less no doubt.

I ended up grabbing what was described as a faulty 8800 from someone on eBay for about £40, the description said it had a software fault, so there was a good chance that the hardware was in good condition. It turns out that there was nothing wrong with it from what I could gather after messing around with it for a couple of minutes. But it was on the o2 network, so no use to me. Read the rest of this entry »

Logitech MX5000 and Ubuntu

Since I first bought my Logitech MX5000 combo it has never worked correctly on Ubuntu (back to 6.06 maybe…) after booting. The keyboard would work perfectly in the BIOS and even in GRUB, but as soon as I reached the (GUI) log-in screen my MX5000 would become unresponsive until I disconnected the USB Bluetooth receiver and plugged it back in. As you could imagine, quite tedious on every boot.

After doing a bit of research, this appears to be a fairly common issue. One suggestion that did work for me was to remove the bluez-* packages, but apparently there is the side effect of other Bluetooth devices no longer working. This isn’t an issue for me, so it’ll keep me happy until a real fix is in place.

Drop the following into your CLI if you’re having the same issue…
sudo apt-get remove bluez-cups bluez-pcmcia-support bluez-pin bluez-utils

IE6 Bug: H1 tags with background colours

No IE6I have just noticed an odd bug when viewing a H1 tag with a background colour under IE6 – There is no background colour until the H1 is taken out of view by scrolling it out of the viewport and then bringing it back again. Highlighting the text partially brings in some colour.

One solution for this issue is add relative positioning to the tags CSS class.

Table joins in MySQL with no matches

MySQL LogoI consider my understanding of MySQL around the intermediate level, but when writing table joins in the past I have always used the ‘equi-join’ method:

SELECT t1.*, t2.`name` FROM t1, t2 WHERE t1.n = t2.n;

Now, when a record for t2.n doesn’t exist, a row will not be returned. To solve this problem in the past, I would have executed two separate queries and process the output with PHP – Not the most efficient solution.

Read the rest of this entry »

Akai MPC 500 problem?

Akai MPC 500I’ve had my MPC 500 for a couple of weeks and in my limited experience using it, I appear to be having an issue. I’m not sure if it’s a setting that needs changing, if the 500 is faulty, my limited RAM (I have 128MB on order) or if it’s purely a limitation of the 500 model.

In a nutshell, I have created a sequence and have it looping while I play with some samples over the top. When playing patterns over the top, it appears to be affecting the playback of other samples in the sequence. Read the rest of this entry »

Dension BTA1000: Bluetooth for the Porsche

Packaged UpDension, the guys that released the Gateway 500 interface that allows one to listen to their iPod (or other source) through the OEM head unit have now brought out an accessory, that when hooked up inline between the iPod and Gateway 500 gives Bluetooth functionality. The BTA1000 supports both A2DP/AVRCP and HSP profiles which are generally used for hands-free calling and streaming audio from media players or navigation devices. I got my hands on one, so on to the install… Read the rest of this entry »

Recolouring images with PHP

Blue roseAbout a year ago I was working on a project where one of its features allowed the user to upload an image, select a colour on the image with a colour picker tool, then select from a group of colours to replace the picked colour with. I had a somewhat stable build running where it simply replaced the hue of the picked colour – Introducing saturation and value changes invoked a number of ‘random’ glitches and odd colour effects. This feature was subsequently dropped from the project due to it costing too much to continue developing.

Skip forward about a year and I find this script knocking around on a back-up disc, so I decide to put some more development time in purely for my own satisfaction of enhancing it. I have made it work to a nearly passable level, it works nice on images with isolated high contrasting colours. I created a function to create a tiled pop-arty graphic from an inputted image too just for fun. For example, input this and it will spit out this. There is plenty of room for improvement: You can’t convert colours to or from white/black and it replaces all instances of a colour, not a flood-fill effect. So, on to the code… Read the rest of this entry »

Building an inexpensive footswitch

I was looking at adding some extra functionality to a couple of bits in my guitar set-up, in my case this involved buying some footswitches – One for my Vox AD30VT amplifier, and one for my Boss RC-2 Loop Station. Vox offer the VFS-2 and Boss has the FS-6 for a combined cost of around £60, which is quite a bit for what they actually are. Okay, the Boss has a few fancy features like interchangeable latching / momentary functionality, status LEDs and switchable polarity but I don’t need any of that. I was sure I could build something that does exactly what I needed for a lot less than sixty quid, so I did. Read the rest of this entry »

Serving DivX to the Xbox 360 from Ubuntu

Xbox 360 LogoMicrosoft released the fall update for the Xbox 360 on the 4th of December which included support for DivX/Xvid playback. A popular choice for encoding video due to its compression to quality ratio. Could this mean I am now able to free up some space on my A/V rack? Currently I’m using a hardware-modified Xbox (original) with the open source Xbox Media Center (XBMC) installed on it, decoding my Divx/Xvid content from a Samba share on my media server.

After a quick poke around I found a package called uShare that serves media over the uPnP protocol that the Xbox 360 utilises. Read the rest of this entry »

[SOLVED] Random crashes in Ubuntu 7.10 (Gutsy)

Nvidia LogoEver since the upgrade from 7.04 to 7.10 I have been experiencing random crashes. The type of crash varied from full-on lock-up where the only way out was to hit the reset button to mild crashes that could be escaped by restarting X (Ctrl-Alt-Backspace). Sometimes the system would just hang for 30 seconds then come back to life.

As you could imagine this was becoming rather irritating, it being my main dev-box and all! I started monitoring my system from another machine on my desk over SSH by running top. It would appear that whenever my machine ‘crashed’ Xorg would be the culprit, consuming 100% of my processors cycles.

It turns out that many people were experiencing this problem over at the Ubuntu forums and there seemed to be a trend developing where a large proportion of us were using 64-bit AMD X2 chips and the Nvidia GeForce 7 series cards, namely the 7300. My fix involved downgrading my video drivers from the proprietary 100.14.19 to the 100.14.09 release, obtainable from the Nvidia website. This fix didn’t work for everyone in the thread at UbuntuForums, but did for some.