Upgrading From CyanogenMod Android Kitkat to Lollipop – Impressions

After coming back from vacation and having had some time before my next trip I decided it was a good time to upgrade my Samsung Galaxy S4 from CyanogenMod Android 4.4.4 (Kitkat) to 5.1.1 (Lollipop) mostly because of the Stagefright security issues discovered in the weeks before. While that fixed the security issues I was actually positively surprised about a number of new and different things on Lollipop (i.e. CyanogenMod 12.1). Read on for the details.

First of all, the eye candy has gotten slicker again. Things roll in and out of the screen into different directions and animations are much smoother. Despite the added animation complexity there's a noticeable improvement of the calendar entries being presented in a widget on the start screen. Instead of taking 15 second they appear immediately.

Also, program startup times have been much reduced and, what I've been asking for a long time, apps are no longer terminated in the background after some time of non-use or when bigger apps such as Osmand are started in the foreground. Also, switching between running apps with the new task switching functionality that shows running apps like they were in a Rolodex is much better than on Kitkat. Another thing that has gotten attention was the startup time of the camera app. While it usually took several seconds before, it's now almost instantaneous.

Speaking about Osmand, the GUI of the current version that was released independently of my OS upgrade has become much slicker. It took a bit of time to get accustomed to where I find different functions as they look a bit different now but overall I like the user interface changes.

Further on the positive list, a '#' sign is now shown in the status bar if an app is running with root rights. Speaking of the status bar, I like the new icon design and notification handling both in locked and unlocked state and the ability to completely block notifications of apps that I don't want or only ban them from the lock screen.

And last but not least, my network blocking scripts to remove obnoxious advertisement in web pages and the ability to disable GSM for LTE/UMTS only access still work. Excellent, both are must-have features for me.

Unfortunately there are a number of major issues with the CM 12.1 nightly development stream as well: Nightlies distributed in the middle of August for the S4 had a major problem with the GPS chip and my device couldn't get a fix at all or took several minutes. This seems to have been fixed in late August but the current nightlies keep soft resetting the GUI several times a day on my device. I tried an S5 for comparison and had the same experience with soft resets. I guess some more work needs to go into CM 12.1 before it can be declared reasonably stable and usable. A bit of a pity, I'd really like to use it now 🙂

The second issue I have noticed is power consumption. I can't yet put my finger on it but it seems that while power consumption is the same as before when the phone is locked, significantly more power is required with CM 12.1 while the device is used.

Well, I guess you can't have it all, but the broken GPS functionality and regular GUI resets are a showstopper for me at the moment. Fortunately the Galaxy S4 CM maintainer has now issued CM 11 nightlies with the Stagefright fix as well. So let's see, hopefully that's more stable.

Not so easy I'm afraid…

The Recovery Partition Is Key To Android Flashing

Every now and then I flash CyanogenMod on an Android device and as there are usually weeks or months between two sessions I frequently have to look up the instructions again. To complicate matters, the procedure for flashing an alternative Android on a device also depends on the device manufacturer. Altogether a very confusing procedure if you don't do it all the time. But things get much simpler once one has understood what lies at the core of the different procedures and all the steps required.

The Recovery Partition

No matter how different the procedures are, the core is always the same: When Android starts, the bootloader on any device has several choices it can make. Usually, the bootloader just boots Android. Some manufacturers have included a proprietary flashing software that the bootloader can run instead of starting Android when the user presses a certain key combination during power up. This is proprietary, however, and is not directly related to Android. And finally, the bootloader can also start the software in Android's recovery partition. And this recovery partition is what is used on all devices to install an alternative ROM from a zip file that contains the complete Android installation.

Software For The Recovery Partition

So the first trick is to get an alternative recovery software on the recovery partition. A well known alternative recovery software is Clockworkmod (CWM).  This is the key in all flashing procedures I have come across so far. Exactly how this is can be achieved depends on the device and manufacturer and procedures vary wildly. I'll give a couple of examples below. For now, the key thing to remember is that an alternative recovery software such as CWM has to end up in the recovery partition in some way.

Getting The Alternative Android Software On The Device

Once the recovery software is on the recovery partition it can then be used to flash the alternative Android system into the system partition. Before that is done the device has to be wiped with the recovery software as configuration settings of the 'old' Android system might not be compatible with the new system. The second big task in flashing a new Android system is to get the zip file that contains the new Android system into the device so the recovery software can flash it. The easiest variant is to put it on a removable memory card. Another variant some devices support is to upload the ZIP file to the data partition of the device over USB while it is in recovery mode. One way or another, once the Android system ZIP file is on the device the alternative recovery software (e.g. CWM) is then used to install it. In the case of CyanogenMod I usually also transfer a second ZIP file to the device that contains a part of the Google software to be able to access the Play store. Transferring and flashing the second ZIP file works the same way as for the main Android system ZIP file.

