InfiniTimeOrg / InfiniTime

Firmware for Pinetime smartwatch written in C++ and based on FreeRTOS
GNU General Public License v3.0
2.71k stars 925 forks source link

Watch freezes after some notifications #2012

Open everypizza1 opened 7 months ago

everypizza1 commented 7 months ago

Verification

What happened?

I received a notification and the touch screen froze for about 1 minute

What should happen instead?

No response

Reproduction steps

It doesn't consistently happen, but some things I've noticed:

More details?

Only seems to affect notifications from YouTube for live streams and foreign language notifications from apps like holoplus.foregin

Version

v1.14

Companion app

Gadgetbridge 0.78.0

minacode commented 7 months ago

InfiniTime does not support all characters. Gadgetbridge might handle this somehow, but I don't know how for sure.

  1. Do you have an example of a notification that causes the bug?
  2. Is there a way to find out what text Gadgetbridge is actually sending to the watch?
everypizza1 commented 7 months ago

One almost certain way that it's triggered is when someone I have subscribed to does a YouTube livestream. Gadgetbridge seems to be sending the notifications from YouTube with :red_circle: to replace the 🔴 in the notification. I don't have any notifications currently on the watch, but this is one from my notification history that caused it: Screenshot_20240211-160414.jpg (I had to edit this to add it since this was done through email)

sbe-arg commented 7 months ago

I'm noticing this as well. Specially with emoji notifications from whatsapp and signal.

Also using gadgetbridge.

KaffeinatedKat commented 7 months ago

this happens to me sometimes too. The touchscreen will randomly be disabled, and the watch will be stuck in the awake state. Seems to be related to the issues described here (gadgetbridge)

minacode commented 7 months ago

Have you tried other companion apps?

FintasticMan commented 7 months ago

Could you try finding a reproducable case by trying it out in GadgetBridge's Debug menu? That allows you to send test notifications.

sbe-arg commented 7 months ago

Could you try finding a reproducable case by trying it out in GadgetBridge's Debug menu? That allows you to send test notifications.

Been trying to reproduce it without any luck a message that might lag when coming from the app not necessarily lags when triggered via debug.

But ill keep checking

everypizza1 commented 7 months ago

I also can't reproduce it in Gadgetbridge.


