Can not adb USB debug on Amazon fire tablet

4.4k Views Asked by At

I am trying to adb usb debug on an Amazon Fire 7 tablet. I am encountering a problem, where the tablet will not show the dialog to authorize USB debugging from my development machine. The fire tablet does have USB debugging enabled in developer options.

I was initially trying to USB debug from 3 different devices.

My development machine is running Linux Mint 19.2.

The three android devices are: Samsung s4 Moto G5 Amazon fire 7

Initially none of the devices would show the authorisation dialog.

But then I updated the file /etc/udev/rules.d/70-android.rules to contain all the relevent vendor ids. I then made sure to add the vendor id for amazon fire as well.

Now both the samsung s4 and the moto g5 were properly showing the usb debugging authorisation dialog. But still the amazon fire is not showing the dialog. I am starting to think that the problem with the amazon device has nothing to do with udev rules....

I have also tried other obvious things like toggling the USB debugging connection type from media to camera. In addition I have tried other USB cables as well.

Why are two of my devices successfully USB debugging, but the Amazon fire 7 is not?

My udev rules file...

SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666", GROUP="plugdev" #Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev" #ASUS
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666", GROUP="plugdev" #Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666", GROUP="plugdev" #Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev" #Fujitsu
SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev" #Fujitsu Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="091e", MODE="0666", GROUP="plugdev" #Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev" #Google
SUBSYSTEM=="usb", ATTR{idVendor}=="201E", MODE="0666", GROUP="plugdev" #Haier
SUBSYSTEM=="usb", ATTR{idVendor}=="109b", MODE="0666", GROUP="plugdev" #Hisense
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev" #HTC
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev" #Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666", GROUP="plugdev" #K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666", GROUP="plugdev" #KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666", GROUP="plugdev" #Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", MODE="0666", GROUP="plugdev" #Lenovo
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="plugdev" #LG
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev" #Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0666", GROUP="plugdev" #MTK
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666", GROUP="plugdev" #NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666", GROUP="plugdev" #Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666", GROUP="plugdev" #Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666", GROUP="plugdev" #OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="10a9", MODE="0666", GROUP="plugdev" #Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", MODE="0666", GROUP="plugdev" #Pegatron
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666", GROUP="plugdev" #Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666", GROUP="plugdev" #PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev" #Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666", GROUP="plugdev" #SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev" #Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="plugdev" #Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="054c", MODE="0666", GROUP="plugdev" #Sony
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev" #Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="2340", MODE="0666", GROUP="plugdev" #Teleepoch
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666", GROUP="plugdev" #Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0666", GROUP="plugdev" #ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="1949", MODE="0666", GROUP="plugdev" # Amazon fire
5

There are 5 best solutions below

0
On

Amazon removed the adb update features beginning on the Tablet 7 gen 9 model.

Still , I imagine there's variances but in general the ones after gen 9 most likely won't have any and push options to allow flashing .

Also the boot loader is locked down.

0
On

Check in the system log what happens when the device is connected (in particular the idVendor), for example (using journalctl on Fedora) :

...
kernel: usb 1-1: new high-speed USB device number 4 using xhci_hcd
kernel: usb 1-1: New USB device found, idVendor=18d1, idProduct=4ee1, bcdDevice= 3.10
kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
kernel: usb 1-1: Product: Nexus 5X
kernel: usb 1-1: Manufacturer: LGE
...

Also in some cases it helped to kill and restart the server as root :

# adb kill-server
# adb devices

then use it as a normal user

$ adb devices
...
2
On

I had special tablet from china, which I couldn't make run through USB, but I figured I could use debugging over wifi. I guess, it could help you too.

  1. You have to connect your tablet through USB and run command: adb tcpip 5555 (you can disconnect it afterwards)

  2. You have to connect your Linux machine and Amazon tablet to same wifi.

  3. Connect adb through command adb connect {tablet_ip_address}

You can find more https://developer.android.com/studio/command-line/adb#wireless

3
On

Ensure you have the Android SDK already installed
Launch the Android SDK Manager
Under Tools, select Manage Add-On Sites, and enter the following url: http://kindle-sdk.s3.amazonaws.com/addon.xml
Have a look at this post for further details https://developer.amazon.com/blogs/appstore/post/Tx3RZFBU0KJTSWS/setting-up-the-adb-driver-for-kindle-fire-devices
and having installed the amazon devices right way might help. Follow the mac procedure and in extras of your sdk manager(once the path added), you will see the amazon supported adb (Amazon AVD Launcher(Linux)). Hope it helps.

0
On

disconnect the device :

$ adb kill-server
$ adb start-server

connect the tab $ adb devices

this must ask a allow device message.