Updated: November 26, 2017
Once upon a time in the West, the hopes were high. The man with no name rode into town, promising Linux for all, on desktop and phone alike. Later on, we learned the man's name was Harmonica, and I got confused. But I really loved the dream that Canonical tried to create, and I bought myself an Aquaris phone and an Aquaris tablet. I believed this could be big.
But then, the dream was dashed, and I was left with a pretty nifty, decent, mid-range tablet gathering proverbial dust, and real dust, and nostalgia. With the choice of keeping it as is for memorabilia sake, or converting the now irrelevant Ubuntu Touch device into something with more day-to-day relevant, I opted for going Android.
I have never before flashed a device. I just didn't feel a need to install a custom ROM and see what gives. But now, I decided to embark on a mission, and this meant getting the correct firmware, some flashing tools, working around a handful of errors, and finally testing the new Android operating system, should it actually all work.
All right. In order to "burn" a new operating system image onto a device, be it a phone or a tablet, we need a tool, and the one that seems to be the most popular choice is SP Flash Tool. There are many versions available, and I chose version 5.1612. The download link is available on that page.
As for the actually operating system, again, I had several choices, but I wanted to be as official as I could, so I downloaded the latest firmware from the BQ website, and this turns out to be Firmware 2.4.0 (Marshmallow 6.0) for the FHD edition of my tablet.
I downloaded and extracted the firmware. From inside the archive, we will need something called Scatter file. Next, I ran the SP Flash Tool, or at least tried to. It failed with a shared lib error, because the specific version the tool depends on is not available on Ubuntu 16.10 and above, and indeed it was missing from my Kubuntu Zesty.
./flash_tool: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
The necessary package is available from the Ubuntu archives. Grab the DEB file and install it, preferably from the command line using dpkg -i <package name>. Once the package is installed, you can run the SP Flash Tool.
sudo dpkg -i libpng12-0_1.2.54-1ubuntu1_amd64.deb
Selecting previously unselected package libpng12-0:amd64.
(Reading database ... 360075 files and directories currently installed.)
Preparing to unpack libpng12-0_1.2.54-1ubuntu1_amd64.deb ...
Unpacking libpng12-0:amd64 (1.2.54-1ubuntu1) ...
Setting up libpng12-0:amd64 (1.2.54-1ubuntu1) ...
Processing triggers for libc-bin (2.24-9ubuntu2.2) ...
Start the program. Load the Scatter file by clicking on Scatter loading and selecting the Scatter file inside the archive. Now, this is a text file with memory offset instruction mappings, so that the firmware can be correctly written. Sounds fancy, but it's nothing special.
Before we proceed, there could be quite a few, actually. Several websites, including this very detailed guide, reference ERROR 1001. I did not have that issue, nor faced the problems with conflicting packages. However, I did encounter ERROR 1013. This one is caused by not running the program with sudo. Run it with sudo. There.
I also encountered issues with other versions of the SP Flash Tool, not being able to recognize Scatter files and similar. It is a bit of a hit & miss approach here, but in general, this is just a step we need so we can test Aquaris + Android.
In the dropdown box just above the list of memory mappings, select Firmware Upgrade. Then, counter-intuitively, hit the big Download button. At this point, the tool will try to detect a connected device on one of the USB ports. If you already have a device there, it might not see it. So once you hit the Download button, connect the tablet. Not before. You can check the success of your action on the command line:
Scanning USB port...
Search usb, timeout set as 3600000 ms
vid is 0e8d
device vid = 0e8d
pid is 2000
device pid = 2000
com portName is: /dev/ttyACM0
Total wait time = -1499689352.000000
USB port is obtained. path name(/dev/ttyACM0), port name(/dev/ttyACM0)
USB port detected: /dev/ttyACM0
Downloading & Connecting to DA...
COM port is open. Trying to sync with the target...
Again, trial & error, it could take a bit for the tablet to be detected and flashed, so you may need to restart the procedure a few times, choose different USB ports, connect and re-connect the tablet until it works. Which it did. The flash sequence was very fast.
I powered on the device, got a nice BQ splash, full of vivid colors and squiggly lines, and I wanted for about 10-15 minutes for this to complete. Then, I had the configuration wizard start up. Seems like we're doing ok.
I selected the same account I was using on my Samsung Note tablet, but I chose not to import any settings. BTW, we will revisit this little device again soon, too, because it will be an interesting comparison exercise.
Very soon, I had Android 6.0 running. Slick, elegant - and much faster than Ubuntu on this very same hardware. The performance difference is stunning. Android is so much more responsive, so much snappier. It is sad that Ubuntu never took off, but then the actual technical and ergonomic gap, to say nothing of the apps, the heart of any mobile device, is huge.
Moreover, recently, I've warmed up to Android with my Moto G4 testing, and it's come a long way since the early days. Being the objective little monster that I am, and an avid Windows Phone user, I have to say that I found the Moto experience and its selection of Marshmallow and Nougat to be really good. You don't get fairer than this.
Well, this is a good question. But the answer is equally good. A whole lot. With built-in GPS thingie, you can use it to navigate, and it comes with a sharp display, and you can also use HERE Maps for a full offline pleasure. Fancy stuff.
The default configuration is very reasonable. No junk. BQ gives you Android sans any bullshit, and this is how it should be. On top of that, I tried a whole bunch of apps, and they are all there, working quite well. The whole episode was slick, painless and fast. I also installed AppLock for added robustness, and then encrypted the device. A quick and painless procedure, but you do need the full battery charge before you can do it.
Werk that Play Store, son! Werk it.
I still have to spend some time figuring out the finer details, but I'm liking this a fair bit. There's a good range of software, the performance is really decent, the display is clear and bright. I will test the battery charge over the coming weeks, as well as report on the camera, although I don't think that's a great consideration for a tablet. Still. In general, it feels much sprightlier, less cluttered, smoother than my Samsung device. But they are also a few years and few Android versions apart.
I am slightly sad that I decided to give up on Ubuntu on this tablet. But it's also a happy decision, because I have a functional, capable device now, and I can use it to the full range of its specification and abilities. Simple value for money, and there are no sentiments there.
Now, let's be reasonable, I'm not gonna be seen gallivanting into the sunset with a tablet in my hand. This will be strictly opportunistic, on-the-go use, 90% experimentation and novelty, 10% real use. Still, when I take into consideration the last four years or my tablet usage, a pattern appears, and it's a positive one, even though tablets are unnecessary in between smartphones and laptops.
All that said, BQ Aquaris M10 FHD with Android is a decent device, and it works well. I wish the situation was different with Ubuntu, but it isn't. On the desktop, it remains one of the more sensible Linux options, but it never had what's needed to succeed in the brutal touch world. Well, a new hope is born, and we shall see what gives. To be continued.