Wednesday, 29 July 2015

Install Sailfish OS on Sony Ericsson Xperia Pro

[How-to] Renew an old Android Phone with a new operating system

Android phones capable of running Jolla's Sailfish OS, gesture based mobile operating system, are now added by Sony Ericsson Xperia Pro. Work is done by Sailfish OS porters, in this case especially Matti Lehtimäki

Do you have an old Xperia Pro laying around? Install Jolla's Sailfish OS on it, the operating system seems to run on this 512MB of RAM smartphone, and the hardware is quite well supported too. For other models, check the end of this post.

[guide] Install Sailfish OS on Sony Ericsson Xperia Pro

Worth a read? Please share:



Sony Ericsson Xperia Pro is a GSM smartphone released on 2011. It has a 1GHz single core processor, 512MB of RAM and 1GB of internal storage, 480Mb free for user space. Using Sailfish OS on this phone expands the internal storage with SD Card (required), making it act like a (max) 32GB storage device, but the reading/writing speed depends a lot on the SD card specs.

Disclaimer: Testing with any unofficial images is in your own responsibility. If you brick the device following this guide, it's up to you to fix. This guide is written by information available on July 2015, please check any possible updates in the sources linked in the end of this post.

Got worried? Instead of installing the full operating system guided below, you can try installing Angry Birds Stella launcher on your Android phone, available on Google Play Store. The launcher is officially supported by Jolla, but it's not full operating system, it only gives an idea what Sailfish OS has to offer for your user experience.

Before you start:

  • You'll need a fast SD card with at least 8GB of storage for the installation. Speed matters, as the new operating system will use the card memory for all the apps and data, so class 10 (UHS-1) or faster one is strongly recommended
  • You'll need a computer equipped with SD Card reader running on Linux, Windows XP, Windows Vista or Windows 7. Windows 8 can be used after disabling Driver Signature Enforcement. Windows 8.1 additionally requires installing update from Microsoft to the Sony Driver. Mac OS is not fully covered in this guide, but it can be used with a virtual machine (virtually running some of the operating systems mentioned)
  • Remove PIN lock on your SIM-card to be used on your Xperia, using any phone. This must be done as the new operating system will not ask for PIN code on this device
  • Download LegacyXperia cm-11.0 nightly (not officially supported by Cyanogenmod, tested to work with cm-11-20150511-UNOFFICIAL-LegacyXperia-iyokan.zip)
  • Download Sailfish OS for Xperia Pro image

Step 1: Unlock Sony Xperia bootloader

Note: If you have unlocked the bootloader already earlier, you still need to factory reset your phone, or at least format the /system folder

Unlock bootloader on your Sony Xperia using this guide by Sony
  • Note 1: During the Sony guide, you install the Android SDK. This gives you the adb and fastboot tools, and (hopefully) installs the required adb and fastboot drivers
  • Note 2: If you have enabled My Xperia, this feature must be turned off before unlocking the device. Keys to any encrypted content must be removed as well
  • Note 3: The unlocking will factory reset you phone. Refer to the guide by Sony for what's lost during this, and make your backups in advance

On Linux, you can install the adb and fastboot with the following commands:
    • Debian/Ubuntu:
      apt-get install android-tools-adb android-tools-fastboot
    • Fedora:
      yum install android-tools
    • Mageia 5:
      urpmi android-tools
    • OpenSUSE:
      zypper in android-tools

Step 2: Prepare you SD Card and copy the needed files


You will need to format your SD card with two primary, inactive partitions. File system for partition 1 is FAT32 (this partitions works as the removable SD Card), and for partition 2 ext4 (this part works as the operating system memory, minimum 4GB recommended. This partition will hold all your apps and their data, so if you have a lot of space, please maximize)
When done, copy both of the downloaded files to the partition 1 (FAT32), shut down your phone and insert the SD Card. Note that the SD Card must remain in the phone to run Sailfish OS on it, but the first partition can still be used for moving data between devices.


Step 3: Boot your phone to fastboot mode


Your phone should be turned off, unlocked, factory reset done, SD Card attached.

If you have a physical Menu button, that is the fastboot button; otherwise it is Volume-Up. Hold that button down while connecting an USB cable between your Xperia and computer, and release the fastboot button. You should see blue LED on your phone. If not, try again. List of supported devices


Step 4: Fastboot the recovery image


  • Find fastboot.exe on your PC (...\Android-SDK\platform-tools)
  • Extract Sailfish image zip -file on your computer and copy file named hybris-boot.img into the same directory as fastboot.exe
  • Open a command prompt as an administrator (cmd on Windows, or any terminal on Linux) and navigate to your fastboot.exe directory using cd command
  • Enter fastboot devices to check if fastboot is working. This command should print something like: 123ABC456 fastboot. If the result is an empty line, troubleshoot fastboot
  • Enter fastboot flash boot hybris-boot.img to flash the kernel. This should take only few seconds

Step 5: Flash the new ROM's using recovery mode

  • Still using the command line or terminal, enter command
    fastboot reboot
    and wait for your Xperia to show a boot image.
  • Now press Volume-Down -button every second on your phone until your LED turns blue. If successful, you're now in a recovery mode

    Note: If the phone is not booting at all, reboot your phone into fastboot mode again, enter fastboot erase system and fastboot erase userdata. This will erase all data and settings. After that, try again - in most cases, problems occurs if there was already something in the system folder.

After entering the recovery mode, you should see a menu on your phone screen. Navigate the menus with Vol-Up/Down to choose, Home to confirm, Back to go back. If those don't work, refer to Sony guide for correct buttons on your device.
  • Select Install .zip
  • Select Choose .zip from /Storage/SDcard0
  • Select the Cyanogen mod ROM .zip ("cm-11.....zip")
