Hi all, I've just got my hands on a TicWatch Pro 3 and am keen to mod it.
As far as I can tell, there've been no kernels or recoveries built for it yet. I'd like to fix that.
This will be my first time bringing up TWRP (I have experience with building AOSP and porting Ubuntu Touch and PostmarketOS).
If anyone else is interested in helping with this stuff, feel free to join in! It'd be great if we can build a bit of a community around this.
My plan of action is as follows:
Here's some miscellaneous information:
As far as I can tell, there've been no kernels or recoveries built for it yet. I'd like to fix that.
This will be my first time bringing up TWRP (I have experience with building AOSP and porting Ubuntu Touch and PostmarketOS).
If anyone else is interested in helping with this stuff, feel free to join in! It'd be great if we can build a bit of a community around this.
My plan of action is as follows:
- Boot TWRP or obtain temporary root access in another way. Some kernel sources are available.
- Extract images of every partition on the device (excluding userdata) so we have a way to restore everything if anything goes wrong,
- Properly port TWRP to the device. This may be difficult; I don't think TWRP has run on the SDM429W before, though it's based off the SDM429. The Nokia 3.2 may be a useful reference.
- Root the device with Magisk, and document the process so users can do it.
- Build a custom kernel. To be honest, I'm not sure if this device needs one, but @janjan managed to squeeze amazing performance out of the OG TWP by tweaking a few things and disabling junk.
- The TWP3 ships with a charging cable that only has power wires. It's possible to use an old TWP dock to get a data connection, though, and the bootloader can be unlocked through fastboot. See this thread for more info. The USB wire layout is not in the regular order (D+ and D- are swapped), so if you don't have an old dock and are using wires, refer to the pictures here.
- The TWP3 LTE kernel source code is available here. I've also forked it here, in case anything happens to the original repo. As far as I can tell, there are no sources for the GPS model, but the kernel version in the repo (4.9.232) matches my GPS model's kernel version. I expect the LTE kernel can be used on the GPS with minimal effort.
- The rubyfish kernel configuration is available through /proc. It's attached to this post.
Here's some miscellaneous information:
- The TWP3 LTE is codenamed "rover", and the TWP3 GPS is codenamed "rubyfish".
- As far as I can tell, the Snapdragon Wear 4100 in this device is a 64-bit SoC, but a 32-bit OS is in use.
- Here's the complete kernel version string on my rubyfish running the latest OTA update: Linux version 4.9.232-perf+ ([email protected]) (gcc version 4.9.x 20150123 (prerelease) (GCC) ) #1 SMP PREEMPT Wed Jun 9 09:55:19 CST 2021