So Why Are The Procedures Different For Different Device Manufacturers?

So far so good. In practice, however, different manufacturers have chosen different ways to configure the different Android storage partitions and startup procedures. Also, some companies such as Sony, for example, lock the bootloader and won't allow an alternative software on the recovery partition before the bootloader is unlocked. This is done via a code that can be obtained from their unlock website. The Samsung devices I have flashed so far do not require this step, their boot loaders are open. However, there seem to be some US network operators that have the bootloader of their device variants locked. On Sony devices the recovery software has to be sideloaded via Android debug tools. On Samsung devices, Samsung specific tools are required. And, not to forget, the key combinations to make the phone boot into the flashing software in Samsung's case or the recovery partition are also different on a device and manufacturer basis. Just like the keys to enter a PC's BIOS settings…

But in the end, all these different procedures have one goal: To get an alternative recovery software on Android's recovery partition. Keeping that in mind and the confusing multistage instructions of how to do that might seem a little bit less confusing.

 

Did You Know That The BIOS Can Contain Windows Executables?

Wow, I'm flabbergasted, did you know that the BIOS can contain Windows executables that are run at every Windows system startup that the user can't delete and that even won't go away when you re-install Windows unless the feature is deactivated in the BIOS before re-installing?

I didn't until I read this article in Ars security about a well known company that misused the 'feature' that is supposed to help with wipe-after-theft and other security features to deploy un-deletable crapware to buyers of their machines. Another one of those 'the road to hell is paved with good intentions' features that was hijacked. Am I glad that I'm running a Linux OS on all my machines whose developer's would never even dream of supporting such a dangerous BIOS behavior.

This Year’s Holiday Network Setup And Data Use In Austria – 18 GB

2015 data usage austria vacationI've been in Austria again this summer for a couple of weeks and thanks to Drei.at's unlimited data bundle for 18 Euros a month on a prepaid SIM I didn't have to artificially limit my data use. Last year, I ran through 16 GB of data during my 3 weeks stay and slightly topped it this time around with 18 GB because I was in the country for a couple of days longer.

I suspect it would have been much more as I mostly streamed HD content this time around if it wasn't for the fact that unlike last year the sun was shining a lot and thus there was less time to use bandwidth intensive applications, read, streaming videos. While LTE is now ramping in Austria as well, my prepaid SIM was still limited to their 3G network but there was no congestion and the network felt snappy with sustained data rates usually well beyond the 10 Mbit/s mark.

Like last year, I had a Raspberry Pi with me, this time a Pi 2, to serve as a Wi-Fi access point and VPN client gateway to tunnel the data traffic of all my devices via tethering to a Samsung Galaxy Express smartphone to a VPN server first before releasing it to the Internet. Yes, I like my privacy and I don't want to be DPI'd. Unlike last year, however, I didn't use my VPN server at home in Germany that is limited to a throughput of 5 Mbit/s due to my VDSL line's uplink speed limitation. Instead, I used my VPN server in Paris that is connected to a fiber line to be able to make full use of the available 3G bandwidth.

For streaming videos to a tablet instead of to a PC like last year, I had a second Raspberry Pi with me so I could run another Wi-Fi network and VPN tunnel to another destination to cater for regional content limitation, i.e. geoblocking. I could of course have changed the VPN endpoint on the main Pi as necessary and I have scripts to do that on the fly, but a Pi is light and small enough to fit into the suitcase so why limit myself?

The usage graph screenshot on the left is quite interesting. Unlike last year where the curve was pretty much a straight line, the curve this year is a bit different. During the first week I was traveling through the country a lot and the curve is quite flat, i.e. little video consumption. The pattern changes quite a bit about a third into the trip and one can plainly see the difference of Internet use with and without online video viewing.

I very much enjoyed the trip and wished there were more network operators like Drei in Austria that are a bit more generous with the mobile data buckets than just a couple of GBs per month.

Chinese Companies Are Cutting Jobs Now, Too!

In the past 10 years I guess I wasn't the only observing that lots of European and US tech companies and network equipment vendors where laying off people and selling off parts of their technology and wondering how the story would continue. In many cases, Chinese companies picked up the parts and at least in Europe, quite a lot of people in the tech business are now working for Chinese companies. In many cases, companies regarded as 'Asian upstarts' by man in the industry only 10 years ago have become quite successful, often being on the market these days with new features well before the incumbent competition, especially in the LTE domain.

