we show a diffrent icon in the corner of the window (connected vs sleeping vs disconnected). But having the sleeping icon somehow show progress until the next check interval would be nice.
(1.1.4 For alpha testers only) This release is mainly to fix the problem @feh123 noticed, but it also includes a substantial cleanup of the threading model used in the app. Benefits of this cleanup
- Simpler
- Less FreeRTOS dependent (important for the port to Apache MyNewt - for low end NRF52s) and portduino (for linux and simulation)
- Lower power consumption because the top level arduino loop() will be sleeping typically for 100s to thousands of msecs. This saves about 7mA when in the ‘active’ states on ESP32s and cuts NRF52 CPU power consumption in all modes to close to zero. However, unlikely to change battery life much because our power consumption is dominated by the Light-Sleep state and in that state we were already pretty optimal.
- Lower latency - because we will be able to instantly wake for ble, button press or lora rx. Because there will no longer be the nasty 10ms sleep we had in loop() to save power. Instead there is a new InterruptableDelay class which allows sleeping and instantly waking if needed. This will help once we add (much needed) optimizations to run faster at the short-range/high-speed settings. It also speeds up bluetooth communication.
@geeksville thanks for the new version. I am trying it on my tbeams with my Huawei MediaPad (android 7.0) and the app (1.1.02). First an observation - I use esptool to load the bin file - I cannot use source codes only the firmware. Is there a procedure for using source codes? Also when I do load the new firmware I feel that the device is not wiped clean and still contains data - a text is often still there and a list of last devices meshed.
Anyway 1.1.4 - I think I saw the above effect - on first loading the devices would show a fix but within 2 minutes this would be replaced by no gps lock. Then after about 10 - 30 minutes they would get a gps fix. I am afraid I do notice that the gps is still not constant and devices lose the lock. They seem to regain a fix after five minutes.
All have shown up on the app - five were remembered by BT and only one needed to be reconnected. However so far (about 60 minutes from start) only four devices are present on mapbox. I cannot understand why these specific devices are joining and not the others. Gradually they showing up on mapbox one or two at a time. All the devices received texts - just a few seconds from send.
I see a new message on the screen - powered or unpowered. The screens seems to swtch off quite quickly now. If you want me to try to get more info on the fix loss let me know.
I tried 1.1.4 on some tbeam 1.0 boards. I keep loosing bluetooth connection after a few minutes, and I think I have to wake them by pressing a button to get the connection back. Tested on a Samsung Galaxy Note 8, and another android phone.
Hmm - is this different than the normal sleep behavior (i.e. the devices should drop bluetooth connection and come back every 3 or 5 mins (I forget) and check in with the phone to see if there are messages to send)? During this period the icon in the app should have the “cloud with arrow” icon.
1.1.5 of the android app is available for folks on the alpha/beta channels on google-play.
- @lgx improved the debug view
- @KenVanHoeylandt started a much needed cleanup of the service code
This should help for building from source. https://github.com/meshtastic/Meshtastic-device/blob/master/docs/software/build-instructions.md#gui
I keep having the same issue. Once the device disconnects after a couple of minutes, I can’t type a message in the app. So i have to press a button in the tbeam to wake it up.
What icon do you see in the top right of the app? Does it have a cloud icon with an up arrow?
It has the disconnected icon
OOOH that’s not good! I’ll investigate soon. What model of device are you using?
T22 V1.1 20191212 firmware 1.1.4 with a samsung s5 running 1.1.02 app.
thanks!
I pressed the middle button to wake it up, I sent a test message, I read this thread, I went back to the app, and it was disconnected. I took a screenshot.
I’m having trouble getting messages through once the device goes to sleep unless i wake it manually by pushing the button. It seems like once the device falls asleep, the messages are queued, but if i create a message after the device sleeps, it wont get sent at all unless i push the button. I’ve let it sleep up to 30 minutes and the message only sends once i push the button to manually wake up. In my android app I see the cloud with up arrow icon both next to the message and in the top right of the screen.
I’m running firmware 1.1.4 and android app 1.1.02.
Thanks yep something sounds busted in the 1.1.2 and later alphas. I’ll fix in the next couple of days.
Oh: I just thought of what causes this - we now are smarter about how default values are kept in the device and this is breaking the app. I’ll fix the device code.
I thought 1.1.2 was better. Reverting my TBeams now.
I reverted my tbeam1.0s to 1.1.2, and, in a 15 minute test with a web browser in the foreground, and then returning to the app, the bluetooth connection remained functional. The LCD never shut off during that time, while running off of batteries, so I guess it may never have gone to sleep.
yep - that’s definitely the bug. Fix coming in the next couple of hrs.
The bug was actually introduced in 1.1.1 but only hurt things if during the upgrade device preferences got discarded. thank ya’ll for the through reports!