Custom Android ROM for Kids Phone

It can be helpful to have a dedicated phone to put a few educational games and pre-approved media on. Most parents repurpose an old phone, which presents a few problems. Maybe other parents had a smooth experience with Family Link, but I couldn’t get it to work correctly. I was able to set up most other things and work around the problem.

Codenames

Often when projects are under development, the final name hasn’t been determined so a codename is used. Knowing the codename of your device can make it easier to select the correct image to download.

The device I’m working with is Google’s Nexus 5, codename Hammerhead. Most of the phones I’ve owned were purchased directly through Google’s website rather than with a mobile carrier. One of the nice things about the Nexus and Pixel series is that the device is supported for awhile, which makes using a factory image more viable.

Start With The Factory

If the phone received essential updates, it might be possible to use the factory images. These are the Android images that were officially supported by the manufacturer. Manufacturers will typically provide factory images through their website. Sometimes the website isn’t very user friendly, which makes knowing the codename really helpful.

The Nexus 5 factory images only go up to Android version 6.0.1 Marshmallow. A more recent version of Android was needed. So, I needed to find a viable alternative.

Custom Recovery

I was able to install TWRP custom recovery without any problem. This is a custom recovery programs that makes loading ROMs and cleaning the device pretty easy. You can, of course, use the standard Android Debug Bridge but setting up TWRP is worthwhile because you may also want to use it in the future.

Selecting An Alternative

I needed to select an alternative that was fairly small. It had been a little while since I had installed a custom ROM so I searched the web for the latest top ten lists of Android ROMs. I was particularly interested in ROMs that were lightweight, especially because the storage capabilities of this phone are pretty limited.

Lightweight was particularly important. The base models of older phones often had limited built-in storage. Older versions of the operating system and apps were often smaller. In addition to the ROM image, it is necessary to install either Open GAPS or the official Google apps. This became exceptionally challenging during testing. I tried a few options like LineageOS, crDroid and Resurrection Remix. I used Resurrection Remix on this device once before but had trouble getting it working this time.

AOKP – Open Kang

I ended up settling on the Android Open Kang Project. The project name is a bit of a joke as kang means stolen code, but joke names often stick in IT. The ROM itself is no joke, it is pretty close to the stock ROM but more up to date and customizable.

The highest version of Android that they had for my device was Nougat, Android 7.1.2. While this isn’t exactly the most recent, Nougat was a pretty decent version of Android.

I then needed to download a suitable Open Gapps ROM image. The platform is determined by your device, usually ARM. The Android version is based on whatever ROM you installed, in my case 7.1.x. I selected the pico variant because it contained the bare minimum to download and install apps through the Google Play App.

Reboot

After installing the AOKP and Open Gapps ROMS, I restarted the device. The loading icon displayed and then the phone started up normally. After doing some basic setup, it was ready for fun. I installed some Peppa Pig and Sesame Street apps, and returned the phone to its new owner.