So far, this was a continuing trend. But I'm wondering if we are perhaps about to run into saturation here as well!? Today, I've seen the first article I can remember on a big Chinese tech company, Lenovo in this case, having had a massive dip in earnings and thus announcing that they will fire 3200 people or about 5% of their employees as a result. You can of course read this in many ways or perhaps it's only an isolated case but I wonder if the tech honeymoon in China is about to end as well?

In the Museum – Youtube and Wikipedia On The Smartphone

Museums probably have to walk a tight line. Give too little information about exhibits and people are not happy, give too much information and people are annoyed as well. Usually, I fall into the first category as I usually go to museums with a specific topic in mind I want to immerse in, such as computing history for example. But even specialized museums on the topic such as the Computer History Museum in California or the Heinz Nixdorf Forum in Germany with their wonderful exhibits offer little in this regard. But as long as there's cellular or Wi-Fi network coverage in the museum, things are far from hopeless.

With a bit of background research one can usually find a ton of information on exhibits on Youtube and Wikipedia, most of it not from the museum itself but from other people. Case in point: When I was recently in Vienna I visited the technical museum because I wanted to take a closer look at the "Mailüfterl", a transistor based computer of the 1950's that was built at the local university. The last sentence is about as much information as the museum said about the exhibit. Quite disappointing but not only did Wikipedia come to the rescue, there are great videos on Youtube with a lot of background information, including this great video tribute made by Google. Wonderful!

Equally, I enjoyed background information about quite a number of other exhibits such as a Univac II tube based computer, a PDP11/40 with integrated circuits, a Powerbook G3 (with a nice 7 minute video of Steve Jobs and Phil Schiller showing how their new product annihilates the competition), etc. etc. etc. And what about that Saba video game console I've never heard about!? The museum doesn't tell me anything about why it is significant but Wikipedia immediately tells me that it's been a re-branded Fairchild Channel F game console that even predates the Atari 2600. What happened to Saba, a brand I know from other electronic products of the 1980s? The museum has no answer, Wikipedia has. Great to find out all these things while looking at the real thing. That's how I like a museum visit to be, go there see the real thing, immerse myself in the details and learn.

Perhaps museums should consider to provide Wi-Fi Internet access and make their visitors particularly aware of it so they can use their own devices (i.e. smartphones and tablets) to get the background information about exhibits they would like to have instead of awkwardly trying to find the right balance between too much and too little, which is impossible to find anyway due to the diverse interests of their visitors.

Updating Owncloud Has Become Really Scary

For the third time in a row I ran into major difficulties when upgrading Owncloud. I really love this project and I can't overstate it's importance to me, but in its current state it won't be attractive to a lot of non-technical people for whom a robust upgrade process is essential because they can't fix things when they break without them being at fault. So instead of just helping to fix the individual issues as I've done in the past, I've decided to describe my latest upgrade experience to an open audience in the hope that some people working on Owncloud realize the state the project is in and finally take some real counter measures.

I run a pretty much standard and small Owncloud instance on an standard Ubuntu 14.04 LTS server installation on an Intel platform. Nothing fancy, just a few users, only the minimal number of apps installed such as calendar and contacts. Also, I have some of the built in apps enabled such as the PDF viewer, gallery and the 'inside document' search. That's it. So I would expect that when my Owncloud instance informs me with a nice yellow banner at the top that an update is available and that I should just press the update button everything works smoothly. Boy was I in for a surprise.

When upgrading from Owncloud 8.0.4 to 8.1.1 as suggested by the updater the upgrade failed with an error message. A look at the issues list on Github revealed a mile long thread of other people who have also gotten the message. Eventually I figured that I just need to reload the update page and the update would run through again and this time it succeed…

Next, all external apps such as calendar and contacts are disabled and you have to re-enable them. A 'nice' feature that Owncloud picked up along the way after version 6.0 and that nobody understands from a user point of view. From what I've seen there have been quite a number of people voicing their concerns over this and it's on the top of the wish list of things to change for an upcoming version.

Unfortunately the calendar and contacts apps were not longer in the list of apps that can be activated. What!? After a lot of research I found out that this is related to an error message in the admin screen that Owncloud doesn't have access to the Internet. How so, I wondered, Internet access is working fine. Again, I had a look at the Owncloud core issue list on Github and found a mile long thread from other people who had the same issue. Somewhere in the middle of the thread I read that putting an SSL certificates file one can download from the web into the Owncloud config directory fixes the issue. Unbelievable but true, it fixed this issue, no more complaints about no Internet connectivity and the calendar and contacts apps were showing up again in the list of apps that can be activated.

