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 smartphones and definitely not dumb, but rather semi-smart) forked from the defunct Firefox OS (2013-16). Firefox OS was planned to compete against Android (not necessarily iOS) on smartphones and other smart devices including television sets. 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 — 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 smartphone), clamshell design with a 320x240 LCD screen (QVGA, 262,144 colors) and usually a low quality camera of about (2 MP).

Note that Firefox OS and now KaiOS boot directly to the browser (Gecko). Therefore apps for KaiOS are coded in HTML5, CCS3 and JavaScript using Mozilla's WebIDE. This allows them to run on inexpensive hardware (that would not break easily hence and fairly affordable) capable of running on 2G and 4G at a fraction of the cost thanks to lower bandwidth and battery consumption (390 minutes of talk time and 300 hours of stand-by).

Although the apps are browser-based, some (no live feed or hosted apps) run offline. The only difference is that the KaiOS 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.

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 market.

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

In India, Jio has invested $7 million and uses KaiOS for their mobile phones — branded as JioPhone (about $25 with keypad 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. The best feature phones running KaiOSin the North American market is the Nokia 8110 4G (nicknamed banana phone) with a retail price of $70 with a keypad only.

KaiOS currently holds a large 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 give a free unit from any vendor to test the OS so I had to buy an Alcatel A405DL running KaiOS 2.5 for $20 (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 can provide KaiOS on more units in the US as an alternative to iOS and Android in order to secure American investors.

The storage structure is similar to that of Android — when a 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]

Note that KaiOS does not save files to microSD and the OS does not seem to give any means to change where to store types. It seems that access to microSD is to give users a facility 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 applications.

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 have 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 sample rate .RCD. The naming convention is basically the timestamp as yyyy-mm-dd_HHmmss (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 timestampyyyy-MM-dd-HH-mm-ss (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 E-Mail app to work with Gmail maybe because of the 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.

Other providers likes Yahoo do although it sees 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 logging again periodically. 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 (not a bad deal for Alcatel A405DL for $20) to test KaiOS 2.5 can play .MP3 (music), .OOG (music), .MP4 (videos), .GPP (videos), .OGV (videos), .GPP (videos), .JPEG (photos), .BMP (images) and .TXT (texts) files types.

Maybe I am too much of a nerd, but I really like KaiOS 2.5. By the way, if anyone wants to know why I get so excited about this technology, I like old technology. It has a retro look and feel.

Installing KaiOS:

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

Turning VintageOS into an app:

As per the documentation to make apps for KaiOS in their website, 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.