Porting Android to Gear 2

Search This thread

biktor_gj

Senior Member
Jan 25, 2008
1,408
7,008
Hello everyone!
Android Wear for Gear 2 / Gear 2 Neo

This thread is about development of Android Wear for Gear 2 & Gear 2 Neo
IF YOU HAVE A QUESTION, ASK IT HERE: http://xdaforums.com/gear-2/help/qa-porting-android-to-gear-2-t3018159

attachment.php.jpg bootlogo.jpg wearboot.php.jpginstallgplay.jpgscreenshot.jpgIMG_20150514_204055.jpgIMG_20150514_100754.jpg

DISCLAIMER
Code:
Your warranty is now void. Not only void,
 it's not comming back. The moment you 
flash anything on this thread you can say 
goodbye to it. I almost hard bricked my 
watch once. It can happen to you too.
 I do my best to post things that aren't 
dangerous for the device, but anything 
as simple as a 9 instead of a 4 in the GPU
 driver might make it overheat and kill it.
Everything here is at your own risk. 
You have been warned.


Current development stage
Kernel:: Still work in progress. Most functions are working correctly. Expect some bugs.
GITHUB REPO: Github Android B2 Repository
Recovery:: Minimal image. Not actively worked on, but enough to wipe and access ADB: MediaFire
Android: Most of it is working, and for me at least, IS usable. Some things are still missing and will need to be worked out though.

Working:
  • Boot
  • USB: ADB, MTP [july 19th]
  • Display: Software rendering, OpenGL and mixed compositions
  • Screen dimming
  • Screen always on
  • Battery reporting and charging
  • Oportunistic Sleep (kernel)
  • Bluetooth: basic functionality (working for notifications, music control etc), Tethered internet access (still some bugs to work out though)
  • Vibration
  • Heart Rate Monitor
  • Accelerometer sensor
  • Step counter
  • Gyroscope (this includes tilt to wake)
  • Power management: CPU Hotplugging, frequency scaling, Amoled LPM, runtime suspend and opportunistic sleep.
    Depending on use, can give from 12 to 48 hours of battery life. Normal use gives me about 18-20 hours with screen always on
  • Audio: Input and Output
  • Infrared
  • Basic TWRP recovery functions
Not working:
  • Camera
  • There's no way of playing music to the speaker directly from the watch
  • There's no gallery app
  • Palm-on-screen to suspend
  • Anything that's not specifically put as "working"


Android Wear 6
Remember: These are BETA, things may or may not work. No support, no nothing, just sharing them with you so you can play with them. I already know what works and what doesn't, and I'm trying to fix everything

March 4, 2016: https://mega.nz/#!QQwXQKCD!U-y82wTuBflzdBTrLccxrSLoLkTJUGWtEXMZ6TPikQU
Fixes over previous builds: Text To Speech, IR Support & New Gear Kernel Settings

Previous builds:
Beta #3 (Zenwatch based): https://mega.nz/#!FFYjQCxR!Et4bc8QSXstO1oxlAdXNfq82f7QH4cKsj5tnBNLPZog
Beta #2 (Gear Live based): https://mega.nz/#!IExADLQC!HThMj1Sc_BcPsywQXM0LZopvZd3y1aXiaW-5a5_CHuM
Beta #1 (Gear Live based): https://mega.nz/#!tQJFxSLS!Xu4_xJkW7qlXgz4IUTbFa2RqN8kWcIf0-UZfRTJ0LyM


Android Wear 5.1.1
September 24th, 2015: Android Wear Lollipop - 5.1.1 (build LCA43)
Full flash Package:
Mediafire: http://www.mediafire.com/download/aces995ufltx3vb/Wear_511_LCA43__09_24_2015.zip
Includes: Kernel Settings application, IR App:
** PREROOTED, no need to install anything else
Translate app DOES NOT WORK!

Previous builds:
August 13th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Bugfix release,
Full flash Package:
Mediafire: http://www.mediafire.com/download/ar8ir73m32yx05n/Wear_511__08_13_2015.tar
Includes: Kernel Settings application:
* Control vibration intensity
* Control brightness in ambient mode
* Enable / Disable Partial Redraws (enable for best battery life)
* Enable / Disable Idle Mode (reduces color depth in ambient mode to enhance battery life)

