What is KaiOS?

By Amanz - [1] @ 0:08,
      CC BY 3.0,
      https://commons.wikimedia.org/w/index.php?curid=70342393 KaiOS, founded in 2016, is an Android-based operating system developed by American company KaiOS Technologies (offices in Hong Kong, Taiwan, China, India, Brazil and France) for feature phones (not smart phones, but rather semi-smart dumb phones) forked from the defunct Firefox OS (2013-16). Firefox OS was planned to compete against Android (especially Android Go, not necessarily iOS) on smart phones and other smart devices including television sets and even IoT. Unfortunately Firefox OS was not well received by developers leading to its demise.

KaiOS took the Firefox OS (forked as Boot to Gecko OS or B2G OS, defunct as of 2017) code and modified it for feature phones — usually with a 1.1 GHz Qualcomm Snapdragon microprocessor, small internal storage (2.37 GB of about 4 GB used by the built-in apps), 512 MB of RAM, a slot for external storage (microSD) up to 32 GB, Bluetooth access, no keyboard, no touchscreen (usually the most expensive component in a smart phone), clamshell (flip phone) with a 320x240 LCD screen (QVGA, 262,144 colors) and usually a low quality (2 MP) camera.

Note that Firefox OS and now KaiOS boot directly to Gecko (Firefox). Therefore apps for KaiOS are coded in HTML5, CCS3 and JavaScript using WebIDE (Mozilla Foundation). This allows them to run on inexpensive yet robust hardware capable of running on 2G and 4G at a fraction of the cost thanks to lower bandwidth and battery consumption — about 390 minutes (5 hours) of talk time and 300 hours (12 days) of stand-by according to the vendor. In realitiy, my Alcatel A405DL can get about 6 days on stand-by.

Although third-party are apps (usually not part of the OS) are browser-based, some of apps can run offline (no feeds or hosted apps). The only difference is that theKaiOS single image advertisement (KaiAds) that runs at the start of these apps fails to run (not cached). By the way, the web browser app is simply labeled as Browser (extremely original name).

There are several companies that are working with and/or have invested over $50 million in KaiOS (as of May 2019) including Google with an investment of $22 million, which has also supplied compatible versions of Google Search, Google Assistant (speech recognition rather than using a keypad) and Google Maps. It is interesting that Google is helping the competition or trying to secure a position in the feature phone market — a different subset of the mobile market.

KaiOS has become a hit in developing countries especially in Asia and Africa bringing internet access to over 100 million current (as of May 2019) and potential customers who cannot afford a smart phone. Having an app store or repository (KaiStore) offering WhatsApp (communication service of choice in most of Asia and Africa, owned by Facebook) has helped too.

In India, Jio has invested $7 million and uses KaiOS for their mobile phones — branded as JioPhone (about $25 with a keypad only or $45 with a QWERTY keyboard) with its own version of the app store (Jio Store). Needless to say, hackers have found a way to install and run the KaiStore on any JioPhone.

In North America, the selection of KaiOS mobile phones is extremely limited. Some feature phones running KaiOS, although not advertised as such, are targeted to the elderly and start at about $20. One of best feature phones (if not the best model) running KaiOS in the North American market is the Nokia 8110 4G (nicknamed the banana phone) with a retail price of $70 with a keypad only.

KaiOS currently holds a large (if not the largest) piece of the feature phone market share and can possibly become the leader in this technology in developing countries.

I could not convince KaiOS to have a vendor send me a free unit to test the OS so I had to buy an Alcatel A405DL running KaiOS 2.5 for $20 (cheap, no service, 802.11 only) to test this OS. By the way, to no one's surprise the customer support staff had no idea what KaiOS is. Maybe KaiOS Technologies should advertise their OS in the US. Maybe this way users can ask for KaiOS when buying feature phones instead of simply buying cheap mobile phones with some proprietary OS that no one has ever heard of before. Hence they could provide KaiOS on more units in the US as an alternative to iOS and Android in order to secure American investors.

The storage structure (directory tree) is similar to that of Android — when a KaiOS mobile device is mounted.

          + 0                   (hidden in File Manager)
          + audio
            + .RCD audio files
          + DCIM
            + 100KAIOS
              + .JPG images & .GP3 videos
            + screenshots
          + downloads
              + Bluetooth       (if used)
          + music
          + obb                 (hidden in File Manager)
          + others
          + photos
          + videos
          + [third-party app subdirectories if any]
          + [user-defined subdirectories]
          + .gallery            (hidden in File Manager)
            + previews
              + downloads
                + Bluetooth     (if used)
            + tmp
              + [including wallpapers]
        SD Card
          + [user-defined subdirectories only]

Note that KaiOS does not save files to microSD and the OS does not seem to give any means to change where the path. It seems that access to microSD is for users to save and/or move pictures, videos, music and other personal files between the internal and external storage rather than writing to it.

The unit comes with built-in apps.

I am excited to test KaiOS 2.5 although it was released in February 2018. As of August 2019 (when I tested it), the latest version was KaiOS 2.6, which was released in May 2019.

One thing that I have noticed so far is that the version of KaiStore does not offer the same apps advertised in other countries like Google Assistant or other Google apps or services for the feature phone that I bought. According to KaiOS the selection of apps depends on the sole decision and selection of the vendor and/or carrier — in my case, Alcatel A405DL. This selection is fairly poor compared to the selection from vendors abroad, for example, JioPhone (India).

