This might be something you can fix with udev?

A brief google for "udev run script on device connect" shows this link:

Obviously, I've not done it, but it does look like a good starting point. The next time we bump into each other (i might be at PHPNW next week, but I'm not 100% sure), I'll see what I can do, or failing that, I can try going through some stuff with you over IRC?