July 22nd, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Bugfix release
Full flash Package:
Mediafire: http://www.mediafire.com/download/pr3vljpdecep0dd/wear_511__07_22_2015.tar
md5: def249f18214c7ca00a5bc65391d0c0f wear_511__07_22_2015.tar
After flashing the big file, flash one of these, depending on what you need:
ADB only boot image: http://www.mediafire.com/download/cuo5fa95d5tgmv5/bootimage_ADB_ONLY.tar
ADB+MTP boot image: http://www.mediafire.com/download/bs6rwapqcc35sc6/bootimage_MTP_AND_ADB.tar
July 17th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Screen always on in Low Power Mode, MTP Support, @bitstra IR App Updated
Full flash Package:
Mega: https://mega.co.nz/#!0ZxgQYZA!7m986voG9NLYUUx7Nxzx8EiYbdgXxwFi56otuxQFZbM
Mediafire: http://www.mediafire.com/download/k71o1m16g32x65y/Wear__5_1_1__07_19_2015.zip
MD5: deffb5160968d81a4e560416315791eb Wear__5_1_1__07_19_2015.zip

July 13th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Infrared support (thanks @bitstra for your IR app!)
Full flash Package:http://www.mediafire.com/download/6mmb33lftfrr8w8/Wear_511__07_13_2015_Try2.zip

July 12th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J) ** Screen always on + Audio IN/OUT modifications
Full flash Package: http://www.mediafire.com/download/myzqnv4bkwa55b3/Wear_5_1_1_07_12_2015.zip

July 5th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J) ** Audio support!
Full flash Package: http://www.mediafire.com/download/eths38jax91sgnd/Wear_511_07_05_2015.zip

July 1st, 2015: Android Wear Lolipop - 5.1.1 (buildLDZ22J)
Full Flash Package: http://www.mediafire.com/download/6rzpfswta2s8fg3/Wear_511_07_01_2015.zip

June 27th, 2015: Android Wear Lolipop - 5.1.1 (build LDZ22J)
Full Flash Package: http://www.mediafire.com/download/bmcjbaikve5sob2/Gear2_Wear_Lolipop_5.1.1_06292015.tar.zip

June 27th, 2015: Android Wear Kitkat - 4.4.2W (build KNX01Q)
Full Flash Package: http://www.mediafire.com/download/2ar5ye1vla8g8gf/full_06_27_2015.zip

Everything I have/done with the Gear 2 is available on this folder: https://www.mediafire.com/folder/092gaz7gudh0f/Gear2, in case you want to dig a bit deeper ;)
Installing
Odin: http://www.mediafire.com/download/v67itqpjitxxogi/Odin3_v3.09(1).zip
User @alvaromartinezb has made a really good video explaining what you have to do, check it out! https://www.youtube.com/watch?v=bBqg72z8LOk&feature=youtu.be

@alvaromartinezb Walkthrough video on audio: https://www.youtube.com/watch?v=klYqseFd90g
KNOWN ISSUES
USB doesn't work! --> Check if you're running latest build, check your drivers. Windows 7 may have some issues with MTP
ADB doesn't work! --> You might need to manually install the driver on the device manager in Windows (you can use Google SDK's bundled driver)
Battery doesn't last! --> Be careful with battery hog watchfaces, some will prevent the watch from entering suspend, or keep the heart rate sensor active at all times.
I can't play music from the watch to the speaker --> I haven't found an app that works. We're the only people with a speaker on an Android Wear device, and there aren't many 3rd party apps for that. Driver level is OK
I can't take photos! --> Work in progress, everything takes time, and my watch doesn't even have a camera!
Calls don't get routed through the watch and without it I will die! --> Then go back to Tizen. That functionality doesn't exist in Android Wear, and hundreds of hours of work for a function that probably wouldn't end up working anyway. And I hated it when I had it on Tizen, it only gave my phone issues when connecting to my car's bluetooth handsfree, and forcing me to choose back my phone on each and every call. I'm not developing that. If you want to try to code it yourself and you succeed, I can link to your work if you want, but I'm not wasting my time on that.

Going back to Tizen
BE ADVISED: GOING BACK TO TIZEN MIGHT PROVE DIFFICULT TO ANYBODY WITHOUT KNOWLEDGE OF THE WATCH, SDB, ADB, AND ANYONE WHO DOESN'T USE ODIN. DON'T PM ME FOR IT. IT'S WRITTEN BELOW. ASK IN THE Q&A SECTION PLEASE. THIS IS A DEVELOPMENT THREAD, AND THESE IMAGES ARE FOR DEVELOPMENT ONLY.
BE ADVISED (again): There's no PIT file for this watch. If your favourite flashing app for samsung phones requests one, use Odin. I know, I don't like it either. But we live in a world full of virtual machines with the ability to share USB ports. Now it's your chance to use them if you don't feel like installing Windows in your machine.

*. Walkthrough video by @alvaromartinezb : https://www.youtube.com/watch?v=LhzIqFopQNY&feature=youtu.be
1. Flash this file: http://www.mediafire.com/download/3cg2eazoouur0bs/Tizenmod-Full-Restore.tar
2. When it fails to boot and the screen goes blank, reboot to the bootloader menu and select recovery.

