ADB says 'Device Not Found' at last stage of sideloading lollipop - adb

I'm trying to sideload Lollipop onto my Nexus 5 from the OTA zip file.
At this point, the adb recognizes the device after I plug in the USB cable, and spits out the serial number.
As I understand the instructions for sideloading, once I get to this point, I just need to reboot into recovery mode, (which works as expected) and then bypass the red exclamation point icon using "volume up and power" simultaneously. That works too.
At the point where the screen on the Nexus 5 says, "Now send the package you want to apply to the device with 'adb sideload &ltfilename&gt' I type "adb sideload + the OTA image file name", which I renamed for convenience". The file is in the platform-tools folder.
At which point the command window reports: error: device not found
So... the device is seen by the adb, but somehow is no longer found after the device reboots in recovery mode.
I've replaced all the usb drivers, enabled usb debugging and developer mode on the Nexus device. I've tried this in windows 7 and also in Linux (both from the android sdk tool kit and from an installation of Eclipse). I'm unable to get the adb to talk to the Nexus 5.
I read the android-windows usb inf file, and there is no section specifically for the Nexus 5, but I added a line under the "generic android" section with USB\VID_18D1&PID_D001 as has been suggested elsewhere for people who couldn't get the OS to see their nexus at all. My issue is not that the OS can't see it... and the adb sees it, too, until I try to sideload the OTA file in Recovery Mode.
Anyone else having this issue, or better yet... any ideas on how to solve it?
Thanks

