asteroid
asteroid copied to clipboard
[Feature Request/Maintainance] Ticwatch S2 Tubby support (already works!)
I managed to boot asteroidos on my ticwatch S2 using the files and steps for the ticwatch C2 (dual boot method), and it booted fine ! So maybe consider adding official support ?
What's working so far:
- Booting
- Display
- Tilt-to-wake
- Battery level looks correct
- Clicking on the button dims the screen (it is the intended behaviour right ?), so i guess it works
- Heart rate
- SSH over USB
- Touchscreen : mostly ok but i feel there is a slight shift to the bottom left (especially in the settings app)
- Bluetooth
Not working:
Bluetooth : i can pair but i have issues with the sync app, the battery level displayed is always either 0% or 100%, the button "find my watch" does nothing (what is it supposed to do anyway ?), taking screenshots does nothing, the weather app says it doesn't have any dataNo notifications, phone calls etcEDIT: after disabling and reenabling bluetooth on phone and watch it works !Auto brightness (is it even supported by the watch ?)not supported by the watch- Screen lock
- Vibrations
- WLAN
- Microphone
Don't know how to test:
- GPS
WLANMicrophone
I don't have much low level coding skills, but if testing is needed i can help !
Great finds, thanks for testing!
You can check WLAN like so: https://asteroidos.org/wiki/ip-connection/
And microphone / audio playback should work just like gst-play1.0 YOURMP3.mp3
For WLAN i get "wifi is not available", kinda expected since on the ticwatch C2 it already is unsupported.
For sound, there is no speaker on this device, and for microphone i tried running gst-device-monitor-1.0 and it's been stuck on Probing devices... without any output. But as WLAN, it's not even available on the C2
For others to look a little deeper, you could upload logs here from:
adb shell /system/bin/logcat > tubby-logcat.txt while the watch is connected in adb-mode (ctrl+c to end)
And when connected via ssh in developer-mode, as root:
journalctl --no-pager > tubby-journal.txt
EDIT, the ADB equivalent should be:
adb shell "journalctl --no-pager" > tubby-journal.txt
tubby-journal.txt tubby-logcat.txt Here are the logs !
and about bluetooth, it seems to work randomly, it's buggy again after rebooting the watch... and it works again after several attempts
Wow! This is great news! Thanks for testing! :tada:
It's especially awesome to see this many things work out of the box.
To point out to some of the issues you've discovered:
- Ambient light sensor: According to https://zitseng.com/archives/19370 it does not appear to have an ambient light sensor.
- WLAN: Does not work. We've had a PR in the past but that wasn't merged: https://github.com/AsteroidOS/meta-skipjack-hybris/pull/12. We will probably get back to solving this specific issue later.
- Microphone: Unlikely to work at the moment. The
skipjackport uses audio routing fromsawfish(Huawei Watch 2). It's also worth mentioning that the microphone doesn't work onsawfisheither due to the fact that thermt_storagebinary is not started. This binary is needed for audio support. It does appear to be available onskipjackthough. Another thing to keep in mind when testing audio related things is to always test using the ceres user. root will NOT work due to the different environments. - GPS: This is potentially something we can test. AsteroidOS currently provides a testing application for this purpose. Extract asteroid-gps-ipks.zip and install them. Instructions are located here: https://asteroidos.org/wiki/package-installation/. Essentially push all those
ipks to the watch and install them using a wildcard like so:opkg install *.ipk. Let me know if any package is reported as missing. - Screen lock: Currently, AsteroidOS does not a screen lock
By "screen lock", I meant the lock icon in the menu with bluetooth, auto brightness and vibration (that you get by swiping down from the main screen). I think it's named "theater mode" on wear os. It is supposed to prevent activation of the screen when you touch it, is it ? For gps, i'll try to test it tomorrow !
Ah, thanks for the clarification :smile: The "screen lock" isn't the same as "theater mode" on WearOS. "screen lock" only turns off the display. I actually think that changing the behavior of that button in AsteroidOS to something similar like what WearOS does might be a good idea too. I tend to cover the display to make it go to sleep mode (palm-to-sleep). What's your opinion @MininuxDev and @eLtMosen on this one? The "auto brightness" button actually only changes the current screen brightness to either the minimum brightness or the maximum brightness. If the watch has an ambient light sensor you should be able to test this by pointing a bright light source at it (a torch is the usual thing I use to test this) if it has the sensor the brightness of the display should very visibly change. One thing to keep in mind is that the "vibration" button enables or disables all vibrations. Toggling this button should also make the vibration motor vibrate. Can you confirm if the vibration motor does anything differently when you press that button a few times?
I tried to test the gps, but i can't install the packages:
opkg-output.txt
It seems to be mising geoclue-provider-hybris
I tried to press the vibrations buttons multiple times and i can confirm it doesn't work
For the "screen lock", i find it more useful to have a button that prevents the watch from emitting light at all until you press a physical button (so no tilt to wake and touchscreen). Eg in a theater, some people are annoyed by the slightest light, so you'd have to disable tilt-to-wake every time and it's long. And there is already the "palm-to-sleep" thing to just put the watch to sleep, which is way faster (or you could just wait a few seconds)
I tested auto brightness in wear os and it seems the watch is not compatible at all. As for the button in the menu, it switches from 0% to 100%, so i can't see anything in 0% (so it's hard to turn it up again) and 100% burns my eyes x), so maybe it should have more modes like 10%, 50%, 75%, 100%.
I tried to test the gps, but i can't install the packages: opkg-output.txt It seems to be mising
geoclue-provider-hybris
This one includes the geoclue-provider-hybris ipk: asteroid-gps-ipks-2.zip
I tried to press the vibrations buttons multiple times and i can confirm it doesn't work
Thanks for confirming :+1:
For the "screen lock", i find it more useful to have a button that prevents the watch from emitting light at all until you press a physical button (so no tilt to wake and touchscreen). Eg in a theater, some people are annoyed by the slightest light, so you'd have to disable tilt-to-wake every time and it's long. And there is already the "palm-to-sleep" thing to just put the watch to sleep, which is way faster (or you could just wait a few seconds)
I agree, @eLtMosen what's your opinion?
I actually just disabled tilt-to-wake, tap-to-wake and always-on-display in the settings app to emulate the theater mode, but introducing a button to enable this is probably not a bad idea either. From a technical standpoint it's more challenging to enable the correct features again, We would need to make adjustments in the mce tool probably.
To be fair, the palm-to-sleep feature was added much later and is not that visible to the unknowing user.
I tested auto brightness in wear os and it seems the watch is not compatible at all. As for the button in the menu, it switches from 0% to 100%, so i can't see anything in 0% (so it's hard to turn it up again) and 100% burns my eyes x), so maybe it should have more modes like 10%, 50%, 75%, 100%.
This appears to be by design for the moment. When you enable the "Automatic Brightness" option in the settings app this change in brightness should not be this drastic. In the past we also discussed changing the behavior of this button to introduce more steps: https://github.com/AsteroidOS/asteroid-settings/issues/45
I have added the skipjack rom to my S2 and it is working similarly to as described.
The GPS is not working. I have installed the packages and run the GPS test app, logs from logcat are included below.
I can confirm all of the features in the first post, along with vibration. Testing using a timer was the easiest way to know.
The touchscreen does seem a little off. Is there an app for checking the calibration? I remember on early Android using a mode where a line would appear for the vertical and horizontal location of the contact point. Something similar would be useful to confirm the current registered location, and something obfuscated by the finger would be difficult to test with.
I will update with any other details I can find.
Tried installing on my own S2 today, seems functional, but I can't get bluetooth to work. Tapping the quick settings button changes the button but has no effect, and I literally just can't interact with the bluetooth settings menu. Glanced through the matrix channel and saw you can try enabling it manually by sshing in and running bluetoothctl then discoverable on, but that prints No default controller available.
Also, it feels like the touch calibration is really off? Like, I have to tap a bit away from where buttons actually are, scrolling through the launcher things will just open as I try to swipe, and it's really difficult to get the right spot sometimes to exit an app. Unsure if that's an Asteroid on S2 issue or an Asteroid issue, first time using it :p
It's worth noting that vibration seems to work now on the latest build. Touch calibration still needs tweaking.
Closing this since i got both tunnys, E2 and S2 working nicely. From here on, please issues for missing hardware support or other problems in meta-smartwatch with tag tunny.