Extreme Recovery mode - Only use if above method doesn't work
YOU NEED TO KNOW HOW TO USE ADB/SDB FOR THIS.
It may happen that you try to recover your watch but for whatever reason it still enters a bootloop when attempting to boot Tizen. This might happen if you played with partitions, if some permissions were set where they shouldn't be, etc. If you enter recovery mode in Tizen and you don't see a confirmation that the watch is being restored to default, you can try this:

*NOTE* This is highly destructive. You do this wrong, your watch might not boot again. I'm not responsible for whatever damage you do to your watch.​

First of all download everything from this folder:
https://www.mediafire.com/folder/a1tcatuw1a8t3/Full_Restore

And then follow these steps:
Code:
1. Flash TizenModFull
It will start rebooting itself
2. Flash recovery_fota_cache
3. Enter recovery, and run the following commands through ADB:
adb shell ->
umount /data
mount /dev/block/mmcblk0p15 /system
mount /dev/block/mmcblk0p13 /system/opt
mount /dev/block/mmcblk0p14 /system/opt/usr
rm -rf /system/opt
cp /system/usr/system/RestoreDir/opt.zip /system
cd /system
unzip opt.zip
sync
cd /
umount /system/opt/usr
umount /system/opt
umount /system
Exit the shell and select "Reboot -> PowerOff" from TWRP
4. Now press and hold the power button until "Rebooting..." appears, then enter Download mode
5. Flash kernel_tizen.tar
6. Reboot again to download mode
7. Flash tizenmod2.tar

Some info about the device
Gear 2 specifications
Samsung Exynos 3250, dual core up to 1GHz
512 Mb of RAM
4 Gb of flash, divided in 15 partitions (see below)
Mali 400 GPU, using Exynos DRM driver
YMU381 audio, supported by ALSA
BCM4334W Bluetooth/WLAN controller, already supported by Android in a bunch of phones
Samsung SensorHub (STM32) controlling Gyro/accelerometer and HRM. Supported in the kernel and seen in Android HAL.

Partition layout

bota0 -> ../../mmcblk0p1
bota1 -> ../../mmcblk0p2
csa -> ../../mmcblk0p3 --> ext4 -> /csa
boot -> ../../mmcblk0p5 --> Main Kernel
csc -> ../../mmcblk0p12 --> ext4 -> /system/csc
fota -> ../../mmcblk0p10 --> seems empty
ramdisk-recovery -> mmcblk0p8 -> ext4 -> Unused in tizen --> USED AS BOOT PARTITION IN ANDROID
module -> ../../mmcblk0p9 --> ext4 -> /lib/modules --> USED FOR TWRP IN ANDROID
rootfs -> ../../mmcblk0p15 ext4 "/" --> Root file system, recovery works from here too. If you break it it will only boot to download mode. --> USED AS SYSTEM PARTITION IN ANDROID
system -> ../../mmcblk0p11 EMPTY --> Did samsung start with Android on this thing then changed their minds?
system-data -> ../../mmcblk0p13 --> ext4, /opt --> If you erase this partition, your watch won't boot back into Tizen. Do not touch it unless you have a backup and know your way into restoring it.
user -> ../../mmcblk0p14 EXT4, /opt/usr --> all user data, including the MTP available part (/opt/usr/media) --> USED AS DATA & SDCARD IN ANDROID
 
Last edited:

biktor_gj

Senior Member
Jan 25, 2008
1,408
7,008
A little progress update...

I've built a base image for wear with all the required libraries I could find. It wonderfully crashes on the first boot stage:
Code:
- waiting for device -
--------- beginning of main
F/libc    (   94): Fatal signal 6 (SIGABRT) at 0x5e (code=-6), thread 94 (surfaceflinger)
F/libc    (  182): Fatal signal 6 (SIGABRT) at 0xb6 (code=-6), thread 182 (surfaceflinger)
F/libc    (  250): Fatal signal 6 (SIGABRT) at 0xfa (code=-6), thread 250 (surfaceflinger)
F/libc    (  322): Fatal signal 6 (SIGABRT) at 0x142 (code=-6), thread 322 (surfaceflinger)
F/libc    (  379): Fatal signal 6 (SIGABRT) at 0x17b (code=-6), thread 379 (surfaceflinger)
F/libc    (  435): Fatal signal 6 (SIGABRT) at 0x1b3 (code=-6), thread 435 (surfaceflinger)
F/libc    (  489): Fatal signal 6 (SIGABRT) at 0x1e9 (code=-6), thread 489 (surfaceflinger)
F/libc    (  544): Fatal signal 6 (SIGABRT) at 0x220 (code=-6), thread 544 (surfaceflinger)
F/libc    (  600): Fatal signal 6 (SIGABRT) at 0x258 (code=-6), thread 600 (surfaceflinger)
As far as I can guess, surfaceflinger can't start the hw composite device (the mali gpu) and crashes all the time. I think it's all related to the kernel but not too sure if I messed up somewhere else too (probably yes ;) )

