Thomas Göttgens
22a5cf04d3
Another one.
2022-08-08 16:29:34 +02:00
majbthrd
ade32b1827
lay groundwork for a possible future architecture ( #1571 )
...
* lay groundwork for a possible future architecture
* switch from feature opt-out to feature opt-in
* lay groundwork for a possible future architecture
* switch from feature opt-out to feature opt-in
* fix USE_RTC in variant.h for rak4631_epaper and t-echo
* ensure Screen.h is not included without configuration.h
Co-authored-by: Peter Lawrence <12226419+majbthrd@users.noreply.github.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-07-31 07:11:47 -05:00
Ben Meadors
52f299ec49
Remove is_always_pwoered ( #1525 )
2022-06-17 13:35:12 -05:00
Ben Meadors
553b35d0ad
Consolidate power saving prefs ( #1507 )
...
* Fixed conversion linter warning
* Power saving consolidation
* Whoops
2022-06-12 19:56:32 -05:00
Ben Meadors
5106433572
Removed phone_timeout_secs pref references ( #1503 )
2022-06-12 09:44:23 -05:00
Jm Casler
40ded630d0
Change default screen on to 10 minutes
2022-06-03 20:38:13 -07:00
Thomas Göttgens
53e9f4df46
Segemented config works for me (TM)
...
Small GPS Fix that cropped up while testing included.
2022-05-21 22:38:33 +02:00
Sacha Weatherstone
6b0ce6b729
Finish config transition
2022-05-07 20:31:21 +10:00
Ben Meadors
794167c701
Removed phone sds timeout ( #1372 )
2022-04-12 08:04:24 -05:00
Thomas Göttgens
e320850707
Resolve Conflicts between PIN_BUtton and the Rotary Select and keep screen powered during plugin operation. Forward Port from 1.2 firmware fix.
2022-03-25 12:27:14 +01:00
Jm Casler
11130496c4
remove is_router in favor of role == Role_Router
2022-03-15 15:49:25 -07:00
Mike Kinney
6883bc7afc
fix more warnings; add to CI; suppress some warnings
2022-01-24 19:58:07 +00:00
Mike Kinney
7c362af3de
more warning fixes
2022-01-24 18:39:17 +00:00
Jm Casler
4ddc113ed6
Add isRouter to the power saving check.
2022-01-10 16:37:35 -08:00
Jm Casler
5392a83e33
Disable light-sleep (aka bluetooth sleep) as the default behavior.
...
https://github.com/meshtastic/Meshtastic-device/issues/1071
2022-01-09 22:28:13 -08:00
Jm Casler
f302166832
Disable light sleep
2022-01-09 19:14:07 -08:00
Joshua Pirihi
5b34e3e1ab
When switching to battery, shutdown after on_battery_shutdown_after_secs
2021-12-06 15:37:35 +13:00
Ben Meadors
2d939d26ee
Renamed to is_always_powered for convention
2021-11-06 12:11:22 -05:00
Ben Meadors
d6c7ea921a
Added always_powered preference
2021-11-06 10:03:10 -05:00
Kevin Hester
388f19da79
Merge branch 'master' into master
2021-08-12 16:32:52 -07:00
claes
5110a6de82
Battery sense for T-Echo
...
Copied battery stuff from RAK4631 to T-Echo
I got the voltage divider figures for T_Echo from SoftRF at
https://github.com/lyusupov/SoftRF/blob/master/software/firmware/source/SoftRF/src/platform/nRF52.h
I dont have a T-Echo so this code
HAS NOT BEEN TESTED
2021-08-10 10:07:40 +02:00
claes
04c5ac0d7c
Voltage and sleep fix for NRF52
...
Dont let the NRF52 go to SDS Super Deep Sleep
Show bat percentage on NRF52 when above 4210 mV
2021-08-10 09:23:26 +02:00
Kevin Hester
057b04a88a
treat RECEIVED_PACKET like PACKET_FOR_PHONE
2021-08-02 22:07:39 -07:00
Kevin Hester
28af18389b
If MQTT connected don't let the board enter LS state
2021-08-02 21:34:14 -07:00
Kevin Hester
2af4c619e1
fix #801 (I think) we were sometimes dropping packets in light sleep
...
Because of failure to enter the NB state packets were not getting queued
for sending.
2021-08-02 21:07:32 -07:00
Kevin Hester
17a1262382
pull in new epaper lib (which required importing configuration.h everywhere
...
for dumb reasons)
2021-06-27 10:56:28 -07:00
Kevin Hester
b70a359fe8
leave phone timeout off a bit longer
2021-03-30 23:11:56 +08:00
Kevin Hester
13cfce48fa
cleanly disable bluetooth while serial API is in use (and only then)
2021-03-25 08:54:43 +08:00
Kevin Hester
7b4f8fb6d6
Fix firmware OTA update while is_router
2021-03-23 14:44:50 +08:00
Vadim Furman
c62863b1dc
Merge from origin
2021-03-14 19:42:57 -07:00
Vadim Furman
98d878cdfe
Port to lora_isp4520 board
2021-03-14 19:00:20 -07:00
Kevin Hester
64bc791e48
fix docs
2021-03-07 09:34:29 +08:00
Kevin Hester
ba9a94d026
fix is_low_power detection
2021-03-06 18:00:20 +08:00
Kevin Hester
7312c56d6c
Merge remote-tracking branch 'root/master' into dev
...
# Conflicts:
# src/PowerFSM.cpp
2020-12-25 10:16:12 +08:00
Jm
bacc1b1dad
#581 - Quiet a compile time warning I introduced.
2020-12-22 22:37:34 -08:00
Jm Casler
5f97740ab7
Fix for #535 -- Heltec board stays asleep ...
2020-12-21 17:42:00 -08:00
Kevin Hester
a8d7700295
move more of is_router out of python and into the device code
2020-12-21 11:38:03 +08:00
Kevin Hester
15e1a3870c
When new node joins mesh, all other nodes reply with their current state
2020-12-17 10:53:29 +08:00
Kevin Hester
d7368d5a51
begin deep sleep support for nrf52
2020-10-30 17:05:32 +08:00
Kevin Hester
d9dcb33576
Merge branch 'master' into dev-https
2020-10-16 17:05:06 -07:00
Kevin Hester
68ddb712f5
properly keep nrf52s from sleeping
2020-10-16 14:00:56 +08:00
Jm Casler
10008d4eef
fix merge conflict
2020-10-11 21:19:22 -07:00
Jm Casler
3d3f7869d4
Increase CPU frequency on HTTPS requests. Clock back down after a period of time.
2020-10-11 20:38:09 -07:00
Kevin Hester
45a36f5571
fix POWER state entry/exit based on loss of USB power (tx @mc-hamster)
2020-10-12 09:27:07 +08:00
Jm Casler
ca48079545
Merge pull request #15 from meshtastic/master
...
updated my branch from head
2020-10-10 22:29:09 -07:00
Jm Casler
b17a8d7a6a
Removed powerExit -- it wasn't working
2020-10-10 21:54:27 -07:00
Kevin Hester
49b4ed2a89
coroutine: kinda works now
2020-10-10 18:03:45 +08:00
Jm Casler
db8faa9faf
added powerExit
2020-10-09 23:07:37 -07:00
Jm Casler
f75a256631
Merge branch 'master' of https://github.com/mc-hamster/Meshtastic-device
2020-10-07 22:02:59 -07:00
Jm Casler
4f659b7563
Initial check in of HTTPS server for #452
...
This switches from the espressif web server to esp32_https_server. Both HTTPS and HTTP have been migrated. On board SSL key generation.
2020-10-07 22:02:53 -07:00
Kevin Hester
943d5cb08d
bug #376 we were not staying in light sleep as long as intended
2020-10-06 11:48:53 +08:00
Kevin Hester
7480eb1826
Change to use zeros for timeout values that are 'default'
2020-10-06 09:43:00 +08:00
geeksville
bacc6caf04
wip gps power fixes #376
2020-10-01 09:17:43 -07:00
geeksville
28ec0e310d
make bat voltage sensing work on eink
2020-09-26 18:13:16 -07:00
geeksville
3352fae64c
fix #371 allow button while using API. also don't let tbeams sleep if they have USB power
2020-09-21 12:41:39 -07:00
geeksville
fefd3d78f3
Portduino WIP now compiles but does not link
2020-09-05 12:34:48 -07:00
grcasanova
37d9fb2dad
just a cleanup of the graphics
2020-07-07 10:46:49 +02:00
grcasanova
92b30ebec6
fixes now compiles
2020-07-06 10:45:55 +02:00
geeksville
1f668046a0
if we can't sleep, at least have the processor block for 100ms
2020-06-10 18:23:20 -07:00
geeksville
8ccd59a7d8
Fix #115 : wake from light sleep if a character arrives on the serial port
...
Note - we do this not by using the uart wake feature, but by the lower
power GPIO edge feature. Recommend sending "Z" 0x5A - because that has
many edges. Send the character 4 times to make sure the device is awake
2020-06-10 15:36:38 -07:00
geeksville
ddfdae64bf
Fix #167 while in light sleep, allow loop() to still run occasionally
2020-06-10 14:11:56 -07:00
geeksville
ce9bac34d6
add a new SERIAL psm state, to ensure device doesn't sleep while
...
connected to the phone over USB.
In support of
https://github.com/meshtastic/Meshtastic-Android/issues/38
2020-06-08 16:37:49 -07:00
geeksville
d2de04d5b2
Fix #59 no need for broadcasts when showing new node pane
2020-05-21 17:21:44 -07:00
geeksville
efc239533c
Fix #133 - force deep sleep if battery reaches 10%
2020-05-17 05:10:51 -07:00
geeksville
933d5424da
abstract out the UBlox GPS driver
2020-05-04 11:15:05 -07:00
geeksville
bebaa838c4
no need for LightSleep state on NRF52 CPUs
2020-04-24 11:21:10 -07:00
geeksville
0a6af936ed
Get build (kinda, not really) running on a NRF52
...
Lots of NO_ESP32 to remove later...
2020-04-14 20:22:27 -07:00
geeksville
4757b6807e
lots of changes:
...
* preflightSleep, notifySleep, notifyDeepSleep now allow arbitrary
drivers/devices/software to register for sleep notification.
* Use the proceeding to clean up MeshRadio - now the mesh radio is more
like an independent driver that doesn't care so much about other systems
* clean up MeshService so that it can work with zero MeshRadios added.
This is a prelude to supporting boards with multiple interfaces (wifi,
extra LORA radios etc) and allows development/testing in sim with a bare
ESP32 board
* Remove remaining ESP32 dependencies from the bare simulation target
this allows running on anything that implements the arduino API
2020-04-14 11:40:49 -07:00
geeksville
6ad451eb5f
move bluetooth code into something that is architecture specific...
...
because the ESP32 implementation will be different from NRF52
to make this possible I needed to decouple knowlege about bluetooth from
our mesh service. Instead mesh service now uses the Obserable pattern
to let any interested consumer get notified of important mesh changes
(currently that is only bluetooth, but really we should do the same
thing for decoupling the GUI 'app' from the mesh service)
@girtsf would you mind reviewing my Observer changes? I haven't written
C++ code in a long time ;-)
2020-04-10 12:18:48 -07:00
geeksville
05a0266fc4
Fix #77 : bluetooth is supposed to be on in DARK state
2020-04-05 13:09:46 -07:00
geeksville
da74803ffb
begin cleanup on radio abstraction, details below:
...
* to allow changing to new mesh transport
* to allow a different chipset for the radio
* to allow testing on hardware with a SimRadio
* new "bare" build env for a devboard with virtually no hardware
* make buttons optional
2020-03-31 21:56:35 -07:00
geeksville
50d724780a
make user presses ask other nodes for their latest status
...
see related bug
https://github.com/meshtastic/Meshtastic-esp32/issues/59
2020-03-25 13:09:12 -07:00
geeksville
3443e60718
never loop waiting on hardware without some sort of timeout ;-)
...
related to https://github.com/meshtastic/Meshtastic-esp32/issues/53
2020-03-25 12:25:46 -07:00
geeksville
32ac5ac9ae
reformat everything
...
using @girtsf clang-format prefs settings. This should allow us to turn
on auto format in our editors without causing spurious file changes.
2020-03-18 19:15:51 -07:00
geeksville
534691f0c2
Merge remote-tracking branch 'root/master'
...
# Conflicts:
# src/main.cpp
# src/screen.cpp
# src/screen.h
2020-03-18 18:44:12 -07:00
Girts Folkmanis
daf8594b99
Screen cleanups and refactoring
...
Work towards separating out how Screen interacts with other stuff.
* `Screen` should now be thread-safe. All commands to it are put in a
queue and handled in `doTask` from the `loop()` task.
* Break dependency from `BluetoothUtil` to `Screen` by changing the
pairing request into a callback.
* All accesses to screen now happen through the class.
* Fix `drawRows` so that the text scrolls along with frame animations.
* Remove example code that wasn't used.
2020-03-18 18:11:35 -07:00
geeksville
53765298e1
add a real BOOT state, to avoid glitch from redrawing bootscreen twice
...
also its the right thing to do ;-)
2020-03-18 15:00:17 -07:00
geeksville
dbbb62f63e
fix press to properly force any node we are watching to send us a new
...
position report
2020-03-18 13:51:32 -07:00
geeksville
35cf8a4859
power debugging
2020-03-13 22:38:58 -07:00
geeksville
9bbd658b9d
begin testing native ublox api
2020-03-13 20:30:48 -07:00
geeksville
c66e24aa4d
most users are not using the phone app now, don't enter SDS state because of no phone comms
2020-03-04 18:59:10 -08:00
geeksville
951f5d11d5
fix text message display when new text arrives
...
The problem was we were pulsing the display power briefly down while
reentering the ON state (because the ON states exit rule turned it off).
Instead we now just turn off the screen on entry to DARK or LS states
2020-03-04 16:46:57 -08:00
Kevin Hester
375804c9e4
(needs testing) fixed the following during a plane flight
...
* Have state machine properly enter deep sleep based on loss of mesh and phone comms.
* Default to enter deep sleep if no LORA received for two hours (indicates user has probably left the mesh).
Signed-off-by: Kevin Hester <kevinh@geeksville.com>
2020-03-03 13:31:44 -08:00
geeksville
7b348f30ac
text messages screen not coming up if screen was already on
2020-02-25 10:29:37 -08:00
geeksville
a3df099f60
until my TBEAM is fixed, leave GPS power on in sleep sometimes
2020-02-24 11:21:08 -08:00
geeksville
bb808c6c52
fix bluetooth pairing UX. enter full ON state when requested
2020-02-24 10:23:07 -08:00
geeksville
4906b12489
prevent ble powerdown while phone is connected
2020-02-23 08:53:52 -08:00
geeksville
372a3e000e
button presses are fixed
2020-02-22 18:02:44 -08:00
geeksville
5e2044dd63
blink the led very briefly every 5 secs while in light sleep
2020-02-22 17:40:31 -08:00
geeksville
ca37e50362
WIP light sleep kinda works
2020-02-22 14:45:58 -08:00
geeksville
fe2ca65a11
WIP kinda works but light sleep still busted
2020-02-22 13:50:08 -08:00
geeksville
c7894f3bc5
fsm WIP might work
2020-02-22 13:14:10 -08:00
geeksville
509f9b6e2b
WIP state machine builds
2020-02-22 12:01:59 -08:00