Audio is recorded in either at 8 KHz or 44 KHz (CD quality) sample rate .RCD. The naming convention is basically the timestamp with format yyyy-mm-dd_HHmmss (for example, record_20190904_172958.rcd).

The naming convention of the 320x240 pictures (only portrait, not landscape) is fairly annoying where the prefix IMG_ comes before an incremental integer from 0001 (IMG_0001.jpg) to 9999 (IMG_9999.jpg) — in other words, no timestamp. At least, screenshots (camera key and volume down) have a different naming convention that includes the timestamp with format yyyy-MM-dd-HH-mm-ss with file type .PNG (for example, 2019-09-04-17-29-58.png).

Videos are recorded in 320x240 .GPP and saved with the same naming convention as pictures starting with the suffix VID_ instead of IMG_ — in other words, just as annoying.

Other than my complaint about pictures (not screenshots), I can even read my email on Browser. I could not get the E-Mail app to work with Gmail maybe because of my account security.

        From: Google (no-reply@accounts.google.com)
        Date: Sat, Aug 31, 2019 at 2:48 PM
        Subject: Security alert for your linked Google Account
        To: ********@gmail.com
        Your account ********@foobar.com is listed as the
        recovery email for ********@gmail.com. Don't recognize
        this account?  Click here
        New sign-in to your linked account
        Your Google Account was just signed in to from a new
        KaiOS device. You're getting this email to make sure
        it was you.
        Check activity
        You can also go directly to myaccount.google.com/alert
        You received this email to let you know about important
        changes to your Google Account and services.
        ® 2019 Google LLC, 1600 Amphitheatre Parkway,
        Mountain View, CA 94043, USA

Some email services like Protonmail do not display properly and are almost impossible to use. The page slowly refreshes every time I scrolled up or down. For the record, I like the service that ProtonMail provides and, as a matter of fact, the account that I use for VintageOS.

Other online email providers like, Yahoo display properly although the latter sees device as Firefox OS and not KaiOS.

        From: Yahoo 
        Date: Sat, Aug 31, 2019 at at 9:19 PM
        Subject: Unexpected sign-in attempt
        To: <********@********.***>
        Hi ********,
        Someone on an unrecognized device attempted to sign in
        to your Yahoo account.
        This sign in attempt was made on:
        Device    firefox mobile, firefox os
        When      September 06, 2019 at 6:19 AM
        Where*    New York, United States
        If this was you, you're all set!
        Didn't sign in recently?
        Review your account activity and remove the devices and
        apps that you don't recognize.
        We will never ask you for your password in an email.
        If you don't trust a link in an email, go directly to
        the normal sign in page via yahoo.com.
        *Location is approximate based on the IP address it
        originated from.

One little issue that drives me crazy accessing my email in Browser is to authenticating much too often. I understand having to log in to 802.11 every time I move from one network to another (home to work and vice versa).

From what I can see so far, the mobile phone that I bought (Alcatel A405DL for $20) to test KaiOS 2.5 has the proper codecs for .MP3 (music), .OOG (music), .MP4 (videos), .GPP (videos), .OGV (videos), .GPP (videos), .JPEG (photos), .BMP (images including wallpapers) and .TXT (texts) file types.

Since apps for KaiOS do not require lots of resources, I was surprised when the Magnify app (a virtual magnifying glass) developed by Kai performs better and does not shake as much as similar apps in Android.

Maybe I am too much of a nerd, but I really like KaiOS 2.5 and my $20Alcatel A405DL. By the way, if you are wondering why I get so excited about this archaic phones, I like most old technologies (hence VintageOS). It has a retro look and feel.

Rumors & Future of KaiOS:

There are rumors going around concerning the future of KaiOS with Google's $22 million investment. Since I am not getting paid by any of these websites and/or publications, I have decided not to include the names and/or links of these sources.

  1. There was an article indicating that Google had bought KaiOS to take over part or the whole feature phone market. I am glad that I have not seen any other article related to this rumor.
  2. Another article indicated that Google might persuade the developers of KaiOS to drop the Firefox browser in favor of Chrome or B2G in favor of some variation of Android or Chrome OS, for that matter, as the base of the OS.
  3. Good news came from a business website that mentioned that Google might have invested $22 million in order to secure the Indian market (JioPhone). Then again, Google might be interested in having a foot in the feature phone market. After all, their light version of Android) (Android Go) is not making it the American market. The price of Android Go phones is almost the same as a full Android phone (over $100) compared to the $20 that I paid. This article makes more sense and I like that I had assumed the same when I first heard of the investment. In other words, KaiOS has surprisingly better sales than the light version of the almighty Android. Before I get hate mail, Android is still my favorite portable OS unless I like LineageOS more whenever I get to install it.

I hope the latter two rumors are fake. If KaiOS wants to continue making an impact, it should remain independent and not allow takeovers by any company, especially Google.

Installing KaiOS:

As with most mobile phones, there is no installation. There is no way for users to flash the ROM unless rooting it. As with other mobile devices, updates are pushed via firmware flashing.

As with most mobile devices (especially phones), hackers have made ways to exploit the hardware in a different way and even replacement operating systems for the hardware — for example, GerdaOS.

Turning VintageOS into a HTML5 app:

As per the documentation to make apps for KaiOS, any website can become an app. I am currently making the proper changes to VintageOS. If this works, the next project will be a game.