Right now I'm trying to clean up the kernel config to get rid of all the useless drivers and get ION working. Any kernel developers out there?

I will be leaving some stuff in Mediafire in case someone's willing to take a look:
https://www.mediafire.com/folder/wts6i0b4byxy0/Wear

Right now:
droid.tar.md5 --> minimal kernel to boot with android adb support
Kernel-Config-Android-ADB-minimal --> config file for the kernel (with mimal android support and part of the settings -no video-)
system.tar.md5 --> trashed up image of Android Wear with at least part of the exynos and mali libraries to help it boot. It crashes on boot but adb is available. Also fstab is messed up, but each thing at a time...

CAUTION: As it's always said, I'm in no way responsible for any damage done to your device if things go wrong. Do NOT touch the bootloader. And keep a ODIN package for restore when you want to go back. This will wipe your Tizen system partition.
 

Mr.Mefisto

Senior Member
Jan 5, 2012
734
2,838
rskmania
Great work!

@biktor_gj i appreciate your development and your hard work! I really hope that you will succeed! My personal life is very stressing, and my laptop is down to help you in any way! I just wrote this to congrats your ambition and continuous work on this amazing smartwatch, that i just bought it for 1 week!
 

biktor_gj

Senior Member
Jan 25, 2008
1,408
7,008
Hey, right now stuck in here:
Code:
 CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: 'include/generated/mach-types.h' is up to date.
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CC      drivers/gpu/ion/ion_chunk_heap.o
drivers/gpu/ion/ion_chunk_heap.c: In function ‘ion_chunk_heap_free’:
drivers/gpu/ion/ion_chunk_heap.c:108:4: error: implicit declaration of function ‘__dma_page_cpu_to_dev’ [-Werror=implicit-function-declaration]
cc1: all warnings being treated as errors
scripts/Makefile.build:307: recipe for target 'drivers/gpu/ion/ion_chunk_heap.o' failed
make[3]: *** [drivers/gpu/ion/ion_chunk_heap.o] Error 1
scripts/Makefile.build:443: recipe for target 'drivers/gpu/ion' failed
make[2]: *** [drivers/gpu/ion] Error 2
scripts/Makefile.build:443: recipe for target 'drivers/gpu' failed
make[1]: *** [drivers/gpu] Error 2
Makefile:948: recipe for target 'drivers' failed
make: *** [drivers] Error 2

I really don't know if kernel source is messed up in purpose, if it's simply an old tree and should be trying to port the board config to a newer release (exynos 3250 support is merged in newer releases I think) or why the h*** it can't find a function that is declared in dma-mapping but not found by the ion driver.

OR it maybe colliding with the exynos drm driver, which seems to not be the same as the one defined in CONFIG_EXYNOS_HW_DRM (which is used by the exynos 3470) and in which the tizen-display module (gear2/neo display driver) depends...
Brain hurts ;)
 

Darth Ziggurat

Senior Member
Apr 5, 2014
77
19
Wow I would be so happy if I could start using my watch again. Could not handle being on a samsung based rom, and the workarounds have been unpleasant to use.
I hope you are making progress, as soon as this can do anything useful I will flash it to my watch. Wish I could help but I am not a skilled programmer.
 

Darth Ziggurat

Senior Member
Apr 5, 2014
77
19
Also since the Gear Live is similar though not identical, would using that as a base make it easier to port Android? Might be too dissimilar :(
 

andrew.mackew

Senior Member
Mar 25, 2011
1,674
1,279
Hey, right now stuck in here:
Code:
 CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: 'include/generated/mach-types.h' is up to date.
  CALL    scripts/checksyscalls.sh
  CHK     include/generated/compile.h
  CC      drivers/gpu/ion/ion_chunk_heap.o
drivers/gpu/ion/ion_chunk_heap.c: In function ‘ion_chunk_heap_free’:
drivers/gpu/ion/ion_chunk_heap.c:108:4: error: implicit declaration of function ‘__dma_page_cpu_to_dev’ [-Werror=implicit-function-declaration]
cc1: all warnings being treated as errors
scripts/Makefile.build:307: recipe for target 'drivers/gpu/ion/ion_chunk_heap.o' failed
make[3]: *** [drivers/gpu/ion/ion_chunk_heap.o] Error 1
scripts/Makefile.build:443: recipe for target 'drivers/gpu/ion' failed
make[2]: *** [drivers/gpu/ion] Error 2
scripts/Makefile.build:443: recipe for target 'drivers/gpu' failed
make[1]: *** [drivers/gpu] Error 2
Makefile:948: recipe for target 'drivers' failed
make: *** [drivers] Error 2

I really don't know if kernel source is messed up in purpose, if it's simply an old tree and should be trying to port the board config to a newer release (exynos 3250 support is merged in newer releases I think) or why the h*** it can't find a function that is declared in dma-mapping but not found by the ion driver.

OR it maybe colliding with the exynos drm driver, which seems to not be the same as the one defined in CONFIG_EXYNOS_HW_DRM (which is used by the exynos 3470) and in which the tizen-display module (gear2/neo display driver) depends...
Brain hurts ;)

