Hack your wrist
AsteroidOS is an open-source operating system for smartwatches. It’s based on Qt & QML with OpenEmbedded GNU/Linux distribution.
Eventually I was able to run AsteroidOS on my ZenWatch2. It has been an amazing experience to run GNU/Linux distribution on a watch. The user-interface is smooth and covers most features that are needed for a smart-watch.
Quick settings with Brightness, Bluetooth & Sound control
Community
Since few days I was planning to install AsteroidOS. My initial
attempts failed with my watch refused to boot up with AsteroidOS. This
is when I figured out that initramfs
is not able to find
/sdcard/linux/rootfs.ext2
on Zenwatch-2 HyperCharge model(WI501Q).
This was brought up by bencord0
on #asteroid channel
psachin bencord0: All the files are downloaded from official page and are intact
psachin bencord0: Do you want to look at the output of above command?
bencord0 Sure
psachin bencord0: < waiting for any device >
psachin downloading 'boot.img'...
psachin OKAY [ 0.336s]
psachin booting...
psachin OKAY [ 0.506s]
psachin finished. total time: 0.842s
psachin bencord0: Nothing unusual
bencord0 The initramfs will reboot back to android it it cant find the rootfs
bencord0 Did you adb push the rootfs to /sdcard/linux/rootfs.ext2 ?
psachin bencord0: Yes. adb push -p asteroid-image-sparrow.ext2 /sdcard/linux/rootfs.ext2
psachin [100%] /sdcard/linux/rootfs.ext2
I tried to compile few builds to verify this using bencord0
suggestions
bencord0 https://github.com/AsteroidOS/meta-sparrow-hybris/blob/master/recipes-core/initrdscripts/initramfs-boot-android/init.sh is the init script in the initramfs. Stick an infinite loop near the top, run the build and boot that. If it stays blank, then we will have learned something.
which yield similar results and failed to boot AsteroidOS
psachin bencord0: even with infinite loop it booted with android-wear
I also tried few AOSP branch which gave same results
psachin kido: Didn't get you. What branch? android-msm-sparrow-3.10-marshmallow-mr1-wear-release? with commit: 8ffc85d0e5dba485a52a4405a21d3a516f969420. Do you want me to test the patch manually?
@kido this branch is marshmallow, maybe there is a newer branch for lollypop or whatever
I waited for few weeks and saw new commit by Florent which I decided to try. I pulled and compiled latest changes which worked.
User Interface
Asteroid has sufficient features to get started. The UI is smooth and can be tweaked as per need. Within settings it has Time, Date, Language, Bluetooth, Brightness, Wallpaper, Watchface, USB, Poweroff, Reboot & About options.
Settings
I personally find adjusting date/time much more convenient that Android Wear.
Settings date
User has option to set USB mode to adb, Developer, Mass storage or MTP mode.
USB mode
Using app switcher, one can switch between recently opened apps easily.
App switcher
AsteroidOS has few Watchface but they match Asteroid theme and I find them sober.
Default Asteroid Watchface
Finally it has wallpapers which can be applied over a Watchface.
Watchface
Install AsteroidOS
AsteroidOS Alpha 1.0 can be installed on four smartwatches
- LG G Watch(dory)
- LG G Watch Urbane(bass)
- Sony Smartwatch 3(tetra)
- Asus Zenwatch 2(sparrow)
Build AsteroidOS
One can build AsteroidOS following wiki page. On Fedora-25, one need to install following dependencies
1
2
dnf install -y git perl-bignum git patch chrpath gawk diffstat texinfo libaccounts-glib libaccounts-glib-devel
dnf groupinstall -y "C Development Tools and Libraries"
Unofficial build
- Asus ZenWatch2: asteriodOS-alpha-1.0(Compiled on: Feb 18, 2017):
AsteroidOS unlocks new doors for Smartwatch Operating system with end-users no longer have to only depend on Android Wear. AsteroidOS community is very active and responsive. I encourage users to try out AsteroidOS on smartwatch and give feedback to AsteroidOS community.