Question: I've used this official [tutorial](http://developer.android.com/guide/developing/device.html) to setup my machine so it could detect my Android devices. But from some reason ADB doesn't detects any of my devices properly(Hero and Magic), ie it doesn't show device's IMEI or Firmware version but a bunch of question marks: 

> 
> ?????????????
> 
> 
> 

I've tried googling for a solution but I've found nothing.

Answer: 
The same problem on Ubuntu 9.10 x64 + HTC Desire

Solution:

* Create/edit a udev rules file: "sudo vim /etc/udev/rules.d/51-android.rules"
* Add the following line: SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE="0666"

Here 0bb4 is HTC id. You can "lsusb" to list your vendor id.

* Restart udev: "sudo reload udev"
* Connect device
* Run "adb devices"

and you should see your device

Taked from: <http://alan.lamielle.net/2010/01/22/nexus-one-usb-in-ubuntu-9-10>
> 
> The last thing I've done is adding the
>  android /tools directory to the system
>  path
> 
> 
> 

Then your problem isn't that ADB doesn't detect you device, you doesn't even running the ADB.