Repeat the steps for Sailfish OS image
  • Select Install .zip
  • Select Choose .zip from /Storage/SDcard0
  • Select the Sailfish OS Xperia zip ("sailfishos-....zip")

Step 6: Test, camera fix, other known issues


Remove USB Cable, turn your phone off, insert SIM Card and boot normally. You should see Sailfish OS running soon. On this ported version the hardware is quite well supported, but the following features needs to be fixed manually, are missing, or doesn't work as they should:

Camera fix:

  • Enter Settings > System > Developer Tools
  • Enable Developer Mode and connection. Enter your new password.
  • Connect your phone to your computer for SSH connection using USB (separate drivers might be needed) or having the devices in the same WLAN network
  • Launch SSH terminal on your computer (on windows, install for example Putty) and connect to your phone via SSH using the IP shown on Sailfish OS Settings > System > Developer Tools.
  • Connect using SSH, correct IP, port setting 22, username "nemo" and your password. After connected, enter in terminal:
devel-su
[your password again, in hidden writing]
zypper ref
zypper in --from iyokan harbour-cameraplus
exit
exit

Known issues:
  • Sim pin query is currently not supported, please remove pin query using LegacyXperia or another phone.
  • UPDATE: Store works now for installing new apps No Jolla Store. You can install applications using rpm packages available for example on OpenRepos.
  • No OTA updates. To update your device, you need to flash a later Sailfish OS image or use terminal with available repositories
  • Keyboard layout cannot be changed from settings, should be fixed in upcoming Sailfish release.
  • Virtual keyboard visible when hardware keyboard is used.
  • Bluetooth contact sync does not work.
  • Compass reports incorrect (unscaled) value.
  • Random graphics bugs with text in Warehouse (and possibly other programs), can be fixed by putting the program to backgroung and foreground again.
  • Refer to bugzilla for list of other known issues

Disclaimer: Testing with any unofficial images is in your own responsibility. If you brick the device following this guide, it's up to you to fix. This guide is written by information available on July 2015, please check any possible updates in the sources linked in the end of this post.

Note regarding other devices: This guide, in its main parts, might work out of the box for other Xperia models as well, but as of today, there are no images for Sailfish OS available yet. However, porting Sailfish OS to several Android phones is a work in progress, you can follow it up here or visit Freenode IRC: #sailfishos-porters to join the contribution or ask any questions. The Sailfish OS community is very helpful

Thanks goes to Matti Lehtimäki for making this port available, and also for checking this guide before publishing. Sail On porters! 



Share and Shout! Your friends might read it.


By: Review Jolla
Sources: Simonas Leleiva, Merproject, Cyanogenmod, Github
Published: 2015-07-29 09:20 UTC
Updated: 2015-08-06 17:28 UTC

13 comments:

  1. By any chance, Sailfish OS can be installed on Nokia 701 (Symbian s^5)?

    ReplyDelete
    Replies
    1. Seems not, link "follow it up here" in the end of the post doesn't list that model

      Delete
  2. Ei toimi / does not work!
    Tested on Sony Ericsson Xperia Pro Mk16a

    ReplyDelete
    Replies
    1. What happens? It should work, did you have issues during any of the steps?

      Delete
  3. How is the battery life and is stable enough for daily use?

    Have you tried to use android apps with this release?

    ReplyDelete
    Replies
    1. Sailfish OS is mobile optimized, and quite great for battery life in general - but work on Android support is still going on, currently not supporting those apps. Not sure if multiboot (Android + Sailfish OS) would be possible...

      Delete
  4. Wow! Beautiful! Works great!
    Thanks a lot for the detailed guide. As a complete android noob it helped a lot.
    Apart from the bugs you mention above:
    -) Altough I'm using a decent SD-card, opening an app is a bit laggy (probably due to the responsiveness of the SD-card)
    -) Booting sometimes fails. I have to take out and re-insert the battery, the second time it always worked up to now.

    Finally I can do something useful with an (ex-)android phone :-)

    ReplyDelete
  5. Hi, I am considering putting SailfishOS on an old SonyEricsson urushi aka Xperia Ray. It should be the same generation as Pro just with slightly different drivers.

    What do you think, can I just use the kernel/recovery from my variant and flash your Sailfish ZIP on top of it?

    ReplyDelete
    Replies
    1. Currently there are unifficial images for Xperia L (C2105), SP (huashan), Pro (iyokan), Z1 Compact (amami), Z3 compact (aries/z3c) and Z (yuga) so you might need to do some porting yorself with your urushi. I'd like to forward you to contact "mal-" on Freenode IRC, channel #sailfishos-porters, for more information. Would be great to add one more XPeria on the list.

      Delete
  6. I have yet to abandon my beautiful old and torn mk16i. I tried to run Candy5 (lollipop) and CM10 (kitkat?) on it but with a few installed apps on it, it becomes terrebly slow even with a SD card that claims to do 80mb/sek. Nothing like CM7. Will try this too and anything that might work in order not to need to buy a new phone since there are not one model on the market that apeals to me even the slightest.. From what I can see about this project the only possibly annoying thing for me would be not being able to set my language on the keyboard - well, I will give it a go! :-)

    ReplyDelete
  7. Hello,
    does Sailfish run on a SONY XPERIA E15I model?
    Joerg

    ReplyDelete
    Replies
    1. Hello Joerg, that's a nice phone. Arm-processor and an older Cyanogen version seems to exist, so porting Sailfish OS on it could be possible. I suggest you visit Freenode IRC, join channel #sailfishos-porters and ask around - or maybe even start the porting yourself?

      Delete
    2. Thank you

      Delete