geeksville
ce14fde33b
Fix #36 - allow users to select 'none' for the preferred radio
...
If none is selected, we do not leave our service running. And we do
not start it on boot.
2020-06-07 18:55:08 -07:00
geeksville
30137efc68
WIP - cleaned up BLE vs serial interface approximately works
2020-06-07 17:11:30 -07:00
geeksville
cecc369598
split out common code for USB and BLE links
2020-06-04 12:34:34 -07:00
geeksville
d526d11d20
Fix #32
...
+ // Note: To workaround https://issuetracker.google.com/issues/36995652
+ // Always call BluetoothDevice#connectGatt() with autoConnect=false
+ // (the race condition does not affect that case). If that connection times out
+ // you will get a callback with status=133. Then call BluetoothGatt#connect()
+ // to initiate a background connection.
2020-06-04 09:35:25 -07:00
geeksville
ef61c9acff
add note about https://github.com/meshtastic/Meshtastic-Android/issues/32
2020-06-04 08:02:36 -07:00
geeksville
ed4236d8e3
only use the new api now, old device loads have been out a while
2020-05-30 16:23:42 -07:00
geeksville
67d95039bf
begin support for message status
2020-05-30 14:38:16 -07:00
geeksville
238ae9a06c
fix autobug, if we don't have a gatt currently, treat as a BLEException
2020-05-24 11:15:13 -07:00
geeksville
74449be999
don't spam with autobugs if we just fail because the device is off
2020-05-24 10:46:27 -07:00
geeksville
a191dac0f4
stay with old api for now, because too much change hurts reliaiblity ;-)
2020-05-24 10:12:12 -07:00
geeksville
4efd25d009
Possible fix #26 . It seems some phones don't quite have the services
...
list populated at the time they say service discovery has completed.
Make the nasty 500ms delay a 1000ms delay instead
2020-05-24 09:51:25 -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
3c338aec61
firmware update progress bar kinda works
2020-05-14 11:47:24 -07:00
geeksville
6576f5eab5
backend updated to reneable firmware update
2020-05-13 14:47:55 -07:00
geeksville
877006f26b
temp code for testing failures
2020-05-10 21:39:23 -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
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
a5eaa057a1
new ble api approximately works for reading
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
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
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
2a52b707ee
fix autobug: some phones call gatt connected but with an error status code
2020-04-20 10:37:46 -07:00
geeksville
34aa4cde05
if bluetooth was disabled when we started, reattempt device connect later
2020-04-20 09:56:38 -07:00
geeksville
8c2d046255
properly show 'disconnected' while changing between radios
2020-04-20 08:27:08 -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
5036cb906b
#14 : not ready - but I need to do other stuff - so disabling for now
2020-04-18 18:45:50 -07:00
geeksville
b4bf682df0
#14 : WIP we now show the new GUI properly
2020-04-18 16:30:30 -07:00
geeksville
54d632eb84
some android stacks are buggy and need 500ms before returning BLE descriptors
2020-04-13 16:28:32 -07:00
geeksville
d1afb6fac6
don't leak personal data into logs
2020-04-12 10:56:45 -07:00
geeksville
2ba398cc51
fix this autobug:
...
https://console.firebase.google.com/u/0/project/meshutil/crashlytics/app/android:com.geeksville.mesh/issues/9ca00f8a87bb62f10c78009f450b13b8
2020-04-10 17:49:43 -07:00
geeksville
69e6b285c6
we now allow changing BLE connection to different meshtastic devices on the fly
2020-04-09 13:28:44 -07:00
geeksville
606dc0fd07
turn off gestures - they are confusing with the map view
2020-04-07 12:32:42 -07:00
geeksville
f2d43332f7
Making app aware of device sleep states, Fix #4
2020-04-04 17:00:38 -07:00
geeksville
1e34e77fe9
only force refresh of the BLE service table the first time we talk
2020-04-04 14:37:13 -07:00
geeksville
ab31542fd8
bootstrap the mesh service if someone sets our radio macaddr late
2020-03-30 17:36:09 -07:00
geeksville
81a1283148
Android can cache BLE service descriptors. But our device descriptors
...
can change still (because 'progress'). So force android to reread those
descriptors while we are in alpha.
2020-03-30 16:44:48 -07:00
geeksville
444485658f
track # of users with radios
2020-03-12 11:54:22 -07:00
geeksville
a506904ed9
set isConnected earlier, so quick calls from clients still work
2020-03-04 13:59:22 -08:00
Kevin Hester
9a2c22d0f6
we now generate real qr codes from the current channel
2020-03-02 07:46:03 -08:00
Kevin Hester
8c185a7718
add received packets binary file logging (to improve simulation)
2020-03-02 06:31:15 -08:00
Kevin Hester
b13e52d2eb
two items from todo list:
...
* startforegroundservice only if we have a valid radio
* when we select a new radio, restart the service
2020-03-02 06:25:17 -08:00
Kevin Hester
6a90881dd6
fix crashlytics auto report. oops error() is now a kotlin stdlib call
...
and therefore I was accidentally calling it instead of my Logging.error()
method. And that made some error logs incorrectly fatal.
2020-02-29 13:21:05 -08:00
geeksville
2c8c7ac8d6
if phone ble stack is hosed restart it
2020-02-25 09:28:47 -08:00
geeksville
dac3610f7d
cleaner way to find ble services
2020-02-25 08:23:26 -08:00
geeksville
674b417c87
BLE software update works again
2020-02-24 18:10:25 -08:00