Showing posts with label android. Show all posts
Showing posts with label android. Show all posts

Monday, November 24, 2014

Missing Nexus ADB driver for Windows 7? No worries.

If you are trying to fix your Lollipop install and you aren't able to run ADB - never fear.  Start Computer -> Device Manager and you'll see the attached tablet or phone isn't recognized.  There will be what we poor saps in the business call a 'yellow bang'.  Windows Update is dumb as hell and only checks the official Windows signed driver repo for everything, which only has the most popular drivers that have passed Windows certification and have companies backing that are willing to put up with Microsoft's temperamental process.  You'll see this (or something like it) on your screen:


Right click - and choose Browse:



Navigate to where you installed the Android SDK and choose the sdk/extras/google/usb_driver subfolder.  That will automatically pull in 32 or 64 bit versions.  If you aren't running a 64 bit OS in 2014, you need more than an Android tutorial - but amd64 is used by 95% of installs today.  If you need i386 it's there, but that's crap unless you are running a VM.  Just choose the usb_driver directory and forget about it.


Once connected - you'll see an authorization pop up on the tablet.  Just accept and you'll now have full access.


Saturday, November 15, 2014

Friday Phone Weirdness - the Note 2 with multiple personalities

Yeah, maybe a little less creativity next time...
One of the phones in the house stopped working after an over the air update from AT&T - it was just stuck in an update loop and would reboot endlessly.  I assumed it was probably full and did the normal resets to try to fix, to no avail.  The phone's not mine so I never changed the ROM (i.e. - kept the warranty in case something happened to it :-) ) - it was totally stock other than being unlocked by AT&T so other SIMs could be used out of the US.

The guy at the AT&T store couldn't do anything with it - so I downloaded CyanogenMod for the SGH-I317 (that's what it really is - it's the 4G AT&T model, says so on the back), and spent a lot of fun times getting it to sync enough to transfer ClockworkMod (a replacement boot manager that makes it easier to install new ROMs).  Never had that much trouble, but I had to reboot over and over to get it to transfer.  That finally done - I put the CyanogenMod ROM on the SD card and booted to recovery and tried to install.  And it barfed out a page of errors and failed.

Being way too lazy to see what was wrong, I grabbed a few more and tried them.  The all failed too - but one of them spewed out an error message saying: "Your (sic) a t03g!".

The t03g is the international model of this phone - not the model I have.  I snagged a Cyanogen for that device and put it on, and it installed happily and came up, but with no radio.  That didn't seem good - so I fished around some more.  There was nothing posted anywhere - so I got creative and cracked open the ROM for the AT&T model.  There's a updater-script inside /META-INF/com/google/android/ that has the model filter - slight hack and chop to add the 'wrong' model:

assert(getprop("ro.product.device") == "t0lte" || getprop("ro.build.product") == "t0lte" || 
       getprop("ro.product.device") == "t0ltexx" || getprop("ro.build.product") == "t0ltexx" || 
       getprop("ro.product.device") == "GT-N7105" || getprop("ro.build.product") == "GT-N7105" || 
       getprop("ro.product.device") == "t0ltedv" || getprop("ro.build.product") == "t0ltedv" || 
       getprop("ro.product.device") == "GT-N7105T" || getprop("ro.build.product") == "GT-N7105T" || 
       getprop("ro.product.device") == "t0lteatt" || getprop("ro.build.product") == "t0lteatt" || 
       getprop("ro.product.device") == "SGH-I317" || getprop("ro.build.product") == "SGH-I317" || 
       getprop("ro.product.device") == "t0ltetmo" || getprop("ro.build.product") == "t0ltetmo" || 
       getprop("ro.product.device") == "SGH-T889" || getprop("ro.build.product") == "SGH-T889" || 
       getprop("ro.product.device") == "t0ltecan" || getprop("ro.build.product") == "t0ltecan" || 
       getprop("ro.product.device") == "t03g" || getprop("ro.build.product") == "t03g" || 
       getprop("ro.product.device") == "SGH-I317M" || getprop("ro.build.product") == "SGH-I317M");

And a repack (with zip - don't use 7Zip or anything else or it won't apply right) and boom - everything worked.

What I think happened is the unlock code sent to this phone made it 'international' even though the hardware really isn't so updates are broken.  Weird.  This phone is probably past end of life anyway - but still.