Commit graph

119 commits

Author SHA1 Message Date
geeksville
774ab65ece treat radio not connected exception like a remote exception 2020-05-24 09:45:52 -07:00
geeksville
28023b8f42 Fix 27: add timeouts for BLE operations, to protect against buggy drivers 2020-05-24 09:45:39 -07:00
geeksville
bba9def20e it has been a couple of weeks since new API rolled out, now just
always use it
2020-05-24 08:47:36 -07:00
geeksville
501ca3df9d mark that we want our text transmissions to be reliable 2020-05-21 17:25:04 -07:00
geeksville
c06f5f1c39 set aside ble sw update for now 2020-05-15 10:18:15 -07:00
geeksville
3c338aec61 firmware update progress bar kinda works 2020-05-14 11:47:24 -07:00
geeksville
c1388d6bad firmware update button is kinda in 2020-05-13 17:00:23 -07:00
geeksville
6576f5eab5 backend updated to reneable firmware update 2020-05-13 14:47:55 -07:00
geeksville
b4da48beb5 after boot wait even longer - 2 min, we are in no rush anyways
the phone should be quite less busy by then
2020-05-11 15:27:53 -07:00
geeksville
407a38594f workaround for slow booting Samsung phones 2020-05-11 13:12:44 -07:00
geeksville
33265c7c2e fix autobug - if someone runs really old device code with buggy bluetooth
just wait for them to fix their device...

https://console.firebase.google.com/u/0/project/meshutil/crashlytics/app/android:com.geeksville.mesh/issues/1948d9ea376e223f34d7065d1aba39df?time=last-seven-days&sessionId=5EB4DF6800B900016F5DA5AAC26367BE_DNE_1_v2
2020-05-11 11:44:24 -07:00
geeksville
0b7f853abc fix an autobug - race condition on some phones BLE reconnect 2020-05-10 21:39:49 -07:00
geeksville
877006f26b temp code for testing failures 2020-05-10 21:39:23 -07:00
geeksville
de4cb68930 update to latest protobufs 2020-05-09 21:20:17 -07:00
geeksville
12f7e9a8ce support int based lat/long
for https://github.com/meshtastic/Meshtastic-device/issues/124
2020-05-04 08:05:59 -07:00
geeksville
ee34a7a370 fix missing strings reported by @Mango-sauce 2020-05-01 13:43:57 -07:00
geeksville
d669a06ed7 update protobufs 2020-04-28 18:02:01 -07:00
geeksville
5822dddc6c Fix #23: autobug, if we get mystery BLE error 133 while reading messages
drop the BLE link and reconnect and try again.
2020-04-26 13:03:35 -07:00
geeksville
ba91920154 fix autobug: if user has location disabled, warn that we can't provide it to mesh 2020-04-25 07:33:51 -07:00
geeksville
51efde08c0 0.5.6 if we lose connection during initial radio download, fail gracefully 2020-04-24 15:59:01 -07:00
geeksville
e302848607 0.5.5 only try to set max MTU once, if it fails consider phone buggy 2020-04-24 15:49:34 -07:00
geeksville
3e89510f52 Some phones have buggy race conditions wrt finding services or characteristics
This workaround is: If we fail in that way during initial device connection
we disconnect() and try again 500 ms later.
2020-04-24 15:22:54 -07:00
geeksville
a3db3eca06 We now detect and use the newapi if the device doesn't offer the old one 2020-04-23 12:08:34 -07:00
geeksville
17edf75b95 setting now works using the new ble api 2020-04-23 11:24:57 -07:00
geeksville
a5eaa057a1 new ble api approximately works for reading 2020-04-23 11:24:57 -07:00
geeksville
2ced6f5f6a WIP, begin adding support for the simpler BLE api
https://github.com/meshtastic/Meshtastic-esp32/issues/69
2020-04-23 11:24:57 -07:00
geeksville
6f5c7b2452 move logging to the IO thread 2020-04-22 08:20:57 -07:00
geeksville
8ec8b038b6 Increase MTU _before_ discovering services, because it will speed up the link 2020-04-22 08:10:23 -07:00
geeksville
b63ebadf72 track # of text messages received/sent 2020-04-22 07:59:07 -07:00
geeksville
b194659e8a Fix autobug: some BLE implementations might not be completed
with service enumeration by the time they call the discover services
callback.  Therefore be careful to not touch "service" until after
the 500ms delay everyone on stackoverflow says these buggy drivers need.
2020-04-22 07:25:07 -07:00
geeksville
35c745d93f track total time connected to mesh 2020-04-21 14:46:52 -07:00
geeksville
671bafa05f don't leak macaddrs into logs - could be possibly personally identifying 2020-04-21 08:21:42 -07:00
geeksville
c00ca9b3db move notify later, to see if the autobug is _all_ BLE transactions or just notfiies 2020-04-21 07:57:07 -07:00
geeksville
bfff5f6215 fix autobug that occurs if the service gets destroyed immediately after creation 2020-04-20 20:44:21 -07:00
geeksville
47ba4f0243 oops I broke from scratch installs - seen on a Z2 Pro 2020-04-20 15:38:53 -07:00
geeksville
8bf60c7603 make BLE exceptions strongly typed, so I can trigger closing down connections if needed 2020-04-20 11:10:53 -07:00
geeksville
0919bc75ef only ignore connect failures if autoconnect is on 2020-04-20 11:01:27 -07:00
geeksville
2a52b707ee fix autobug: some phones call gatt connected but with an error status code 2020-04-20 10:37:46 -07:00
geeksville
428ea596b0 fix autobug: exceptions become RemoteException when crossing service boundary 2020-04-20 10:15:43 -07:00
geeksville
9b57d60432 add note about an unsolved autobug 2020-04-20 10:15:22 -07:00
geeksville
34aa4cde05 if bluetooth was disabled when we started, reattempt device connect later 2020-04-20 09:56:38 -07:00
geeksville
25740c4fe4 don't leak user name in logs 2020-04-20 08:48:42 -07:00
geeksville
8c2d046255 properly show 'disconnected' while changing between radios 2020-04-20 08:27:08 -07:00
geeksville
62a64dd782 new cleaner approach of not whacking services seems to aprox work 2020-04-20 07:46:06 -07:00
geeksville
cde3f2dec2 WIP - doesn't yet build, but changing to set the device addresses the correct way 2020-04-19 20:06:11 -07:00
geeksville
1e47895904 fix a couple of old/rare autobugs 2020-04-19 18:12:11 -07:00
geeksville
39eb6664da we now save node & msg db across service invocations 2020-04-19 17:25:20 -07:00
geeksville
ca1ada085e use parcelize to eliminate boilerplate code 2020-04-19 12:00:41 -07:00
geeksville
613e4f7ec4 make aidl interface strongly typed 2020-04-19 11:56:06 -07:00
geeksville
5784138c96 Fix #11: we now keep a record of past messages in the persistent service state 2020-04-19 11:47:34 -07:00