The next challenge I met was that when activating the calendar in the app menu I got an update error message. Now what, again no further advice!? Clicking somewhere in the web interface popped up the system updater page again which informs me that the calendar is now updated. Unfortunately that fails again with a strange error message. Again, the issue list on Github tells me I'm not the only one and rinse, wash, repeat will fix the issue. I saw the updater page again when activating a number of other apps, this time fortunately without further issues after the initial error message.

I also had trouble getting the Lucence search app updated. When doing that via the "updater button" on the web interface, Owncloud completely fell over and wouldn't even show anything in the web browser anymore. Again, the issues list on Github told me I'm not the only victim and that deleting the Lucene app directory on the server and re-installing the app fixes the issue. And indeed it did.

After that, Owncloud was finally working again for me. But I can't believe that a simple update results in such chaos!? Really, dear Owncloud community, of which I feel I'm being a (frustrated) part of, you have to get your act together and fix the update process, IT MUST NOT FAIL UNDER ANY CIRCUMSTANCES if you want this project to thrive in the future. Forget new features, forget slick UI changes, FIX THE UPDATE PROCESS…

And fix it to a point where an update via 'apt-get update' from the command interface does everything, including re-activation and updates of any Owncloud apps. While this is not working I won't even bother anymore recommending to and installing Owncloud instances for my less technical friends.

Book Review: Diary Of An 80s Computer Geek

There are quite a number of books on the market these days about the emergence of home computing and the PC in the 1970’s and 80’s and the people that had a major influence on this development and shaped the industry. Little has been written so far from the point of view of the kids on the other side of the business model that dreamed about getting their first personal computer, what they’ve done with it apart from playing games and how it shaped their future lives. A wonderful exception is ‘Diary Of An 80s Computer Geek: A Decade of Micro Computers, Video Games and Cassette Tape’ by Steven Howlett (not with a ph!).

Written in 2014, Steven tells about his adventures and misadventures as a young teenager in the 1980’s, his first computer and subsequent computers, programming, impressing his friends, trying to sell the result, about clueless teachers and lots of other things over 90 pages in a very humorous and easy to read style. While I would have been a (C64) ‘Commie’, he was firmly entrenched on the Sinclair ZX ‘Speccy’ side of things, a school ground battle that was probably fought much harder in Britain than it was in my home country (were we only had proper school ground battles over computers in the Amiga vs. Atari age. But I digress…) I couldn’t put the (e)book down as the story had so many elements I could immediately identify with as it reminded me of my computing adventures in the 1980’s.

A great book, fully recommended and a wonderful story from the ‘other side of the fence’!

I Can’t Wait For GSM To Be Switched Off… Optus The Latest To Announce Such A Move

The last time I can remember when I was glad I had EDGE coverage was back in 2010 in Thailand. But these days are definitely gone now, with most 2G networks now being hopelessly overloaded in non-3G or 4G areas with the data traffic of all smartphones in the area and web content having become so big that even non-congested 2G networks would hardly be able to cope. After AT&T and Telenor, Optus as another big network operator has announced a GSM switch-off, 2017 in their case. Macau Telecom is perhaps the first network operator that has switched-off GSM already, but that's a fringe case.

I have to say, I more and more can't wait for GSM to be switched off, it is of little use anymore these days. And a nice benefit: Those who switch-off, at least in theory, make sure 3G and 4G coverage is available in areas where previously GSM was the only available network technology. Really, I can't wait, switch it off! And in the meantime, I'm happy I can switch it off on my side.

P.S.: O.k., yes, I know, some network operators have a lot of 2G M2M modules still out there…

Old ‘Byte’ Magazine At Archive.Org To Experience The Past

Every now and then I read books about different aspects of computer history. Good books written on the topic obviously heavily rely on original sources and interviews and make a good plot and summary out of it. To dig deeper on specific aspects requires to get hold of the original sources. Fortunately, quite some of them are available online now, such as for example scanned originals of 'Byte' magazine, that covered 'microcomputer' topics in great depth and technical detail from 1975 to 1998.

One issue I recently took a closer look at was from August 1985, i.e. from exactly 30 years ago, as it contains a preview of the upcoming Amiga 1000. What I find very interesting reading original sources is how new developments at the time were perceived at the time and how they compare with existing technology. I had to smile, for example when comparing the graphics and multitasking capabilities the Amiga introduced to Jerry Pournelle's ravings in the same issue of the magazine about a program that 'can have WordStar, DOS, and Lotus 1-2-3 running all at the same time that would otherwise have only single-tasked on his text based Zenth ZP-150 IBM-PC clone.

Obviously that's just one of millions of stories to be discovered. For your own enjoyment, head over to  Archive.org and begin your own journey through computer (and other) history 🙂