Maybe I got a hint..
Code:
drivers/gpu/ion/ion_chunk_heap.c:108:4: error: implicit declaration of function ‘__dma_page_cpu_to_dev’ [-Werror=implicit-function-declaration]
A friend of a friend of mine told me this:
"Well either the function is missing or its renamed.."
Made it any sense?
 
  • Like
Reactions: lthary

Kniazkoff

Senior Member
Jun 5, 2013
113
18
Moscow
So is it real to port Android wear with working heart rate? camera and IR doesn't matter for me. Want donate to dev if he can make it real
 

biktor_gj

Senior Member
Jan 25, 2008
1,408
7,008
Its the if and camera will become use less what the point. Just buy an android wear watch.

In my case I got my gear neo before android wear got physical products launched in my country, and theyre quite pricey for what they have... Anyway I guess its a matter of personal taste, I prefer a dual core than an old omap 3 cpu, and before the gear I had a Motoactv and the screen burnt. By itself. Big black spot in the middle... Just as the warranty period ended. So not buying from them anytime soon :)

Now back to the point, I temporarily had to stop this because it was driving me nuts, I was using an old mac mini as a development machine and it took me 5 hours to compile cyanogenmod. Just got new hardware so this week I hope Ill find some time to get back to testing!

Will keep you tuned if I can accomplish something more than getting a kernel crash ;)

Sent from my Xperia Z using XDA Free mobile app
 

diamantericos

Senior Member
Jan 2, 2011
1,638
259
In my case I got my gear neo before android wear got physical products launched in my country, and theyre quite pricey for what they have... Anyway I guess its a matter of personal taste, I prefer a dual core than an old omap 3 cpu, and before the gear I had a Motoactv and the screen burnt. By itself. Big black spot in the middle... Just as the warranty period ended. So not buying from them anytime soon :)

Now back to the point, I temporarily had to stop this because it was driving me nuts, I was using an old mac mini as a development machine and it took me 5 hours to compile cyanogenmod. Just got new hardware so this week I hope Ill find some time to get back to testing!

Will keep you tuned if I can accomplish something more than getting a kernel crash ;)

Sent from my Xperia Z using XDA Free mobile app