It turns out that I had not enabled USB debugging before I tried to do this using Linux Ubuntu / Eclipse / Android SDK. So my problem was really a windows USB driver problem, I guess (though I can't be sure, since windows did see the device until I tried to transfer the file. Maybe that message was really conveying a permissions problem, too...)
I rebooted into Ubuntu and tried again and was able to transfer the update file. The only hitch I encountered at that point was to issue the sideload command as root. I didn't do that the first time I tried it, and got a message about lacking permissions.
I suspect the posted reply with a link to a universal USB inf file would have worked, but, though I'm grateful for the tip, I can't testify to that, since I managed to transfer the file without Windows.
Thanks to all who looked at this and especially to Alex P., for posting a possible solution. FW
IW, I'm glad to have finally been able to do this, but for anyone struggling to get Lollipop ahead of the OTA update... well, it's nice, but hardly worth a lot of effort.

Related

Fixing corrupted WinCE 6.0 from USB or SD card

I have an ARM v4 device with touchscreen running Windows Embedded 6.0.
I am developing new app for it (as a replacement for the old one). Everything worked correctly but I accidentally renamed file that was intended to run at startup (if it helps it is autorun.exe in /NAND folder) and now the Win does not start.
At startup error is shown and after clicking OK the process is stuck.
I need to revert this change (rename file back) but how to do it?
I cannot connect to the device anymore with Visual Studio, Remote File/Registry Viewer or similar tool as the conman is not running and I cannot run them (because Windows is not started yet, obviously).
Is there any way how to run cmd line or some tool from SD Card or USB or Ethernet where I can execute some command to rename file back?
I do not have the OS image or the knowledge to build it from scratch, that is too complicated for me.

Error updating Google Glass firmware using Mac w/ M1 CPU: fastboot: cannot get boot partition size

I am updating the Firmware for the Google Glasses Enterprise 2 as stated on google's documentation.
I am getting the error while I am running this command on terminal fastboot flash boot boot.img It returns with an error as stated above fastboot: error: cannot get boot partition size . Well i tried two different versions of the System images as mentioned on Google's website. I tried to change it to fastboot flash boot_a boot.img but the same error.
I saw someone was having the same issue as well there but no solution. Do someone have idea how can we install the system image on it. I have skipped it and run other commands all goes well but the boot is not working which is why the it only shows me now recovery mode/fastboot.
run fastboot --help and read somehow carefully
flash boot.img with fastboot flash:raw boot boot.img
This is problem with new Mac Mini. Because Apple is not using Intel CPU in new Mac mini M1. flash.android.com cannot update the firmware with browser on Apple M1.
I completed the task with windows pc and everything worked well. I believe this would help someone using M1 processors.

Android Studio debugging keeps displaying "Allow USB debugging?" PopUp

I am using Android Studio version
Android Studio 3.4.1
Build #AI-183.6156.11.34.5522156, built on May 1, 2019
JRE: 1.8.0_152-release-1343-b01 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.14.5
with multiple Android devices including Pixel XL with Android Q (QPP4.190502.019)
All my test devices have started repeatedly displaying the
"Allow USB debugging?" PopUp
And losing ADB connectivity
What recent update has caused this behavior?
UPDATE
I reboot my laptop daily, as do my colleagues.
I and my colleagues have not updated USB drivers.
Ive tried multiple USB leads, as have my colleagues.
I've tried multiple Android devices and versions from 21 to Q
Devices include Pixel, Pixel 2, Pixel 3 & Pixel C, and Samsung S9, as have my colleagues.
I have revoked USB privileges and re granted on all devices, as have my colleagues.
The issue still persists
try to check the changelog for android studio update or have you try to enable the usb debugging in your device.
Haven't you installed/reinstalled Android USB drivers recently, if so try to reboot your system
It can also be caused by your broken USB cable, try to replace it with another one and check
I think you haven't checked never ask again option, that is why it's asking continuously.
So you can try to check that box if you haven't done that.
For others who might run into this problem, this started happening to me after I updated the OS version of my device. Restarting the device solved the issue.

Android Things - pico i.mx7 unable to connect

I've just unpacked my new Pico Pro Maker Kit and started flashing procedure. After creating a product in AndroidThings platform and downloading the build I've started flashing procedure.
Command flash-all.sh failed on fastboot syntax, so I've build that manually and found that it was failing on part "set_active _a". I've skipped that and continued to flash device.
Now device is rebooted, I can see on the screen androidThings logo and version + info about network status ("not connected").
I'm unable to find this device in
fastboot devices
or
adb devices
so it looks like I have no way to connect into it.
Do you know a way of fixing that? Is there any way to force fastboot reboot on that device?
Thanks!
I had a related problem for IMX7 on initial install, I thought I'd pass along the Boundary feedback in case it helps. Tech support at Boundary devices recommended that I try the following:
Please try to add androidboot.dm_verity=disabled and
androidboot.selinux=disabled options to bootargs.
I presume these would be options you'd set at the boot prompt ==> (from the serial connection) but I haven't had a chance to test, which I may get to next week. Interested in your feedback if this has any impact to your situation in the meantime.

How do I get bluez 5 to accept a fixed pin?

I can find nothing on how to do this. I am programming an Intel Edison in C and an Android phone in Java. I want to pair the Edison from the Android phone. I would think simple pairing (sspmode 1) would work but I get an error message on the phone about a wrong pin where no pin was requested. With sspmode 0 I get asked for a password but have no idea what it is as it is randomly generated in my NoInputNoOutput Edison. We have everything else working. If we pair from Edison manually, the rest of the code can connect and send bluetooth messages back and forth from the Edison to the phone. But pairing from Edison to any random phone that walks by is not acceptable. I think it is called Bluejacking.
I have seen some posts about using simple-agent but frankly what I understand is that BlueZ security changed so much between 4 and 5 that most all that I see doesn't work. I also see that the switch from 4 to 5 broke a lot of systems so I don't feel alone. I would try it but simple-agent is not on Edison and I have not found a procedure to install it. And as I don't know if the little I can find applies to version 5 as it all references version 4 I am feeling a little lost.
Can anyone point me in the right direction to something that will work on BlueZ 5? I am on 5.18.
The solution presented on the last post of this article does work
http://www.linuxquestions.org/questions/linux-wireless-networking-41/setting-up-bluez-with-a-passkey-pin-to-be-used-as-headset-for-iphone-816003/
Edit simple-agent, put it somewhere, make it executable, put the missing files in the same directory and run it. It must stay running for it to be active.
In my case, the missing file was bluezutils.py.
Run hciconfig hci0 sspmode 0 first
Pl use Bluz5.30.
Initially it was really difficult to bring up bluetooth using Bluez 5. It seems it was okay with Bluez 4.I have tried different versions of Bluez 5 on my LFS build. Even up to Bluez 5.28 it was not satisfactory. Now it is Bluz5.30, with this, LFS doc and lot of trail, I could manage. I feel Bluez is one of the most badly documented user unfriendly software. I also feel it is very buggy. It can hang machines forcing to hard boot the system. I have seen bluetooth forcing the Android phone also to reboot. So it is important to get the latest version of the software. But to make the bluetooth speaker work Pulseaudio was needed. It is better to get the latest version; here also LFS doc was fine.
So the process of connecting speaker was using bluetoothctl is as follows;
>> power on
>> scan on
>> pairable on
>> pair <device>
>> agent on
>> default-agent
Now the actual sound. Here pactl and pacmd are useful.
paplay -d can test the devices.
using pacmd with command 'list-sinks' can show the devices.
pacmd ->list-modules can show the modules loaded.
How to change automatically the audio output to bluetooth speaker when it is connected?
For me in one machine it was working fine, with an identical LFS in another machine it was not working. Finally it was identified as a
missing module module-device-manager with arg do_routing=1.
Once it was loaded everything was fine. This particular module was not shown in the pulse configurations. So I have to find that and load,
pacmd
load-module module-device-manager do_routing=1
One can add a line in the default configuration file available in /etc/pulse.or one can add it in the user configuration file also.Now to make the new bluetooth speaker being used to play sound. For that issue the command 'move-sink-input ' using pacmd. You can find the sink names my issuing the command 'list-sinks'.
If your speaker is not connecting, it may be that it is already connected elsewhere. If it is not so, remove-device; scan on; pair; and connect using bluetoothctl. I was worrying how to make file transfer using bluetooth (Bluez5). Actually very little information is available in LFS documention or in general in the NET. This very true and unfortunate about Bluez in general. They do not provide any real user doc or nothing is available in net. So the steps are as follows:
You need to install OBEX library. Then you build Bluez5 (if it not done already). It will install obexd. After installation you can find obexd in $PREFIX/libexec/bluetooth/obexd.This is where you find bluetoothd also. One generally makes a link for bluetoothd in /usr/sbin. A similar link can be made for obexd also. Once you start bluetoothd and obexd you can find object transfer profiles in bluetoothctl->show.If you need a phone to push objects to the computer, you need to run obexd with options '-a' and '-r '. if '-a' is not given phone will fail to send the file. Now how to push a file from Computer to Phone. For this you need obexctl, I do not think it is a finished tool, and it will not be installed while we build Bluez 5. I have seen it in the source tree and copied to /usr/bin/. It should be used to connect the Phone and when the connection is established one can 'send ' and you have to accept the request in the phone.
Starting obexd as a deamon was a problem. When obexd was tried on a text terminal (init 3) it was not possible to start since it needs a dbus session which in turn needs X display. It means one need to login an X seession before you start obexd. If you dissable X while building DBUS (--without-x) then Window Managers will not work. But there is solution with 'dus-run-session < command> [args]'. That means you can start a service obexd (like bluetoothd) in the system start-up. So just by switching on the Computer ( if pairing, trusting etc... was done earlier) one can push files from Phone to computer.
>> connect <device>
Second time onwards just connection is fine. Probably you can trust the device.
>> trust <device>

Resources