Tuesday 23 February 2016

Jolla Tablet experiments no.3: updating the factory image, .13 -> .24

As the third experiment,

 - inspired by Review Jolla -,

... I tried to change a newer factory image to Jolla Tablet, to see if it really works with the same image as the IGG backer tablet - SFOS 1.1.9.24 instead of 1.1.9.13. If this worked, I would be able to reset the tablet to factory settings and it would run the same image as the official Jolla tablets.
I was able to get the newer factory image from the internet (details per request from the author). The package was named 'AndroidTablet.zip'. It had following contents:

Archive:  AndroidTablet.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
 16777216  01-31-2016 18:50   AndroidTablet/anzhen4-android/recovery.img
 16777216  02-07-2016 11:06   AndroidTablet/anzhen4-android/anzhen4_mrd8_boot.img
1610612736  01-31-2016 19:14   AndroidTablet/anzhen4-android/system.img
       47  01-31-2016 16:52   AndroidTablet/SailfishOS-1.1.9.24-tbj-0.9.0.41/home.img.lzo.md5
       47  01-31-2016 17:16   AndroidTablet/SailfishOS-1.1.9.24-tbj-0.9.0.41/root.img.lzo.md5
 91113389  01-31-2016 17:20   AndroidTablet/SailfishOS-1.1.9.24-tbj-0.9.0.41/home.img.lzo
509097722  01-31-2016 17:16   AndroidTablet/SailfishOS-1.1.9.24-tbj-0.9.0.41/root.img.lzo
    96256  01-31-2016 16:52   AndroidTablet/AdbWinApi.dll
   160256  01-31-2016 16:52   AndroidTablet/fastboot.exe
   819200  01-31-2016 16:52   AndroidTablet/adb.exe
---------                     -------
2245454085                     10 files
The files in the 'SailfishOS-1.1.9.24-tbj-0.9.0.41' directory were the ones to use. I figured, the way to do this, is to replace the tablet's existing '/fimage' directory contents with these. I unzipped the downloaded package, and the 'lzo' images inside it, and mounted 'root.img'. It had following contents:  

-rw-r--r--. 1 root root 11993088 14.8.2015 droidboot.img
-rw-r--r--. 1 root root  9550336 14.8.2015 efilinux-user.efi
-rw-r--r--. 1 root root 67108864 14.8.2015 esp.img
-rw-r--r--. 1 root root 10534912 14.8.2015 hybris-boot.img
-rw-r--r--. 1 root root 12158976 14.8.2015 hybris-recovery.img
-rw-r--r--. 1 root root     1831 14.8.2015 partition.tbl



Compared with Jolla Tablet, with Sailfish OS 2.0.1.7, the '/boot' directory looked much the same:
[nemo@Jolla ~]$ cd /boot
[nemo@Jolla boot]$ ls -l  
total 108944
-rw-r--r-- 1 root root 11999232 Oct  2 04:15 droidboot.img
-rw-r--r-- 1 root root  9550336 Oct  2 04:07 efilinux-user.efi
-rw-r--r-- 1 root root 67108864 Oct  2 04:08 esp.img
-rw-r--r-- 1 root root 10545152 Jan 12 13:54 hybris-boot.img
-rw-r--r-- 1 root root 12341248 Jan 12 13:54 hybris-recovery.img
-rw-r--r-- 1 root root     1831 Oct  2 03:39 partition.tbl



So, I figured it is similar enough to safely assume it could work. I transferred the compressed image file 'root.img.lzo', along with its checksum containing file 'root.img.lzo.md5' to the tablet using PC connection - first to SD card...

...then 'devel-su', input password, 'cd /fimage/SailfishOS-1.1.9.13-tbj-0.9.0.20' and:

[root@Jolla SailfishOS-1.1.9.13-tbj-0.9.0.20]# cp /media/sdcard/7DE1-1EF5/root.img.lzo.md5 . 
cp: overwrite `/fimage/SailfishOS-1.1.9.13-tbj-0.9.0.20/root.img.lzo.md5'? y
[.]# cp /media/sdcard/7DE1-1EF5/root.img.lzo .
cp: overwrite `/fimage/SailfishOS-1.1.9.13-tbj-0.9.0.20/root.img.lzo'? y


- that is, overwriting the existing image and its checksum with the new ones. One thing came to mind, though: does it matter that the directory name is wrong now, referring to 1.1.9.13 rather than 1.1.9.24 ?
I reset to factory settings... it's processing the reset, and finally announces "factory reset successful", and the screen turns black. Power key press returns life to the tablet, which boots up for a while now.
A long while. During which, the display shows Jolla and Intel logos, and nothing else happens.

After 20 minutes, I start to look for other options. I flash the Sailfish OS 1.1.9.13 package again and start over, updating over the air all the way to SFOS 2.0.

Clearly, something went wrong. Directory name? Should I have replaced the 'home.img.lzo' as well? Should I have done this some other way than copying and replacing the files? Should I have checked the permissions on the files?
If anyone has ideas, or experience on the matter, let me know via twitter: @psjuma

Tuesday 9 February 2016

Jolla tablet experiments no.2: installing Sailfish OS

I got my hands on a package that contained Sailfish OS 1.1.9.13, plus flashing software. With little to lose, I decided to give it a try. As you remember, I already disabled SecureBoot so if things got wrong, I could (probably) re-flash the tablet with basic Android instead of bricking it...!

