Build & Install asteroidos for lg-w100

2 build steps

2.1 clone main repository

git clone https://github.com/AsteroidOS/asteroid.git
cd asteroid/

This repository only contains a shell script that populates src/ with OpenEmbedded
and the appropriate Asteroid layers. Then, it setups the environment for a bitbake

2.2 setup a build for dory

dory (the LG G Watch)

. ./prepare-build.sh dory

If the envrioment has been correctly setup, you should now be in the build
subdirectory. Make sure you have the following build dependencies before starting
a build:

git build-essential cpio diffstat gawk chrpath texinfo

2.3 trigger a build

Once the environment is prepared, you can simply trigger a build with the
following command:

bitbake asteroid-image

After a while, the generated image should be available in build/tmp-glibc/deply/images/dory/.

3 install the built AsteroidOS to lg-w100

3.1 download the installation files and tools

sudo apt install android-tools-adb android-tools-fastboot

3.2 unlock lg-w100 bootloader

3.2.1 enable ADB

Installing AsteroidOS requires an unlocked bootloader and entering the bootloader
requires ADB in Android Wear. Enable ADB with the following steps:

  • On the watch, head to Settings > About > and keep tapping on Build number until
    it tells you you are a developer
  • Then swipe back and tap on the new Developer Options under About
  • Tap on ADB Debugging and then select the checkmark to accept it.

3.2.2 do unlock

Enter the following commands in a terminal with your watch connected:

adb reboot bootloader
fastboot oem unlock

Then Follow the instructions on your watch's screen. Please note it may void
your warranty.

3.3 flash and boot AsteroidOS

I use the real installation.

Enter the build directory of AsteroidOS first.

While in FASTBOOT MODE, flash the userdata and boot partitions with

$ fastboot flash userdata ./tmp-glibc/deploy/images/dory/asteroid-image-dory.ext4
$ fastboot flash boot ./tmp-glibc/deploy/images/dory/zImage-dtb-dory.fastboot
$ fastboot continue

the operation log as below:

➜  build git:(next) fastboot flash userdata ./tmp-glibc/deploy/images/dory/asteroid-image-dory.ext4 
target reported max download size of 268435456 bytes
Invalid sparse file format at header magi
erasing 'userdata'...
OKAY [  3.010s]
sending sparse 'userdata' (248520 KB)...
OKAY [  7.931s]
writing 'userdata'...
OKAY [ 31.533s]
sending sparse 'userdata' (94592 KB)...
OKAY [  3.123s]
writing 'userdata'...
OKAY [ 74.941s]
finished. total time: 120.539s
➜  build git:(next) fastboot flash boot ./tmp-glibc/deploy/images/dory/zImage-dtb-dory.fastboot 
target reported max download size of 268435456 bytes
sending 'boot' (17968 KB)...
OKAY [  0.680s]
writing 'boot'...
OKAY [  1.356s]
finished. total time: 2.035s
➜  build git:(next) fastboot continue
resuming boot...
OKAY [  0.002s]
finished. total time: 0.002s

4 error fix

4.1 adb no permissions

when i try

$ adb devices

I get the result

List of devices attached
????????????    no permissions

fix it by using:
Try to restart the Adb server

sudo adb kill-server
sudo adb start-server

Then connect your device turn Debugging on.

Also try below steps if failed:
You need to provide permission on your Android device.
Go to Settings>Developer options. Try turning Usb Debugging off and then on
again. Remove the cable and reconnect it. Also try deleting all saved
authorizations from Developer options. It should now ask for debugging
permission by a prompt on your phone.

5 base knowledge

5.1 adb

The Android Debug Bridge (adb) is a development tool that facilitates communication
between an Android device and a personal computer. ADB consists of a client and
server part each communicating with the other.This communication is most often
done over a USB cable.

5.2 fastboot

Fastboot is basically a diagnostic tool used to modify the Android file system
from a computer when the smartphone is in bootloader mode. The commands are
basic, and include, for example, to 'flash' (install) a boot image or a bootloader.