I've had my JS2 for 11 days now (and still about 30% battery from charging on day 1) and I don't know what I've done but I've done something.
I used to get messages at first, then a few days ago I started playing around with different apps (install, delete, etc...) and I have had problems ever since.
I accidentally had both the gadgebridge AND android apps installed, and while that was the case I would still get messages, but only for about half an hour; "find my phone" wouldn't even work, but the easy workaround was to simply remove my watch from the Gadgetbridge phone app and then re-pair it.
Now I've deleted the gadgetbridge app and am not getting messages at all. I deleted messages and android, then reinstalled both, no difference. I reset the settings, still no messages. What's the easiest way to fix this?
Correct me if i'm wrong, but you need only "Android Integration" and "Messages" apps on the watch and "Gadgetbridge" app on the phone.
Don't pair the watch to the phone through Bluetooth settings, only with the "Gadgetbridge" app.
Has been working fine for past couple days since I received it.
Also to note, the "Messages" app on the watch will only get the newly appearing notifications from your phone, after you connect to it.
I really, really appreciate the attempt to help, please don't misunderstand me, but everything you just described was literally in my first post. And despite only having the Android and Messages apps, and pairing through the Gadgetbridge phone app, I still have no messages. I was getting them before, I know how this is supposed to work, I need to know why it's not working now.
As @htky says really...
But it has been known that sometimes on the early watch firmwares the 'boot' file can get corrupted, that that would stop Gadgetbridge from working. Once the apps are up to date, do Settings -> Utils -> Rewrite settings and see if that helps?
Settings -> Utils -> Rewrite settings
Updates, that's what I needed. Everything is working again. Thanks.
that's what I needed
that's what I needed
You mean the Rewrite settings ?
No, updates. That should've been the first thing I did, updating everything, but I've gotten so used to everything just automatically keeping themselves up to date that I completely forgot about troubleshooting step 2 (step 1 being turn it off and on again).
Android and Messages were up to date, as I'd just reinstalled them, but so many others have changed in the month or so since my watch has gone out. And with that, I'm getting messages again.
Correction, that didn't actually solve the original problem I was having, just restored my workaround.
After a short while I stop getting messages and the "Find phone" feature doesn't work. Android app says it is connected. Gadgetbridge on phone side says it is connected. Watch isn't getting messages and phone isn't "finding".
If I remove and re-pair the watch through the Gadgetbridge phone app it starts working again, at least for a little while. I will reiterate: as far as everything seems to be outwardly concerned, my watch and phone are connected. Both the watch app and phone app say they are connected, but as far as I can tell absolutely no messages actually pass between them. For a little while they do, and then they stop.
I swear this is new behaviour. For the first few days of using it it worked perfectly.
I think I remember F-Droid popping up a notification about updating Gadgetbridge, and that's when it started causing problems. I'm going to test this a bit further with the current version, verify it's consistent, and then try downgrading back to 0.62.
@WizardStan If you install the GB debug app on your watch and have that open when a notification is received on the phone, what does it say (when the issue is active)?
When the problem occurs GB debug just keeps saying "waiting for message".
I've verified that when I first pair (or delete and re-pair) my watch with phone it gives me expected JSON messages, but after some period of time (it took 5 hours this time, but I've had it fail within 10 minutes) there's zero communication, despite both watch and phone stating they are connected.
edit to add, I also did the "Rewrite settings", just in case there was some problem there. I thought maybe it had, but no, it just took longer this time than usual.
second edit: I just noticed that my step counter widget has been reset, and my "messages" list contains only the test email I sent myself after re-pairing with my phone, none of the dozens of messages I've been receiving throughout the day.
Is it possible the watch crashed causing the BLE to get into a weird state? Connected but not able to communicate?
If my phone and watch lose connection, eg if I leave my phone in the basement and then go upstairs, too far away for the BLE to maintain a connection, the step counter widget resets to 0, all my messages disappear, and obviously I can't get any new messages because I'm not connected.
If I get close enough again, after a minute or two the connection is reestablished BUT I still don't get any messages. I've tested this multiple times and that's the trigger: I walk away until I lose connection, and everything breaks, even after I've come back and the connection has been restored.
I don't need to delete and re-pair my phone and watch in Gadgetbridge to fix it, however, I can simply turn bluetooth off and back on again.
Hypothesis: when the BLE connection is lost, something is happening in Espruino that wipes out memory, including something to do with the BLE connection. Restoring a dropped connection is different from establishing a new connection, there's less handshake involved, but if the watch has lost some critical piece of the original connection than it might think it's connected but won't actually receive any messages. Figure out why the memory is getting wiped out when the BLE connection is lost and that should resolve everything.
Checking for existing bug report now and I'll make a new one if needed.
edit: and so I say, but just now my step count reset to 0, all messages were lost, I did NOT lose connection, and just received a new message. So maybe it is two separate but possibly related issues.
I can confirm this behaviour. I've also added this info to your Github issue.
This issue: https://github.com/espruino/Espruino/issues/2113
Lets just discuss on that issue rather than just duplicating everything.
But as I mentioned on the second issue you filed for the messages (https://github.com/espruino/Espruino/issues/2112) deleting messages on disconnect is expected. It didn't always happen but this behaviour was explicitly requested by someone else in another Github issue.
I also have this issue, it happens after about 5 or 4 days of working fine.
It has happened with my two BangleJS 2 that I have.
I updated firmware and Factory reset one of them last night and its working fine. Must wait a few days to see if it happens again.
I cannot, however, confirm the behavior happens when phone and watch lose connection because of distance. I always have the phone and watch on me all day. Still, they will disconnect randomly during the day causing the same issues you discussed earlier. The hour in my watch also goes back by a couple hours when this happen, minutes stay correct. (IE: Real time is 14:34, time on watch is 10:34).
Don't worry about formatting, just type in the text and we'll take care of making sense of it. We will auto-convert links, and if you put asterisks around words we will make them bold.
For a full reference visit the Markdown syntax.
© Espruino, powered by microcosm.
Report a problem