Much appreciated thanks.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 276
    Hello everyone!
    Android Wear for Gear 2 / Gear 2 Neo

    This thread is about development of Android Wear for Gear 2 & Gear 2 Neo
    IF YOU HAVE A QUESTION, ASK IT HERE: http://xdaforums.com/gear-2/help/qa-porting-android-to-gear-2-t3018159

    attachment.php.jpg bootlogo.jpg wearboot.php.jpginstallgplay.jpgscreenshot.jpgIMG_20150514_204055.jpgIMG_20150514_100754.jpg

    DISCLAIMER
    Code:
    Your warranty is now void. Not only void,
     it's not comming back. The moment you 
    flash anything on this thread you can say 
    goodbye to it. I almost hard bricked my 
    watch once. It can happen to you too.
     I do my best to post things that aren't 
    dangerous for the device, but anything 
    as simple as a 9 instead of a 4 in the GPU
     driver might make it overheat and kill it.
    Everything here is at your own risk. 
    You have been warned.


    Current development stage
    Kernel:: Still work in progress. Most functions are working correctly. Expect some bugs.
    GITHUB REPO: Github Android B2 Repository
    Recovery:: Minimal image. Not actively worked on, but enough to wipe and access ADB: MediaFire
    Android: Most of it is working, and for me at least, IS usable. Some things are still missing and will need to be worked out though.

    Working:
    • Boot
    • USB: ADB, MTP [july 19th]
    • Display: Software rendering, OpenGL and mixed compositions
    • Screen dimming
    • Screen always on
    • Battery reporting and charging
    • Oportunistic Sleep (kernel)
    • Bluetooth: basic functionality (working for notifications, music control etc), Tethered internet access (still some bugs to work out though)
    • Vibration
    • Heart Rate Monitor
    • Accelerometer sensor
    • Step counter
    • Gyroscope (this includes tilt to wake)
    • Power management: CPU Hotplugging, frequency scaling, Amoled LPM, runtime suspend and opportunistic sleep.
      Depending on use, can give from 12 to 48 hours of battery life. Normal use gives me about 18-20 hours with screen always on
    • Audio: Input and Output
    • Infrared
    • Basic TWRP recovery functions
    Not working:
    • Camera
    • There's no way of playing music to the speaker directly from the watch
    • There's no gallery app
    • Palm-on-screen to suspend
    • Anything that's not specifically put as "working"


    Android Wear 6
    Remember: These are BETA, things may or may not work. No support, no nothing, just sharing them with you so you can play with them. I already know what works and what doesn't, and I'm trying to fix everything

    March 4, 2016: https://mega.nz/#!QQwXQKCD!U-y82wTuBflzdBTrLccxrSLoLkTJUGWtEXMZ6TPikQU
    Fixes over previous builds: Text To Speech, IR Support & New Gear Kernel Settings

    Previous builds:
    Beta #3 (Zenwatch based): https://mega.nz/#!FFYjQCxR!Et4bc8QSXstO1oxlAdXNfq82f7QH4cKsj5tnBNLPZog
    Beta #2 (Gear Live based): https://mega.nz/#!IExADLQC!HThMj1Sc_BcPsywQXM0LZopvZd3y1aXiaW-5a5_CHuM
    Beta #1 (Gear Live based): https://mega.nz/#!tQJFxSLS!Xu4_xJkW7qlXgz4IUTbFa2RqN8kWcIf0-UZfRTJ0LyM


    Android Wear 5.1.1
    September 24th, 2015: Android Wear Lollipop - 5.1.1 (build LCA43)
    Full flash Package:
    Mediafire: http://www.mediafire.com/download/aces995ufltx3vb/Wear_511_LCA43__09_24_2015.zip
    Includes: Kernel Settings application, IR App:
    ** PREROOTED, no need to install anything else
    Translate app DOES NOT WORK!

    Previous builds:
    August 13th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Bugfix release,
    Full flash Package:
    Mediafire: http://www.mediafire.com/download/ar8ir73m32yx05n/Wear_511__08_13_2015.tar
    Includes: Kernel Settings application:
    * Control vibration intensity
    * Control brightness in ambient mode
    * Enable / Disable Partial Redraws (enable for best battery life)
    * Enable / Disable Idle Mode (reduces color depth in ambient mode to enhance battery life)

    July 22nd, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Bugfix release
    Full flash Package:
    Mediafire: http://www.mediafire.com/download/pr3vljpdecep0dd/wear_511__07_22_2015.tar
    md5: def249f18214c7ca00a5bc65391d0c0f wear_511__07_22_2015.tar
    After flashing the big file, flash one of these, depending on what you need:
    ADB only boot image: http://www.mediafire.com/download/cuo5fa95d5tgmv5/bootimage_ADB_ONLY.tar
    ADB+MTP boot image: http://www.mediafire.com/download/bs6rwapqcc35sc6/bootimage_MTP_AND_ADB.tar
    July 17th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Screen always on in Low Power Mode, MTP Support, @bitstra IR App Updated
    Full flash Package:
    Mega: https://mega.co.nz/#!0ZxgQYZA!7m986voG9NLYUUx7Nxzx8EiYbdgXxwFi56otuxQFZbM
    Mediafire: http://www.mediafire.com/download/k71o1m16g32x65y/Wear__5_1_1__07_19_2015.zip
    MD5: deffb5160968d81a4e560416315791eb Wear__5_1_1__07_19_2015.zip

    July 13th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J)** Infrared support (thanks @bitstra for your IR app!)
    Full flash Package:http://www.mediafire.com/download/6mmb33lftfrr8w8/Wear_511__07_13_2015_Try2.zip

    July 12th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J) ** Screen always on + Audio IN/OUT modifications
    Full flash Package: http://www.mediafire.com/download/myzqnv4bkwa55b3/Wear_5_1_1_07_12_2015.zip

    July 5th, 2015: Android Wear Lollipop - 5.1.1 (build LDZ22J) ** Audio support!
    Full flash Package: http://www.mediafire.com/download/eths38jax91sgnd/Wear_511_07_05_2015.zip

    July 1st, 2015: Android Wear Lolipop - 5.1.1 (buildLDZ22J)
    Full Flash Package: http://www.mediafire.com/download/6rzpfswta2s8fg3/Wear_511_07_01_2015.zip

    June 27th, 2015: Android Wear Lolipop - 5.1.1 (build LDZ22J)
    Full Flash Package: http://www.mediafire.com/download/bmcjbaikve5sob2/Gear2_Wear_Lolipop_5.1.1_06292015.tar.zip

    June 27th, 2015: Android Wear Kitkat - 4.4.2W (build KNX01Q)
    Full Flash Package: http://www.mediafire.com/download/2ar5ye1vla8g8gf/full_06_27_2015.zip

    Everything I have/done with the Gear 2 is available on this folder: https://www.mediafire.com/folder/092gaz7gudh0f/Gear2, in case you want to dig a bit deeper ;)
    Installing
    Odin: http://www.mediafire.com/download/v67itqpjitxxogi/Odin3_v3.09(1).zip
    User @alvaromartinezb has made a really good video explaining what you have to do, check it out! https://www.youtube.com/watch?v=bBqg72z8LOk&feature=youtu.be

    @alvaromartinezb Walkthrough video on audio: https://www.youtube.com/watch?v=klYqseFd90g
    KNOWN ISSUES
    USB doesn't work! --> Check if you're running latest build, check your drivers. Windows 7 may have some issues with MTP
    ADB doesn't work! --> You might need to manually install the driver on the device manager in Windows (you can use Google SDK's bundled driver)
    Battery doesn't last! --> Be careful with battery hog watchfaces, some will prevent the watch from entering suspend, or keep the heart rate sensor active at all times.
    I can't play music from the watch to the speaker --> I haven't found an app that works. We're the only people with a speaker on an Android Wear device, and there aren't many 3rd party apps for that. Driver level is OK
    I can't take photos! --> Work in progress, everything takes time, and my watch doesn't even have a camera!
    Calls don't get routed through the watch and without it I will die! --> Then go back to Tizen. That functionality doesn't exist in Android Wear, and hundreds of hours of work for a function that probably wouldn't end up working anyway. And I hated it when I had it on Tizen, it only gave my phone issues when connecting to my car's bluetooth handsfree, and forcing me to choose back my phone on each and every call. I'm not developing that. If you want to try to code it yourself and you succeed, I can link to your work if you want, but I'm not wasting my time on that.

    Going back to Tizen
    BE ADVISED: GOING BACK TO TIZEN MIGHT PROVE DIFFICULT TO ANYBODY WITHOUT KNOWLEDGE OF THE WATCH, SDB, ADB, AND ANYONE WHO DOESN'T USE ODIN. DON'T PM ME FOR IT. IT'S WRITTEN BELOW. ASK IN THE Q&A SECTION PLEASE. THIS IS A DEVELOPMENT THREAD, AND THESE IMAGES ARE FOR DEVELOPMENT ONLY.
    BE ADVISED (again): There's no PIT file for this watch. If your favourite flashing app for samsung phones requests one, use Odin. I know, I don't like it either. But we live in a world full of virtual machines with the ability to share USB ports. Now it's your chance to use them if you don't feel like installing Windows in your machine.

    *. Walkthrough video by @alvaromartinezb : https://www.youtube.com/watch?v=LhzIqFopQNY&feature=youtu.be
    1. Flash this file: http://www.mediafire.com/download/3cg2eazoouur0bs/Tizenmod-Full-Restore.tar
    2. When it fails to boot and the screen goes blank, reboot to the bootloader menu and select recovery.

    Extreme Recovery mode - Only use if above method doesn't work
    YOU NEED TO KNOW HOW TO USE ADB/SDB FOR THIS.
    It may happen that you try to recover your watch but for whatever reason it still enters a bootloop when attempting to boot Tizen. This might happen if you played with partitions, if some permissions were set where they shouldn't be, etc. If you enter recovery mode in Tizen and you don't see a confirmation that the watch is being restored to default, you can try this:

    *NOTE* This is highly destructive. You do this wrong, your watch might not boot again. I'm not responsible for whatever damage you do to your watch.​

    First of all download everything from this folder:
    https://www.mediafire.com/folder/a1tcatuw1a8t3/Full_Restore

    And then follow these steps:
    Code:
    1. Flash TizenModFull
    It will start rebooting itself
    2. Flash recovery_fota_cache
    3. Enter recovery, and run the following commands through ADB:
    adb shell ->
    umount /data
    mount /dev/block/mmcblk0p15 /system
    mount /dev/block/mmcblk0p13 /system/opt
    mount /dev/block/mmcblk0p14 /system/opt/usr
    rm -rf /system/opt
    cp /system/usr/system/RestoreDir/opt.zip /system
    cd /system
    unzip opt.zip
    sync
    cd /
    umount /system/opt/usr
    umount /system/opt
    umount /system
    Exit the shell and select "Reboot -> PowerOff" from TWRP
    4. Now press and hold the power button until "Rebooting..." appears, then enter Download mode
    5. Flash kernel_tizen.tar
    6. Reboot again to download mode
    7. Flash tizenmod2.tar

    Some info about the device
    Gear 2 specifications
    Samsung Exynos 3250, dual core up to 1GHz
    512 Mb of RAM
    4 Gb of flash, divided in 15 partitions (see below)
    Mali 400 GPU, using Exynos DRM driver
    YMU381 audio, supported by ALSA
    BCM4334W Bluetooth/WLAN controller, already supported by Android in a bunch of phones
    Samsung SensorHub (STM32) controlling Gyro/accelerometer and HRM. Supported in the kernel and seen in Android HAL.

    Partition layout

    bota0 -> ../../mmcblk0p1
    bota1 -> ../../mmcblk0p2
    csa -> ../../mmcblk0p3 --> ext4 -> /csa
    boot -> ../../mmcblk0p5 --> Main Kernel
    csc -> ../../mmcblk0p12 --> ext4 -> /system/csc
    fota -> ../../mmcblk0p10 --> seems empty
    ramdisk-recovery -> mmcblk0p8 -> ext4 -> Unused in tizen --> USED AS BOOT PARTITION IN ANDROID
    module -> ../../mmcblk0p9 --> ext4 -> /lib/modules --> USED FOR TWRP IN ANDROID
    rootfs -> ../../mmcblk0p15 ext4 "/" --> Root file system, recovery works from here too. If you break it it will only boot to download mode. --> USED AS SYSTEM PARTITION IN ANDROID
    system -> ../../mmcblk0p11 EMPTY --> Did samsung start with Android on this thing then changed their minds?
    system-data -> ../../mmcblk0p13 --> ext4, /opt --> If you erase this partition, your watch won't boot back into Tizen. Do not touch it unless you have a backup and know your way into restoring it.
    user -> ../../mmcblk0p14 EXT4, /opt/usr --> all user data, including the MTP available part (/opt/usr/media) --> USED AS DATA & SDCARD IN ANDROID
    68
    Moving on

    So, I'm sorry to tell you this, guys, but the day has finally come.

    Some months ago, I started having some issues with my Gear Neo. I would flash anything, and the watch would stop flashing midway dropping a "failed" message on Odin, or wouldn't boot after flashing. After a lot of trying, I finally was able to bring it back to life, but sometimes, the watch would still randomly reboot, show random force closes, and sudden battery drains. The reason for this is that the flash chip in my watch was slowly dying and corrupting the data inside. Those problems have only gone worse, to the point where it can't stay running for more than a minute without dying. I've been testing it over and over again and the result is always the same: I can zero out an entire partition, and read it back and see that some parts get zeroed, and some others read 4, 6, or random characters. That and the kernel dropping I/O errors all the time in dmesg show what that means: after more than a thousand kernels and systems flashed, the flash chip finally gave up.

    I've thought of getting another one to replace it, but my life has changed dramatically and I don't have much time to work on anything lately, and if I were to buy another watch, I think money would be better spent in something newer after all.

    I started this project 20 months ago, with no idea on how to make Android run, a very limited set of skills, and without knowing if I'd ever get anything running in the watch. Finally we ended up with a mostly complete Android Wear experience, iterating through 3 major Wear versions on a watch which was never designed to run it, and with an amazing community helping each other with all issues that have arised through time.

    It's been really fun working on this, and I'm really, deeply thankful for each and every person in this forum which has participated in any way with this project, either making videos, reporting issues or just helping others.

    So, to everyone, since I can't mention the more than 500 persons I was mentioning in this post, THANK YOU, I really hope we'll meet again in another project!
    I'll be in the Gear S forum trying to make this damned, horribly programmed, and full of issues watch behave :)
    62
    Welcome home

    Welcome home, Android
    I've spent four months searching for you :)
    IMG_20150424_101654.jpg
    IMG_20150424_101655.jpg

    We still have a lot of work, but it's nice to see you finally showing up!
    IMG_20150424_101657.jpg

    Edit: Logcat here -> http://pastebin.com/rSPLTCrX

    *flies away to repair all the crashing stuff*
    49
    Already got the update file thanks to @tritus! Took a quick look, version is a little up (MEC23L) but not as up as emulator (MU) and does have Google TTS services. I pushed it into my watch and it fails almost every time I try to start it. In fact, it behaves exactly as the emulator APK. Renders ambient mode half dead and walking like a zombie in the background eating my battery..

    Update is a mix of binary patches/new files, so it'll take me a little while to make a master system image and patch all my stuff into it. We'll see how it works when the framework version is up!

    Will keep you guys posted!