Wykres commitów

261 Commity (e39f129bd6218454f7dce5fadb3e130b112d91f5)

Autor SHA1 Wiadomość Data
Ben Meadors 572f9f9295
Get device metadata admin message (#1607)
* Get device metadata admin message

* Bump device state version
2022-08-08 07:19:04 -05:00
Thomas Göttgens 295dca8415 Work around bug in littlefs rename() for now. After upstream change to version 2.5 this can be reverted. 2022-08-04 09:08:02 +02:00
Ben Meadors 874d308b50
Only save devicestate on GPS reset (#1587) 2022-08-03 07:16:41 -05: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 9fd7abf3d4
Actually save nodeDb after we init (#1546) 2022-07-02 10:16:48 -05:00
Ben Meadors 3f0ff45232
Node db cleanup and debug prints (#1543)
* Node db cleanup and debug prints

* File name cleanup
2022-07-02 09:09:41 -05:00
Thomas Göttgens e7dfd14917 Change recursive delete to be recursive 2022-06-22 15:33:53 +02:00
Thomas Göttgens bc9a4367d1
Fix #1510 2022-06-16 20:58:15 +02:00
Thomas Göttgens 125f76d984 Don't use rmdir_r but roll our own version. 2022-06-15 17:52:37 +02:00
Thomas Göttgens b127479961 - Refactored factory reset a bit to not installDefaultDeviceState twice on ESP32
- clear BLE bonds on settings version increase
2022-06-15 17:09:42 +02:00
Thomas Göttgens d18aa2e7cb add file version to local savefiles 2022-06-15 16:52:04 +02:00
Thomas Göttgens dc8d1d9a84
implement #1504 2022-06-12 21:52:46 +02:00
Nerijus Bendžiūnas e8e72d2e08
Compile when FSCom is not defined (NodeDB.cpp) 2022-06-07 20:55:05 +03:00
Thomas Göttgens 800a4200ef make sure all segments are enabled and saved 2022-05-22 13:54:24 +02:00
Thomas Göttgens 6bb3861e95 Moduleconfig also changed to localConfig Model. 2022-05-22 13:27:56 +02: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 d9e2e09149
Fix NTP server initialization 2022-05-12 23:05:06 +10:00
Sacha Weatherstone 38913bb661
Consistency fixes & repo cleanup 2022-05-12 20:45:30 +10:00
Sacha Weatherstone 2035ddf5a9 Add ntp server config option, remove old region logic 2022-05-11 18:30:29 +10:00
Sacha Weatherstone 6b0ce6b729
Finish config transition 2022-05-07 20:31:21 +10:00
Sacha Weatherstone eb6dd6b53d
Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-07 13:34:36 +10:00
Sacha Weatherstone ea86f76393
Move LoRa config out of primary channel 2022-05-07 13:34:06 +10:00
Rockwell Schrock 5e109d9648
Fix typo in calculation of NUM_ONLINE_SECS constant (#1436)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-05-05 13:46:39 -05:00
Sacha Weatherstone f84286d138
Split config structure in two 2022-05-02 22:00:24 +10:00
Ben Meadors caac2ecb83
Compute config size and account for reloadconfig (#1428)
* Compute config size and account for reloadconfig

* Reload config and config_size
2022-05-01 20:30:19 -05:00
Ben Meadors 163774bb1f Moved refactored prefs 2022-05-01 14:26:05 -05:00
Andre Kirchhoff 3c1407c7d2
bump minimum app version requirement to 1.3.0 2022-04-24 19:52:32 -03:00
Ben Meadors 98c8eaaaf0
Moved sender short name method into protobuf module (#1398)
* Moved sender short name method into protobuf module

* Correct factory reset code for NRF (from 1.2)

* Use the correct fs abstraction

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-04-24 16:12:25 -05:00
Thomas Göttgens 136e2e96f7
Remove References to Pre-1.2 Preffile
1.3+ need a clean install anyway, so no point migrating these any more.
2022-04-18 21:55:58 +02:00
Ben Meadors 07e2816703
Promote device metrics (#1347)
* NodeInfo slimfast

* Update
2022-04-01 18:35:18 -05:00
Thomas Göttgens 4e29984549 Slightly more verbose GPS debug logging 2022-03-31 18:52:40 +02:00
Ben Meadors ba2fa84ebd
Reworked metrics structure and split telemetry into device or environ… (#1331)
* Reworked metrics structure and split telemetry into device or environment

* Comment cleanup
2022-03-27 09:55:35 -05:00
Ben Meadors e97bd4f9f9
Battery level / telemetry rework (first pass) (#1306)
* Update protos

* Removed battery level from position packets

* Send internal metrics

* Handle telemetry on node info for now

* Fixes

* Default telemetry to enabled and same interval as position

* Fixes for lots of interval issues

* Fixed interval

* Regen

* Cleanup

* Newline

* Update proto ref
2022-03-20 09:55:38 -05:00
Mike Kinney 94c1286010 changed on 1.3 2022-03-17 19:32:34 +00:00
Mike Kinney f2a4308497 remove /prefs for nrf factory reset 2022-03-17 19:10:58 +00:00
Sacha Weatherstone 6bee95d6b2 Rename MeshPlugin, SinglePortPlugin and ProtobufPlugin 2022-03-09 19:01:43 +11:00
Jm Casler a83cfffd3a Rename plugins in /esp32 2022-02-27 01:27:17 -08:00
Jm Casler 218a208ab7 mv plugins/ to modules/ 2022-02-26 23:56:26 -08:00
Jm Casler ac43a1b182 Rename environmental measurement to telemetry 2022-02-26 20:52:22 -08:00
Jm Casler 389a8f1401 Add ourGroupInfo to NodeDB 2022-02-20 00:04:32 -08:00
Jm Casler 1ba7f009dd Remove hw_model_deprecated 2022-02-14 20:37:44 -08:00
Jm Casler 04d16b82ba Remove old style of region code fix 2022-02-14 20:00:46 -08:00
Jm Casler b99d793e23 Remove legacyRadio and Legacy Preferences 2022-02-14 19:58:54 -08:00
Thomas Göttgens 8e9b852faa
Littlefs rebased to Master (#1205)
* Littlefs
2022-02-14 11:45:29 -06:00
Clemens H / OE1RFC / datacop e3df4fe4b4
fix: log error if node_db is full instead of firmware crash (#1191) 2022-02-10 11:44:58 -06:00
Ben Meadors b21b7de04b
Clear bluetooth bonds on multi-press and factory_reset (#1176)
* Clear bluetooth bonds on multi-press and factory_reset
2022-02-01 18:32:26 -06:00
Mike Kinney caaa235c5d more cppcheck warnings fixes 2022-01-24 17:24:40 +00:00
Jm Casler 465ff3dd25 Fix nvs erase for native build 2022-01-08 12:03:18 -08:00
Jm Casler 6506d54859 Erase NVS as part of factory reset & new triple click behavior. 2022-01-08 11:54:02 -08:00
Jm Casler 446fb857cc Bug in getNumOnlineNodes #988 2021-12-11 19:50:20 -08:00
Jm Casler 3d4e4bfa50 Update generated protos & has_wifi #979
https://github.com/meshtastic/Meshtastic-device/issues/979
2021-12-09 11:47:42 -08:00
a-f-G-U-C 646d1caf66
updatePosition process time-only message 2021-10-28 11:31:19 +00:00
a-f-G-U-C b74c2da530
implement RX_SRC_LOCAL, Position in updatePosition 2021-10-26 12:22:34 +00:00
a-f-G-U-C d0fb363422
discriminate local/remote node position updates (#889) 2021-10-23 12:58:56 +11:00
a-f-G-U-C 992bbe76d7
add backward compatible position flag defaults (#884) 2021-10-23 12:12:53 +11: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 4c1b7d4840 pinelora WIP 2021-05-01 11:27:37 +08:00
Kevin Hester babc1b3613 include file/lineno in critical error logs 2021-04-29 09:52:15 +08:00
Kevin Hester 76269b397f Merge remote-tracking branch 'root/master' into dev1.2
# Conflicts:
#	src/esp32/main-esp32.cpp
#	src/mesh/generated/deviceonly.pb.h
#	src/mesh/generated/mesh.pb.h
2021-03-27 16:44:42 +08:00
Jm 57c82988e2 #669 - Add restart counter 2021-03-27 01:20:07 -07:00
Kevin Hester 37ec969f96 Merge remote-tracking branch 'root/master' into dev1.2
# Conflicts:
#	src/mesh/NodeDB.cpp
2021-03-27 11:10:47 +08:00
Jm Casler 7872cb050d
Merge branch 'master' into master 2021-03-25 19:32:13 -07:00
Jm 89029311c1 Update NodeDB.cpp 2021-03-25 19:28:15 -07:00
Jm f6f586decb Remove my code that doesn't work with channels 2021-03-25 19:27:46 -07:00
Kevin Hester 04225f7bc2 change! time of last packet rx in node->last_heard instead of node->position.time 2021-03-26 09:30:15 +08:00
Kevin Hester e17fe7e075 update altitude in nodedb for received altitudes (reported by @iz1kga) 2021-03-24 19:24:33 +08:00
Kevin Hester 5b0e7c6e82 fix has_preferences init 2021-03-24 13:25:21 +08:00
Kevin Hester 1fcec8ce3b always fix up channel list, even if we just did factory reset 2021-03-23 11:54:53 +08:00
Jm Casler 1eb37dded8 partial work for S&F 2021-03-21 19:45:35 -07:00
Kevin Hester 53671283ae change hw_model_deprecated to intentionally break old apps 2021-03-14 10:57:26 +08:00
Kevin Hester d9fc7b32c3 move hw_model into User 2021-03-14 10:48:20 +08:00
Kevin Hester 9a03536e3d Use enums for hw_model per @sachaw idea. 2021-03-14 10:37:32 +08:00
Kevin Hester c097852ab0 SERIOUS BUG: we've been discarding devicestate when we should not 2021-03-12 15:45:28 +08:00
Kevin Hester a97c2ae6eb minimize radioconfig file writes 2021-03-11 18:29:47 +08:00
Kevin Hester 76e2c39c63 completed moving prefs to new files 2021-03-11 17:54:16 +08:00
Kevin Hester ab9fe42f58 wip - move channels 2021-03-11 13:02:00 +08:00
Kevin Hester 950b32232f don't send messages the phone sent us back towards the phone 2021-03-05 10:19:27 +08:00
Kevin Hester 66638655a5 Merge branch 'dev' into dev1.2
# Conflicts:
#	src/mesh/NodeDB.cpp
2021-02-25 08:56:36 +08:00
Kevin Hester b2c47a7dea fix #710. nodes disappearing from map. thanks @DylanHoen for noticing! 2021-02-25 08:50:46 +08:00
Kevin Hester aa8b86c6b2 multichannel send/rx kinda works 2021-02-23 11:43:30 +08:00
Kevin Hester 69a11e7375 WIP phone api changes for dev1.2 2021-02-17 19:04:41 +08:00
Kevin Hester 42ae27973e WIP 1.2 move routing into plugin 2021-02-17 13:06:23 +08:00
Kevin Hester 45caf394f0 WIP multichannel support 2021-02-16 15:41:52 +08:00
Kevin Hester 9d81511153 fix warning 2021-02-12 09:56:35 +08:00
Kevin Hester fdfe62edf0 updates to work with new protobuf names 2021-02-10 16:18:41 +08:00
Kevin Hester 58bb7169a0 use nodenum as the default nodeid 2021-02-08 10:15:02 +08:00
Kevin Hester 7f07725840 make improperly sized AES128/256 keys non fatal, instead pad with zeros
Fixes rebooting the board if someone specifies an invalid key
2021-01-29 10:15:48 +08:00
Andrew Mark 79dad8ec8c Set critical error and reboot when radio fails to generate tx IRQ 2021-01-19 18:21:54 -08:00
Kevin Hester 3598c91c29 fix @mc-hamster build to work on linux/nrf52 2021-01-15 13:30:40 +08:00
Jm 0c06d8db3c maybe this will fix the linux build? 2021-01-09 19:31:16 -08:00
Jm d458f673be Web server is now treaded and moved to mesh/wifi/* 2021-01-08 22:25:44 -08:00
Kevin Hester 3636b87db0 formatting 2021-01-08 11:52:43 +08:00
Kevin Hester 0c74303e9d move criticalerror defs into .proto for cross platform support 2020-12-27 11:22:08 +08:00
Kevin Hester 651bd71454 show critical faults on the screen 2020-12-26 13:36:21 +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 be38a58a62 finish channel name cleanup 2020-12-15 16:13:16 +08:00
Kevin Hester c9f2318e78 Use simpler names for standard channels 2020-12-15 13:14:36 +08:00
Kevin Hester 5cdc2f5142 Make ChannelSettings SUPER short for common channels 2020-12-14 21:09:29 +08:00
Kevin Hester df8b3ebbc7 always pull min_app_version from appload 2020-12-10 11:32:51 +08:00
Kevin Hester a0076eb394 better position debug output 2020-12-09 13:42:36 +08:00
Kevin Hester a4bb1937c1 Merge remote-tracking branch 'root/master' into udp 2020-12-09 11:21:59 +08:00
Kevin Hester 91b99bd584 require apps to be 1.1.20 or later 2020-12-05 10:27:04 +08:00
Kevin Hester ae7d3ee5ed move nodeinfo messages into new plugin system 2020-12-05 10:00:46 +08:00
Kevin Hester d3cb9bdd4a WIP moving positions to new system 2020-12-03 16:48:44 +08:00
Kevin Hester 0b0d293a66 Move text message handling into the new plugin system 2020-11-28 12:10:19 +08:00
Kevin Hester ddab4a0235 remove support for 8bit nodenums 2020-11-28 09:56:21 +08:00
Kevin Hester d7d13d637c clean up filesystem goo, add spiffs to install scripts, fix #496
@mc-hamster seems to work pretty good for me, so I'll send a PR to you
for the dev-http branch.

I'll push out an android alpha build later today (once the build is
complete).  Once this new device load is out in the field _future_
device builds will support updating spiffs from android. (i.e. device
loads older than 1.1.9 must be updated to 1.1.9 or later before spiffs
support is implemented on the device side - so some users might need to
update twice before the new spiffs contents will appear on their device)
2020-11-19 09:25:02 +08:00
Kevin Hester 1839f8f7ca fix #513 scale retransmission times based on true packet time on wire 2020-11-14 10:07:25 +08:00
Kevin Hester cfcb62bd18 Make region changes take effect immedately 2020-10-29 13:26:36 +08:00
Kevin Hester 0767c8be03 PPR1 fix screen mirroring on LCD 2020-10-24 08:16:15 +08:00
Kevin Hester c078c08c3e Merge branch 'dev' into ppr1 2020-10-23 16:53:38 +08:00
Kevin Hester a5d7bacdbf Show current region on the boot screen 2020-10-21 17:27:13 +08:00
Kevin Hester e1f0e11cb8 ppr1 WIP DO NOT MERGE - will break other clients 2020-10-17 13:15:12 +08:00
Kevin Hester 9134faaed1 turn off segger debug in ttgo eink build 2020-10-15 16:11:40 +08:00
Kevin Hester 4a70ba1f7a fix nodeinfo stored times (I think) for @lgoix 2020-10-09 10:01:13 +08:00
Kevin Hester f00d07baa3 RTC: pull rtc code into own file for cleanup 2020-10-08 07:28:57 +08:00
Kevin Hester 7480eb1826 Change to use zeros for timeout values that are 'default' 2020-10-06 09:43:00 +08:00
geeksville 3e5f81bf2a move region into userpreferences, to end region specific firmwares 2020-09-25 12:52:08 -07:00
geeksville 1a064a4666 Merge remote-tracking branch 'root/master' 2020-09-25 09:19:58 -07:00
Jm Casler b39f6c96bd Merge remote-tracking branch 'origin/dev-wifi' 2020-09-22 22:00:07 -07:00
geeksville 3c0429deee Add new factory_reset preferences option clients can set 2020-09-19 11:19:42 -07:00
Jm Casler e508306395 Refactoring to break out HTTP from WiFi 2020-09-13 16:58:36 -07:00
Jm Casler f129b458ad Initial Checkin for WiFi and HTTP Server Framework 2020-09-12 21:43:41 -07:00
geeksville fefd3d78f3 Portduino WIP now compiles but does not link 2020-09-05 12:34:48 -07:00
geeksville 6a475d8288 WIP 2020-09-04 17:23:17 -07:00
geeksville 6cdaf8c600 fix #349 channel suffix letter didn't match between device and phone 2020-08-30 12:38:15 -07:00
geeksville 55dafcbecb fix #269 see below
/**
 * Generate a short suffix used to disambiguate channels that might have the same "name" entered by the human but different PSKs.
 * The ideas is that the PSK changing should be visible to the user so that they see they probably messed up and that's why they
their nodes
 * aren't talking to each other.
 *
 * This string is of the form "#name-XY".
 *
 * Where X is a letter from A to Z (base26), and formed by xoring all the bytes of the PSK together.
 * Y is not yet used but should eventually indicate 'speed/range' of the link
 *
 * This function will also need to be implemented in GUI apps that talk to the radio.
 *
 * https://github.com/meshtastic/Meshtastic-device/issues/269
 */
const char *getChannelName();
2020-08-12 11:04:03 -07:00
geeksville d7cf7e2eb4 Allow advanced users to set arbitrary spreadfactor/codingrate/bandwidth 2020-08-12 10:42:25 -07:00
geeksville a5b7501a4e nimble add debug output 2020-07-24 10:12:25 -07:00
geeksville 014eea2f56 Nimble sleep almost works 2020-07-22 21:26:32 -07:00
Ellie Hussey 6f7f540c79
Added the option for forced NodeStatus updates on user change or text message, tweaked compass (#256) 2020-07-05 17:03:12 -07:00
Professr 542b8b26ce Abstracted statuses, made display event-driven 2020-06-27 21:19:49 -07:00
geeksville e7eee0995a fix line endings 2020-06-24 16:14:38 -07:00
geeksville 9f6e23754c Add a no_save development flag to allow using settings that
we don't want to save to flash.  Use that flag to guard BLE
stress testing code that makes device repeatedly sleep wake
to force numerous BLE resets
2020-06-24 13:10:36 -07:00
geeksville 8190098bb8 experiment with wifi connections for nodes 2020-06-21 14:11:38 -07:00
geeksville a47524b762 cubecell wip 2020-06-16 17:13:26 -07:00
geeksville f35b15b09c Shrink devicestate for small mcus 2020-06-16 15:26:30 -07:00
geeksville 99dac51b9d Don't use a (huge - 16KB) scratch buffer for device state loading 2020-06-16 15:02:11 -07:00
geeksville aadba1f694 add printPacket for debug printing packets 2020-06-14 15:30:42 -07:00
geeksville 13307c502f misc debug output 2020-06-13 16:29:53 -07:00
geeksville 00d55c9daa require min app version 172 2020-06-09 18:20:06 -07:00
geeksville 739f497bbd Merge branch 'master' into longaddr 2020-06-07 22:16:43 -07:00
geeksville 2d2ed591e9 set num_bits for nodenum and packet id after loading save file 2020-06-07 22:12:06 -07:00
geeksville 871a85d688 force all devices to discard old settings 2020-06-07 17:22:07 -07:00
geeksville 9ea65c6793 Fix #153 - details below
Somehow nodenum was getting reset to zero (and saved to flash - which is
bad because it makes the failure permanent).  So I've changed nodenum
selection to occur after we load the saved preferences (and we try to keep
nodenum stable in that case).

I'm puzzled as to how it ever got set to zero (unless there *shudder*
is some errant pointer that clobbered it).  But next week I'm turning
4 byte nodenums back on, which will make this moot - because they
will always be based on macaddr and the current process where nodes
haggle with the mesh to pick a unique one-byte nodenum will be gone.
2020-06-06 08:30:01 -07:00
geeksville 8d14e97dfa oops - we were not saving radio state 2020-06-06 08:07:21 -07:00
geeksville 99437d931e fix #153 2020-06-03 16:08:11 -07:00
geeksville 49b5738f4f add min_app_version so apps can warn if they are too old 2020-06-03 13:57:30 -07:00
geeksville c753ea7cd1 don't use a fixed randomSeed. 2020-06-03 13:51:53 -07:00
geeksville 5b1488ddf0 Allow packet and nodenums to be 32 bits long (but don't change yet) 2020-06-03 13:46:31 -07:00