Sailfish X, part 1

2017-Sep-29, Friday 11:54 pm
chebe: (HandAgainstGlass)
I'm preparing for SailfishX. It isn't on sale yet, but there's a lot to do before you get there. This is part 1; unlock the bootloader. On Windows 10. (I do like a challenge.)

First thing is first, Jolla are only supporting one model initially; the Sony Xperia X (F5121), single SIM version. And it needs to be network unlocked, so grab a SIM-free version.

The next part is also known as, how to void your warranty and factory reset your device while following Sony's official instructions. Doesn't that sound like fun? Note; this is not reversible.

Visit the Sony unlock bootloader page, read all the horrible notices, select your device from the dropdown menu, and click Continue.

Sony want your email address. They'll give you a keypad combination you can use to make sure your bootloader can be unlocked.
1. In your device, open the dialer and enter *#*#7378423#*#* to access the service menu.
2. Tap Service info > Configuration > Rooting Status. If Bootloader unlock allowed says “Yes,” then you can continue with the steps below. If it says “No,” your device cannot be unlocked.
end edit
And a code to get your IMEI. They want that too. They'll email you a link to your own personal unlock code, and instructions on how to use it.

1. Download the Android SDK. You don't need Android Studio, I mean, you really don't, unless you want to write Android apps and spend the rest of your life installing massive updates.

2. I'm on Windows, so I need to get Sony's modified fastboot driver. Extract this, copy android_winusb.inf to C:\Users\$USER\AppData\Local\Android\sdk\extras\google\usb_driver, replacing the existing one.

3. Boot up your Xperia X. Prepare it;
Settings > About Phone > Build number (click on this quickly multiple times until it tells you you've unlocked Developer mode)
Settings > Developer options > USB debugging (enable)
Settings > Developer options > OEM unlocking (enable)
Turn off phone.

4. Hold down the Volume Up button on your phone, as you connect it via USB to your computer. The phone's LED will go blue.

5. On your computer go to C:\Users\$USER\AppData\Local\Android\sdk\platform-tools and run fastboot devices.

Possibility A. This lists your device with no errors, go to 6.

Possibility B. This lists nothing. Go to Device Manager. You will see an Exclamation Point over a device, called something like S1FastBoot. Open up it's Properties, then Upgrade Driver, search specific path on your computer, and point to the Sony fastboot driver from before (C:\Users\$USER\AppData\Local\Android\sdk\extras\google\usb_driver). This might work, but it probably won't, giving an error about a lack of signature and that the driver was probably altered. It was, by Sony. So now you have to Disable Driver Signature Enforcement temporarily.

Disconnect the phone. Hold down a Shift key as you Restart your computer. When it reboots it will offer you the Advanced Startup Options menu. Select through; Troubleshoot > Advanced Options > Startup Settings. Then you'll have to press 7 to select Disable Driver Signature Enforcement. Let it boot back into Windows. Go back to Device Manager and Upgrade Driver again. This time it should succeed.

Run fastboot devices again, and it should also succeed.

6. Time to actually enter the bootloader unlock key. Still in C:\Users\$USER\AppData\Local\Android\sdk\platform-tools run the command with the code Sony provided. -i 0x0fce is the manufacturer code. oem unlock is what you want to do. The rest is your device code.
fastboot -i 0x0fce oem unlock 0xABCDEF0123456789
(If you get a FAILED (remote: Command not allowed) at this point you probably haven't enabled OEM unlocking on the phone. Go do that.)

OKAY [ 0.188s]
finished. total time: 0.188s

This undramatic output confirms you have successfully unlocked your bootloader. And probably voided your warranty. And reset your device to factory state, wiping internal memory. Losing some of their keys, possibly disabling some of their hardware and optimisations. Unable to undo. And you still don't have root. But you're closer to a freer device. Right?
chebe: (Wild)
HTC Desire Z (aka Vision, G2) is now well and truly rooted. I'm indebted to xda-developers, here are some posts I found really helpful;

I then found a close-to-stock version of 2.3.5 and loaded that up. It works pretty well, only a couple of very minor bugs. One was apps like Twitter force-closing constantly. But apparently that has more to do with the HTC Market becoming Google Play, so I just uninstalled and reinstalled and it's all working fine now. But sadly, it still doesn't have the USB-drivers I want! Upon closer reading turns out it was optional in 2.3.4 (default in 4.0.x), and seeing as how HTC isn't doing anything new for this model, I'm going to have to look at other, messier, options.
chebe: (AsciiC)
A while back I got a fantastic birthday present; the Electric Sheep! I've wanted one for ages! So I started reading up on it, and discovered it would only work on a phone with Android version 2.3.4 or higher, because that's when they introduced the new USB driver for it to work.

I waited, and waited. I'd bought my phone SIM-free, so I got Gingerbread while all my friends with the same branded phone did not. Then I waited some more. Lo and behold, another update! Yes, install! ... Hmm, only a security update, still only 2.3.3? Get in contact with HTC, asking when they're going to push the 2.3.4 update that all the other, newer phones had already received. The answer; "HTC has not released android 2.3.4 update for this phone due to the hardware requirements of this phone." This is plainly not true as several people having rooted their phones are even running 4.0.x on it.

What am I to do? There is only one way forward of course, root my own phone. The first step is actually just setting up a software development environment. On the phone that just requires enabling debug mode, and on the laptop installing the Android SDK (painful enough, remember to run as Administrator on Windows), and from that the drivers for the phone. Only, the driver kept on failing to install/recognise my device. Turns out I needed to edit the driver. In a minor way that is not nearly as scary as it sounds. Simply add info about my phone to the .info file, as described here: Then install the drivers again, successfully this time, and make sure the Android Debugging Bridge (adb) is working. adb shell lets you walk around the phones file system copying and deleting files and such.

This part isn't necessary for rooting your phone, but hey, I'll probably want to write some apps at some point, so I followed the procedure described here. To finish setting up the dev environment I installed Eclipse, built a virtual approximation of my phone and played with some of the samples. They are surprisingly slow to run.

Ok, great. Next step, make backups. There is an adb backup -all command, but it only works with Android versions 4 and above. *sad* So I'm going to have to do it the long way, copying file by file. I thought I'd give scripting it a try, but that's for another day.

Android update

2011-Aug-05, Friday 07:44 pm
chebe: (Cyberish eyes)
Oooh! My HTC Desire Z just updated itself to Android 2.3.3. And suddenly the missing menus in 'People' have appeared and I've managed to selectively import specific Contacts groups. It also pulled in my Twitter contacts. This integration thing is really nifty.
chebe: (WalkSign)
Memory lane, the path travelled, how I got here, and all that jazz )

Anyway. What all this has taught me is how much of a control-freak I am when it comes to technology. All these 'helpful' programs and processes, auto-start features, auto-sync, not only drains the phones battery, but mine as well. Simply put; do not want. I turned everything off. GPS services, both kinds, wlan, bluetooth, data, everything off. I will turn it on as needed, then swiftly shut it down again. (Maybe I've been spending too much time dealing with firewalls and ports...)

The Quest to download apps from the Android Market
Mighty battles )

Enjoying the spoils )

Back to fixing what in the old days we called a 'phonebook'
Tending wounds )

Bluetooth connection to Parrot car-kit
Breaking in a new saddle )

That's as far as I've gotten, and what I would consider functioning adequately. Once I've become a bit more familiar with the device I'll install the SDK and have some real fun!
Page generated 2017-Oct-16, Monday 09:52 pm
Powered by Dreamwidth Studios