From: Santiago Bernhardt @.> Sent: Thursday, February 15, 2024 4:18:26 AM To: InfiniTimeOrg/InfiniTime @.> Cc: Derry Tutt @.>; Author @.> Subject: Re: [InfiniTimeOrg/InfiniTime] Watch freezes after some notifications (Issue #2012)

Could you try finding a reproducable case by trying it out in GadgetBridge's Debug menu? That allows you to send test notifications.

Been trying to reproduce it without any luck a message that might lag when coming from the app not necessarily lags when triggered via debug.

But ill keep checking

— Reply to this email directly, view it on GitHubhttps://github.com/InfiniTimeOrg/InfiniTime/issues/2012#issuecomment-1945768888, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATXE5QPQJU5KJDUQIRHSGMLYTXOHFAVCNFSM6AAAAABDDU2TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBVG43DQOBYHA. You are receiving this because you authored the thread.Message ID: @.***>

everypizza1 commented 7 months ago

Just happened again with this notification: Screenshot_20240216-070543.jpg

minacode commented 7 months ago

This was with Gadgedbridge? If yes, is there any chance of finding out what Gadgetbridge actually sends to the watch? It does transform the notification text to something InfiniTime should be able to show, right?

everypizza1 commented 7 months ago

Gadgetbridge will always convert emojis to a description of them, like red_dot for 🔴, surrounded by colons. For example: :red_dot:.

Get Outlook for Androidhttps://aka.ms/AAb9ysg


From: Max Friedrich @.> Sent: Saturday, February 17, 2024 7:29:40 AM To: InfiniTimeOrg/InfiniTime @.> Cc: Derry Tutt @.>; Author @.> Subject: Re: [InfiniTimeOrg/InfiniTime] Watch freezes after some notifications (Issue #2012)

This was with Gadgedbridge? If yes, is there any chance of finding out what Gadgetbridge actually sends to the watch? It does transform the notification text to something InfiniTime should be able to show, right?

— Reply to this email directly, view it on GitHubhttps://github.com/InfiniTimeOrg/InfiniTime/issues/2012#issuecomment-1950169099, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATXE5QNLM73MFVVR3KEAQUTYUCWEJAVCNFSM6AAAAABDDU2TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJQGE3DSMBZHE. You are receiving this because you authored the thread.Message ID: @.***>

minacode commented 7 months ago

Ok, but can you somehow reproduce what it sent in the case of your faulty notification?

everypizza1 commented 7 months ago

I've tried to reproduce many times with no success. It has just happened again though. Watch: IMG_20240217_185644.jpg Phone: Screenshot_20240217-185658.jpg

sbe-arg commented 7 months ago

Do you have the heart rate monitor on? I noticed it only happens in my case when is on if of I don't have the freeze.

minacode commented 7 months ago

@everypizza1 The notification contains a longer dash character, like "—". In the title of your notification on the watch, the seems to be a strange character displayed right after "Pancakes" where the dash should be. I wonder what happened there.

@sbe-arg Oh, no 😄 Let's see where this goes. Maybe there is another race somewhere. The heart rate has its own task if I remember correctly.

everypizza1 commented 7 months ago

I almost never have the heart rate sensor on.


From: Max Friedrich @.> Sent: Sunday, February 18, 2024 3:56:39 AM To: InfiniTimeOrg/InfiniTime @.> Cc: Derry Tutt @.>; Mention @.> Subject: Re: [InfiniTimeOrg/InfiniTime] Watch freezes after some notifications (Issue #2012)

@everypizza1https://github.com/everypizza1 The notification contains a longer dash character, like "—". In the title of your notification on the watch, the seems to be a strange character displayed right after "Pancakes" where the dash should be. I wonder what happened there.

@sbe-arghttps://github.com/sbe-arg Oh, no 😄 Let's see where this goes. Maybe there is another race somewhere. The heart rate has its own task if I remember correctly.

— Reply to this email directly, view it on GitHubhttps://github.com/InfiniTimeOrg/InfiniTime/issues/2012#issuecomment-1951060192, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATXE5QPENSXHOJTAPNW7T7TYUHF5PAVCNFSM6AAAAABDDU2TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJRGA3DAMJZGI. You are receiving this because you were mentioned.Message ID: @.***>

everypizza1 commented 7 months ago

@everypizza1 The notification contains a longer dash character, like "—". In the title of your notification on the watch, the seems to be a strange character displayed right after "Pancakes" where the dash should be. I wonder what happened there. …

I just realized that it skipped the long dash and went straight to the artist name. Apparently all Genius notifications have a long dash, I just tested with other songs. However others didn't cause it for some reason.

Self-Perfection commented 6 months ago

I probably have the same issue but with some variations:

In these hang state these function does not work:

But these function keep working:

In my case waiting does not unfreeze watch. I have to reboot.

It have not been happening with previous firmware version, but have happened about 5-7 times with 1.14.0.

I have no idea what triggers freezing.

everypizza1 commented 5 months ago

I haven't experienced this, or the screen inversion, ever since I turned off lower to sleep. I'll keep the issue open for now, because others are still experiencing this.

FintasticMan commented 5 months ago

Hmm, good observation. Maybe there's a race somewhere triggered by trying to go to sleep.

timteichmann commented 4 months ago

Not sure if any further confirmation is required. But I manage two daily driver PineTimes and have experienced regular freezes (every other day) that would require a reset with the setting "raise to wake" and "lower to sleep" enabled.

I can confirm that disabling "lower to sleep" as per @everypizza1 's comment (Cheers for posting that here) does resolve the issue. This seems to be the culprit.

copyrights commented 3 months ago

I probably have the same issue but with some variations:

In these hang state these function does not work:

* screen swipes (no reaction)

* single button press to go one screen back

But these function keep working:

* Seconds hand on analog watch face keeps ticking

* Longer button presses to get to clock or firmware version or reboot

* Double button press to switch to notifications screen

In my case waiting does not unfreeze watch. I have to reboot.

It have not been happening with previous firmware version, but have happened about 5-7 times with 1.14.0.

I have no idea what triggers freezing.

I have the same behavior. From what I have observed so far it happens like this

everypizza1 commented 3 months ago

@copyrights Do you have lower-to-sleep turned on?

On Mon, Jun 10, 2024, 15:20 copyrights @.***> wrote:

I probably have the same issue but with some variations:

In these hang state these function does not work:

  • screen swipes (no reaction)

  • single button press to go one screen back

But these function keep working:

  • Seconds hand on analog watch face keeps ticking

  • Longer button presses to get to clock or firmware version or reboot

  • Double button press to switch to notifications screen

In my case waiting does not unfreeze watch. I have to reboot.

It have not been happening with previous firmware version, but have happened about 5-7 times with 1.14.0.

I have no idea what triggers freezing.

I have the same behavior. From what I have observed so far it happens like this

  • A notification pops up
  • the notification disappears regular after timeout, but display is still on.
  • Any touch interaction (or maybe other interaction too) triggers bug
  • If unnoticed battery drains fast
  • Only reset (very long button press) helps

— Reply to this email directly, view it on GitHub https://github.com/InfiniTimeOrg/InfiniTime/issues/2012#issuecomment-2159212415, or unsubscribe https://github.com/notifications/unsubscribe-auth/ATXE5QNENFQYGTSI7O2WTWTZGYC75AVCNFSM6AAAAABDDU2TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJZGIYTENBRGU . You are receiving this because you were mentioned.Message ID: @.***>

copyrights commented 3 months ago

Yes, Settings -> Wake Up -> Lower Wrist was on.  I disabled it now and will see if it mitigates this issue.

10.06.2024 22:52:59 Derry Tutt @.***>:

@copyrights Do you have lower-to-sleep turned on?

On Mon, Jun 10, 2024, 15:20 copyrights @.***> wrote:

I probably have the same issue but with some variations:

In these hang state these function does not work:

  • screen swipes (no reaction)

  • single button press to go one screen back

But these function keep working:

  • Seconds hand on analog watch face keeps ticking

  • Longer button presses to get to clock or firmware version or reboot

  • Double button press to switch to notifications screen

In my case waiting does not unfreeze watch. I have to reboot.

It have not been happening with previous firmware version, but have happened about 5-7 times with 1.14.0.

I have no idea what triggers freezing.

I have the same behavior. From what I have observed so far it happens like this

  • A notification pops up
  • the notification disappears regular after timeout, but display is still on.
  • Any touch interaction (or maybe other interaction too) triggers bug
  • If unnoticed battery drains fast
  • Only reset (very long button press) helps

— Reply to this email directly, view it on GitHub https://github.com/InfiniTimeOrg/InfiniTime/issues/2012#issuecomment-2159212415, or unsubscribe https://github.com/notifications/unsubscribe-auth/ATXE5QNENFQYGTSI7O2WTWTZGYC75AVCNFSM6AAAAABDDU2TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJZGIYTENBRGU . You are receiving this because you were mentioned.Message ID: @.***>

— Reply to this email directly, view it on GitHub[https://github.com/InfiniTimeOrg/InfiniTime/issues/2012#issuecomment-2159263379], or unsubscribe[https://github.com/notifications/unsubscribe-auth/AABVPANIIAIRWBXDYBPY5QTZGYG2TAVCNFSM6AAAAABDDU2TT2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJZGI3DGMZXHE]. You are receiving this because you were mentioned. [Verfolgungsbild][https://github.com/notifications/beacon/AABVPAO2QD5ZU5AAK4DXUMTZGYG2TA5CNFSM6AAAAABDDU2TT2WGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTUAWO7JG.gif]

sbe-arg commented 3 months ago

It hasn't happened to me in a while now no changes other then regular updates of gadgetbridge.