Short story: Open up /lib/udev/rules.d/70-hid2hci.rules and find the following line:

KERNEL==”hiddraw*”, ATTRS{idVendor}==”046d”, ATTRS{idProduct}==”c70[345abce]|c71[34bc]“,
RUN+=”hid2hci –method=logitech-hid –devpath=%p”

Comment those lines out as follows:

# KERNEL==”hiddraw*”, ATTRS{idVendor}==”046d”, ATTRS{idProduct}==”c70[345abce]|c71[34bc]“,
# RUN+=”hid2hci –method=logitech-hid –devpath=%p”

Save, relog. Did the charm for me. If it does not work, read up on the link from above. There are other methods involving some changes to those lines.

Somewhat longer story: I installed Ubuntu 10.04 on my desktop PC this weekend. Everything went pretty smooth, that was up to the login screen. To my amazement my Logitech MX5500 keyboard refused to work. I managed to log in using the onscreen keyboard, but when i got inside Gnome I could not get it back up. After some pretty intensive copy-and-paste action from the FireFox homepage I was able to search for “onboard” and get that back up running. Google lead me to a Ubuntu Bug Report detailing this issue,

A few days ago I saw that Unreal Tournament 3 was added to Steam, and that they also offered some new downloadable content. I decided to give it a spin, and activated my copy of UT3 in Steam. I had to download the whole 8gb game to play it, but on a 20mbps line that’s wasn’t a problem. When I came back from work today I decided to give it a spin. To my amazement it crashed on startup, only giving me “UT3.exe has stopped working”. I figured it was the ATI drivers, so I went over and grabbed the latest and greatest Catalyst package. Upon starting the installation that failed as well. I tried in safe mode, tried uninstalling (which failed) and googled my eyes out. After a while I found this post from SuperWasp which explains how to run the ATI driver installer from command line. Basically, go to C:ATISupportXX-driver-versionDriverBin64 and run the command “atisetup.exe -Install -Output screen“. I did it from the Driver folder, where the Setup.exe is located by calling “setup.exe -Install -Output screen” which also worked fine. The process took a few minutes, but once I rebooted the driver was updated.

PS: Windows was stuck in “Windows is now rebooting” until I unplugged my iPhone :)

Now, this shows how to update the driver, but it does not explain the problem with both Unreal Tournament 3 and the driver setup software failing. I’ve looked around a bit, and based on what I’ve read it seems like the .NET Framework 2.0 files might have been damaged in some way. I tried running the “sfc /scannow” command (some info on that tool here) to let Windows search for corrupt or damaged system files, but no luck. Since .NET Framework 2.0 is an integrated part of Windows Vista I’m basically unable to uninstall it as well. If anyone has any suggestions on how to fix this I’d be really glad to hear from you.

I’ve been dormant for quite some time, mainly due to a major project going on at work. This week I’m starting my vacation, and its time to get back to all things fun. Today I got offered a spot on the Prado Developer Team, which I hope will prove to be both a challenge and a great opportunity to improve my knowledge on both the framework and PHP.

As a part-time project I’ve started building a multi-touch display surface inspired by Microsoft Surface. I’ve completed a *very* basic edition (tutorial here, and I’ve just started planning a more complicated setup along the lines of this project.

I’ll do some posts on the process as soon as I get some pictures.

[tags]PHP, Prado, Multi-touch[/tags]   

Some time ago a friend of mine tipped me about this article series called “What every programmer should know about memory” written by Ulrich Drepper (lead contributor and maintainer of glib). I just recently came around to start reading it. This is a 100 page long text which covers computer memory in detail, with focus on how software interacts with memory. From RAM to CPU caches the text moves on to tips on how we as programmers can improve our code when it comes to memory management and performance. A really good read which I suggest every programmer should check out.

[tags]Hardware, Memory, Unix/Linux[/tags]