I'd heard of the Aigo X86 tablets that were on sale in China, and also that some sellers on marketplaces sold these as Jolla tablets. There may be no hardware compatibility between Jolla and Aigo, so the install could go wrong if I had bought Aigo hardware in Jolla covers. I checked the FCC ID on my tablet - at least, what was printed on the back cover - and it matched the FCC ID database. The result from http://fccid.io is here, but you can also check the code directly from the FCC database.

Pic 1. My Taobao Jolla Tablet back cover, showing FCC ID among other approval stamps

Initially I bought a 32GB memory card to install SFOS into, but the flashing procedure left no choice and I didn't want to experiment too much on alternative installation media first, without knowing whether SFOS would run on my tablet at all.

So, short story even shorter, I downloaded the package, extracted the contents, read the README file, shutdown the tablet, connected it to my Linux PC and re-booted the tablet in DNx state (technical details of that are a mystery...!) by pressing Power-VolUp-VolDown concurrently. Finally I ran the flashing script. The tablet was flashed and it didn't even take very long! Soon I had a working Sailfish OS 1.1.9.13 installation on my tablet. At least one problem with it was found -  Jolla Store did not work - so I tried updating, and received 2.0 update!

The tablet now with SFOS2.0.1.7 (Taalojärvi) is working great. Android support allowed installation of Aptoide Store (although it required a re-start of Android Services), and also Amazon App Store could be installed and is functioning. Currently I'm watching internet TV from Finnish Broadcast Corp. YLE, using their own Android app, and video and sound work flawlessly (although the app asks me to install Google Play Services, which I'm not inclined to do at the moment).

So, experiment no.2 - installing working Sailfish OS on my Jolla Tablet purchased from a 3rd party - is a success!


Pic 2. Rebooting the tablet in a mode that allows for flashing the operating system and firmware

Pic 3. After the flashing and automatic reboot, Jolla setup display appears

Pic 4. Update to latest OS version is a success


I learned now that this has been replicated - check  "HOWTO Flash Sailfish OS" on TylerTemp's (Twitter: @Tyler_Temp) Chinese Unofficial Jolla blog: https://jolla.comes.today/jolla-tablet-on-taobao-china/?lang=en - it contains links to the flashing software.

Wednesday 3 February 2016

Jolla Tablet exp. 1: disabling SecureBoot

First thing to consider before attempting to install another operating system on the Jolla Tablet, is to check that it won't brick the device. SecureBoot could cause this to happen, if the new OS is not signed (maybe... this is shady area to me). It got advice on how to find if SecureBoot is enabled in the first place. It was plain: attach a keyboard to the tablet and press F2 when the device is booting. This makes the UEFI/BIOS setup screen appear. The following photos show how I found my way around the settings to disable the SecureBoot feature (it could be done, thankfully!). EDIT - important notice: to disable Secure Boot, you first need to set a supervisor password (see picture 2.)! Thanks to  for noting this! 

1. BIOS settings, navigate left using cursor keys to "Security"
2. Select the topmost "SecureBoot Configuration" using Enter key
3. Change value to "Disabled"!
4. Optionally, you can check what keys are in store for SecureBoot-enabled OS selection. This only seems to support Microsoft...
The experiment no.1. is success! Let's see next if the Sailfish OS can be installed on a SD card and be used to boot the tablet.

Tuesday 2 February 2016

Jolla Tablet experiments

It's been a while since I contributed to this blog. Now there's subject matter to post again - the once hailed, now infamous Jolla Tablet (JT).

The rise and fall of JT is roughly (and perhaps one-sidedly) told on Jolla Official blog , and in a more downright way on Review Jolla blog , TechCrunch and other news sites, and by numerous Indiegogo backers who paid 239$ or 269$, but ended up with no tablet nor refund (yet) - just lots of empty promises.
Me, I ordered JT from Jolla shop directly, and was promptly refunded when I demanded my money back after waiting for months for JT to arrive. So - no bad blood personally between me and Jolla. But I wanted to share info and experience I've gained since I took on their tablet offer that ended up being, apparently, almost completely vaporware.
So, the first phase after asking for and receiving my funds back, was to check if the claim by Twitter account @skvark : was true. The accompanying link showed JTs on sale at the Chinese Taobao shop. I ordered one through OBook (http://www.myobook.net/), Shanghai, and paid ~230$ + VAT for it. The tablet came without Jolla's Sailfish OS, with Android 4.4.4 installed instead. Here's a photo of it. It's nice! But I miss Sailfish OS!
 

 I announced the event in my Twitter account (handle @psjuma , https://twitter.com/psjuma/status/693373799249633281), and it quickly gained some attention. It led to a discussion of why there are Jolla tablets on sale by others when Jolla can't deliver them to Indiegogo tablet campaign backers, and does Jolla provide Sailfish OS to these tablets. Quick answers to these issues can be read in Jolla Official Blog and Review Jolla blog

To my opinion, the matter is not completely settled still - only after the refunds are complete, I think we can make conclusions about Jolla Ltd.'s honesty and trustworthiness on the matter. Apparently, now there is no way to get a tablet from Jolla. Instead, people are supposedly ordering them from Taobao or other 3rd parties possessing them. Installing Sailfish OS on such unofficially acquired tablets is a mystery: can it be done, will it work, will it update etc. That's what I'm about to find out next.