Compare commits

...
Author SHA1 Message Date
Ben MeadorsandGitHub e09b12ca58 Merge pull request #2072 from meshtastic/hotfix-01
Hotfix for user button not working
2022-12-29 06:22:58 -06:00
Thomas Göttgens 7f3a624ee3 Hotfix for user button not working 2022-12-29 11:55:19 +01:00
Thomas GöttgensandGitHub 475c87b0e4 Merge pull request #2071 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-28 23:18:19 +01:00
thebenternandGitHub 541f4aa998 [create-pull-request] automated change 2022-12-28 21:27:27 +00:00
Thomas Göttgens 6ea0963f4b fix master too 2022-12-28 16:03:34 +01:00
Thomas GöttgensandGitHub 63cf01223c Merge pull request #2070 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-28 15:43:40 +01:00
caveman99andGitHub 2505bdbc21 [create-pull-request] automated change 2022-12-28 14:42:46 +00:00
Thomas Göttgens 14be4ee9f0 Release Develop to Master 2022-12-28 15:31:04 +01:00
Thomas GöttgensandGitHub d0243d2cd0 Merge pull request #2067 from miaoski/sht31
Support SHT31 temperature sensor
2022-12-27 21:11:30 +01:00
Thomas GöttgensandGitHub 796e58161d Merge branch 'master' into sht31 2022-12-27 13:58:44 +01:00
Thomas GöttgensandGitHub e56f17c658 Merge pull request #2068 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-27 13:58:27 +01:00
caveman99andGitHub b808ffa9ab [create-pull-request] automated change 2022-12-27 12:53:56 +00:00
miaoski 506bae4a8b Support SHT31 temperature sensor 2022-12-27 19:39:51 +08:00
Thomas GöttgensandGitHub f6ee6265e6 Merge pull request #2063 from lewisxhe/master
Fixed<t-beam-s3-core>display model is SH1106
2022-12-25 13:32:29 +01:00
Thomas GöttgensandGitHub 7539d92857 Merge branch 'master' into master 2022-12-25 13:03:27 +01:00
Thomas Göttgens 21fff392b4 Backport RP2040 update 2022-12-25 13:02:40 +01:00
Thomas Göttgens 580ec590fa something broke pico toolchain. 'twasn'tme .. 2022-12-25 13:01:39 +01:00
lewis 5c9996dfa1 Fixed<t-beam-s3-core>display model is SH1106 2022-12-25 19:01:04 +08:00
Thomas GöttgensandGitHub 2f7c18303d Merge pull request #2058 from lesykm/serial-module-simple-mode-binary
[modules][serial] switch simple mode from ascii to bytes
2022-12-22 10:46:41 +01:00
Mykhailo Lesyk b9df41c55f [modules][serial] switch simple mode from ascii to bytes 2022-12-21 22:37:30 -08:00
Thomas GöttgensandGitHub 4801260440 Merge pull request #2055 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-21 20:30:14 +01:00
thebenternandGitHub 606262e55d [create-pull-request] automated change 2022-12-21 18:54:52 +00:00
Ben MeadorsandGitHub 090e1660fe Merge pull request #2053 from meshtastic/upstream-heltec
Move to upstream espressif arduino
2022-12-21 07:47:27 -06:00
Ben Meadors 92c9b34d4f Copy pasta 2022-12-21 07:46:59 -06:00
Ben MeadorsandGitHub 3f50371ff3 Merge branch 'master' into upstream-heltec 2022-12-21 07:45:18 -06:00
Ben Meadors 815f9bfc5f Move to upstream espressif arduino 2022-12-21 07:41:26 -06:00
Thomas GöttgensandGitHub 86ff23d13c Merge pull request #2051 from meshtastic/master-next
moving a lot of stuff from develop into Master
2022-12-21 14:35:19 +01:00
Thomas Göttgens 201b786f77 fix RAK build 2022-12-21 14:06:02 +01:00
Thomas Göttgens 755c0b7008 use nanopb 0.4.7 2022-12-21 13:37:38 +01:00
Thomas Göttgens 7396d0f241 Cherry Picking Stuff from develop... 2022-12-21 13:36:38 +01:00
Thomas Göttgens 220859d0aa Merge pull request #2019 from code8buster/gps-toggle-final
Adds a flag to turn the GPS power rail off entirely on tbeam
2022-12-21 13:28:32 +01:00
Thomas Göttgens 941786669b fix compiler warnings 2022-12-21 13:28:29 +01:00
Thomas Göttgens 4eb620d47b Heap Debug: only show if delta occurs 2022-12-21 13:28:29 +01:00
Thomas Göttgens 9794995d7a fix building DIY-1 target 2022-12-21 13:28:29 +01:00
Thomas Göttgens 055146602a support ESP32-S2 CPUs
Note: these don't have Bluetooth and only a single physical core.
2022-12-21 13:28:28 +01:00
Thomas Göttgens 86d7860d86 made a nice PTT/RECV screen for audio module. And cleaned up screen graphics a bit. 2022-12-21 13:28:28 +01:00
Thomas Göttgens 0f2d0d1f07 change on screen graphics to support bicolor screens 2022-12-21 13:28:28 +01:00
Thomas Göttgens ab6a5a5e07 if we get different frames than our own transmission setup, decode and play them anyway 2022-12-21 13:28:28 +01:00
Thomas Göttgens 44a33ed463 add IO7 to RAK pinouts - only comments changed 2022-12-21 13:28:28 +01:00
Thomas Göttgens fab08b6451 fix building for screenless devices 2022-12-21 13:28:28 +01:00
Thomas Göttgens d9cd3dd3e1 Change Boot Message format 2022-12-21 13:28:25 +01:00
Thomas Göttgens c75ea87f6b Format received message screen like sender in canned messages. 2022-12-21 13:28:25 +01:00
Thomas Göttgens 706ddf6e95 show appropriate message when going into OTA mode 2022-12-21 13:28:25 +01:00
Thomas Göttgens aec091e7aa manual master merge
# Conflicts:
#	src/Power.cpp
2022-12-21 13:28:25 +01:00
Thomas Göttgens cea8393a7f Merge pull request #2026 from GUVWAF/develop
TraceRouteModule
2022-12-21 13:27:12 +01:00
Thomas Göttgens 8f94463eac send a 4 byte magic header including the codec version 2022-12-21 13:27:00 +01:00
Thomas Göttgens a0f5e44967 Audio Module is finished for regression tests. 2022-12-21 13:27:00 +01:00
Thomas Göttgens feb7181767 debug print thread count. max_threads is 32 2022-12-21 13:27:00 +01:00
Thomas Göttgens a0c1e9cdc6 Still WIP, but first working version of audio. I2S works good, analogue not so much. 2022-12-21 13:27:00 +01:00
Thomas Göttgens 7d1b6f63b5 Definition cleanup and AudioModule WIP 2022-12-21 13:27:00 +01:00
Thomas Göttgens ab6b6514cb this define is arch specific 2022-12-21 13:26:59 +01:00
Thomas Göttgens 0e6285edf2 add temp code for heap debugging. Disable -DDEBUG_HEAP for release builds.
DEBUG_MSG output only for now.
2022-12-21 13:26:59 +01:00
Thomas Göttgens 8b58eaac20 fix compile
# Conflicts:
#	protobufs
2022-12-21 13:26:59 +01:00
Thomas Göttgens 8cbf292373 WIP: add digital audio. Needs a proto change, so checking in generated files for now.
# Conflicts:
#	src/mesh/generated/localonly.pb.h
#	src/mesh/generated/module_config.pb.h
2022-12-21 13:26:44 +01:00
Thomas Göttgens 80d0b63c3a hopefully fix compilation errors 2022-12-21 13:26:13 +01:00
Thomas Göttgens f5120a29ec WIP: audio module still does not work, but enabled for all regions where audio is permitted.
# Conflicts:
#	variants/tlora_v2_1_18/platformio.ini
2022-12-21 13:26:13 +01:00
Thomas Göttgens efc3f4c0ee remove a few DSR Router bits for S&F Module 2022-12-21 13:25:12 +01:00
Thomas Göttgens bd2bfd6822 update board definition, update copy/paste errors, fix SX1280. 2022-12-21 13:25:12 +01:00
Thomas GöttgensandGitHub 88c3ab2636 Merge pull request #2050 from lesykm/serial-module-simple-mode-fix
[modules][serial] fix simple module ability to send
2022-12-21 12:43:13 +01:00
Thomas GöttgensandGitHub 6a5dd26907 need to trigger new CI run 2022-12-21 12:24:38 +01:00
Mykhailo Lesyk 4de557b4db [modules][serial] fix simple module ability to send 2022-12-21 01:35:19 -08:00
Thomas GöttgensandGitHub af9d4328eb Merge pull request #2046 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-17 18:42:25 +01:00
caveman99andGitHub 8c66940b78 [create-pull-request] automated change 2022-12-17 17:41:39 +00:00
Thomas Göttgens 72f1416b30 add variant comment about radiolib 2022-12-16 20:21:56 +01:00
Thomas GöttgensandGitHub 05f81922e6 Merge pull request #2040 from D4rk4/master
Disable deep sleep for nRF  and force shutdown for RAK463x on discharged battery
2022-12-15 11:21:26 +01:00
Dmitry GalenkoandGitHub 72504a5e8b Merge branch 'master' into master 2022-12-14 20:27:20 +01:00
Thomas GöttgensandGitHub e8c034e988 Merge pull request #2041 from markbirss/master
Fix power enable pin used for e-Ink
2022-12-14 17:39:13 +01:00
Dmitry Galenko aa19718ba4 Change condition for low-voltage killswitch 2022-12-14 17:26:55 +01:00
Mark Trevor BirssandGitHub 088ab106dd Update variant.h 2022-12-14 17:57:02 +02:00
Mark Trevor BirssandGitHub 110c3f619a Update variant.h 2022-12-14 17:56:44 +02:00
Dmitry Galenko d1cc503ca8 Disable shutdown for non ESP32 boards 2022-12-14 14:36:15 +01:00
Thomas GöttgensandGitHub d3b3a4c148 fix build error 2022-12-14 10:29:45 +01:00
Dmitry Galenko 46f1cee2a8 Fix missed braces and etc 2022-12-14 10:21:11 +01:00
Dmitry GalenkoandGitHub 0386af721d Merge branch 'meshtastic:master' into master 2022-12-14 09:45:35 +01:00
Thomas GöttgensandGitHub de6b752db8 Merge pull request #2039 from ghostop14/master
Enable GPS capabilities on heltec V3
2022-12-14 09:38:06 +01:00
Dmitry Galenko 92fd5511ec Disable nRF sleep on discharge 2022-12-14 09:36:25 +01:00
ghostop14 59ec7f31ab Enable GPS capabilities on heltec V3 2022-12-13 12:31:39 -05:00
Ben MeadorsandGitHub 779d2352bd Merge pull request #2037 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-12 16:29:39 -06:00
thebenternandGitHub 0162db12b8 [create-pull-request] automated change 2022-12-12 19:23:34 +00:00
Ben MeadorsandGitHub 91ff7b9032 Merge pull request #2036 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-12 12:18:06 -06:00
thebenternandGitHub 643f99f577 [create-pull-request] automated change 2022-12-12 18:06:11 +00:00
Ben MeadorsandGitHub 152288b4cc Merge pull request #2025 from meshtastic/power-fsm-experiment
Power FSM experiment
2022-12-12 12:01:00 -06:00
Ben Meadors 45b518baf2 Move sds transition back into esp32 only 2022-12-12 10:24:51 -06:00
Ben MeadorsandGitHub 0c65c73f90 Merge branch 'master' into power-fsm-experiment 2022-12-09 19:50:26 -06:00
Thomas Göttgens 0f0dbc3274 reboot nrf52 on critical error 8 2022-12-09 11:18:43 +01:00
Thomas GöttgensandGitHub 06d34daeab Merge branch 'master' into power-fsm-experiment 2022-12-08 10:18:01 +01:00
Thomas GöttgensandGitHub ba1f68d758 Merge pull request #2027 from lewisxhe/master
Fix the charging parmas error of tbeam-s3core and change the default USB mode
2022-12-06 16:39:38 +01:00
Thomas GöttgensandGitHub d4c0977a70 Merge branch 'master' into master 2022-12-06 15:49:32 +01:00
Thomas GöttgensandGitHub 1a19d71e95 Merge pull request #2023 from meshtastic/2022-bug-recording-critical-error-11-at-srcmeshradiolibinterfacecpp389
Add debug output
2022-12-06 15:48:57 +01:00
Thomas GöttgensandGitHub 21c10934fc Merge pull request #2018 from arduionoGP/patch-3
Update MQTT.cpp
2022-12-06 15:47:30 +01:00
Thomas GöttgensandGitHub 13cca91097 Merge branch 'master' into patch-3 2022-12-06 14:09:29 +01:00
Thomas GöttgensandGitHub b335b1c66b Merge branch 'master' into 2022-bug-recording-critical-error-11-at-srcmeshradiolibinterfacecpp389 2022-12-06 14:08:48 +01:00
Thomas GöttgensandGitHub cc2653bfb5 Merge pull request #2029 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-12-06 14:05:51 +01:00
caveman99andGitHub fc5bf5a68f [create-pull-request] automated change 2022-12-06 13:03:26 +00:00
lewishe 63d7338311 fix tbeams3-core PMU charging cut-off voltage 2022-12-06 11:01:14 +08:00
lewishe 37f716d27b Change tbeams3-core the default USB mode to TinyUSB 2022-12-06 10:58:59 +08:00
Ben Meadors 0f2a835359 Remove hard coded !isPowered 2022-12-05 10:13:19 -06:00
Thomas Göttgens 2a84d39e40 Always do battery resampling if we use the ADC. Improves reading a lot. 2022-12-05 16:40:23 +01:00
Ben Meadors b14289e976 More cleanup 2022-12-05 08:35:54 -06:00
Ben Meadors 1fef6f0656 Clean up on battery shutdown condition 2022-12-05 07:37:01 -06:00
Thomas Göttgens 183ec2124f Add debug output 2022-12-05 11:48:46 +01:00
Ben Meadors aeb9bfa063 Return false 2022-12-04 20:41:00 -06:00
arduinoGPandGitHub b84c7ae49b Oops, added time to the Pos 2022-12-04 19:41:58 -05:00
Thomas GöttgensandGitHub 61598c5942 Merge pull request #2020 from meshtastic/serial-textmessage
Serial textmessage mode
2022-12-04 23:53:29 +01:00
Ben Meadors a3a24e0216 Don't put newlines in the text buffer 2022-12-04 16:03:57 -06:00
Ben Meadors 31ec2da0e9 Text message mode for serial 2022-12-04 15:40:28 -06:00
arduinoGPandGitHub 27a10b395f Update MQTT.cpp
(First real try at writing meaningful C++ but it seems to work.)
Allows sending JSON Position data from MQTT broker for broadcast to a LORA mesh via gateway device.
The new type is "sendposition". Valid envelope looks like:
{
    "sender": "someSender",
    "type": "sendposition",
    "payload": {
        "latitude_i": 399600000,
        "longitude_i": -862600000,
        "altitude": 100
    }
}
This complements the "sendtext" type envelope.
2022-12-04 00:00:43 -05:00
Ben Meadors 7570cdbd22 Fix shell scripts for both linux and darwin 2022-12-03 08:24:11 -06:00
Thomas GöttgensandGitHub c857474116 Merge pull request #2013 from arduionoGP/patch-2
Update MQTT.cpp
2022-12-01 22:17:35 +01:00
arduinoGPandGitHub 8ff5dacc3c Update MQTT.cpp
case Portnum_POSITION_APP adjusted so the various options allways get encoded into JSON as long as lat and long are present. There are circumstances where timestamp, time, or altitude might be missing and this causes silent failures of JSON encoding..
2022-12-01 15:44:47 -05:00
Ben Meadors f1179d31ba Fixed shell scripts 2022-11-27 07:40:40 -06:00
Ben MeadorsandGitHub abe60b96f1 Merge pull request #2001 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-27 06:11:39 -06:00
thebenternandGitHub 206520f179 [create-pull-request] automated change 2022-11-27 02:16:21 +00:00
Ben MeadorsandGitHub 97fd5cf2ab Merge pull request #2000 from meshtastic/develop
Develop upstream
2022-11-26 19:16:24 -06:00
Ben MeadorsandGitHub d13a095516 Merge pull request #1990 from GUVWAF/develop
Send 'ACK' response for handled admin message
2022-11-26 19:15:36 -06:00
Ben MeadorsandGitHub 4dc7d92cf1 Merge pull request #1999 from meshtastic/master
Fix conditional syntax
2022-11-26 15:09:56 -06:00
Ben Meadors e7dbbeb606 Fix conditional syntax 2022-11-26 14:50:07 -06:00
GUVWAFandGitHub 3e892fc391 Merge branch 'meshtastic:develop' into develop 2022-11-26 21:14:52 +01:00
Ben MeadorsandGitHub dfec37dfd0 Merge pull request #1996 from meshtastic/master
Develop downstream
2022-11-26 12:59:54 -06:00
Ben MeadorsandGitHub b82ab34f85 Merge pull request #1993 from meshtastic/potential-sx1262-fix
Don't set DIO2 switch if TXEN is defined
2022-11-26 12:59:02 -06:00
Ben MeadorsandGitHub 18a2cfeda4 Merge branch 'master' into potential-sx1262-fix 2022-11-26 10:18:14 -06:00
Thomas Göttgens 082aa07e7f update batch scripts to further check filename. 2022-11-26 17:00:33 +01:00
Ben MeadorsandGitHub a703ab4418 Merge branch 'master' into potential-sx1262-fix 2022-11-26 09:07:59 -06:00
Thomas GöttgensandGitHub 185ceac9df Merge pull request #1994 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-26 16:06:12 +01:00
caveman99andGitHub 7c9cada50e [create-pull-request] automated change 2022-11-26 15:04:12 +00:00
Thomas GöttgensandGitHub a5ba3dd445 revert protobuf change to develop 2022-11-26 16:03:17 +01:00
Ben MeadorsandGitHub 63838a1632 Merge branch 'master' into potential-sx1262-fix 2022-11-26 08:19:13 -06:00
Ben MeadorsandGitHub 30d7f188e2 Merge pull request #1991 from meshtastic/develop
Merge develop to master
2022-11-26 08:18:59 -06:00
Ben MeadorsandGitHub 47a47f1e69 Merge branch 'master' into develop 2022-11-26 08:18:35 -06:00
Ben MeadorsandGitHub daac79f314 Merge branch 'master' into potential-sx1262-fix 2022-11-26 08:13:05 -06:00
Ben MeadorsandGitHub 1864216e78 Merge pull request #1992 from lewisxhe/master
Fix the format of t-echo Bluetooth pairing display page
2022-11-26 08:12:55 -06:00
Ben MeadorsandGitHub 71c0cf9b9a Don't set DIO2 switch if TXEN is defined 2022-11-26 08:11:32 -06:00
Ben MeadorsandGitHub ef87ddb798 Merge branch 'master' into master 2022-11-26 07:44:19 -06:00
Ben MeadorsandGitHub 711c748b44 Merge pull request #1986 from IhorNehrutsa/MESSAGES
Some DEBUG_MSG added/changed/commented.
2022-11-26 07:44:12 -06:00
lewis 6eff09a260 Merge branch 'master' of https://github.com/meshtastic/Meshtastic-device 2022-11-26 21:38:07 +08:00
lewis c5fe878a6f Fix the format of t-echo Bluetooth pairing display page 2022-11-26 21:37:32 +08:00
Thomas GöttgensandGitHub 39948c76de Merge branch 'master' into develop 2022-11-26 14:19:27 +01:00
Ben MeadorsandGitHub 10f14d27b7 Merge branch 'master' into MESSAGES 2022-11-26 07:13:20 -06:00
Ben MeadorsandGitHub 5e9d722b7d Merge pull request #1987 from lewisxhe/master
Add t-echo to the operation after the flash operation fails
2022-11-26 06:59:03 -06:00
Ben MeadorsandGitHub b324c04097 Merge branch 'master' into master 2022-11-26 06:44:28 -06:00
Ben MeadorsandGitHub 84a9d95b1f Merge branch 'master' into MESSAGES 2022-11-26 06:43:52 -06:00
lewis cdd499f147 Add missing restart parameters 2022-11-26 12:10:10 +08:00
GUVWAF c45a85547e Send 'ACK' response for admin message 2022-11-25 20:33:24 +01:00
GUVWAF 8815746006 Fix wrong comment 2022-11-25 20:33:23 +01:00
Garth Vander HouwenandGitHub 32a1e8ef0d Create feature.yml 2022-11-25 09:44:26 -08:00
lewis 0dff4538f3 Add t-echo to the operation after the flash operation fails 2022-11-26 00:17:54 +08:00
Ihor Nehrutsa 6507683909 Squashed commit of the following:
commit c8d1bcf04fae5f7ac5b639ddd15a738045014c95
Author: Ihor Nehrutsa <Ihor.Nehrutsa@gmail.com>
Date:   Fri Nov 25 15:11:18 2022 +0200

    Revert "variants\tbeam\variant.h: Use LORA_CS instead of RF95_NSS"

    This reverts commit 8d225ced9c.

commit 1c37097448393ea9364c2b9bf10522802c61d5c4
Author: Ihor Nehrutsa <Ihor.Nehrutsa@gmail.com>
Date:   Fri Nov 25 15:04:09 2022 +0200

    Some little debugs added

commit f1b55e11af
Author: Ihor Nehrutsa <Ihor.Nehrutsa@gmail.com>
Date:   Wed Nov 23 15:24:58 2022 +0200

    Update variant.h

commit 8d225ced9c
Author: Ihor Nehrutsa <Ihor.Nehrutsa@gmail.com>
Date:   Wed Nov 23 13:06:49 2022 +0200

    variants\tbeam\variant.h: Use LORA_CS instead of RF95_NSS
2022-11-25 15:17:24 +02:00
Ben MeadorsandGitHub c71e32970c Merge pull request #1982 from meshtastic/master
Master to Develop
2022-11-24 08:07:24 -06:00
Thomas Göttgens fcf21da843 one radiolib to rule them all 2022-11-24 13:55:57 +01:00
Thomas GöttgensandGitHub ab464fe038 compress better 2022-11-24 13:07:37 +01:00
Thomas GöttgensandGitHub fd546af2a5 don't package meshtasticd simulator
that saves 5 MB on every zip.
2022-11-24 12:36:47 +01:00
Thomas Göttgens acfbe202b6 include alternative update bin without bootloader and settings 2022-11-24 12:33:19 +01:00
Thomas Göttgens 29fb283daf adaptig for #1938 2022-11-24 12:30:15 +01:00
Thomas Göttgens 51ef9b7fbe fix RP2040 and Portduino Platforms 2022-11-24 12:24:57 +01:00
Thomas Göttgens 025d2264a2 m5stack runs with native tone support now. 2022-11-24 10:44:43 +01:00
Thomas Göttgens b2284b2097 Tone now included in arduino core for ESP32. 2022-11-24 10:30:11 +01:00
Thomas Göttgens 5f8267c956 use the buzzer for external notification module 2022-11-24 10:11:42 +01:00
Thomas Göttgens cf783a5bae make GPS pins configurable through protos 2022-11-24 09:23:17 +01:00
Thomas Göttgens 32e5ced814 regen protos 2022-11-24 09:22:50 +01:00
Thomas Göttgens 605fadabcf Merge branch 'master' of github.com:meshtastic/firmware 2022-11-24 00:03:45 +01:00
Thomas GöttgensandGitHub e91ace7329 Merge pull request #1980 from meshtastic/master
Master Merge again
2022-11-24 00:02:35 +01:00
Thomas GöttgensandGitHub c87cd136d4 Merge pull request #1979 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-24 00:01:39 +01:00
Thomas Göttgens 0d7d59609a Remove gpio binding for notification module. 2022-11-23 23:49:29 +01:00
thebenternandGitHub 75ed0e5906 [create-pull-request] automated change 2022-11-23 22:49:22 +00:00
Thomas Göttgens 8e3b500307 ---EXPERIMENTAL--- reboot the board if the NO_AP_FOUND error comes back. 2022-11-23 23:47:50 +01:00
Thomas GöttgensandGitHub d6f77bf07e Merge pull request #1978 from meshtastic/master
Master to Develop
2022-11-23 23:44:42 +01:00
Ben MeadorsandGitHub 65e8209d51 Merge pull request #1976 from markbirss/master
M5Stack CoreInk enable buzzer
2022-11-23 14:32:18 -06:00
Ben MeadorsandGitHub aae5247caa Merge pull request #1977 from meshtastic/hotfix-reset-nodedb
Hotfix Add reset nodedb handler back
2022-11-23 14:31:50 -06:00
Ben Meadors 2fedb6b774 Add reset nodedb handler back 2022-11-23 14:12:44 -06:00
Mark Trevor BirssandGitHub 02d18d4831 Merge branch 'master' into master 2022-11-23 21:53:12 +02:00
Ben MeadorsandGitHub b70c2d088d Merge pull request #1975 from GUVWAF/master
Revert "Override RoutingModule's ACK if on wrong channel"
2022-11-23 13:50:42 -06:00
Mark Trevor BirssandGitHub b3c396683e Update platformio.ini 2022-11-23 21:25:19 +02:00
Mark Trevor BirssandGitHub f08874dd37 Update platformio.ini 2022-11-23 21:24:34 +02:00
Mark Trevor BirssandGitHub 648054da9b Add files via upload 2022-11-23 21:19:20 +02:00
GUVWAF 70bf7c490c Revert "Override RoutingModule's ACK if on wrong channel"
This reverts commit 71c163a8ee.
2022-11-23 19:27:57 +01:00
Thomas Göttgens adbed5de95 - fix NTP sync on connect
- disable extended GPS mode again
- add --inline-suppr to cppflags
2022-11-22 17:19:24 +01:00
Thomas GöttgensandGitHub fe989f0bff Merge pull request #1973 from meshtastic/master
Develop refresh to Master
2022-11-22 17:08:04 +01:00
Thomas GöttgensandGitHub 679e346bcb change old field denominator 2022-11-22 16:47:54 +01:00
Thomas Göttgens 832439b336 strange enough _that_ suppression works 2022-11-22 15:56:13 +01:00
Thomas Göttgens 71c2af04ec why is this working on pio/windows? 2022-11-22 15:03:01 +01:00
Ben MeadorsandGitHub 0f4261d02f Merge pull request #1972 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-22 07:40:41 -06:00
Thomas Göttgens 23466d8eee yank that dreaded json11 - first try 2022-11-22 14:29:00 +01:00
thebenternandGitHub 8edbba2180 [create-pull-request] automated change 2022-11-22 00:56:46 +00:00
Ben MeadorsandGitHub 5417671332 Merge pull request #1971 from GUVWAF/master
Cover two ACK/NAK edge cases for admin packets
2022-11-21 18:11:25 -06:00
Ben MeadorsandGitHub 35d7e11678 Merge branch 'master' into master 2022-11-21 16:36:11 -06:00
Ben MeadorsandGitHub 7a63ba827b Merge pull request #1965 from meshtastic/transactional-config-edits
Only save and reboot while a transaction isnt open
2022-11-21 16:12:55 -06:00
GUVWAF 71c163a8ee Override RoutingModule's ACK if on wrong channel 2022-11-21 20:43:17 +01:00
GUVWAF 5d8e661807 Send NAK on primary channel if it cannot decode it 2022-11-21 20:43:17 +01:00
Ben MeadorsandGitHub 24244e8474 Update AdminModule.cpp 2022-11-21 12:24:05 -06:00
Ben MeadorsandGitHub fb4f9bdc40 Merge branch 'master' into transactional-config-edits 2022-11-21 12:10:49 -06:00
Ben MeadorsandGitHub 668c46e0cf Merge pull request #1968 from meshtastic/develop
Merge develop upstream
2022-11-21 12:10:14 -06:00
Ben MeadorsandGitHub abf8fdb661 Merge branch 'master' into develop 2022-11-21 09:39:22 -06:00
Ben MeadorsandGitHub a28a04b7a0 Merge pull request #1964 from meshtastic/mqtt-init-defaults
Init default mqtt configurations
2022-11-21 09:39:10 -06:00
Ben MeadorsandGitHub cd9671650b Merge branch 'master' into mqtt-init-defaults 2022-11-21 09:39:05 -06:00
Ben MeadorsandGitHub 00bc762bf1 Merge branch 'master' into develop 2022-11-21 09:38:46 -06:00
Thomas GöttgensandGitHub 9a065bce03 Merge pull request #1970 from meshtastic/caveman99-OLED-FIX
fix TLora V1 Boards Display Init
2022-11-21 16:37:55 +01:00
Thomas GöttgensandGitHub 3b2b0bdc97 fix TLora V1 Boards Display Init 2022-11-21 15:50:47 +01:00
Ben MeadorsandGitHub 53cd6bdf15 Merge branch 'master' into develop 2022-11-21 07:35:46 -06:00
Thomas Göttgens edc97c1c07 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-21 14:28:45 +01:00
Ben MeadorsandGitHub 6a24ef2263 Merge branch 'master' into transactional-config-edits 2022-11-21 07:26:18 -06:00
Ben MeadorsandGitHub 50ba523fb4 Merge branch 'master' into mqtt-init-defaults 2022-11-21 07:14:47 -06:00
Thomas Göttgens a33325f90f update web server reference to latest commit 2022-11-21 13:46:22 +01:00
Thomas GöttgensandGitHub a173b7159a Merge pull request #1967 from D4rk4/SAST
Remove empty workflow file
2022-11-21 09:01:16 +01:00
Thomas Göttgens 91295d3772 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-21 08:50:53 +01:00
Dmitry GalenkoandGitHub 9c1c04a8db Merge branch 'master' into SAST 2022-11-21 08:14:39 +01:00
Dmitry Galenko 51d0d0d779 Fix empty workflow 2022-11-21 08:13:28 +01:00
Dmitry Galenko 9cdf627ae3 Revert "Fix empty workflow"
This reverts commit 4b9c482384.
2022-11-21 08:12:52 +01:00
Dmitry Galenko 4b9c482384 Fix empty workflow 2022-11-21 08:10:21 +01:00
Ben Meadors b1ba807ec9 Only save and reboot while a transaction isnt open 2022-11-20 19:50:45 -06:00
Ben MeadorsandGitHub c844f153e1 Merge branch 'master' into mqtt-init-defaults 2022-11-20 15:31:54 -06:00
Thomas Göttgens 4a2b02347f Keymatrix Bugfix: Allow key 3 to send associated text
Feature: setting a text "~" emulates IO5/Userbutton with keymatrix.
2022-11-20 20:59:48 +01:00
Thomas GöttgensandGitHub e8a05d1874 Merge pull request #1947 from meshtastic/bug-1821
testing issues with RAK11200/13300
2022-11-20 19:40:52 +01:00
Ben MeadorsandGitHub 08c4e3fbd6 Merge branch 'master' into mqtt-init-defaults 2022-11-20 12:29:47 -06:00
Ben Meadors 1c5292ac86 Init default mqtt configurations 2022-11-20 12:29:10 -06:00
Ben MeadorsandGitHub aa553ea5d8 Merge pull request #1958 from D4rk4/SAST
Implement automatic static code scan with Semgrep & Flawfinder
2022-11-20 11:10:19 -06:00
Thomas Göttgens a00bd59e27 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-20 18:03:18 +01:00
Thomas GöttgensandGitHub f02c6c49ee Merge branch 'master' into bug-1821 2022-11-20 17:26:42 +01:00
Dmitry Galenko e54e37a600 Rename security workflows to sec_* 2022-11-20 16:17:58 +01:00
Dmitry Galenko b95103cab0 Run flawfinder only on push to specific branch 2022-11-20 16:16:04 +01:00
Dmitry Galenko 9b43e49116 Ignore upstream defect 2022-11-20 16:14:32 +01:00
Ben MeadorsandGitHub 457538c8f6 Merge branch 'master' into SAST 2022-11-20 08:13:47 -06:00
Ben MeadorsandGitHub da48f0704b Merge pull request #1960 from D4rk4/SEC
Security fixes
2022-11-20 08:05:04 -06:00
Dmitry GalenkoandGitHub cf8d953bba Merge branch 'master' into SAST 2022-11-20 14:41:51 +01:00
Dmitry GalenkoandGitHub 5f2b859e38 Merge branch 'master' into SEC 2022-11-20 14:37:46 +01:00
Dmitry Galenko 3187b5abda Revert "Missed STDC_LIB_EXT1"
This reverts commit 4392df0676.
2022-11-20 14:29:05 +01:00
Ben Meadors ce16b50d5f Change docker push critera 2022-11-20 07:05:49 -06:00
Dmitry Galenko 4295720770 Add flawfinder for cover C++ codebase 2022-11-20 13:50:38 +01:00
Dmitry Galenko 4392df0676 Missed STDC_LIB_EXT1 2022-11-20 13:27:55 +01:00
Dmitry Galenko 4ec3b025f0 look like https://sg.run/jkdn not hit us 2022-11-20 13:19:47 +01:00
Dmitry Galenko f4704181e9 Fix potential buffer clean issue 2022-11-20 13:12:51 +01:00
Dmitry Galenko 0e04bea39e Fix for Dockerfile-related security defects and rewrite to follow best practices 2022-11-20 12:57:55 +01:00
Thomas Göttgens b54044fd00 if we have a filename, 'address' is the line number. Don't print that in hex ;-)
If it's really a hex address, prefix it with 0x
2022-11-20 12:00:57 +01:00
Dmitry Galenko 08c69c09c8 Fix branch name 2022-11-20 11:58:15 +01:00
Dmitry Galenko 681ea420c1 Implement automatic static code scan with Semgrep 2022-11-20 10:53:11 +01:00
Sacha Weatherstone 48ea54748f Fix build instructions link 2022-11-20 06:38:17 +00:00
Ben MeadorsandGitHub 4b7627595a Merge branch 'master' into bug-1821 2022-11-19 20:05:03 -06:00
Ben Meadors 6299e5483b Input boards 2022-11-19 19:39:39 -06:00
Ben Meadors 6118a966a6 Move em up 2022-11-19 19:30:19 -06:00
Ben Meadors 1fac9ee1f2 More reusable workflows 2022-11-19 19:23:35 -06:00
Ben Meadors 1e06b2d51e I think understand now 2022-11-19 18:57:06 -06:00
Ben Meadors f3a6ed9d61 Rename to action 2022-11-19 18:53:42 -06:00
Ben Meadors f71cbb6f6e Move to actions folder 2022-11-19 18:50:50 -06:00
Ben Meadors 23ea22c741 Checkout master first 2022-11-19 18:42:27 -06:00
Ben Meadors 8be65bb0ab Move the checkout 2022-11-19 18:40:17 -06:00
Ben Meadors 57e2e75d24 Add shells 2022-11-19 18:35:00 -06:00
Ben Meadors 29cd7568f5 Try a composite action instead 2022-11-19 18:30:43 -06:00
Ben Meadors 581076a5a1 Now let's take it further 2022-11-19 18:07:07 -06:00
Ben Meadors 27401bb9b8 Remove runs-on 2022-11-19 17:48:01 -06:00
Ben Meadors 10837ce549 With block 2022-11-19 17:45:33 -06:00
Ben Meadors 1dcd411d00 Fix indention 2022-11-19 17:43:18 -06:00
Ben Meadors 0533fd9227 Uses 2022-11-19 17:35:47 -06:00
Ben Meadors 5ce7ffc888 Show contents 2022-11-19 16:51:33 -06:00
Ben Meadors 9e914de995 Try going up a dir 2022-11-19 16:46:36 -06:00
Ben Meadors 0cc653263e Indent 2022-11-19 16:39:05 -06:00
Ben Meadors d2d2f278cf Apparently checkout before using a local workflow 2022-11-19 16:25:00 -06:00
Ben Meadors eb34a95ab7 Why fight me? 2022-11-19 16:23:09 -06:00
Ben Meadors eb1f6c0de6 Root path? 2022-11-19 16:13:26 -06:00
Ben Meadors 8de79e8fb6 Path 2022-11-19 16:08:11 -06:00
Ben Meadors fe00f0c369 Uses block 2022-11-19 16:06:59 -06:00
Ben MeadorsandGitHub f9ee8583b0 Merge pull request #1956 from meshtastic/docker-hub-and-ci-overhaul
Docker hub and ci overhaul
2022-11-19 16:04:21 -06:00
Ben Meadors a4d5f8c717 Reusable workflow 2022-11-19 16:03:55 -06:00
Ben Meadors 35c50f074b Build and push to docker hub 2022-11-19 15:44:59 -06:00
Ben Meadors dcfa226509 Remove extra git submodule update 2022-11-19 15:42:08 -06:00
Thomas GöttgensandGitHub a9fde30a58 Merge branch 'master' into bug-1821 2022-11-19 10:00:41 +01:00
Thomas Göttgens 7ceb52103e Cleaning up GPS Code a bit 2022-11-19 09:58:29 +01:00
Thomas Göttgens 8da5d37888 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-19 09:56:11 +01:00
Thomas Göttgens 95cc328b5c That wifi update didn't go down well. 2022-11-18 19:37:56 +01:00
Thomas Göttgens 990c0119a7 fix portduino - again 2022-11-18 18:22:35 +01:00
Thomas Göttgens 144afee29e trigger wifi reconnect by mqtt or ntp failures. 2022-11-18 18:03:30 +01:00
Thomas Göttgens 9665c08b59 MQTT: don't subscribe to JSON topic if JSON is disabled in config. 2022-11-17 21:14:49 +01:00
Ben MeadorsandGitHub 20ee6a509d Remove more targets from checks 2022-11-17 13:35:16 -06:00
Thomas Göttgens 70d44b8838 next try. 2022-11-17 20:19:11 +01:00
Thomas Göttgens b260c8b058 tryfix wifi issues 2022-11-17 20:09:08 +01:00
Thomas Göttgens 5991b59ba3 try fixing Wifi reconnects - don't manually reconnect and set auto-reconnect at the same time. 2022-11-17 17:48:46 +01:00
Ben Meadors bc1fed0fb4 Merge branch 'bug-1821' of https://github.com/meshtastic/firmware into bug-1821 2022-11-15 16:23:08 -06:00
Ben Meadors b23c364fc0 Test it this way 2022-11-15 16:22:53 -06:00
Thomas Göttgens 28b428c5a0 potential fix for 13300 2022-11-15 22:54:31 +01:00
Thomas Göttgens 5bfc58ed64 testing issues with RAK11200/13300 2022-11-15 21:55:27 +01:00
Thomas Göttgens e9a34fca7b Portduino Radiolib upstream 2022-11-15 17:01:15 +01:00
Thomas GöttgensandGitHub 6ce9734ddd Merge pull request #1944 from meshtastic/master
Master Merge
2022-11-15 11:06:14 +01:00
Thomas Göttgens d42797ffeb fix Portduino Step 1 2022-11-15 10:49:55 +01:00
Thomas Göttgens b5ebfa9cc3 Portduino WIP 2022-11-15 07:59:01 +01:00
Thomas Göttgens 79eff42c3c Fix and Break radiolib 2022-11-14 10:53:16 +01:00
Thomas GöttgensandGitHub 7022807fa3 Merge pull request #1943 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-14 10:01:13 +01:00
Thomas Göttgens 50a301899e start to sort radiolib out. If we have macros, use them! :-)
Also we need Godmode for the SX1280 for now, hopefully can revert to more sane operation.
2022-11-14 09:49:50 +01:00
thebenternandGitHub 351db5f6ef [create-pull-request] automated change 2022-11-14 08:40:21 +00:00
Ben Meadors 09fe616ac5 This number is a joke 2022-11-13 18:16:40 -06:00
Ben MeadorsandGitHub 2d7ff39ecc Merge pull request #1942 from meshtastic/develop
Develop to Master
2022-11-13 15:42:41 -06:00
Ben MeadorsandGitHub 6e856efd0e Merge branch 'master' into develop 2022-11-13 14:45:48 -06:00
Ben Meadors c3c899bc85 Upstream protos for resolving conflicts 2022-11-13 14:45:26 -06:00
Ben Meadors 916f3cac41 Sync protos 2022-11-13 14:40:18 -06:00
Ben Meadors 9b5f358823 Add new heltec targets 2022-11-13 14:30:32 -06:00
Ben MeadorsandGitHub 22119c272d Merge pull request #1941 from meshtastic/add-heltec-wsl
Add Heltec Wireless Stick Lite V3 support
2022-11-13 14:09:50 -06:00
Ben Meadors 8d4c526d16 Add Heltec Wireless Stick Lite V3 support 2022-11-13 13:28:02 -06:00
Ben MeadorsandGitHub 83aebb7a00 Merge pull request #1940 from meshtastic/add-heltec-v3
Added support for Heltec V3
2022-11-13 10:31:37 -06:00
Ben Meadors 33cd5ce6c1 Cleanup 2022-11-13 09:48:38 -06:00
Ben Meadors f22c2e768e Reorder 2022-11-13 09:47:55 -06:00
Ben Meadors 3d7dea0606 Added support for Heltec V3 2022-11-13 09:45:16 -06:00
Thomas Göttgens 263a421c4a fix pico build 2022-11-13 15:35:18 +01:00
Thomas Göttgens 401b92bdbb reverted too much 2022-11-13 15:28:43 +01:00
Thomas Göttgens 6a696af8f6 Revert "remember which devices were scanned on which bus and set them accordingly." - this is not working at all. 2022-11-13 14:56:52 +01:00
Thomas Göttgens 037d6c253b fix portduino 2022-11-13 11:58:02 +01:00
Thomas Göttgens b6de79b21a fix build for RP2040 which actually has 2 TwoWire interfaces. 2022-11-12 17:50:33 +01:00
Thomas Göttgens 52cf530356 missing 2 sensor changes 2022-11-12 17:18:17 +01:00
Thomas Göttgens 861ded37db remember which devices were scanned on which bus and set them accordingly. 2022-11-12 17:12:40 +01:00
Thomas Göttgens 7a67388a97 Merge branch 'master' of github.com:meshtastic/firmware into develop 2022-11-12 14:34:51 +01:00
Thomas GöttgensandGitHub 4f60fad3f6 Merge pull request #1936 from lewisxhe/master
Update tbeam-s3 variant
2022-11-12 14:12:11 +01:00
lewis heandGitHub 67efd8172a Merge branch 'master' into master 2022-11-12 20:11:52 +08:00
lewis 60fdf9fcb2 Place PMU initialization before scanI2Cdevice 2022-11-12 20:09:25 +08:00
Thomas GöttgensandGitHub a606e9b7b5 Merge pull request #1935 from puzzled-pancake/patch-1
Update NZ_865 to 36dBm
2022-11-12 11:55:37 +01:00
Thomas Göttgens 65197a8e48 - Add new Compass Sensor
- speed up I2C Scanning
- make adding sensors less error prone
2022-11-12 11:03:29 +01:00
lewishe 43f769ebac Resolve compilation conflicts 2022-11-12 16:01:30 +08:00
lewishe dff6eeb90e Merge branch 'master' of https://github.com/lewisxhe/Meshtastic-device 2022-11-12 15:16:54 +08:00
lewishe 61ebdb3367 Add SD card initialization 2022-11-12 15:14:13 +08:00
lewishe cd95d0865f Repair the sharing of Wire1 between RTC and PMU in tbeams3 2022-11-12 15:12:53 +08:00
lewishe b68a026627 Update tbeam-s3 variant mapping 2022-11-12 14:39:42 +08:00
lewishe 68ccebafbf Add low-speed crystal initialization for ESP32S3 2022-11-12 14:38:48 +08:00
puzzled-pancakeandGitHub 3737252d39 Update NZ_865 to 36dBm
Updated NZ_865 to 36dBm as per:
https://rrf.rsm.govt.nz/smart-web/smart/page/-smart/domain/licence/LicenceSummary.wdk?id=219752

6dBW = 36dBm/4watt
2022-11-12 17:55:28 +13:00
lewis heandGitHub 888a8d05c4 Merge branch 'meshtastic:master' into master 2022-11-12 09:56:18 +08:00
Thomas Göttgens f25f902c20 max power for the 1280 is +13dBm 2022-11-11 08:59:16 +01:00
Thomas Göttgens a6ea5496b4 Fixed DIO Pin mapping. SX1280 is working 2022-11-10 23:26:31 +01:00
Thomas Göttgens 222424a80c no excuses, this was a SNAFU 2022-11-10 23:06:37 +01:00
Thomas Göttgens 74f31d7d68 Fix SX1280 init 2022-11-10 23:00:01 +01:00
Thomas Göttgens 5c59c8d701 GPS Update 2022-11-10 22:21:07 +01:00
Ben Meadors 30a87e3145 Switch to a smaller sample of devices for cppcheck 2022-11-10 07:26:28 -06:00
Thomas Göttgens 87f7a60f71 fix #1931 coordinates inserted into NMES stream 2022-11-10 13:51:22 +01:00
Thomas Göttgens f7d8885257 update coordinates for DMS display too 2022-11-10 13:50:38 +01:00
Thomas GöttgensandGitHub 77410dc3c3 Merge pull request #1932 from meshtastic/master
Master Merge
2022-11-10 11:02:38 +01:00
Thomas Göttgens d1acf02ee8 Master Merge 2022-11-10 11:01:36 +01:00
Thomas Göttgens de0954f307 switch to upstream Ethernet lib 2022-11-10 09:35:56 +01:00
Ben MeadorsandGitHub 7da1e5c3e8 Merge pull request #1930 from meshtastic/bug-1928
fix #1928 valid NMEA sentences
2022-11-09 18:06:01 -06:00
Thomas GöttgensandGitHub 3c11e87197 Merge pull request #1927 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-09 23:43:35 +01:00
Thomas Göttgens b004706eff fix #1928 valid NMEA sentences 2022-11-09 23:42:52 +01:00
thebenternandGitHub 2247e71a52 [create-pull-request] automated change 2022-11-09 21:39:27 +00:00
Ben MeadorsandGitHub 8146e84200 Merge pull request #1926 from GUVWAF/master
Set preamble length back to 32
2022-11-09 14:29:54 -06:00
GUVWAF 1213ec2d57 Set preamble length back to 32 2022-11-09 21:21:50 +01:00
Thomas GöttgensandGitHub 30b6cca366 Merge pull request #1925 from meshtastic/bug-1914
fix #1914 and clean up rangetest a bit
2022-11-09 15:14:47 +01:00
Thomas Göttgens 4dd140a887 fix #1914 and clean up rangetest a bit 2022-11-09 15:12:57 +01:00
Ben MeadorsandThomas Göttgens 87c555bde3 Changed retention policy 2022-11-09 14:48:53 +01:00
Ben MeadorsandThomas Göttgens c4951b1236 Build cleanup and update deprecated platformio cmd 2022-11-09 14:48:53 +01:00
thebenternandThomas Göttgens 0249eb1307 [create-pull-request] automated change 2022-11-09 14:48:53 +01:00
Ben MeadorsandGitHub f0279e7f92 Merge pull request #1923 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-09 07:33:27 -06:00
Ben MeadorsandGitHub 1a50181ace Merge branch 'master' into create-pull-request/patch 2022-11-09 07:33:02 -06:00
Ben Meadors d77bc239c1 Changed retention policy 2022-11-09 07:20:53 -06:00
Ben Meadors cb283f4c57 Build cleanup and update deprecated platformio cmd 2022-11-09 07:14:08 -06:00
Thomas Göttgens 803858ab0a change default pins for codec2 to work on TLORA 2.1-1.8 2022-11-09 11:50:13 +01:00
thebenternandGitHub 728fc8cbad [create-pull-request] automated change 2022-11-08 22:51:44 +00:00
Thomas GöttgensandGitHub ad05b91f89 Merge pull request #1922 from meshtastic/develop
fix #1916
2022-11-08 23:15:04 +01:00
Thomas GöttgensandGitHub 671e6cde44 Merge branch 'master' into develop 2022-11-08 22:33:38 +01:00
Thomas Göttgens 7a3ad0afba fix #1916 2022-11-08 22:32:53 +01:00
Ben MeadorsandGitHub d9f1704e36 Merge pull request #1921 from meshtastic/update-phoneapi
Updated admin module and protobufs
2022-11-08 15:32:20 -06:00
Ben Meadors 32223a818c Updated admin module and protobufs 2022-11-08 15:04:24 -06:00
Thomas GöttgensandGitHub 31e13d4de3 Merge pull request #1920 from meshtastic/develop
rename wifi_mode to eth_mode
2022-11-08 21:55:06 +01:00
Thomas GöttgensandGitHub 815bd6321b Merge branch 'master' into develop 2022-11-08 21:54:38 +01:00
Thomas Göttgens 9f9bd40343 rename wifi_mode to eth_mode 2022-11-08 21:53:44 +01:00
Ben MeadorsandGitHub 2331226bb6 Bump version 2022-11-08 07:27:48 -06:00
Ben MeadorsandGitHub 80ff118f0f Merge pull request #1918 from meshtastic/develop
Develop to master
2022-11-08 07:26:14 -06:00
Ben MeadorsandGitHub d6eeda7136 Merge pull request #1917 from meshtastic/master
Master Rollup
2022-11-08 07:25:40 -06:00
Ben MeadorsandGitHub fb92e498f0 Merge pull request #1902 from GUVWAF/develop
Change preambleLength to 8 symbols to reduce airtime
2022-11-08 07:25:02 -06:00
Ben MeadorsandGitHub bf8d8886fd Merge branch 'develop' into master 2022-11-08 07:20:29 -06:00
Ben MeadorsandGitHub a695726f2a Merge pull request #1912 from meshtastic/docker-compose
Added docker compose multiple nodes example
2022-11-08 07:12:36 -06:00
Ben MeadorsandGitHub 6dc4172110 Merge branch 'master' into docker-compose 2022-11-08 07:12:21 -06:00
Thomas Göttgens 25a9ee8eb6 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-08 13:40:07 +01:00
Ben Meadors e122232761 Removed defunct line 2022-11-07 13:29:34 -06:00
Ben Meadors b13eaee6b3 More fun 2022-11-07 13:28:37 -06:00
Ben Meadors f0f5107a5d Added docker compose 4 nodes example 2022-11-06 19:22:20 -06:00
Ben Meadors 0832cc50a8 Add a docker-compose 2022-11-06 13:19:49 -06:00
Thomas GöttgensandGitHub 962a3d0c55 Merge pull request #1911 from meshtastic/caveman99-patch-1
Fix assert
2022-11-06 19:06:26 +01:00
Thomas GöttgensandGitHub 6934e0bce7 Fix assert 2022-11-06 18:36:17 +01:00
Ben MeadorsandThomas Göttgens 3492d64177 Alpine 2022-11-06 18:22:52 +01:00
Thomas Göttgens 057109dcac Reduce retention to 30 days. 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens 12fa08007d Docker is back 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens 3562d34555 Remove flag 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens 3ca6f645d4 Portduino build flags 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens 6694d31d07 Somehow I still missed one :-| 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens d15edf1955 Update NMEAWPL.h 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens e1ce037550 Update NMEAWPL.cpp 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens f9c376a524 Update NMEAWPL.cpp 2022-11-06 18:22:52 +01:00
Ben MeadorsandThomas Göttgens 26a907444c Fix for alpine linux builds 2022-11-06 18:22:52 +01:00
Ben MeadorsandGitHub 5c214bf4d8 Merge pull request #1908 from meshtastic/docker-returns
Docker is back
2022-11-06 09:31:24 -06:00
Ben MeadorsandGitHub 5151a5641e Merge branch 'master' into docker-returns 2022-11-06 09:31:02 -06:00
Ben MeadorsandGitHub 9513209b70 Alpine 2022-11-06 09:30:46 -06:00
Thomas GöttgensandGitHub f1416ac9f7 Reduce retention to 30 days. 2022-11-06 14:49:02 +01:00
Thomas Göttgens 631db56a44 Next try, plus change cppcheck defines back. 2022-11-06 14:32:02 +01:00
Thomas Göttgens 7b378d36cc try to make cppcheck happy again 2022-11-06 13:29:01 +01:00
Thomas Göttgens 8ab269e1b3 revert BME680 to default settings, they are working good. Our init was just replicating what's in the lib anyway. 2022-11-06 10:52:54 +01:00
Thomas Göttgens 7652253b8d optimize BME680 usage 2022-11-06 10:37:14 +01:00
Ben MeadorsandGitHub 9805319940 Docker is back 2022-11-05 21:08:29 -05:00
Ben MeadorsandGitHub e1e607cba3 Remove flag 2022-11-05 19:09:04 -05:00
Ben MeadorsandGitHub d74bcd3583 Portduino build flags 2022-11-05 18:21:35 -05:00
Ben MeadorsandGitHub 9c0483975c Somehow I still missed one :-| 2022-11-05 15:34:54 -05:00
Ben MeadorsandGitHub 2fb85dc129 Merge pull request #1906 from meshtastic/thebentern-patch-1
Fix for alpine linux builds
2022-11-05 15:30:10 -05:00
Ben MeadorsandGitHub d641adc0fc Update NMEAWPL.h 2022-11-05 15:20:09 -05:00
Ben MeadorsandGitHub a7a020f431 Update NMEAWPL.cpp 2022-11-05 15:14:08 -05:00
Ben MeadorsandGitHub a08ac5a47e Update NMEAWPL.cpp 2022-11-05 15:11:11 -05:00
Ben MeadorsandGitHub 30e5706eaa Fix for alpine linux builds 2022-11-05 15:10:43 -05:00
Thomas Göttgens 16444c190d Ignore Band power limits for licensed HAMs 2022-11-05 20:13:47 +01:00
Thomas Göttgens 3d9633a56c Different Sensor access, should prevent overheating/wrong measurements. 2022-11-05 20:12:41 +01:00
GUVWAFandGitHub c0e630522c Merge branch 'meshtastic:develop' into develop 2022-11-05 19:09:36 +01:00
Ben MeadorsandGitHub 9422d31f55 Merge pull request #1905 from meshtastic/trying-again
Trying again
2022-11-05 09:35:51 -05:00
Ben Meadors 087c7c19af Update protos 2022-11-05 09:34:33 -05:00
Ben Meadors 3476b35fca Merge remote-tracking branch 'origin/master' into trying-again 2022-11-05 09:33:39 -05:00
950d5defda Master to develop (resolves conflicts) (#1903)
* Rearranging deck chairs, 900M22S working, 30S not

* We do have wire, just not where it's expected

* Put more of the module specific pins in their blocks

* tryfix compile with NO_SCREEN

* Portduino only: don't continue to try rebooting (#1887)

Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>

* Support for TLORA 2.1-1.8

* Don't allow arbitrary channel name for admin (#1886)

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>

* Experimental DIY nrf52840 feather support (#1884)

* Experimental DIY nrf52840 feather support

* Fix target

* sx1262 wiring

* Remove lib

* Don't consider Response as ACK for FloodingRouter (#1885)

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>

* Fix feather diy (#1892)

* Fix variant

* Fix feather diy target

* [modules][external notifications] allow select channel to listen to

* Fix feather diy pin mapping (#1894)

Thanks to @markbirss

* [create-pull-request] automated change

* Override Screen Autodtect

* Maybe fix crash of this board.

* Fixes reset loop with new espressif32 platform on tlora-v2

 Sending a pulse to the OLED_RESET Pin 16 results in a reset loop using recent version of the espressif32 platform.

* Experiment with self hosted action runner

* Fix MQTT on ETH

* revert the tryfix

* Cheating

* Cleanup artifacts older than 1 month

* Update cleanup_artifacts.yml

* Update cleanup_artifacts.yml

* Update cleanup_artifacts.yml

* Delete cleanup_artifacts.yml

* fix: use RF95_IRQ for wakeup source in doLightSleep (#1899)

Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>

* Update protos

* Update protos

Co-authored-by: code8buster <communismisgreat@national.shitposting.agency>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
Co-authored-by: GUVWAF <78759985+GUVWAF@users.noreply.github.com>
Co-authored-by: Mykhailo Lesyk <m@lesyk.org>
Co-authored-by: Mykhailo Lesyk <lesykm@users.noreply.github.com>
Co-authored-by: caveman99 <caveman99@users.noreply.github.com>
Co-authored-by: he-leon <he-leon@users.noreply.github.com>
Co-authored-by: Lars Weber <weber@weber-software.com>
2022-11-05 09:28:41 -05:00
Ben MeadorsandGitHub c6f060a24f Add develop to CI 2022-11-05 09:21:51 -05:00
Thomas Göttgens 1716c4d6f9 Allow static IP for WLAN
and portentially fix reconnect issues
2022-11-05 15:02:06 +01:00
Ben Meadors cda7a60734 Update protos 2022-11-05 08:43:44 -05:00
ed26ab801c fix: use RF95_IRQ for wakeup source in doLightSleep (#1899)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-11-05 08:37:00 -05:00
Thomas Göttgens 8874a6e488 update protos 2022-11-05 14:18:57 +01:00
Thomas Göttgens 657ae44b6f Merge branch 'master' of github.com:meshtastic/firmware 2022-11-05 14:11:19 +01:00
Ben MeadorsandGitHub 01381057c5 Delete cleanup_artifacts.yml 2022-11-05 08:06:28 -05:00
Ben MeadorsandGitHub 3dc6ed5672 Update cleanup_artifacts.yml 2022-11-05 06:57:47 -05:00
Ben MeadorsandGitHub 764b48e04a Update cleanup_artifacts.yml 2022-11-05 06:47:00 -05:00
Ben MeadorsandGitHub 4c931967c7 Update cleanup_artifacts.yml 2022-11-05 06:44:08 -05:00
Ben MeadorsandGitHub a547a791ba Cleanup artifacts older than 1 month 2022-11-05 06:42:53 -05:00
GUVWAF 176072801b Change preambleLength to 8 symbols to reduce airtime 2022-11-05 09:58:10 +01:00
Thomas GöttgensandGitHub b941c51cf7 Merge pull request #1900 from meshtastic/mqtt-eth
Mqtt eth
2022-11-04 23:13:18 +01:00
Thomas GöttgensandGitHub 8a9fd6846e Merge branch 'master' into mqtt-eth 2022-11-04 22:44:42 +01:00
Ben MeadorsandGitHub a49355133c Cheating 2022-11-04 14:23:22 -05:00
Thomas Göttgens 09cdc20440 manual merge of changes from Master 2022-11-04 19:56:44 +01:00
Thomas Göttgens 1c0dfe47c8 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-04 19:51:22 +01:00
Thomas GöttgensandGitHub 66623693eb Merge branch 'master' into mqtt-eth 2022-11-04 19:48:57 +01:00
Thomas GöttgensandGitHub 7c692444e5 revert the tryfix 2022-11-04 19:48:28 +01:00
Thomas Göttgens 4ccb4393c5 Fix MQTT on ETH 2022-11-04 19:44:45 +01:00
Ben MeadorsandGitHub b2e540b114 Experiment with self hosted action runner 2022-11-04 13:43:16 -05:00
Thomas Göttgens a5d1165c54 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-04 19:34:35 +01:00
Thomas GöttgensandGitHub aa321e06dd Merge pull request #1898 from he-leon/patch-1
Fixes reset loop with new espressif32 platform on tlora-v2
2022-11-04 19:26:16 +01:00
he-leonandGitHub 8b84ac8a6c Fixes reset loop with new espressif32 platform on tlora-v2
Sending a pulse to the OLED_RESET Pin 16 results in a reset loop using recent version of the espressif32 platform.
2022-11-04 16:48:49 +01:00
Thomas GöttgensandGitHub 6c07fbfc12 Merge pull request #1896 from meshtastic/oled-config
Oled config
2022-11-03 23:05:09 +01:00
Thomas Göttgens 04a478a5ad Maybe fix crash of this board. 2022-11-03 22:50:54 +01:00
Thomas Göttgens acfa186d44 Override Screen Autodtect 2022-11-03 22:44:22 +01:00
Thomas Göttgens 3db504c470 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-03 22:38:05 +01:00
Thomas GöttgensandGitHub 3e5955be44 Merge pull request #1895 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-11-03 22:36:16 +01:00
caveman99andGitHub f1afbf2c0f [create-pull-request] automated change 2022-11-03 21:35:06 +00:00
Thomas Göttgens 20c559382d Merge branch 'master' of github.com:meshtastic/firmware 2022-11-03 22:32:27 +01:00
Thomas GöttgensandGitHub a3f1c02347 Merge pull request #1882 from lesykm/ext_notification_channel
[modules][external notifications] allow select channel to listen to
2022-11-03 22:21:43 +01:00
Ben MeadorsandGitHub f5945d429e Merge branch 'master' into ext_notification_channel 2022-11-03 14:29:15 -05:00
Ben MeadorsandGitHub a3eced53bb Fix feather diy pin mapping (#1894)
Thanks to @markbirss
2022-11-03 14:28:49 -05:00
Thomas Göttgens 20686cc66a Show boot logo / OEM Logo longer - 5 seconds each now. 2022-11-03 09:46:32 +01:00
Thomas Göttgens 5608fa32f7 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-03 08:29:28 +01:00
Mykhailo LesykandGitHub a0c5defda6 Merge branch 'master' into ext_notification_channel 2022-11-02 20:34:23 -07:00
Mykhailo Lesyk 25a3a09d5f [modules][external notifications] allow select channel to listen to 2022-11-02 20:31:28 -07:00
Ben MeadorsandGitHub 593301146e Fix feather diy (#1892)
* Fix variant

* Fix feather diy target
2022-11-02 15:57:47 -05:00
5715ddc361 Don't consider Response as ACK for FloodingRouter (#1885)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-11-02 14:32:18 -05:00
Thomas Göttgens 09ddde177c codec2 Audio Support for SX1280 (untested) 2022-11-02 18:23:41 +01:00
Ben MeadorsandThomas Göttgens ef18b173cd Experimental DIY nrf52840 feather support (#1884)
* Experimental DIY nrf52840 feather support

* Fix target

* sx1262 wiring

* Remove lib
2022-11-02 18:19:09 +01:00
ac4e88e0d2 Don't allow arbitrary channel name for admin (#1886)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-11-02 18:19:09 +01:00
Thomas Göttgens 3e82cd7dd4 Support for TLORA 2.1-1.8 2022-11-02 18:19:09 +01:00
GUVWAFandThomas Göttgens b1f2025558 Portduino only: don't continue to try rebooting (#1887)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-11-02 18:19:09 +01:00
Thomas Göttgens 57ca5fea81 tryfix compile with NO_SCREEN 2022-11-02 18:19:09 +01:00
code8busterandThomas Göttgens 0ce018cf97 Put more of the module specific pins in their blocks 2022-11-02 18:19:09 +01:00
code8busterandThomas Göttgens 15a8710e69 We do have wire, just not where it's expected 2022-11-02 18:19:09 +01:00
code8busterandThomas Göttgens cae75dcb6d Rearranging deck chairs, 900M22S working, 30S not 2022-11-02 18:19:09 +01:00
Thomas GöttgensandGitHub d5e2b70b71 Merge pull request #1888 from meshtastic/TLORA-18
Support for TLORA 2.1-1.8
2022-11-02 18:16:44 +01:00
Thomas Göttgens 05b9fd04c6 switch submodule branch to develop 2022-11-02 15:08:49 +01:00
Thomas GöttgensandGitHub 4650989774 Merge branch 'master' into TLORA-18 2022-11-02 15:01:40 +01:00
Thomas Göttgens bcc77efb88 Merge branch 'master' of github.com:meshtastic/firmware 2022-11-02 14:13:04 +01:00
Ben MeadorsandGitHub 39c1637030 Experimental DIY nrf52840 feather support (#1884)
* Experimental DIY nrf52840 feather support

* Fix target

* sx1262 wiring

* Remove lib
2022-11-02 07:48:14 -05:00
Ben MeadorsandGitHub 6d3028f213 Merge branch 'master' into TLORA-18 2022-11-02 07:20:39 -05:00
b2969b2faf Don't allow arbitrary channel name for admin (#1886)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-11-02 07:18:15 -05:00
Thomas GöttgensandGitHub d07350e4a4 Merge branch 'master' into TLORA-18 2022-11-02 13:14:51 +01:00
Thomas Göttgens 12df55c3d4 Support for TLORA 2.1-1.8 2022-11-02 13:12:15 +01:00
85b541bfd9 Portduino only: don't continue to try rebooting (#1887)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-11-02 06:58:14 -05:00
Thomas GöttgensandGitHub a9c6d6a80c Merge pull request #1878 from code8buster/master
Making meshtastic-dr-dev E22-900M22S/M30S work alternately
2022-11-02 10:34:08 +01:00
Thomas GöttgensandGitHub 32ad8aaa4e tryfix compile with NO_SCREEN 2022-11-02 10:17:59 +01:00
code8buster 3d8e6aead2 Put more of the module specific pins in their blocks 2022-10-31 21:54:05 -04:00
code8busterandGitHub 2747600a3a Merge branch 'meshtastic:master' into master 2022-11-01 01:35:34 +00:00
Thomas GöttgensandGitHub b7ef63230b new location of ota firmware 2022-10-31 14:50:31 +01:00
Ben MeadorsandGitHub b4d6c8f37b Update verbiage 2022-10-31 08:32:21 -05:00
Ben MeadorsandGitHub 6a907348b4 Merge branch 'master' into master 2022-10-31 08:17:37 -05:00
Ben Meadors 18ab8749ff Update protobuf ref 2022-10-31 08:09:22 -05:00
Ben MeadorsandGitHub a1ed5cdffc 2.0 (To be merged Nov 1) (#1870)
* 2.0

* Catch the right version of the common files
2022-10-31 07:51:44 -05:00
Ben MeadorsandGitHub 760d463bf5 Merge branch 'master' into master 2022-10-31 06:12:16 -05:00
Sacha WeatherstoneandGitHub 5ed2a4e8bb Merge pull request #1879 from meshtastic/update-repo-links
Update links
2022-10-31 20:09:37 +11:00
Sacha Weatherstone 60e95ef3bd Fix typo 2022-10-31 18:54:47 +10:00
Sacha Weatherstone 5b648be2a5 More renaming 2022-10-31 18:47:10 +10:00
Sacha Weatherstone 0149171e1a update repobeats url 2022-10-31 18:21:10 +10:00
Sacha Weatherstone b24caa1e06 Update links 2022-10-31 17:32:38 +10:00
code8buster 8fa71afb72 We do have wire, just not where it's expected 2022-10-30 22:30:33 -04:00
code8buster 309a3d5396 Rearranging deck chairs, 900M22S working, 30S not 2022-10-30 22:28:25 -04:00
Ben MeadorsandGitHub afafb3ba32 Fixing a number of T-Beam poweroff display issues (#1876) 2022-10-30 20:40:30 -05:00
Ben MeadorsandGitHub 311835a231 Implement extended device metadata (#1874)
* Implement extended device metadata

* HAS_BLUETOOTH should be global
2022-10-30 10:02:11 -05:00
code8busterandGitHub 1f9db0a8fe Disaster.radio dev board support update (#1873)
* Bringing changes from 1.2-legacy over to the new structure in 1.3/2.0

* Add meshtastic-dr-dev to CI artifact workflow
2022-10-29 16:37:27 -05:00
Ben MeadorsandGitHub d6c9327aef Opposite logic for use_preset based channel name (#1871) 2022-10-29 11:40:05 -05:00
Thomas GöttgensandGitHub 0091863888 Merge pull request #1867 from t413/techo-shutdown-backlight
Powers off eink backlights before shutdown
2022-10-28 11:23:05 +02:00
Ben MeadorsandGitHub 051ce5e09f Merge branch 'master' into techo-shutdown-backlight 2022-10-27 20:17:31 -05:00
timo 6146b773cf Better #define guard for PIN_EINK_EN 2022-10-27 17:59:53 -07:00
Thomas GöttgensandGitHub 8a4341fec4 use new lora.use_preset bool (#1868) 2022-10-27 19:15:16 -05:00
Tim O'Brien 154b7d256c Powers off eink backlights before shutdown
- t-echo boards in particular need this
- follows the existing defines structure
2022-10-27 11:03:27 -07:00
Thomas GöttgensandGitHub 548b0d0b53 Merge pull request #1866 from markbirss/master
Enable RAK14000 2.13 inch b/w E-Ink partial update support
2022-10-27 11:36:06 +02:00
Mark Trevor BirssandGitHub e59361425f Merge branch 'master' into master 2022-10-27 09:06:38 +02:00
Thomas GöttgensandGitHub 713e0f4260 Merge pull request #1865 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-27 09:06:22 +02:00
Mark Trevor BirssandGitHub 8a1bf8cd86 RAK14000 2.13" b/w E-Ink partial update support
Changed from GxEPD2_213_B74 (which was not going to give partial update support on this display) to GxEPD2_213_BN - RAK14000 2.13 inch b/w 250x122
2022-10-27 08:59:39 +02:00
Mark Trevor BirssandGitHub f474953b51 RAK14000 2.13 inch b/w E-Ink partial update support
Changed from GxEPD2_213_B74 (which was not going to give partial update support on this display) to GxEPD2_213_BN - RAK14000 2.13 inch b/w 250x122
2022-10-27 08:56:04 +02:00
thebenternandGitHub d5ded53f05 [create-pull-request] automated change 2022-10-26 22:21:43 +00:00
Ben Meadors 82bcd391cd Fix those refs 2022-10-26 16:50:58 -05:00
Thomas GöttgensandGitHub 058689709f Merge pull request #1864 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-26 23:33:49 +02:00
thebenternandGitHub 23c9fa0b56 [create-pull-request] automated change 2022-10-26 21:29:46 +00:00
Thomas GöttgensandGitHub eb29f10634 Merge pull request #1861 from meshtastic/lib-fix
Lib fix + NTP fix
2022-10-26 19:24:20 +02:00
Thomas GöttgensandGitHub d5a9e3114a Update ethClient.cpp 2022-10-26 18:37:51 +02:00
Thomas GöttgensandGitHub 7417729482 debug removed 2022-10-26 18:37:20 +02:00
Thomas GöttgensandGitHub d5c407c098 remove accidental commit 2022-10-26 18:36:41 +02:00
Thomas Göttgens a1256818d9 update library location 2022-10-26 18:25:31 +02:00
Thomas Göttgens 689cec14aa Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-26 18:15:07 +02:00
Thomas GöttgensandGitHub 04225826f6 Bump ConfigDB Version.
this forces a factory reset on upgrade.
2022-10-26 18:12:31 +02:00
Thomas GöttgensandGitHub 86787e60f3 Merge pull request #1860 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-26 17:56:41 +02:00
caveman99andGitHub 0c3ec9254d [create-pull-request] automated change 2022-10-26 15:56:26 +00:00
Thomas GöttgensandGitHub c0770402ce Merge pull request #1855 from meshtastic/remove-softap
Remove Captive Portal and SoftAP Mode
2022-10-26 17:55:45 +02:00
Thomas Göttgens d7c98062ce Merge remote-tracking branch 'remotes/origin/master' into remove-softap 2022-10-26 17:54:21 +02:00
Thomas Göttgens 497c0b7a47 don't rush failed time updates 2022-10-26 17:38:53 +02:00
Thomas GöttgensandGitHub d588dde007 Merge pull request #1842 from meshtastic/RAK13800
Rak13800
2022-10-26 11:33:22 +02:00
Thomas Göttgens 3de0a3adfc Merge branch 'RAK13800' of github.com:meshtastic/Meshtastic-device 2022-10-26 11:10:17 +02:00
Thomas Göttgens b7ebe03ca8 API Server and DHCP Lease Management 2022-10-26 11:09:59 +02:00
Thomas GöttgensandGitHub a7fb88e293 make cppcheck happy about stuff it shouldn't care for 2022-10-26 09:16:54 +02:00
Thomas Göttgens 6e1b1e3ed7 Merge branch 'RAK13800' of github.com:meshtastic/Meshtastic-device 2022-10-26 00:07:33 +02:00
Thomas Göttgens a66538fe55 MQTT is working over ethernet 2022-10-26 00:07:02 +02:00
Ben MeadorsandGitHub b2913be086 Merge branch 'master' into RAK13800 2022-10-25 07:04:46 -05:00
Thomas Göttgens 602e65d898 fix non-ESP32 builds 2022-10-25 12:42:08 +02:00
Thomas Göttgens 338c9c1e0c Remove Captive Portal and SoftAP Mode 2022-10-25 11:53:22 +02:00
Thomas Göttgens 9fac57b713 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-24 23:11:56 +02:00
Ben MeadorsandGitHub 761804b17a Send network ping on triple-click (#1852)
* Send network ping on multi-press

* Refresh myNodeInfo before sending

* Cleanup and screen print

* Update ButtonThread.h
2022-10-24 11:03:54 -05:00
Ben MeadorsandGitHub c47401d729 Remove setting fixed pin on double-click (#1851)
* Remove setting fixed pin on double-click

* Remove disablePin method
2022-10-24 07:16:13 -05:00
Thomas Göttgens aab52f1e8d Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-23 16:41:04 +02:00
Ben MeadorsandGitHub 4d2e44d64b Merge branch 'master' into RAK13800 2022-10-22 19:56:12 -05:00
41267a42f7 [rak4630] enable 3.3v periphery before scan for i2c devices (#1847)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-10-22 19:55:34 -05:00
Ben MeadorsandGitHub 568434d0fa Use preset wiring (#1845)
* When we init default, set use_preset to true

* Only use modem_preset when we use_preset

* When we init default, set use_preset to true (#1843) (#1844)
2022-10-22 18:51:22 -05:00
Ben MeadorsandGitHub 2c1bbf1ac6 When we init default, set use_preset to true (#1843) 2022-10-22 15:42:21 -05:00
Thomas Göttgens 1e97dcbb4c Portduino is always special. 2022-10-22 16:53:57 +02:00
Thomas Göttgens 103c82bc2c only build on vanilla RAK4631 for now. 2022-10-22 16:42:36 +02:00
Thomas Göttgens f3fee5f4fb first murmurs of ethernet support 2022-10-22 16:29:50 +02:00
Thomas Göttgens 564feadc0d Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-22 16:28:57 +02:00
Thomas GöttgensandGitHub f05e0f3a81 Merge pull request #1841 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-22 16:20:57 +02:00
caveman99andGitHub cb26bc3871 [create-pull-request] automated change 2022-10-22 14:18:18 +00:00
Thomas GöttgensandGitHub f6251eef27 Merge pull request #1840 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-22 16:17:46 +02:00
thebenternandGitHub a9d6ef5990 [create-pull-request] automated change 2022-10-22 13:28:36 +00:00
Thomas Göttgens 60da55d6dd Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-22 14:25:43 +02:00
Thomas GöttgensandGitHub 05147c016c Merge pull request #1839 from meshtastic/pwm-notify
use PWM buzzer on notification module.
2022-10-22 14:25:32 +02:00
Thomas Göttgens f7655f3abe fix compiler warning 2022-10-22 14:18:47 +02:00
Thomas Göttgens 62b3509009 missed one 2022-10-22 14:13:45 +02:00
Thomas Göttgens d817889255 don't depend on EXT_NOTIFY_OUT being defined. 2022-10-22 13:45:43 +02:00
Thomas Göttgens d4ddcdd91e use PWM buzzer on notification module. To activate set moduleConfig.external_notification.output equal to the PIN_BUZZER. If another value is set, the traditional digital mode is used 2022-10-22 13:35:34 +02:00
Thomas GöttgensandGitHub 0bda4c2f76 Merge pull request #1838 from meshtastic/filebrowser-fix
fix json filebrowser in web server
2022-10-22 12:35:31 +02:00
lewis heandGitHub da2279c295 Merge branch 'meshtastic:master' into master 2022-10-22 18:22:12 +08:00
Thomas Göttgens be8da851a6 fix json filebrowser in web server 2022-10-22 11:55:01 +02:00
Thomas GöttgensandGitHub d4459a48b9 Merge pull request #1831 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-21 09:43:30 +02:00
thebenternandGitHub 197bd2c3e1 [create-pull-request] automated change 2022-10-20 22:04:56 +00:00
Ben MeadorsandGitHub d4ea9568ac Save devicestate (nodedb) on position config change (#1829) 2022-10-20 13:14:53 -05:00
Ben MeadorsandGitHub 97968213ff Factory reset should include modules and channels (#1828) 2022-10-20 07:51:52 -05:00
Thomas GöttgensandGitHub 995885962d Merge pull request #1826 from meshtastic/oem-proto
wire in OEM.proto keystore
2022-10-20 09:10:01 +02:00
Ben MeadorsandGitHub ddc1928bbb Merge branch 'master' into oem-proto 2022-10-19 19:22:35 -05:00
Ben MeadorsandGitHub 056a93f0c9 Consolidate reboots (#1827) 2022-10-19 19:19:04 -05:00
Ben Meadors 3d9845ff6d Update checkout version and release string 2022-10-19 11:43:24 -05:00
Ben Meadors b615463981 Update download-artifiact version 2022-10-19 11:35:25 -05:00
Ben Meadors d3540e82ff I think these tokens are extra 2022-10-19 10:44:09 -05:00
Ben Meadors 15ec8ba6a3 Whoops 2022-10-19 08:58:14 -05:00
Ben Meadors db12eab083 Update setup-python 2022-10-19 08:51:00 -05:00
Thomas GöttgensandGitHub 7d8c77a4b2 Merge branch 'master' into oem-proto 2022-10-19 15:42:21 +02:00
Thomas Göttgens 7c8c479b96 wire in OEM.proto keystore 2022-10-19 15:39:06 +02:00
Ben MeadorsandGitHub e29ae1cc91 Update upload-artifact version 2022-10-19 08:11:28 -05:00
Ben Meadors 089dd5b4d7 Update github cache action version 2022-10-19 07:38:44 -05:00
Ben Meadors 06285b599c Update deprecated ::set-output commands 2022-10-19 07:35:16 -05:00
Thomas GöttgensandGitHub 1b6395b4e4 Merge pull request #1825 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-19 13:45:12 +02:00
caveman99andGitHub 2236f74a55 [create-pull-request] automated change 2022-10-19 11:44:12 +00:00
Thomas GöttgensandGitHub 43c9ab1faa Merge pull request #1824 from meshtastic/caveman99-patch1
Dont retransmit packets destined for ourselves.
2022-10-19 11:56:44 +02:00
Thomas Göttgens b56f9b3b16 Dont retransmit packets destined for ourselves.
Solves assert failed: virtual ErrorCode Router::send(MeshPacket*) Router.cpp:189 (p->to != nodeDB.getNodeNum())
2022-10-19 11:44:26 +02:00
Thomas GöttgensandGitHub 303396dfc3 Merge pull request #1823 from meshtastic/json-cleanup
Json cleanup
2022-10-19 11:20:24 +02:00
Thomas GöttgensandGitHub 075a53ced0 Update MQTT.cpp 2022-10-19 11:04:13 +02:00
Thomas GöttgensandGitHub 18ccb38824 Update MQTT.cpp 2022-10-19 11:01:23 +02:00
Thomas Göttgens c97831963b just for good measure, correct json type field 2022-10-19 10:58:46 +02:00
Thomas Göttgens 7c3dc076d2 only convert and send JSON topics with type 'sendtext' 2022-10-19 10:54:56 +02:00
Thomas GöttgensandGitHub b859347ecd Merge pull request #1822 from meshtastic/json-cleanup
possible fix for stuck MQTT handler.
2022-10-19 00:02:00 +02:00
Thomas Göttgens ea87193c8f possible fix for stuck MQTT handler. 2022-10-18 21:51:40 +02:00
Thomas GöttgensandGitHub c1381b9ebd Merge pull request #1818 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-18 12:21:02 +02:00
caveman99andGitHub 227cd93e67 [create-pull-request] automated change 2022-10-18 10:20:06 +00:00
Thomas GöttgensandGitHub f68f8e5547 Merge pull request #1817 from meshtastic/json-cleanup
fix JSON red herring error messages and Redirectable Print's new fixed buffer
2022-10-18 11:57:11 +02:00
Thomas GöttgensandGitHub 943e6f02d4 Merge branch 'master' into json-cleanup 2022-10-18 11:18:34 +02:00
Thomas GöttgensandGitHub 01298a7b01 Update RedirectablePrint.cpp 2022-10-18 11:18:12 +02:00
Thomas Göttgens 46aee8274f fix JSON red herring error messages and Redirectable Print's new fixed buffer. 2022-10-18 11:16:21 +02:00
Thomas GöttgensandGitHub f76a2eeb9e Merge pull request #1816 from meshtastic/wifi-disconnect-fix
If wifi credentials ever go stale, dump them.
2022-10-18 11:15:19 +02:00
Thomas Göttgens 3b7c0be842 don't irritate people with non working options 2022-10-18 10:30:50 +02:00
Thomas Göttgens 49378a9145 If wifi credentials ever go stale, dump them.
This solves the dreaded 5 - STA_DISCONNECTED / 2 - AUTH_EXPIRE loops
2022-10-18 10:16:47 +02:00
Thomas Göttgens 139f61d03e Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-17 16:45:28 +02:00
Ben MeadorsandGitHub f10d04591d Don't make a nested json object payload (#1815) 2022-10-17 09:09:28 -05:00
e65d9e8ccd Add support for SX1281 on 2.4 GHz (#1809)
* Add support for SX1281 on 2.4 GHz

* only allow wide BW settings when the right chip is detected

* portduino cannot use this chip yet as it uses an old modified version of radiolib

* missed a spot

* Attempt to supress false positive

* Attempt to supress false positive

* Trying casing from the cpp-check manual

* Trying casing from the cpp-check manual

* Inline suppr should be default but...

* Maybe casting it will make the damn thing shut up

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-10-17 08:33:41 -05:00
Ben MeadorsandGitHub 1fc3c0af70 Update variant.h (#1814) 2022-10-17 08:07:18 -05:00
Thomas Göttgens e4751e34ae missed a spot 2022-10-17 10:34:43 +02:00
Thomas Göttgens e922169e72 Merge branch 'LORA-24' of github.com:meshtastic/Meshtastic-device 2022-10-17 10:32:35 +02:00
Thomas Göttgens 2b851ef6ae Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-17 10:32:05 +02:00
Thomas Göttgens 5f4b93aba2 portduino cannot use this chip yet as it uses an old modified version of radiolib 2022-10-17 10:31:29 +02:00
Thomas GöttgensandGitHub b66d1a5dab Merge branch 'master' into LORA-24 2022-10-17 10:05:15 +02:00
Thomas GöttgensandGitHub 867525eff8 Merge pull request #1813 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-17 10:05:00 +02:00
caveman99andGitHub 7dcc981a2c [create-pull-request] automated change 2022-10-17 08:04:36 +00:00
Thomas Göttgens 38fed8a61e Merge branch 'LORA-24' of github.com:meshtastic/Meshtastic-device 2022-10-17 10:00:41 +02:00
Thomas Göttgens 31c2c8a7a3 only allow wide BW settings when the right chip is detected 2022-10-17 10:00:00 +02:00
Thomas Göttgens a081d28e36 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-17 09:45:39 +02:00
Ben MeadorsandGitHub 93bb4f84f9 Merge branch 'master' into LORA-24 2022-10-16 17:27:18 -05:00
72e04edd7f [create-pull-request] automated change (#1812)
Co-authored-by: thebentern <thebentern@users.noreply.github.com>
2022-10-16 17:26:55 -05:00
Ben MeadorsandGitHub b0d05522c0 Make telemetry packets minimum priority (#1810) 2022-10-16 15:59:59 -05:00
Thomas Göttgens f6119639bb Add support for SX1281 on 2.4 GHz 2022-10-16 19:07:58 +02:00
Ben MeadorsandGitHub fc57a9daa4 Send environment telemetry every minute (#1808) 2022-10-16 11:36:38 -05:00
Thomas GöttgensandGitHub d8f44d7b1b Merge pull request #1807 from meshtastic/nmea-serial
Add NMEA output mode to serial module
2022-10-16 17:15:24 +02:00
Ben MeadorsandGitHub efe2e90a03 Merge branch 'master' into nmea-serial 2022-10-16 09:59:30 -05:00
Ben MeadorsandGitHub 45f9dee89a Telemetry phone api guard (#1805)
* Delay start of telemetry modules

* Don't send unless our toPhoneQueue is empty

* Get wrecked, checks!
2022-10-16 09:58:58 -05:00
Thomas Göttgens cc73d2c2f2 Sigh... 2022-10-16 16:51:17 +02:00
Thomas Göttgens b1f789dddd fix cppcheck 2022-10-16 16:45:32 +02:00
Thomas Göttgens d3e9dbf6a9 Add NMEA output mode (my own position, and other devices as waypoints) to serial module 2022-10-16 16:37:38 +02:00
Thomas GöttgensandGitHub 44529620ad Merge pull request #1806 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-16 16:25:34 +02:00
caveman99andGitHub 7a9673dc37 [create-pull-request] automated change 2022-10-16 14:24:27 +00:00
Thomas Göttgens 27bcf67c0c add routine to output waypoint data 2022-10-16 12:28:49 +02:00
Ben MeadorsandGitHub 7fde56b8ac Make telemetry logging more concise (#1804)
* Make telemetry logging more concise

* Whoops
2022-10-15 18:48:34 -05:00
Ben MeadorsandGitHub 6b614a2d6a Added LPS22HB (RAK-1902) sensor support (#1802) 2022-10-15 14:55:57 -05:00
Ben MeadorsandGitHub 1e1509fbf5 Use pio registry (#1801) 2022-10-15 12:34:52 -05:00
Ben MeadorsandGitHub a3e67f8e4b SHTC3 Sensor (RAK-1901) support (#1800) 2022-10-15 09:11:05 -05:00
028b25cfe8 Change RTCQuality acceptance criteria (#1797)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-10-14 19:12:55 -05:00
Ben MeadorsandGitHub 2555e082d6 Add nrf52 to serial module registration (#1799)
* Add nrf52 to serial module registration

* Update Modules.cpp

* Update Modules.cpp

* Update Modules.cpp
2022-10-14 11:38:56 -05:00
Thomas GöttgensandGitHub f8fa721c72 Merge pull request #1798 from meshtastic/i2cscan
Scan for I2C devices twice on all CPU's
2022-10-14 15:33:46 +02:00
Thomas Göttgens a7e0127793 scan i2c twice for all devices, not just tbeam 2022-10-13 23:46:25 +02:00
Thomas Göttgens 603f60d86a Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-13 19:13:09 +02:00
Thomas GöttgensandGitHub 6febf6b17c Merge pull request #1796 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-13 17:58:41 +02:00
thebenternandGitHub 53aaf766dd [create-pull-request] automated change 2022-10-13 14:54:05 +00:00
Thomas GöttgensandGitHub 4fa8d02b08 update FromRadio UUID for nRF52 devices (#1795) 2022-10-13 09:32:54 -05:00
Thomas Göttgens efa423c8ad update FromRadio UUID for nRF52 devices 2022-10-13 16:20:27 +02:00
Thomas GöttgensandGitHub 43fb0d80f1 Merge pull request #1794 from meshtastic/canned-spice
Display looks better that way...
2022-10-13 15:56:13 +02:00
Thomas GöttgensandGitHub b25ace14e5 Update CannedMessageModule.h 2022-10-13 15:44:27 +02:00
Thomas Göttgens 8734751bc4 make screen timeout work again 2022-10-13 15:31:57 +02:00
Thomas Göttgens 5559a1edb0 Display looks better that way... 2022-10-13 15:22:57 +02:00
Thomas GöttgensandGitHub bf503354f3 Merge pull request #1792 from meshtastic/atecca
Support for ATECCA608B Cryptographic Coprocessor
2022-10-13 14:34:44 +02:00
Thomas Göttgens 7b10441a28 update raspberry pi framework some more... 2022-10-13 14:21:48 +02:00
Thomas Göttgens 994e396c00 update Raspberry Pico Framework 2022-10-13 13:57:17 +02:00
Thomas Göttgens 6e22ee9061 make nRF52 happy 2022-10-13 13:31:19 +02:00
Thomas Göttgens b5fb0f60b0 don't compile on Portduino 2022-10-13 13:01:24 +02:00
Thomas Göttgens a7fe69ed6b Support for ATECCA608B Cryptographic Coprocessor 2022-10-13 12:55:28 +02:00
Thomas GöttgensandGitHub 7f05298172 Merge pull request #1790 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-13 08:45:13 +02:00
thebenternandGitHub 92a2505056 [create-pull-request] automated change 2022-10-12 23:42:47 +00:00
Ben MeadorsandGitHub aae9d2fcf6 Package ota zip in final firmware bundle 2022-10-12 13:03:19 -05:00
Ben MeadorsandGitHub b59e928589 Secure DFU mode for OTA updates with pin (#1789) 2022-10-12 10:31:39 -05:00
Ben Meadors 1db08b3b0e Add pico 2022-10-12 08:06:08 -05:00
Ben Meadors 2cf3c105a1 Add DFU package for nrf52 assets to build assets 2022-10-12 08:06:08 -05:00
505e4e8176 Run dfu begin first (#1786)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-10-12 07:55:17 -05:00
Thomas GöttgensandGitHub 49a9973548 Merge pull request #1788 from meshtastic/bug-1787
fixes #1787
2022-10-12 13:26:21 +02:00
Thomas Göttgens 18af9d734d fixes #1787 2022-10-12 13:13:02 +02:00
Ben MeadorsandGitHub 3e22aafea8 Change UUID for FromRadio characteristic (#1785) 2022-10-11 20:01:26 -05:00
Ben MeadorsandGitHub 434db4347b Send device telemetry to phone every minute (#1784) 2022-10-11 10:21:30 -05:00
Thomas GöttgensandGitHub b2c3b405b1 Merge pull request #1783 from meshtastic/ota
debug print on early boot when OTA firmware is detected.
2022-10-10 23:40:19 +02:00
Thomas GöttgensandGitHub 4bc8f6a6b9 Merge branch 'master' into ota 2022-10-10 23:14:26 +02:00
Thomas Göttgens 4534d17d79 debug print on early boot when OTA firmware is detected. 2022-10-10 23:05:24 +02:00
f88dde2f60 Send channels over phoneapi on want config (#1780)
* Send channels

* Doh!

* Adjust comments

* Missed a spot

* Consolidate

* Skipped disabled ones

* Fixed bounding

* Change order

* comment out disabled check for build artefact

* Remove loop

* Off by one

* Probably should start at zero

* Zero

* Oops

* enable dubug log

* Reset to index zero

Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
2022-10-10 10:36:49 -05:00
Thomas Göttgens f8982ddaf8 Best Practise Platformio 6.x dependency definitions 2022-10-10 15:42:05 +02:00
Thomas GöttgensandGitHub 784cd8c6f1 Merge pull request #1768 from meshtastic/nrf52-Rollup
Nrf52 rollup
2022-10-10 15:30:45 +02:00
Thomas GöttgensandGitHub c3ab8f12cf Merge branch 'master' into nrf52-Rollup 2022-10-10 15:09:49 +02:00
Thomas GöttgensandGitHub b5adb7babc Update nrf52840.ini 2022-10-10 15:09:31 +02:00
Thomas GöttgensandGitHub 62c809a596 Merge pull request #1782 from meshtastic/lora-freq-check
Lora freq check
2022-10-10 12:53:14 +02:00
Thomas Göttgens d2fe4426c1 Revert Platform Change for now. 2022-10-10 12:32:08 +02:00
Thomas Göttgens 984f0ca12c check allowed range for lora.channel_num 2022-10-10 12:28:31 +02:00
Thomas Göttgens 9d3eba9ea4 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-10 12:15:09 +02:00
Thomas GöttgensandGitHub 323f81eaba Merge branch 'master' into nrf52-Rollup 2022-10-10 12:06:44 +02:00
lewishe 13e635b74e Add judgment on t-beam-s3-core to scanI2Cdevice in main.cpp 2022-10-10 11:50:18 +08:00
Thomas GöttgensandGitHub 8d0e25fd82 Merge pull request #1770 from meshtastic/ota
Switch to OTA firmware
2022-10-09 11:54:16 +02:00
Thomas Göttgens 20eaddee58 - fix conditional include for nRF52 (no OTA there)
- fix compiler warning in Canned Messages
2022-10-09 11:35:19 +02:00
Thomas Göttgens 30b1bd85d9 fix build for non-esp32 2022-10-09 11:19:33 +02:00
Thomas GöttgensandGitHub 09cce094d1 Merge branch 'master' into ota 2022-10-09 11:00:20 +02:00
Thomas GöttgensandGitHub 33a208e3c4 Merge pull request #1777 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-09 11:00:01 +02:00
caveman99andGitHub dd4c4fba80 [create-pull-request] automated change 2022-10-09 08:55:33 +00:00
Sacha WeatherstoneandGitHub a17c40ad09 Merge branch 'master' into ota 2022-10-09 16:44:24 +10:00
Sacha WeatherstoneandGitHub 9d73e606ac Merge pull request #1774 from meshtastic/node-db
erase oldest entry from NodeDB if it is full
2022-10-09 16:40:46 +10:00
Ben MeadorsandGitHub da12360105 Merge branch 'master' into node-db 2022-10-08 13:48:35 -05:00
ee1ae627a3 Model the time it is busy receiving/transmitting (#1776)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-10-08 12:10:50 -05:00
Thomas GöttgensandGitHub 137a8dcfdf Merge pull request #1775 from meshtastic/i2cscan-fix
move and repeat i2c scan to fix BLE PIN
2022-10-08 17:52:32 +02:00
Thomas GöttgensandGitHub b2d753ed86 move and repeat i2c scan to fix BLE PIN 2022-10-08 17:36:39 +02:00
Thomas Göttgens 6e40102f26 - use bigger screen fonts on Wiphone
- erase oldest entry from NodeDB if it is full.
2022-10-08 17:07:16 +02:00
Ben MeadorsandGitHub 511fe23b8a Merge branch 'master' into ota 2022-10-08 08:22:16 -05:00
Thomas GöttgensandGitHub e433895873 Merge pull request #1773 from meshtastic/canned-messages
Fix another crash in Canned Messages
2022-10-08 15:09:58 +02:00
Thomas Göttgens 5572195af9 Fix another crash in Canned Messages 2022-10-08 14:52:21 +02:00
Thomas Göttgens cb956cd35b Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-08 14:35:07 +02:00
Ben MeadorsandGitHub b551c7738e Merge branch 'master' into ota 2022-10-08 07:28:35 -05:00
3d45c4dbd8 Don't resend ACK if another module sent a response (#1772)
* strcmp returns zero if strings are equal

* Make debug message more clear

* Don't resend ACK if another module sent a response

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-10-08 07:27:59 -05:00
Thomas GöttgensandGitHub 8681489cb7 Merge pull request #1771 from meshtastic/compass-size
Scale Compass circle to bigger screens
2022-10-08 13:22:14 +02:00
Thomas Göttgens ed328766b2 Scale Compass circle to bigger screens 2022-10-08 12:32:48 +02:00
Thomas Göttgens fb852ee6eb Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-08 11:25:46 +02:00
Thomas GöttgensandGitHub a6ee708b90 Merge branch 'master' into ota 2022-10-08 11:21:33 +02:00
Thomas Göttgens c9398e7b8a - prevent crash when no messages defined
- remove debug print
2022-10-08 11:20:54 +02:00
Thomas Göttgens b591e35442 Switch to OTA firmware 2022-10-08 11:10:29 +02:00
Thomas GöttgensandGitHub e50e15dc04 Merge pull request #1769 from meshtastic/RTC
1.0.1 RTC LIB is released on PIO Registry
2022-10-08 11:09:54 +02:00
Thomas Göttgens d4e65d8607 1.0.1 RTC LIB is released on PIO Registry 2022-10-08 11:09:16 +02:00
Thomas Göttgens 63ced7da7c use upstream nRF52 toolkit. (TEST)
also RTC Lib 1.0.1 is finally out.
2022-10-07 20:28:20 +02:00
Thomas Göttgens 03868d05db Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-07 20:23:00 +02:00
Thomas GöttgensandGitHub 186374525a Don't mix MQTT Payloads of Firmware 1.2 and 1.3/2.0 (#1767) 2022-10-07 12:54:42 -05:00
Thomas Göttgens f116585c2a Don't mix MQTT Payloads of Firmware 1.2 and 1.3/2.0 2022-10-07 19:26:45 +02:00
Thomas GöttgensandGitHub f4945729bc Merge pull request #1766 from meshtastic/new-sounds
use F# as startup and shutdown sound triple
2022-10-07 19:16:50 +02:00
Thomas Göttgens a3c76232c8 use F# as startup and shutdown sound triple. The existing tuuut-tut-tut was getting on my nerves 2022-10-07 19:03:49 +02:00
Thomas GöttgensandGitHub 5bc41118e2 Merge pull request #1760 from meshtastic/support-rak14004
Use small font for freetext messages
2022-10-07 18:58:28 +02:00
Thomas Göttgens 9445a96b3a Merge branch 'support-rak14004' of github.com:meshtastic/Meshtastic-device 2022-10-07 18:40:51 +02:00
Thomas Göttgens a5761069ca Finalize destination selection. Primary Channel only for now. 2022-10-07 18:40:15 +02:00
Thomas Göttgens 2d4bfe183c Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-07 16:42:29 +02:00
Ben MeadorsandGitHub bf4115a80f Telemetry sensors re-map (#1765)
* Add factory erase uf2 to the release assets

* Sensors map

* Uncomment sensors
2022-10-07 08:33:07 -05:00
Ben MeadorsandGitHub b2e84dfd29 Merge branch 'master' into support-rak14004 2022-10-07 06:58:08 -05:00
lewis heandGitHub 004f6fa4d6 Add t-beam-s3-core onboard device support. (#1764)
* Change t-beam-s3-core pins definitions

* Add t-beam-s3-core power initialization to properly initialize the I2C device

* Add 6-axis and 3-axis sensor detection
2022-10-07 06:57:55 -05:00
Thomas GöttgensandGitHub cefd4cd647 Merge pull request #1762 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-10-06 23:15:59 +02:00
thebenternandGitHub fd2ae61e3e [create-pull-request] automated change 2022-10-06 20:53:47 +00:00
Thomas Göttgens 7cda61ca01 - preliminary work for node selection
- show sending screen on immediate click
2022-10-06 22:34:55 +02:00
Thomas Göttgens 98e1d52eaa Merge branch 'support-rak14004' of github.com:meshtastic/Meshtastic-device 2022-10-06 18:41:33 +02:00
Thomas Göttgens 1d09beb8a7 word wrap long input and fix compiler warnings 2022-10-06 18:40:31 +02:00
Thomas Göttgens d44cce2928 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-10-06 17:24:48 +02:00
Thomas GöttgensandGitHub 51b3d4d06e Merge branch 'master' into support-rak14004 2022-10-06 17:24:33 +02:00
Thomas Göttgens a17ddaa951 Use small font for freetext messages 2022-10-06 17:24:08 +02:00
Thomas GöttgensandGitHub 9bd925226c Merge pull request #1759 from meshtastic/support-rak14004
support RAK14004 in Canned Messages
2022-10-06 16:37:25 +02:00
Thomas Göttgens e34ada3ff1 support RAK14004 in Canned Messages 2022-10-06 16:00:33 +02:00
Thomas GöttgensandGitHub 1ec1ff0773 Merge pull request #1758 from andrekir/PCF8563-lib
update PCF8563_Library to 1.0.0
2022-10-06 09:12:38 +02:00
Thomas GöttgensandGitHub 7f935717db Update platformio.ini 2022-10-06 08:56:02 +02:00
Thomas GöttgensandGitHub 5b1d3a0c51 Update platformio.ini 2022-10-06 08:55:58 +02:00
andrekir 484f340023 update PCF8563_Library to 1.0.0 2022-10-06 01:05:21 -03:00
Ben MeadorsandGitHub ab0cf025c5 Remove flag 2022-10-05 11:41:53 -05:00
Ben MeadorsandGitHub b384d9ea88 Remove yml exclusion for now 2022-10-05 11:18:37 -05:00
Ben MeadorsandGitHub bb2094c4de Fixed move 2022-10-05 11:11:14 -05:00
Ben MeadorsandGitHub 6708121ba6 Add factory erase uf2 to the release assets (#1756)
* Add factory erase uf2 to the release assets

* Copy single file

* Overwrite hopefully
2022-10-05 10:52:51 -05:00
Thomas GöttgensandGitHub 46a9bb3f7d Merge pull request #1755 from meshtastic/gps-rollup
GPS Rollup, incorporates changes from @pmarches and @lewisxhe
2022-10-05 15:32:27 +02:00
Thomas Göttgens 62498d0935 GPS Rollup, incorporates changes from @pmarches and @lewisxhe 2022-10-05 14:59:07 +02:00
Thomas GöttgensandGitHub c70184fbed Merge pull request #1754 from meshtastic/issue-1707
wire in part 2 of serial mode - implements #1228
2022-10-05 13:45:11 +02:00
Thomas Göttgens 4d2cb45f9f wire in part 1 of serial mode... select if you want textmsg or own portnum via config. 2022-10-05 11:39:50 +02:00
Thomas GöttgensandGitHub e5605cc6fe Merge pull request #1753 from meshtastic/bug-1713
fix #1713
2022-10-05 10:51:56 +02:00
Thomas Göttgens f7331a2e41 fix #1713
stop output to serial debug after config has been loaded (if serial is disabled), and only accept protobuf packets from that point on.
2022-10-05 10:33:39 +02:00
Thomas GöttgensandGitHub 838271a14f Merge pull request #1751 from rjmcdougall/radiolib-5.4.0-fix
Switch to 5.4.0 using latest fix (170ce9) to error check after calibr…
2022-10-05 09:25:05 +02:00
Thomas GöttgensandGitHub b6b23907ed Merge pull request #1752 from meshtastic/flash-save
Flash saver
2022-10-05 09:12:11 +02:00
Thomas GöttgensandGitHub b240b9a088 Use the global radiolib... 2022-10-05 09:02:46 +02:00
Thomas GöttgensandGitHub b3a484f1e5 update to Radiolib 5.4.1 2022-10-05 09:01:39 +02:00
Thomas GöttgensandGitHub f3042ddf37 Update NodeDB.cpp 2022-10-05 08:56:00 +02:00
Thomas Göttgens 54816231e9 Calculate CRC32 of Protobuf and compare before save. 2022-10-05 08:52:27 +02:00
Richard McDougall 1c168d7d62 Switch to 5.4.0 using latest fix (170ce9) to error check after calibration 2022-10-04 10:52:23 -07:00
Thomas Göttgens 063c4904ff only save files when they changed - also clamp app version 2022-10-04 17:25:03 +02:00
Thomas Göttgens fefcbb147b fix #1646 2022-10-04 15:27:18 +02:00
Thomas Göttgens 53d48e8f61 use radiolib 5.3 for now 2022-10-04 15:19:00 +02:00
Thomas GöttgensandGitHub ce5bce5cdc Merge pull request #1749 from meshtastic/flash-save
Only save the changed parts of config to disk.
2022-10-04 14:52:10 +02:00
Thomas Göttgens 3597685b23 Only save the changed parts of config to disk. 2022-10-04 14:32:07 +02:00
Thomas GöttgensandGitHub dc097c7230 Merge pull request #1729 from rjmcdougall/pcf8563rtc
Adjust year, hour, minute for PCF8563
2022-10-04 13:40:40 +02:00
Thomas GöttgensandGitHub b148781e4b Missed one. 2022-10-04 13:29:06 +02:00
Thomas GöttgensandGitHub 5d8826e8ef Merge branch 'master' into pcf8563rtc 2022-10-04 13:27:49 +02:00
Thomas GöttgensandGitHub 39a51c7fbb update lib to make this work 2022-10-04 13:26:20 +02:00
Thomas GöttgensandGitHub 129edde338 Merge pull request #1746 from meshtastic/feature-1406
implement #1406
2022-10-04 10:01:19 +02:00
Thomas Göttgens 93cc278eee implement #1406 2022-10-04 09:47:54 +02:00
Thomas GöttgensandGitHub c34198264a Merge branch 'master' into pcf8563rtc 2022-10-04 09:38:33 +02:00
Thomas GöttgensandGitHub 054b12325d Merge pull request #1745 from meshtastic/compiler-warning
fix compiler warning
2022-10-04 09:27:34 +02:00
Thomas Göttgens 0f7a126828 fix compiler warning 2022-10-04 09:11:24 +02:00
Thomas GöttgensandGitHub 7ff72fb981 Merge pull request #1744 from meshtastic/dependency-scan
add versioning to all lib depends
2022-10-04 09:10:28 +02:00
Thomas Göttgens 0fe99595a9 Lib update and fix include errors 2022-10-04 08:59:03 +02:00
Thomas Göttgens b2ff628cec add versioning to all lib depends (compatible upgrade allowed) and move as many as possible off github and into PIO registry.
Also add a script to check for lib updates (maybe in CI?)
2022-10-04 08:40:39 +02:00
Thomas GöttgensandGitHub 86a3bd6db8 Merge pull request #1742 from meshtastic/bug-1740
Clean up GPS code and add some flags per #1740
2022-10-04 08:38:57 +02:00
Thomas GöttgensandGitHub 73a5357d0e Brainfart. This is already km/h 2022-10-04 08:11:07 +02:00
Richard McDougallandGitHub 2faf507c0d Merge branch 'meshtastic:master' into pcf8563rtc 2022-10-03 13:55:49 -07:00
Thomas Göttgens cf124d97b8 Clean up GPS code and add some flags per #1740 2022-10-03 20:30:11 +02:00
Sacha WeatherstoneandGitHub 482c0766af Merge pull request #1741 from andrekir/channel_num
move channel_num to loraConfig
2022-10-03 16:34:42 +10:00
Ben MeadorsandGitHub 7e5a26fde5 Merge branch 'master' into channel_num 2022-10-02 19:45:32 -05:00
Ben Meadors e85af2f732 regen protos 2022-10-02 19:45:15 -05:00
Sacha WeatherstoneandGitHub 4df81008bc Merge branch 'master' into channel_num 2022-10-03 10:32:56 +10:00
Ben MeadorsandGitHub 803dc69ccd Update radiolib 2022-10-02 09:48:48 -05:00
Thomas GöttgensandGitHub 42308cca5b Merge branch 'master' into pcf8563rtc 2022-10-01 17:31:02 +02:00
Thomas GöttgensandGitHub ea991a4eee Merge pull request #1737 from GUVWAF/EnhancedSimRadio
Let SimRadio communicate via TCP
2022-10-01 17:24:26 +02:00
GUVWAF 04db2d4410 Merge branch 'EnhancedSimRadio' of https://github.com/GUVWAF/Meshtastic-device into EnhancedSimRadio 2022-10-01 17:07:59 +02:00
GUVWAF 076c1ed2ee Merge branch 'EnhancedSimRadio' of https://github.com/GUVWAF/Meshtastic-device into EnhancedSimRadio 2022-10-01 17:05:49 +02:00
Thomas GöttgensandGitHub 75aa4ea325 suppress cppcheck warning 2022-10-01 17:05:04 +02:00
GUVWAF e54be07dc0 Update include path in MeshService 2022-10-01 17:04:19 +02:00
GUVWAF d439d00e25 Move SimRadio to platform/portduino 2022-10-01 17:03:40 +02:00
GUVWAF c4bea793af Mark WifiServerPort constructor as explicit 2022-10-01 17:02:16 +02:00
GUVWAF b53dcb932e Adapt conditional include 2022-10-01 17:01:25 +02:00
Thomas GöttgensandGitHub 371428d6ab Fix compile error on nRF52 2022-10-01 16:41:49 +02:00
Thomas GöttgensandGitHub 1970d0c00f Merge branch 'master' into EnhancedSimRadio 2022-10-01 15:59:44 +02:00
1dd7aa935f [create-pull-request] automated change (#1738)
Co-authored-by: thebentern <thebentern@users.noreply.github.com>
2022-10-01 08:47:35 -05:00
Thomas GöttgensandGitHub 6b40f9d95c Unfork this lib, we're done here now. 2022-10-01 15:27:13 +02:00
Thomas GöttgensandGitHub b3717d0396 Merge branch 'master' into pcf8563rtc 2022-10-01 15:20:16 +02:00
82ba95833b strcmp returns zero if strings are equal (#1736)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-10-01 08:18:25 -05:00
Thomas GöttgensandGitHub 28384df702 Merge pull request #1734 from meshtastic/Build-Image
Build image
2022-10-01 15:17:41 +02:00
GUVWAF aee06f4738 Suppress debug messages in PhoneAPI as they flood the logs when a TCP connection is open 2022-10-01 12:09:43 +02:00
GUVWAF ab282765d4 Let SimRadio start receive a packet if its PortNum is Simulator_App 2022-10-01 12:06:59 +02:00
GUVWAF 5d464badc8 Give TCP port as argument to API server 2022-10-01 12:05:20 +02:00
GUVWAF 68282682de Use new SimRadio in main for Portduino 2022-10-01 12:03:35 +02:00
GUVWAF 2696b04138 Allow Portduino to set the TCP port 2022-10-01 12:02:29 +02:00
GUVWAF 31dc37150b Fix typo 2022-10-01 12:00:31 +02:00
GUVWAF e66d9d0add Add content to SimRadio, similar to RadioInterface 2022-10-01 11:59:20 +02:00
GUVWAF 067bde321b Remove old SimRadio from RadioInterface 2022-10-01 11:57:27 +02:00
GUVWAF 84ec364ac2 Add enhanced SimRadio files 2022-10-01 11:56:16 +02:00
Thomas GöttgensandGitHub 32990856e3 Merge branch 'master' into Build-Image 2022-10-01 10:31:59 +02:00
Thomas GöttgensandGitHub a1bd5c9ea0 Accomodate for new flash files 2022-10-01 10:31:25 +02:00
Thomas Göttgens 51f0e7879a use the right firmware artefact 2022-10-01 10:06:13 +02:00
Thomas Göttgens 0bdb90d133 remove hard to maintain system-info bootloader 2022-10-01 09:50:16 +02:00
Thomas Göttgens e98c11ff89 The new combined firmware starts flashing at offset 0, no need to flash system-info or partitions any more. 2022-10-01 09:46:56 +02:00
andrekir 8f84d7089c move channel_num to loraConfig 2022-09-30 17:33:43 -03:00
Thomas Göttgens b0712c4186 make other platforms happy again 2022-09-29 21:23:01 +02:00
Thomas Göttgens 8f92383ce4 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-29 17:05:11 +02:00
Thomas Göttgens c571fc9e24 generate a monolithic flash image for the app. 2022-09-29 17:04:56 +02:00
Thomas GöttgensandGitHub 05126bc6dc Merge branch 'master' into pcf8563rtc 2022-09-29 16:33:43 +02:00
Thomas GöttgensandGitHub de56a370c6 Merge pull request #1733 from meshtastic/TLORA-fix
Tlora fix
2022-09-29 13:37:51 +02:00
Thomas Göttgens daf189bf4b Check in variant.h change 2022-09-29 13:23:23 +02:00
Thomas Göttgens d95ec7e6b9 fix TLORA-V2.1-1.6 2022-09-29 13:21:48 +02:00
Ben MeadorsandGitHub ac235bcabb Reset nodedb wiring (#1724) 2022-09-28 16:47:26 -05:00
Neil HaoandGitHub ab4b3a50ee 'battery_gauge_fix' (#1731) 2022-09-28 15:53:26 -05:00
Thomas Göttgens 7f0fb2a2b6 Move file to right spot in source tree 2022-09-28 20:13:41 +02:00
Richard McDougall ade1edfdfc Adjust year, hour, minute for PCF8563 2022-09-27 22:51:40 -07:00
Thomas GöttgensandGitHub 4723faa95f Merge pull request #1728 from meshtastic/bug-1669
fixes #1669
2022-09-27 14:15:38 +02:00
Thomas GöttgensandGitHub 93f83b0fcb Merge branch 'master' into bug-1669 2022-09-27 14:03:48 +02:00
Thomas Göttgens 8f84f7c0a5 fixes #1669 2022-09-27 14:03:02 +02:00
Ben MeadorsandGitHub 48e4101f1c Move it 2022-09-27 06:08:24 -05:00
Thomas GöttgensandGitHub e6bb79f4c1 Merge pull request #1727 from meshtastic/ESPIDF-Littlefs
use the native littlefs builder of newer framework
2022-09-27 00:50:41 +02:00
Thomas GöttgensandGitHub 0bef3464f5 Merge branch 'master' into ESPIDF-Littlefs 2022-09-27 00:50:33 +02:00
Thomas GöttgensandGitHub 3c038a8c50 Update main_matrix.yml 2022-09-27 00:50:16 +02:00
Thomas GöttgensandGitHub b8eb751316 Update build-esp32.sh 2022-09-27 00:23:50 +02:00
Thomas GöttgensandGitHub 5332db1eca Include OTA Firmware in Build 2022-09-27 00:21:45 +02:00
Thomas GöttgensandGitHub 9deda962aa Merge branch 'master' into ESPIDF-Littlefs 2022-09-27 00:16:41 +02:00
Thomas Göttgens c53434539b use the native littlefs builder of newer framework 2022-09-27 00:16:12 +02:00
Ben MeadorsandGitHub 7f179deaf3 Update build-esp32.sh 2022-09-26 16:01:28 -05:00
Ben MeadorsandGitHub da29fa139f Copy the current one 2022-09-26 16:00:20 -05:00
Thomas GöttgensandGitHub 1d8a562fd9 Merge pull request #1725 from meshtastic/AsyncOTA
Changes for OTA Support on ESP32
2022-09-26 22:57:48 +02:00
Thomas GöttgensandGitHub 0dbf97afab Merge branch 'master' into AsyncOTA 2022-09-26 22:57:23 +02:00
Thomas GöttgensandGitHub e5720fba3e Merge pull request #1726 from meshtastic/partitions
Include partitions.bin
2022-09-26 22:56:59 +02:00
Ben MeadorsandGitHub 498ac00b92 Copy cpartitions.bin 2022-09-26 15:51:09 -05:00
Ben MeadorsandGitHub 226a2dfe04 Include partitions.bin 2022-09-26 15:48:02 -05:00
Thomas Göttgens 7e9a233296 - new Bootloader for ESP-IDF 4.2
- save partition table to device
- modify partition table for async OTA
2022-09-26 22:42:58 +02:00
Ben MeadorsandGitHub ae311c838e Try to decode mqtt packets first (#1705)
* Try to decode first

* Remove GPS pins from TLoRAv1 so that it can boot

* Use release version of radio lib

* Use fixed versions of esp framework and tool chain
2022-09-25 09:39:50 -05:00
Thomas Göttgens de769db3bc Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-23 23:29:52 +02:00
Thomas Göttgens 5fa96c7fd1 missed one, sorry 2022-09-23 23:29:32 +02:00
Thomas GöttgensandGitHub 2ee0c9a67a Merge pull request #1720 from meshtastic/axe-framerate-debug
get rid of framerate debug messages
2022-09-23 23:21:21 +02:00
Thomas Göttgens 347af0210e Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-23 23:09:20 +02:00
Thomas GöttgensandGitHub d8455d687c Merge branch 'master' into axe-framerate-debug 2022-09-23 23:08:46 +02:00
Thomas Göttgens 34fef4c4e7 get rid of framerate debug messages 2022-09-23 23:07:26 +02:00
Thomas GöttgensandGitHub 18bb373219 switch Bluetooth back on when wifi is disabled and bluetooth is enabled. This still had the old behaviour to check for a set ssid... (#1719) 2022-09-23 15:10:33 -05:00
Thomas GöttgensandGitHub 2f74f9ca15 Merge pull request #1718 from meshtastic/ESPIDF-Rollup
Suppress compiler warning
2022-09-23 21:33:37 +02:00
Thomas GöttgensandGitHub 5775c390f3 Merge branch 'master' into ESPIDF-Rollup 2022-09-23 21:19:19 +02:00
Thomas GöttgensandGitHub 80826b8712 Merge pull request #1711 from meshtastic/ESPIDF-Littlefs
Filesystem fixes for LittleFS
2022-09-23 21:14:40 +02:00
Thomas GöttgensandGitHub 664d18cf58 t'ell that came from? 2022-09-23 21:03:53 +02:00
Thomas Göttgens bc2cddcb11 Filesystem abstraction would work really well, if it wasn't for crap vendor toolchains. 2022-09-23 20:43:42 +02:00
Thomas Göttgens 4949bda606 Don't delete OEM.proto on factory reset 2022-09-23 19:52:42 +02:00
Thomas Göttgens b4f75ad042 use exception decoder 2022-09-23 19:52:07 +02:00
Thomas Göttgens af4d11e17b fix and refactor FSCommon for new ESPIDF 2022-09-23 19:51:08 +02:00
Thomas GöttgensandGitHub e8f4a8b739 Merge branch 'master' into ESPIDF-Littlefs 2022-09-23 18:45:37 +02:00
Thomas Göttgens fae6693f8f fix (or better suppress) another compiler warning 2022-09-23 12:37:59 +02:00
Thomas Göttgens 0646ecdec4 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-23 12:32:07 +02:00
Thomas GöttgensandGitHub 544c89460f Nullify older saved proto files once more
this will be neccessary for the 1.3.42 release, since we renumbered some protos again. Subsequent additions to protos don't need this, just when we reshuffle.
2022-09-23 12:28:32 +02:00
Thomas Göttgens 15089f5b01 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-23 09:55:00 +02:00
Ben MeadorsandGitHub 8ef510035d Owner reboot (#1716) 2022-09-22 08:02:58 -05:00
Sacha WeatherstoneandGitHub 864b1f754c Merge branch 'master' into ESPIDF-Littlefs 2022-09-22 14:58:53 +10:00
Sacha WeatherstoneandGitHub 883a2ebac0 Merge pull request #1717 from ajmcquilkin/ajmcquilkin/imperial-screen-units
Add Support for Imperial Units on Screen
2022-09-22 13:22:22 +10:00
Adam McQuilkin bbe5b2e42c Remove accidental whitespace changes 2022-09-21 22:48:12 -04:00
Adam McQuilkin 1b316b111f Initial commit 2022-09-21 22:37:36 -04:00
Thomas Göttgens d0720620e8 fix compiler warning 2022-09-21 17:22:31 +02:00
Thomas Göttgens cf4947d898 Fix build for non-ESP32 2022-09-21 17:05:10 +02:00
Thomas Göttgens b5a8efa16b Filesystem fixes for LittleFS 2022-09-21 16:47:10 +02:00
Thomas GöttgensandGitHub b38ae783b9 Merge pull request #1706 from meshtastic/communicator
Freetext Input with CardKB
2022-09-21 16:33:49 +02:00
Thomas GöttgensandGitHub cbd8346c93 Merge branch 'master' into communicator 2022-09-21 16:10:28 +02:00
Thomas GöttgensandGitHub c0bfb979fd Merge pull request #1710 from meshtastic/serial-flush
Fix Serial comms with new framework
2022-09-21 16:01:01 +02:00
Thomas GöttgensandGitHub 7c5a36ce38 Update SerialConsole.cpp 2022-09-21 15:46:56 +02:00
Thomas GöttgensandGitHub fc729b0cbb Send PROTOBUF over serial without delay 2022-09-21 15:36:17 +02:00
Thomas GöttgensandGitHub 0b81a25fda Output serial console data without buffering 2022-09-21 15:34:48 +02:00
Thomas Göttgens 011db443ba Bugfixes in Freetext Module.
- work without fixed messages defined
- honour cursor position on backspace
- don't send an empty string
- compiler warnings in font engine fixed
2022-09-21 10:42:10 +02:00
Thomas Göttgens b73e240f4d relative paths are relative 2022-09-20 16:36:50 +02:00
Thomas Göttgens 6de77ee310 use cyrillic font if defined 2022-09-20 16:30:21 +02:00
Thomas Göttgens 0a8293a2d6 Cursor editing 2022-09-20 16:21:32 +02:00
Thomas Göttgens d0ad5dd4cf - don't swallow keystrokes
- switch back and forth between the 2 modes.
2022-09-20 14:28:42 +02:00
Thomas Göttgens ab342ce904 Freetext Input with CardKB Take 1 - Also removes FacesKB support, this thing is ancient. 2022-09-20 13:50:18 +02:00
Thomas GöttgensandGitHub 140250ef03 Merge pull request #1704 from meshtastic/ESPIDF-Rollup
ESP and TFT misc fixes
2022-09-19 17:57:12 +02:00
Thomas Göttgens ed90275370 use double buffering on TFT screens 2022-09-19 16:57:18 +02:00
Thomas Göttgens e8b28faaf1 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-19 16:18:16 +02:00
Thomas Göttgens afcc7b6a56 Always use the latest framework for ESP32 2022-09-19 16:18:01 +02:00
Thomas GöttgensandGitHub e27a507a28 Merge pull request #1703 from meshtastic/ESPIDF-Rollup
Small fixes for ESP Serial Init and Power FSM debug garble.
2022-09-19 15:57:47 +02:00
Thomas GöttgensandGitHub 207f701f0a Update GPS.cpp 2022-09-19 15:46:59 +02:00
Thomas Göttgens dd8cb1c7fb Small fixes for ESP Serial Init and Power FSM debug garble. 2022-09-19 15:36:48 +02:00
Thomas GöttgensandGitHub ccf93b8c23 Merge pull request #1687 from meshtastic/ESPIDF-Rollup
use the new ESP Framework for our older boards too
2022-09-19 12:18:09 +02:00
Thomas Göttgens 4c6f3ead60 fixing I2C requests and Wifi Power Saving Modes. 2022-09-19 12:05:57 +02:00
Thomas GöttgensandGitHub 2d81d359b8 Update esp32.ini
Update arch by hand
2022-09-19 09:36:13 +02:00
Thomas GöttgensandGitHub 1f96d5d957 Merge branch 'master' into ESPIDF-Rollup 2022-09-19 09:33:50 +02:00
Thomas GöttgensandGitHub 033f45d4da Merge pull request #1702 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-09-19 09:32:01 +02:00
thebenternandGitHub ae2c514ee7 [create-pull-request] automated change 2022-09-18 20:55:27 +00:00
Andre KandGitHub 80ddb81fac fix yet another typo 2022-09-18 17:31:59 -03:00
Andre KandGitHub 4bc29200be fix default channel names (#1701) 2022-09-18 09:41:27 -05:00
Ben MeadorsandGitHub 55c55fb705 pip versions back in order 2022-09-17 20:03:11 -05:00
Ben MeadorsandGitHub 0e2ab75bb0 Set tx_enabled upon initial region assignment (#1700) 2022-09-17 14:49:09 -05:00
Ben MeadorsandGitHub 128d20b290 tx_enabled fix (#1699)
* Defaults

* Print
2022-09-17 12:18:32 -05:00
Ben Meadors ad9cc40b97 Increasebaud for local except for RAK11200 2022-09-17 08:25:40 -05:00
Ben MeadorsandGitHub e0d3ac01b0 Merge branch 'master' into ESPIDF-Rollup 2022-09-17 08:22:44 -05:00
Ben MeadorsandGitHub 0f87adad7b Power state lies and other fixes (#1698)
* Power interval defaults and factory reset

* Ternary

* Fixes
2022-09-16 11:00:05 -05:00
9481461145 Add GNSS model recognition functio (#1696)
* Add GNSS model recognition function

* Fix GNSS initialization failure

* GPS.cpp difference between runOnce and ESP32S3 and ESP32 versions

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-09-15 13:43:04 -05:00
Ben MeadorsandGitHub accd23eddc Factory reset on device state expired (#1695) 2022-09-15 12:15:16 -05:00
Thomas GöttgensandGitHub 7c202b6069 Merge branch 'master' into ESPIDF-Rollup 2022-09-13 19:18:20 +02:00
Thomas GöttgensandGitHub e93b98ff98 Merge pull request #1694 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-09-13 14:32:29 +02:00
caveman99andGitHub b1ac2cf821 [create-pull-request] automated change 2022-09-13 12:31:51 +00:00
Ben MeadorsandGitHub bfd1fecc2a Merge branch 'master' into ESPIDF-Rollup 2022-09-13 06:36:56 -05:00
Ben MeadorsandGitHub c622a9b4be Update python temp hack 2022-09-12 20:21:19 -05:00
Ben MeadorsandGitHub ade66cd8f4 Merge branch 'master' into ESPIDF-Rollup 2022-09-12 18:07:42 -05:00
Ben MeadorsandGitHub 397030b5a6 GPS intervals (#1693)
* GPS intervals

* Backwards logic

* Oops
2022-09-12 18:07:21 -05:00
Ben MeadorsandGitHub adc50f40b1 Merge branch 'master' into ESPIDF-Rollup 2022-09-12 14:56:09 -05:00
Ben MeadorsandGitHub 32d92d9b75 Qualify tbeam filesystem bins 2022-09-12 14:30:54 -05:00
Ben Meadors 18f37981bb Spelling and fixing defaults 2022-09-12 07:55:17 -05:00
Ben Meadors a8711bc54a Add tbeam-s3-core 2022-09-12 07:39:41 -05:00
Thomas Göttgens eac2613743 make platformio.ini even more modular 2022-09-12 14:02:21 +02:00
Thomas Göttgens 4a0c18c4cd Merge branch 'ESPIDF-Rollup' of github.com:meshtastic/Meshtastic-device 2022-09-12 13:40:52 +02:00
Thomas Göttgens e376a3a28e just use the general toolkit 2022-09-12 13:40:20 +02:00
Thomas Göttgens a6bdff53c9 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-12 13:25:54 +02:00
Thomas GöttgensandGitHub b5c5483ced Merge branch 'master' into ESPIDF-Rollup 2022-09-12 12:50:38 +02:00
Thomas GöttgensandGitHub 601422e92b Merge pull request #1692 from meshtastic/caveman99-1542
implement #1542
2022-09-12 11:05:07 +02:00
Thomas Göttgens dbbe5e59ae Merge branch 'caveman99-1542' of github.com:meshtastic/Meshtastic-device 2022-09-12 10:54:09 +02:00
Thomas Göttgens b96dd6d36d T-Echo does not have Serial2 2022-09-12 10:53:11 +02:00
Thomas GöttgensandGitHub e6b6e175b8 Merge branch 'master' into caveman99-1542 2022-09-12 10:10:08 +02:00
Thomas Göttgens 2ff549d458 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-12 10:09:24 +02:00
Thomas GöttgensandGitHub a1230500fd Merge pull request #1691 from meshtastic/proto-fix
Reinstate GPS Flag
2022-09-12 10:09:07 +02:00
Thomas Göttgens 17db87e042 implement #1542 2022-09-12 10:08:32 +02:00
Thomas Göttgens 42d2986cb8 Reinstate GPS Flag 2022-09-12 09:37:21 +02:00
Thomas Göttgens cc054a13e2 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-12 09:25:04 +02:00
60b4dbfdcd More default inits. (#1689)
* More default inits.

* update protobufs

* Try checking has_device first

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-09-11 08:36:47 -05:00
Sacha WeatherstoneandGitHub c446a0f222 Merge branch 'master' into ESPIDF-Rollup 2022-09-11 10:45:27 +10:00
Ben Meadors f98e96cf1b Slots for upcoming telemetry sensor support 2022-09-10 17:28:01 -05:00
Thomas GöttgensandGitHub 3102777a71 Update platformio.ini 2022-09-10 20:53:23 +02:00
Thomas GöttgensandGitHub ed95f382cf Merge branch 'master' into ESPIDF-Rollup 2022-09-10 20:39:54 +02:00
Ben MeadorsandGitHub 7f18c0fb77 Init default intervals (#1688)
* Init default intervals

* Spacing

* move isrouter check

* Line break

* Oops
2022-09-10 12:35:36 -05:00
Sacha WeatherstoneandGitHub 52e4f93760 Merge branch 'master' into ESPIDF-Rollup 2022-09-10 22:13:56 +10:00
Sacha WeatherstoneandGitHub 0167304300 Merge pull request #1656 from meshtastic/pref_defaults
Set `config.lora.hop_limit` to `HOP_RELIABLE`
2022-09-10 18:24:27 +10:00
Sacha WeatherstoneandGitHub 7aaca3d486 Merge branch 'master' into pref_defaults 2022-09-10 18:11:16 +10:00
Thomas Göttgens bf3306fbc8 use the new ESP Framework for our older boards too 2022-09-09 22:31:30 +02:00
Thomas GöttgensandGitHub e375a8460b Merge pull request #1676 from lewisxhe/master
Add tbeam esp32s3 version support, replace AXP202X_Library with XPowersLib.
2022-09-09 22:01:20 +02:00
Thomas GöttgensandGitHub ff88900982 wrong name for constant in merge 2022-09-09 21:49:54 +02:00
Thomas GöttgensandGitHub 7f293bfda3 Merge branch 'master' into master 2022-09-09 21:39:29 +02:00
Ben MeadorsandGitHub 99de0a76a5 Temporary hack (undo after 1.3.41 release) 2022-09-09 13:54:03 -05:00
Ben MeadorsandGitHub 47ffb9c70d Make a change to trigger CI (#1686) 2022-09-09 13:41:01 -05:00
Thomas GöttgensandGitHub 1231f926ea Merge pull request #1684 from meshtastic/proto-shakeup
Adapt to new protobufs - TODO: factory_reset rewire
2022-09-09 13:26:59 +02:00
Thomas Göttgens e05e888fca Update admin config field 2022-09-09 13:14:15 +02:00
Thomas Göttgens 03580f5be8 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-09-09 13:11:23 +02:00
Thomas GöttgensandGitHub 90dabfea30 Merge pull request #1685 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-09-09 13:11:01 +02:00
caveman99andGitHub c8d7b1aba0 [create-pull-request] automated change 2022-09-09 11:10:31 +00:00
Thomas Göttgens 6065ef3a54 catch renamed targets 2022-09-09 13:04:37 +02:00
Thomas Göttgens 86c7eefc91 add missing files 2022-09-09 12:55:31 +02:00
Thomas Göttgens f7b12f0695 Adapt to new protobufs - TODO: factory_reset rewire 2022-09-09 12:51:41 +02:00
Thomas GöttgensandGitHub 0c46ad91ef Merge pull request #1683 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-09-09 12:04:43 +02:00
caveman99andGitHub 96cab75ccd [create-pull-request] automated change 2022-09-09 10:04:11 +00:00
Thomas GöttgensandGitHub a7138b7213 Merge pull request #1682 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-09-09 11:20:51 +02:00
caveman99andGitHub 11590e33d3 [create-pull-request] automated change 2022-09-09 09:19:18 +00:00
lewishe a3a92d2d13 Remove unnecessary edits 2022-09-08 10:54:33 +08:00
lewishe 2088036521 Differentiate t-beam-s3 GNSS from t-echo 2022-09-08 10:52:03 +08:00
lewishe 7d0e16d1b6 Add some explanations about PMU and prevent null pointer judgment 2022-09-08 10:45:12 +08:00
lewishe 35c77ef99c Simplify HAS_PMU macro definition 2022-09-08 10:36:53 +08:00
lewishe 9244d03cf9 Rename axp192_found to pmu_found to avoid confusion 2022-09-08 10:32:12 +08:00
lewishe a50a461675 Change mesh.pd.h t-beam-s3-core index to 12 2022-09-08 10:28:53 +08:00
Thomas GöttgensandGitHub f78911666e Merge branch 'master' into master 2022-09-07 20:25:38 +02:00
f1e6585726 [create-pull-request] automated change (#1678)
Co-authored-by: thebentern <thebentern@users.noreply.github.com>
2022-09-07 09:18:37 -05:00
lewishe b8f862ac46 Merge remote-tracking branch 'origin/master' 2022-09-07 09:48:39 +08:00
Ben MeadorsandGitHub 94a572aee6 Merge branch 'master' into pref_defaults 2022-09-06 20:25:20 -05:00
Ben MeadorsandGitHub e87ecc210a Wifi enabled plumbed in (#1677)
* Wifi enabled

* Wifi requires reboot

* Increment DEVICESTATE_CUR_VER
2022-09-06 14:06:44 -05:00
lewis heandGitHub a9e7a33473 Merge branch 'master' into master 2022-09-06 18:53:22 +08:00
lewishe 5621719eef Add tbeam esp32s3 version support, replace AXP202X_Library with XPowersLIb 2022-09-06 15:58:33 +08:00
cb3010b58c OLED Cyrillic Support for v1.3 (#1640)
* Extended ASCII codes and cyrillic support

(cherry picked from commit e977840805)

* Fixed `ё`, `Ё` letters

(cherry picked from commit 2f4a2ccb2f)

* Fixed `customFontTableLookup` execution flow

(cherry picked from commit 377f909f36)

* [OLED] Specifying the language by defining it in `platformio.ini`

(cherry picked from commit ddd8132b24)

* [OLED] localization guide

(cherry picked from commit a3267c886f)

* [OLED] Cyrillic support

Localization guide has been moved to https://github.com/meshtastic/Meshtastic/tree/master/docs/developers/Firmware

https://meshtastic.org/docs/developers/Firmware/oled-l10n-guide

Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-09-04 15:00:10 -05:00
Ben MeadorsandGitHub a27a07956f Merge branch 'master' into pref_defaults 2022-09-03 22:10:37 -05:00
Ben MeadorsandGitHub 285ba9639e Fix screen on secs (#1673)
* Fix screen on secs

* getIntervalOrDefaultMs

* Display correction

* Paren
2022-09-03 22:10:11 -05:00
Ben MeadorsandGitHub f54f60c31c Merge branch 'master' into pref_defaults 2022-09-03 14:06:27 -05:00
Ben MeadorsandGitHub 84e438f72f Mqtt json_enabled (#1672)
* Payload variants

* Waypoints and fixes

* Remove json send to mesh. I think protobuf messages already do that

* whoops

* Added json_enabled mqtt config
2022-09-03 14:06:10 -05:00
lewis f767fd5075 Modified to be compatible with the new version of sdk, compatible with esp32s3 2022-09-03 23:38:40 +08:00
lewis heandGitHub 8fb8212434 i2cScan probe adds another ssd1306 subclass new to output logs correctly (#1671) 2022-09-03 07:26:49 -05:00
lewis 8d5ffb7262 i2cScan probe adds another ssd1306 subclass new to output logs correctly 2022-09-03 16:44:32 +08:00
Neil HaoandGitHub 70e1a208d5 'snow_screen_hotfix' (#1670) 2022-09-02 19:43:33 -05:00
Ben MeadorsandGitHub 9d3cac7cdb MQTT Json Payload variants (#1667)
* Payload variants

* Waypoints and fixes

* Remove json send to mesh. I think protobuf messages already do that

* whoops
2022-09-01 17:54:24 -05:00
Ben MeadorsandGitHub 84f1edab18 Merge branch 'master' into pref_defaults 2022-08-30 13:28:53 -05:00
Thomas GöttgensandGitHub 221843e176 Merge pull request #1663 from lewisxhe/master 2022-08-30 20:27:41 +02:00
Ben MeadorsandGitHub 0063ae6512 Merge branch 'master' into pref_defaults 2022-08-30 08:24:34 -05:00
lewishe 1922034c44 Add t-beam sx1268 support 2022-08-30 11:59:57 +08:00
Ben MeadorsandGitHub 7f586f7099 Better logging and cleanup (#1662) 2022-08-29 07:31:02 -05:00
lewis heandGitHub 0efa1b25c5 Add t-echo sx1268 support (#1657) 2022-08-29 07:26:17 -05:00
Sacha Weatherstone 1b25ea714d Set config.lora.hop_limit to HOP_RELIABLE 2022-08-27 19:03:26 +10:00
fd27a40edb Reboot after factory reset (#1653)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-08-25 12:07:20 -05:00
Ben MeadorsandGitHub 1013aff9b6 Screen changes and fixes (#1651)
* Fixed bluetooth reinit bug

* Remove screen transition ms

* Whoops

* hasScreen is smarter now

* Oops
2022-08-25 11:25:05 -05:00
Ben MeadorsandGitHub d7e5eb4d22 Upgrade unishox-2 to 1.0.3 (#1650) 2022-08-25 07:12:38 -05:00
Ben MeadorsandGitHub 9a03b2e49d Same as NodeDB position_broadcast_secs bug but different (#1645)
* intervalMs
2022-08-24 17:29:09 -05:00
e7831f13c5 [create-pull-request] automated change (#1641)
Co-authored-by: thebentern <thebentern@users.noreply.github.com>
2022-08-24 17:28:43 -05:00
Ben Meadors ddc3727155 Fixed NRF52 bluetooth 2022-08-23 14:03:10 -05:00
Ben Meadors ef9bfc9104 Enable external notification module for nrf52 2022-08-23 13:16:20 -05:00
Ben Meadors 3bb645d4fe Fixed huge nodeinfo bug 2022-08-23 13:12:41 -05:00
Ben MeadorsandGitHub 8f99258fc4 Update main_matrix.yml 2022-08-22 18:31:56 -05:00
Ben MeadorsandGitHub b54073a8a1 Bluetooth mode unification and behavior tweaks (#1636)
* Esp32 bluetooth modes

* Comment

* Gutting bluetooth

* Cleanup

* Security

* Testing

* NRF bluetooth security

* Reboot on saved lora or bluetooth settings

* Cleanup

* Fixes

* Stub for platforms without screens

* Fixed just-works in esp32

* Cleanup

* Display device name in boot screen

* Added waypoint module routing

* chmod

* Words

* Protos

* Backing out partition changes for testing

* Revert "Backing out partition changes for testing"

This reverts commit 191ed6489c.

* Chmod PR artifacts

* Trying setInitialState again

* Revert "Trying setInitialState again"

This reverts commit 703eac7277.

* External notification module

* Cleanup

* Pin display formatting
2022-08-22 16:41:23 -05:00
Ben MeadorsandGitHub c85e9f53c7 Chmod PR artifacts 2022-08-20 12:53:34 -05:00
Ben MeadorsandGitHub 4cfc229e77 Update device-update.sh 2022-08-19 13:35:54 -05:00
Ben MeadorsandGitHub bbd7c5063d Removed ota erasure 2022-08-19 13:34:41 -05:00
Ben MeadorsandGitHub 05df849a6d Repartitioned 2022-08-19 13:33:58 -05:00
Ben MeadorsandGitHub ccbc01a753 Repartitioned 2022-08-19 13:33:02 -05:00
Sacha WeatherstoneandGitHub d6d936b5d2 Remove OTA partition (#1635) 2022-08-18 16:19:32 -05:00
Ben MeadorsandGitHub b028af0d82 Bluetooth modes (#1633)
* Formatting and comments

* Esp32 bluetooth modes

* Comment
2022-08-16 20:42:43 -05:00
Ben MeadorsandGitHub 86d3759f55 New bluetooth config protos and canned messages consolidation (#1632)
* Bluetooth and canned messages refactor

* More can of worms messages

* Set has_bluetooth and default pin

* Defaults
2022-08-15 21:06:55 -05:00
aadaf332cf add stm32wl5e platform and wio-e5 variant (#1631)
Co-authored-by: Peter Lawrence <12226419+majbthrd@users.noreply.github.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-08-15 07:54:45 -05:00
Ben MeadorsandGitHub 4dea95d03f Update version.properties 2022-08-14 20:22:52 -05:00
Ben MeadorsandGitHub 1253abd138 Syntax error 2022-08-14 15:56:55 -05:00
Ben MeadorsandGitHub 80e3cee006 NimBLE enhanced logging (do not merge) (#1629)
* Change log level to debug

* Don't reinit active bluetooth services

* Chmod +x before zip and adding to release
2022-08-14 15:27:21 -05:00
Ben MeadorsandGitHub ca9113ad05 Update version.properties 2022-08-14 15:16:47 -05:00
GUVWAFandGitHub 63c8f15d38 Resend implicit ACK for a repeated broadcast (#1628) 2022-08-13 10:09:43 -05:00
Ben MeadorsandGitHub 73a1ea59f4 Update BMP280Sensor.cpp (#1627) 2022-08-12 20:11:32 -05:00
Ben MeadorsandGitHub 97712a9dc4 Update ESP32Bluetooth.cpp (#1625)
* Update ESP32Bluetooth.cpp

* Update ESP32Bluetooth.h
2022-08-12 14:14:14 -05:00
Ben MeadorsandGitHub 20e43fcf34 Update version.properties 2022-08-12 13:55:02 -05:00
f66c8572b4 use fixed-size buffer in RedirectablePrint::vprintf() (#1622)
Co-authored-by: Peter Lawrence <12226419+majbthrd@users.noreply.github.com>
Co-authored-by: Garth Vander Houwen <garthvh@yahoo.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-08-12 13:41:16 -05:00
Ben MeadorsandGitHub 64f852e3f7 Update main_matrix.yml 2022-08-12 07:21:20 -05:00
Ben MeadorsandGitHub ea90e4d2de Update main_matrix.yml 2022-08-12 07:04:36 -05:00
Ben Meadors dd720f2fe6 Tweak 2022-08-11 19:23:51 -05:00
Ben MeadorsandGitHub 808fef7e91 Update main_matrix.yml 2022-08-11 18:50:02 -05:00
Ben Meadors 70e6dc3c67 chmod 2022-08-11 17:54:48 -05:00
Ben Meadors 279149e40f version.properties bump 2022-08-11 17:35:32 -05:00
Ben Meadors 4588995fba Chmod bump_version 2022-08-11 16:30:22 -05:00
Ben MeadorsandGitHub 11ae248c5e Update main_matrix.yml 2022-08-11 16:19:27 -05:00
Ben MeadorsandGitHub a0a5147c42 Update main_matrix.yml 2022-08-11 15:58:16 -05:00
Ben MeadorsandGitHub b8aac2c5b6 Create bump_version.py 2022-08-11 15:27:44 -05:00
Ben MeadorsandGitHub de22f20876 Turn region screen back on (#1621) 2022-08-11 14:24:35 -05:00
Ben MeadorsandGitHub 9b5211dc65 Syntax 2022-08-11 09:03:18 -05:00
Ben MeadorsandGitHub 0b4fb72d58 Guard the assets (#1618)
* Guard the assets

* Indicated legacy build-all

* Hopefully fixed
2022-08-11 08:56:38 -05:00
Ben Meadors 7e03019cc4 Zip elfs 2022-08-11 07:22:19 -05:00
Ben Meadors 780f4383f4 Trying elves again 2022-08-11 07:07:04 -05:00
Ben Meadors 8148f06773 Paths 2022-08-10 20:59:45 -05:00
Ben Meadors d5780af362 Elves live in trees 2022-08-10 20:24:37 -05:00
Ben Meadors 82ed7a2084 Elves are released 2022-08-10 20:09:01 -05:00
Ben Meadors dd5fd3744d Debug elfs 2022-08-10 19:25:27 -05:00
Ben Meadors afb5fca6e1 Correct path 2022-08-10 19:21:59 -05:00
Ben Meadors 95d75fdfee Bins 2022-08-10 19:06:31 -05:00
Ben Meadors 029a6b16ba Release the correct archiva 2022-08-10 18:47:06 -05:00
Ben Meadors 9be3099ca6 Remove release workflow 2022-08-10 18:10:15 -05:00
Ben Meadors b6126e6e63 Disable release workflow 2022-08-10 18:07:11 -05:00
Ben MeadorsandGitHub d6dfdc314e Update version.properties 2022-08-10 18:05:32 -05:00
Ben Meadors 78666e9b36 Oops 2022-08-10 18:00:41 -05:00
Ben Meadors 3abba0ce39 Release in CI hopefully 2022-08-10 17:59:47 -05:00
Ben Meadors 2c8e030b3d Bump whitespace for build 2022-08-10 16:32:27 -05:00
Ben Meadors eed7408f00 Remove checks from pico for now 2022-08-10 16:28:11 -05:00
Ben Meadors cabd1eb8c0 plz work 2022-08-10 16:17:49 -05:00
Ben Meadors f46c11a047 Line break 2022-08-10 16:12:35 -05:00
Ben Meadors cdd5e16e25 Path 2022-08-10 16:10:03 -05:00
Ben Meadors a6c9a819f8 Chmod path 2022-08-10 16:05:10 -05:00
Ben Meadors 2e72397898 Chmod 2022-08-10 16:03:41 -05:00
Ben Meadors f554226226 Add print back 2022-08-10 15:53:19 -05:00
Ben Meadors 2d1897a36f chmod 2022-08-10 15:52:53 -05:00
Ben MeadorsandGitHub fe1ed3f284 Pico build in PR (#1617)
* Pico build in PR

* Missed refs

* Update main_matrix.yml
2022-08-10 15:33:42 -05:00
Ben MeadorsandGitHub 3251cd510a Bump version 2022-08-10 13:11:32 -05:00
Ben MeadorsandGitHub 7d0411cd15 Esp32 NimBLE experiments (#1613)
* Delete callbacks on bleServer on destruct

* Trying things
2022-08-10 12:44:52 -05:00
Thomas GöttgensandGitHub 1d1ccd6b19 Merge pull request #1615 from meshtastic/src-cleanup
Put a bit of order in the src directory
2022-08-10 16:04:44 +02:00
Thomas GöttgensandGitHub 3b8566747c Merge branch 'master' into src-cleanup 2022-08-10 15:47:08 +02:00
Thomas GöttgensandGitHub 3cc584d855 Merge pull request #1616 from neilhao/master
'Station-g1-patch1'
2022-08-10 15:46:26 +02:00
neil 90d3cc2ff8 'Station-g1-patch1' 2022-08-10 19:26:43 +08:00
Thomas GöttgensandGitHub d125b0ec3c Merge branch 'master' into src-cleanup 2022-08-10 11:39:47 +02:00
Thomas Göttgens 5e842dd735 Put a bit of order in the src directory, group and name things appropriately 2022-08-10 11:31:29 +02:00
Thomas GöttgensandGitHub bbc0baa31d Merge pull request #1611 from meshtastic/RP2040-Platform
Raspberry Pi Pico target (with sparkfun lora hat)
2022-08-10 10:14:43 +02:00
Thomas GöttgensandGitHub 31788feab1 Update platformio.ini 2022-08-10 10:03:47 +02:00
Thomas Göttgens 2c37be58ac Merge branch 'RP2040-Platform' of github.com:meshtastic/Meshtastic-device 2022-08-10 10:01:58 +02:00
Thomas GöttgensandGitHub 836782b3c1 Merge branch 'master' into RP2040-Platform 2022-08-10 10:01:36 +02:00
Thomas Göttgens cfc44cd608 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-08-10 10:00:40 +02:00
Thomas Göttgens 519f31ed60 fix portduino build 2022-08-10 10:00:23 +02:00
Sacha Weatherstone e04d6b3f56 Update protobufs 2022-08-09 12:22:46 +10:00
Thomas GöttgensandGitHub 25c851a929 Merge branch 'master' into RP2040-Platform 2022-08-08 23:17:33 +02:00
Thomas Göttgens 0c8fb6e27f Raspberry Pi Pico target (with sparkfun lora hat) does compile but needs further work.
Also contains a small fix to make PRIVATE_HW targets build again for nRF52 architectures
2022-08-08 23:11:19 +02:00
Thomas GöttgensandGitHub 8490bdd14e Merge pull request #1609 from meshtastic/AXP192-CLEANUP
Axp192 cleanup
2022-08-08 16:50:57 +02:00
Thomas Göttgens 22a5cf04d3 Another one. 2022-08-08 16:29:34 +02:00
Thomas Göttgens ddc5a59ece Missed one or two 2022-08-08 16:16:50 +02:00
Thomas Göttgens 6382f67b89 Replace TBEAM_V10 macro guards with more appropriate HAS_AXP192. Also eliminates symbol redefinition of AXP192_SLAVE_ADDRESS 2022-08-08 16:13:38 +02:00
Ben MeadorsandGitHub 401b5d92aa 1.3.34 2022-08-08 07:29:36 -05:00
Ben MeadorsandGitHub 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öttgensandGitHub 96ce40040c Merge pull request #1608 from meshtastic/compass-orientation
wire in compass display setting
2022-08-08 09:30:30 +02:00
Thomas Göttgens d0a1aad7d1 wire in compass display setting 2022-08-08 09:00:29 +02:00
Ben MeadorsandGitHub ab0095cb05 1.3.33 release 2022-08-07 16:06:18 -05:00
Ben MeadorsandGitHub 591ae7a803 Change state order to send node info before config (#1606)
* Change state order to send node info before config

* Kill groups
2022-08-07 16:03:58 -05:00
Ben MeadorsandGitHub de47cc55a0 Don't reply with null island (#1605) 2022-08-07 15:08:46 -05:00
Garth Vander HouwenandGitHub 7e6c22f542 Update version.properties 2022-08-06 12:56:10 -07:00
Garth Vander HouwenandGitHub 2fac581fa3 Merge pull request #1602 from meshtastic/WiFi_enum
Combine WIFI state into an enum
2022-08-06 12:55:45 -07:00
Garth Vander HouwenandGitHub 1155727a45 Merge branch 'master' into WiFi_enum 2022-08-06 12:38:19 -07:00
Ben MeadorsandGitHub 1c8e64319c Update nimble to 1.4 (#1600)
* Update nimble version

* Back down a version

* Nimble 1.4

* Change log level of Nimble. Too chatty

* Log level

* Log level of 1 (error)
2022-08-06 14:16:11 -05:00
Sacha Weatherstone ca1e687fd4 update protobufs 2022-08-06 21:29:59 +10:00
Sacha Weatherstone 4c215530f6 Update protobufs 2022-08-06 16:35:52 +10:00
Sacha Weatherstone 472fb6e5b0 Update protobufs & fix build 2022-08-06 16:31:40 +10:00
Garth Vander HouwenandGitHub 00846439d0 Update version.properties 2022-08-05 16:52:10 -07:00
Ben MeadorsandGitHub a10e56265b Update nimble version (#1599)
* Update nimble version

* Back down a version
2022-08-05 16:11:22 -05:00
Ben MeadorsandGitHub 9fe2ddb082 1.3.30 2022-08-04 07:33:02 -05:00
Thomas GöttgensandGitHub a9ad314307 Merge pull request #1551 from loodydo/loodydo-Compass-Fix
Update Screen.cpp
2022-08-04 11:34:38 +02:00
Thomas GöttgensandGitHub 688ac3f8ee Merge branch 'master' into loodydo-Compass-Fix 2022-08-04 11:01:02 +02:00
Thomas GöttgensandGitHub e79ef0dd35 Merge pull request #1596 from meshtastic/eink-speedup
Skip unneccessary EINK update
2022-08-04 11:00:48 +02:00
Thomas Göttgens 9bc2b4d8d7 Skip unneccessary EINK update 2022-08-04 10:35:40 +02:00
Thomas GöttgensandGitHub 720cd62943 Merge pull request #1572 from meshtastic/patch1
Tryfix LED T-Echo
2022-08-04 10:14:47 +02:00
Thomas GöttgensandGitHub 4073ba7572 Merge branch 'master' into patch1 2022-08-04 10:02:44 +02:00
Thomas GöttgensandGitHub 39aa7f9880 Merge pull request #1594 from meshtastic/littlefs-rename-fix
Littlefs rename fix
2022-08-04 09:37:34 +02:00
Thomas Göttgens 71a9f46451 change to logical and operator 2022-08-04 09:12:56 +02:00
Thomas Göttgens 18d5712ecd This code was committed by mistake 2022-08-04 09:10:50 +02: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
Thomas Göttgens 7b438cd16b Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-08-04 08:30:35 +02:00
Jm CaslerandGitHub d285a2e70a Merge pull request #1593 from GUVWAF/master
Rebroadcast encrypted messages
2022-08-03 12:28:33 -07:00
GUVWAF 2ad9e238e2 RoutingModule can handle encrypted packets 2022-08-03 19:08:23 +02:00
Thomas Göttgens 2d2f306982 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-08-03 15:18:29 +02:00
Ben MeadorsandGitHub 7afc14991e Bump for release 2022-08-03 07:38:20 -05:00
Ben MeadorsandGitHub 86095323e5 Add station-g1 to PR build (#1588) 2022-08-03 07:36:29 -05:00
Ben MeadorsandGitHub 01ac8d10b5 Add station-g1 to release (#1589) 2022-08-03 07:28:43 -05:00
Ben MeadorsandGitHub 874d308b50 Only save devicestate on GPS reset (#1587) 2022-08-03 07:16:41 -05:00
Thomas GöttgensandGitHub 1f8878bd89 Merge branch 'master' into loodydo-Compass-Fix 2022-08-03 11:37:48 +02:00
Thomas GöttgensandGitHub b39b58c87b Merge branch 'master' into patch1 2022-08-03 11:37:36 +02:00
Thomas GöttgensandGitHub fab20f5acf Merge pull request #1584 from neilhao/master
'station-g1'
2022-08-03 10:44:35 +02:00
Thomas GöttgensandGitHub 21f75686a4 Merge branch 'master' into master 2022-08-03 10:15:57 +02:00
Neil HaoandGitHub 4ad2e58047 Update mesh.pb.h 2022-08-03 16:15:11 +08:00
Thomas GöttgensandGitHub e26975ca12 Merge pull request #1586 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-08-03 10:14:28 +02:00
Neil HaoandGitHub 47da3b695a Update mesh.pb.h 2022-08-03 16:13:21 +08:00
caveman99andGitHub 151321ac3c [create-pull-request] automated change 2022-08-03 08:09:05 +00:00
neil faac761dc0 'station-g1' 2022-08-03 04:23:32 +08:00
Thomas Göttgens 5e2acc43f5 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-08-02 10:03:16 +02:00
Thomas GöttgensandGitHub 25a229ce85 Merge branch 'master' into loodydo-Compass-Fix 2022-08-02 09:39:29 +02:00
Garth Vander HouwenandGitHub 41f9541f95 Update version.properties 2022-08-01 16:06:27 -07:00
d64c552865 Rebroadcast direct message until (implicit) ACK (#1578)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-08-01 16:59:50 -05:00
Thomas GöttgensandGitHub 785c2b32da Merge pull request #1583 from tschundler/fixdef
Respect GPS pins set in variant.h
2022-08-01 08:54:28 +02:00
Ted Schundler ba9d52da25 Respect GPS pins set in variant.h 2022-07-31 19:06:48 -07:00
Ben MeadorsandGitHub 44ffdc5172 Send to phone like position packets (#1582) 2022-07-31 11:13:12 -05:00
Thomas GöttgensandGitHub edd6f049cf Merge branch 'master' into patch1 2022-07-31 16:14:33 +02:00
Ben MeadorsandGitHub 97684c6c73 Add bmp-280 support (#1581) 2022-07-31 08:52:47 -05:00
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
Thomas Göttgens 69ac8c0353 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-07-31 10:32:14 +02:00
fd27a814b7 Don't send me to null island, please (#1576)
* Don't send me to null island, please

* Typo

Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
2022-07-30 07:36:21 -05:00
neilhaoandGitHub f0518bc99a 'BATTERY_SENSE_SAMPLES' (#1577) 2022-07-30 07:12:28 -05:00
Ben MeadorsandGitHub 13a287ce5c firmare (#1575) 2022-07-29 17:58:42 -05:00
Ben MeadorsandGitHub 7e7872605b Lots of environmental telemetry sensor cleanup (#1574) 2022-07-29 12:39:46 -05:00
Ben MeadorsandGitHub a41735544b Merge branch 'master' into loodydo-Compass-Fix 2022-07-28 07:25:56 -05:00
Thomas Göttgens dcc6a4b5e7 Tryfix LED T-Echo 2022-07-28 09:37:16 +02:00
Jm CaslerandGitHub c88ba583c6 Bump to .27 2022-07-25 11:07:16 -07:00
Thomas GöttgensandGitHub b36cd32c03 Merge pull request #1563 from meshtastic/patch1
Fix formula to consider Bandwidth in kHz
2022-07-21 10:20:41 +02:00
Thomas Göttgens 43733ce150 Fix formula to consider Bandwidth in kHz 2022-07-21 10:07:08 +02:00
Jm CaslerandGitHub 0010231172 Update to .26 2022-07-19 09:43:08 -07:00
Jm CaslerandGitHub 50300957db Merge pull request #1561 from mc-hamster/master
Updated the frequency selection formula
2022-07-19 09:38:11 -07:00
Jm CaslerandGitHub 07d4773722 Merge branch 'meshtastic:master' into master 2022-07-19 07:37:12 -07:00
Jm Casler 62aa740c93 Updated channel selection formula 2022-07-19 07:36:55 -07:00
Ben MeadorsandGitHub c292e539d4 Merge branch 'master' into loodydo-Compass-Fix 2022-07-17 18:27:35 -05:00
Jm CaslerandGitHub 4de6d5bdb0 Merge pull request #1560 from mc-hamster/master
Allow range test module to loop back messages
2022-07-16 11:56:17 -07:00
Jm cf4c814b59 Allow range test module to loop back messages 2022-07-16 08:08:10 -07:00
Jm CaslerandGitHub ca8e307976 Merge pull request #1559 from mc-hamster/master
fix comments in smart position
2022-07-16 07:58:21 -07:00
Jm CaslerandGitHub b51b7d3eb7 Merge branch 'meshtastic:master' into master 2022-07-16 07:57:51 -07:00
Jm ea7da3178b Fixed comment 2022-07-16 07:57:35 -07:00
Jm CaslerandGitHub 3011d09c8c Merge pull request #1557 from kokroo/master
Allow up to 500mW transmission power for EU868 region
2022-07-15 08:40:36 -07:00
Shiv Kokroo d179f02519 Removed comment about frequency hopping
Removed comment about frequency hopping due to lack of universal hardware support
2022-07-15 16:37:53 +02:00
Shiv Kokroo 67a7056025 Change page number to section for reference document 2022-07-15 16:37:01 +02:00
Shiv Kokroo 930b023d10 Allow up to 500mW transmission power for EU868 region
The European Union regulations clearly state that the power limit for this frequency range is 500 mW, or 27 dBm. goTenna Mesh uses the same frequency range and power limit too.

It also states that we can use interference avoidance and spectrum access techniques to avoid a duty cycle.

It might be worthwhile in the future to implement frequency hopping to avoid duty cycling.

(Please refer to page 69 in the following document)
        https://ec.europa.eu/growth/tools-databases/tris/index.cfm/ro/search/?trisaction=search.detail&year=2021&num=528&dLang=EN
2022-07-15 16:06:41 +02:00
loodydoandGitHub 4daf2cc3fa Merge branch 'meshtastic:master' into loodydo-Compass-Fix 2022-07-14 22:00:13 -06:00
Ben MeadorsandGitHub 85f46d3231 Bump to 1.3.25 for release 2022-07-11 13:18:58 -05:00
Ben MeadorsandGitHub d56094fb7c Set last gps coordinates after comparison (#1556)
* Set last gps coordinates after comparison

* Wrong spot
2022-07-11 13:18:02 -05:00
loodydoandGitHub 9c21064634 Update Screen.cpp
Fixed variable shadowing
2022-07-09 11:47:50 -06:00
loodydoandGitHub 20d7d1b162 Update Screen.cpp
Add option to switch between static/non-static North.
2022-07-09 11:38:41 -06:00
loodydoandGitHub 97a2bf6221 Merge branch 'meshtastic:master' into loodydo-Compass-Fix 2022-07-09 10:57:20 -06:00
Jm CaslerandGitHub dff69157d6 bump to 24 2022-07-08 17:57:08 -07:00
Jm CaslerandGitHub 38088253f8 disable welcome screen 2022-07-08 17:56:49 -07:00
Ben MeadorsandGitHub 7485c312dd Merge branch 'master' into loodydo-Compass-Fix 2022-07-06 07:03:48 -05:00
Jm CaslerandGitHub 0e560b376f Merge pull request #1535 from mc-hamster/master
Add ability to adjust frequency by config.lora.frequency_offset
2022-07-05 19:56:24 -07:00
Jm CaslerandGitHub 6ff5ada7d6 Merge branch 'master' into loodydo-Compass-Fix 2022-07-05 19:23:12 -07:00
loodydoandGitHub cf331dc58b Update Screen.cpp 2022-07-04 13:16:29 -06:00
Ben MeadorsandGitHub 8c2af4f3d5 Merge branch 'master' into master 2022-07-04 13:19:56 -05:00
Ben MeadorsandGitHub d7d574e0a7 Screen for voltage / current (#1547)
* Add voltage + current measurements

* mA instead of amp
2022-07-03 11:10:41 -05:00
Ben MeadorsandGitHub 5462d84bfc Bump for release 2022-07-02 14:51:50 -05:00
Ben MeadorsandGitHub 1efcd5e125 Merge branch 'master' into master 2022-07-02 14:44:40 -05:00
Ben MeadorsandGitHub 9fd7abf3d4 Actually save nodeDb after we init (#1546) 2022-07-02 10:16:48 -05:00
Ben MeadorsandGitHub 4a08f86f96 Oops (#1545) 2022-07-02 09:25:01 -05:00
Ben MeadorsandGitHub 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
f8ee1ac4f9 Update GeoCoord.cpp (#1540)
Adding clarification to comments on GeoCoord::bearing function.

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-07-02 07:05:10 -05:00
f26441727c Update MQTT.cpp (#1534)
Fix returning pointer to local variable that will become invalid when returning.

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-07-02 06:53:15 -05:00
Ben MeadorsandGitHub c725a6b65f Bump for next tech preview release 2022-06-29 20:17:51 -05:00
Ben MeadorsandGitHub 9c6da233b9 Phoneapi moduleconfig (#1538) 2022-06-29 19:41:43 -05:00
0f2aa7660d [create-pull-request] automated change (#1537)
Co-authored-by: thebentern <thebentern@users.noreply.github.com>
2022-06-29 19:09:38 -05:00
Jm CaslerandGitHub 004a6f9c25 Merge branch 'master' into master 2022-06-25 22:59:58 -07:00
Jm Casler d81b043f1d Add ability to adjust frequency by config.lora.frequency_offset 2022-06-25 22:43:13 -07:00
Thomas GöttgensandGitHub 9f78dff25f Merge pull request #1532 from meshtastic/patch-1
avoid BLE device names like a123_a123
2022-06-22 15:44:25 +02:00
Thomas Göttgens e7dfd14917 Change recursive delete to be recursive 2022-06-22 15:33:53 +02:00
Thomas Göttgens bc47dd574b avoid BLE device names like a123_a123 2022-06-22 14:26:33 +02:00
Thomas GöttgensandGitHub 41d5ccc29f Merge pull request #1531 from meshtastic/patch-1
Small fixes and inprovements
2022-06-22 12:36:46 +02:00
Thomas Göttgens aead7a23f9 - Put Modemconfig in logical order and fix typo
- non-zero config.lora.bandwidth means a custom radio config, not 'Unknown'
- Enable 'this is a new device, set region' screen again now we can actually set region.
2022-06-22 09:52:08 +02:00
Thomas Göttgens c9fd591942 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-22 09:44:59 +02:00
Jm CaslerandGitHub c81fbd867d Merge pull request #1530 from mc-hamster/master
Add debug to monitor radio reconfiguration for #1014
2022-06-21 22:18:13 -07:00
Jm CaslerandGitHub cfb76290cb Merge branch 'master' into master 2022-06-21 21:52:55 -07:00
Jm Casler 46e13d23d9 Add debug to monitor radio reconfiguration for #1014 - 2022-06-21 21:51:45 -07:00
Jm CaslerandGitHub 45b2c169aa Merge pull request #1529 from mc-hamster/master
Fix typo in the modem presets
2022-06-21 19:34:37 -07:00
Jm Casler 90baf9d8a0 Fix typo in the modem presets 2022-06-21 19:23:07 -07:00
Jm CaslerandGitHub a390fc7ea8 Merge pull request #1528 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-06-21 19:07:36 -07:00
mc-hamsterandGitHub e0f912ab2a [create-pull-request] automated change 2022-06-22 02:06:51 +00:00
Thomas Göttgens 646d6f5615 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-21 10:09:22 +02:00
Jm CaslerandGitHub cf00ac593f Update to 1.3.21 2022-06-20 16:44:33 -07:00
Thomas Göttgens ff9f973a1d Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-20 20:33:43 +02:00
Ben MeadorsandGitHub 7a50ab4de2 Re-init config_state after we switch to nodeinfo (#1526) 2022-06-20 13:28:50 -05:00
Thomas Göttgens c80f260fba Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-20 20:26:13 +02:00
Ben MeadorsandGitHub a7d527c3c3 Pins for m5stack-core 2022-06-20 12:41:03 -05:00
2e2c485f4c M5Stack CoreInk Pins_Arduino.h (#1527)
* Update EInkDisplay2.cpp

* Create pins_arduino.h

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-06-20 12:33:44 -05:00
Ben MeadorsandGitHub 388865aba7 Dashes not underscores 2022-06-20 11:19:20 -05:00
Ben MeadorsandGitHub 21c6e595a1 Update build-all.sh 2022-06-20 11:18:30 -05:00
Ben MeadorsandGitHub 4a2522dbd3 Add m5stack core targets to release 2022-06-20 09:16:00 -05:00
Ben MeadorsandGitHub 877d72cbad Helps if you get the name right 2022-06-20 09:15:30 -05:00
Ben MeadorsandGitHub 63238cb810 Add m5stack core boards to CI 2022-06-20 09:13:27 -05:00
e87c5d8d34 Update EInkDisplay2.cpp (#1524)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-06-20 09:08:35 -05:00
Ben MeadorsandGitHub f9bbbfccb3 Fix typo 2022-06-18 14:03:58 -05:00
Thomas Göttgens 089c91a7ac Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-18 09:48:22 +02:00
Ben MeadorsandGitHub 9a5ff935f9 Bump to 1.3.20 2022-06-17 16:40:33 -05:00
Thomas Göttgens 515a411e8c Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-17 22:37:55 +02:00
Ben MeadorsandGitHub 52f299ec49 Remove is_always_pwoered (#1525) 2022-06-17 13:35:12 -05:00
Ben MeadorsandGitHub 9285316c78 Upgrade to nanopb 0.4.6 (#1523) 2022-06-17 08:37:52 -05:00
Thomas Göttgens cf380e6cb6 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-17 09:01:14 +02:00
Thomas GöttgensandGitHub c3c359c0cb Merge pull request #1519 from meshtastic/LocalConfig
Push of Config-Protos on PhoneAPI init
2022-06-17 08:47:41 +02:00
Thomas GöttgensandGitHub 68465f294a Merge branch 'master' into LocalConfig 2022-06-16 21:59:55 +02:00
Thomas Göttgens f63b876b71 Send config chunks one by one 2022-06-16 21:56:18 +02:00
Thomas GöttgensandGitHub 22fca01323 Merge pull request #1522 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-06-16 21:41:23 +02:00
caveman99andGitHub d4a4bcf91a [create-pull-request] automated change 2022-06-16 19:31:21 +00:00
Thomas GöttgensandGitHub d726ed6e7c Merge pull request #1425 from holdenk/sketch
Configure bluetooth name based on owner's short name
2022-06-16 21:26:39 +02:00
Thomas GöttgensandGitHub 349f6bf502 Merge branch 'master' into sketch 2022-06-16 21:13:19 +02:00
Thomas GöttgensandGitHub 192c10d6d7 Merge pull request #1521 from meshtastic/1510-enhancement-change-default-device-name-from-unknown-xxxx-to-meshtastic-xxxx-to-match-ble-name
Fix #1510
2022-06-16 21:13:09 +02:00
Thomas GöttgensandGitHub be8fb73204 Merge branch 'master' into sketch 2022-06-16 20:59:11 +02:00
Thomas GöttgensandGitHub bc9a4367d1 Fix #1510 2022-06-16 20:58:15 +02:00
Thomas GöttgensandGitHub 3d3511ceeb Change to a different logic 2022-06-16 20:54:50 +02:00
Thomas Göttgens 74e926ef00 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-16 20:44:43 +02:00
Ben MeadorsandGitHub f3a433f906 Merge branch 'master' into LocalConfig 2022-06-16 08:10:20 -05:00
Jm CaslerandGitHub 3c6a2f7bb6 Bump to 1.3.19 2022-06-16 05:24:08 -07:00
Thomas GöttgensandGitHub 1996a2a193 Merge pull request #1520 from meshtastic/radiolib-fix
Tryfix Portduino Radiolib
2022-06-16 12:30:23 +02:00
Thomas Göttgens b40abbf3ad Tryfix Portduino Radiolib 2022-06-16 12:22:01 +02:00
Thomas Göttgens af335e9c06 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-16 09:46:17 +02:00
Jm CaslerandGitHub 8684fd1c49 Bump to .18 2022-06-15 19:00:40 -07:00
Thomas GöttgensandGitHub 49e47f3e6d Let's try this 2022-06-15 21:50:33 +02:00
Thomas Göttgens d0a8a3018d Merge branch 'LocalConfig' of github.com:meshtastic/Meshtastic-device 2022-06-15 20:03:53 +02:00
Thomas Göttgens 7566ee1fea C++ is a weird language... 2022-06-15 20:03:08 +02:00
Thomas GöttgensandGitHub 43d48d4fb9 Merge branch 'master' into LocalConfig 2022-06-15 19:43:47 +02:00
Thomas GöttgensandGitHub 2a6633a666 Merge pull request #1518 from meshtastic/create-pull-request/patch
TEST: Push out LocalConfig Object on app Handshake
2022-06-15 19:43:05 +02:00
Thomas Göttgens 0146761850 TEST - Push of LocalConfig 2022-06-15 19:42:16 +02:00
caveman99andGitHub 0943e5f500 [create-pull-request] automated change 2022-06-15 17:40:08 +00:00
a1dc350231 Changed default baud to 115200 (#1517)
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-06-15 11:44:37 -05:00
Thomas GöttgensandGitHub d5a258cebd Merge pull request #1516 from meshtastic/LocalConfig
add file version to local savefiles
2022-06-15 18:05:52 +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öttgensandGitHub d301144efe Merge pull request #1515 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-06-15 16:45:11 +02:00
caveman99andGitHub 058b5ceddd [create-pull-request] automated change 2022-06-15 14:44:33 +00:00
Thomas GöttgensandGitHub e85baf00c4 Merge pull request #1511 from meshtastic/radiolib-fix
Set TX Power to some meaningful value
2022-06-13 23:24:37 +02:00
Thomas Göttgens 4a6cad6e46 Set TX Power to some meaningful value 2022-06-13 23:00:50 +02:00
Thomas GöttgensandGitHub bc05f98685 Merge pull request #1499 from meshtastic/radiolib-fix
new radiolib version (use upstream)
2022-06-13 21:33:51 +02:00
Thomas Göttgens 6e671d808a Our mod was accepted by RadioLib 2022-06-13 21:25:27 +02:00
Thomas Göttgens 1df3dd5f78 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-13 21:21:46 +02:00
Jm CaslerandGitHub c9822dee93 Update to 1.13.17 2022-06-13 09:38:33 -07:00
Thomas Göttgens e1783df49f Merge branch 'radiolib-fix' of github.com:meshtastic/Meshtastic-device
# Conflicts:
#	src/mesh/RadioLibInterface.h
2022-06-13 16:13:13 +02:00
Thomas Göttgens 6b8afdadc2 New variant of Radiolib patch 2022-06-13 16:10:16 +02:00
Thomas Göttgens f918548e44 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-13 16:08:50 +02:00
a1b07ed6aa Introduce contention window (CW) (#1500)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-06-13 08:21:18 -05:00
Thomas Göttgens b059fb9e8e Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-13 12:23:51 +02:00
Ben MeadorsandGitHub 553b35d0ad Consolidate power saving prefs (#1507)
* Fixed conversion linter warning

* Power saving consolidation

* Whoops
2022-06-12 19:56:32 -05:00
Thomas GöttgensandGitHub 04478081c6 Merge pull request #1508 from meshtastic/crpytfix
Remove nRF Crypt Debug
2022-06-12 23:52:16 +02:00
Thomas Göttgens 7bd07db2a8 Remove nRF Crypt Debug 2022-06-12 23:35:59 +02:00
Thomas Göttgens 5c44c4f772 Remove Debug Code for Encryption 2022-06-12 23:29:27 +02:00
Thomas Göttgens 7ff940409e Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-12 23:28:04 +02:00
Ben MeadorsandGitHub cb5c32490c Merge branch 'master' into radiolib-fix 2022-06-12 15:27:58 -05:00
Thomas GöttgensandGitHub e0b63c6692 Merge pull request #1506 from meshtastic/1504-proposal-default-short-name-to-mac-last-4
implement #1504
2022-06-12 22:05:04 +02:00
Thomas GöttgensandGitHub dc8d1d9a84 implement #1504 2022-06-12 21:52:46 +02:00
Thomas GöttgensandGitHub 710e2694ef Merge branch 'master' into radiolib-fix 2022-06-12 20:32:00 +02:00
Thomas GöttgensandGitHub 7594140afc actual change to our interface 2022-06-12 20:31:23 +02:00
Thomas Göttgens e793d933c6 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-12 20:28:39 +02:00
Thomas GöttgensandGitHub 9d8f9613d4 Merge branch 'master' into sketch 2022-06-12 18:48:08 +02:00
Thomas GöttgensandGitHub 61427528b6 Merge pull request #1505 from meshtastic/caveman99-patch-1
fix C++ warnings
2022-06-12 18:39:46 +02:00
Thomas GöttgensandGitHub 47ad27f9f6 fix C++ warnings
The cast throws errors about ambiguous conversions. There's a prototype of requestFrom(uint8_t address, uint8_t length) so just use that one.
2022-06-12 17:59:16 +02:00
Thomas Göttgens 77f096e56c Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-12 17:37:43 +02:00
Ben MeadorsandGitHub 5106433572 Removed phone_timeout_secs pref references (#1503) 2022-06-12 09:44:23 -05:00
Ben MeadorsandGitHub 4458b470aa Don't enable environmental telemetry by default (#1502)
* INA219 + INA260 support in telemetry

* Protobuf update

* Fixes + debug statement

* Fix size

* Fix conversion from mv

* Added getRegisterValue for i2cscan

* Accidentally left this in

* Removed line
2022-06-12 07:14:33 -05:00
Ben MeadorsandGitHub 90957e6994 INA260 + INA219 sensor support (#1501)
* INA219 + INA260 support in telemetry

* Protobuf update

* Fixes + debug statement

* Fix size

* Fix conversion from mv

* Added getRegisterValue for i2cscan
2022-06-11 16:44:56 -05:00
Thomas GöttgensandGitHub b73fd32f71 Merge branch 'master' into radiolib-fix 2022-06-10 20:39:50 +02:00
Thomas Göttgens 2a3272b7d0 patch radiolib on-the-fly while building. 2022-06-10 20:38:56 +02:00
Ben MeadorsandGitHub 3fd756900a Refactoring some of the i2c boilerplate (#1498)
* Refactoring some of the i2c boilerplate

* Default value

* Debug statement
2022-06-10 12:04:04 -05:00
Thomas GöttgensandGitHub beb8bc9e72 Merge pull request #1496 from benner/fix/NodeDB_without_FSCom
Compile when FSCom is not defined (NodeDB.cpp)
2022-06-07 22:22:20 +02:00
Thomas GöttgensandGitHub 1ad5cdc93c Merge branch 'master' into fix/NodeDB_without_FSCom 2022-06-07 21:57:26 +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öttgensandGitHub 1d0badd468 Merge pull request #1495 from benner/fix/typo
Correctly print script name in platformio-custom.py
2022-06-07 11:39:47 +02:00
Nerijus Bendžiūnas 9e87be4f22 Correctly print script name in platformio-custom.py 2022-06-07 12:26:01 +03:00
Jm CaslerandGitHub 97899aed26 1.3.16 2022-06-06 22:10:18 -07:00
Thomas GöttgensandGitHub 0ee4ba4975 Merge pull request #1494 from meshtastic/fix-1493
fixes power LED on T-Echo and T-Beam
2022-06-06 19:23:23 +02:00
Thomas Göttgens bbcccde787 Merge branch 'fix-1493' of github.com:meshtastic/Meshtastic-device 2022-06-06 19:15:14 +02:00
Thomas Göttgens 42c285bc31 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-06 19:14:43 +02:00
Thomas Göttgens c831242f25 fix nrf build 2022-06-06 19:14:30 +02:00
Thomas GöttgensandGitHub 3c6f36c8f7 Merge branch 'master' into fix-1493 2022-06-06 18:57:51 +02:00
Thomas GöttgensandGitHub dfde6cc9c1 Merge pull request #1490 from meshtastic/CryptFix
Crypt fix. Please leave branch open
2022-06-06 18:57:27 +02:00
Thomas GöttgensandGitHub 7816800012 Merge branch 'master' into CryptFix 2022-06-06 18:49:38 +02:00
Thomas Göttgens ebf132ad21 Bug-1493 2022-06-06 18:48:22 +02:00
Thomas Göttgens 67cf3018b5 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-06 18:27:28 +02:00
Ben MeadorsandGitHub eafbef0c2f Scan for i2c sensors in environmental telemetry if enabled (#1492)
* Scan for i2c sensors in environmental telemetry if enabled

* Update TelemetrySensor.h

* Added surpression.

* Remove suppression and fix real bug

* Interrogate BME sensor id registers
2022-06-05 09:50:06 -05:00
Ben MeadorsandGitHub 4ab831c103 Fix nagging bool linter warnings (#1491) 2022-06-04 07:28:58 -05:00
Thomas GöttgensandGitHub 3df5ec0b11 Merge pull request #1479 from meshtastic/ProtoFix
If we get an unreadable buffer, don't try to process it.
2022-06-04 11:07:00 +02:00
Thomas GöttgensandGitHub c5c2765fb4 Merge branch 'master' into ProtoFix 2022-06-04 10:49:36 +02:00
Thomas Göttgens df9e9bc223 Bugfix for nRF Crypto 90% done, includes heavy debug code, do not merge for now. 2022-06-04 10:37:24 +02:00
Thomas Göttgens 1ff0032c20 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-04 10:35:42 +02:00
Jm CaslerandGitHub 18024f1d25 Merge pull request #1489 from mc-hamster/master
Disabled the unset welcome screen
2022-06-04 01:19:44 -07:00
Jm CaslerandGitHub 313c50d6cf Merge branch 'master' into master 2022-06-03 21:55:27 -07:00
Jm Casler 80e08f6de9 Disabled the unset welcome screen 2022-06-03 21:51:47 -07:00
Jm CaslerandGitHub 5a256323e2 Merge pull request #1488 from mc-hamster/master
Change default screen on to 10 minutes
2022-06-03 20:57:23 -07:00
Jm CaslerandGitHub 45495c51e6 Merge branch 'meshtastic:master' into master 2022-06-03 20:38:28 -07:00
Jm Casler 40ded630d0 Change default screen on to 10 minutes 2022-06-03 20:38:13 -07:00
Jm CaslerandGitHub 432d06741e Update version.properties 2022-06-03 18:49:18 -07:00
Jm CaslerandGitHub 03b7f2f837 Merge pull request #1487 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-06-03 18:47:52 -07:00
mc-hamsterandGitHub 2e1b895791 [create-pull-request] automated change 2022-06-04 01:47:29 +00:00
Jm CaslerandGitHub 9821a0535b Bump to 1.3.14 2022-06-03 14:32:32 -07:00
Thomas Göttgens 0b666b827d Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-06-03 15:38:50 +02:00
Thomas GöttgensandGitHub 235cacf9b9 Merge pull request #1485 from markbirss/master
Update EInkDisplay2.cpp
2022-06-03 15:09:56 +02:00
Mark Trevor BirssandGitHub db28a1562e Update EInkDisplay2.cpp
Fix E-Ink not powering up bug at startup
2022-06-03 14:21:27 +02:00
Jm CaslerandGitHub f61d2d9eb4 Merge pull request #1484 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-06-02 18:12:35 -07:00
mc-hamsterandGitHub 5aef58e87f [create-pull-request] automated change 2022-06-03 01:07:08 +00:00
Thomas GöttgensandGitHub 77a2054254 Merge pull request #1480 from markbirss/master
Add M5Stack CoreInk 1.54 inch e-Ink - HopeRF95 Support
2022-06-01 20:56:05 +02:00
Mark Trevor BirssandGitHub 48ee995e0d Update EInkDisplay2.cpp 2022-06-01 20:33:51 +02:00
Mark Trevor BirssandGitHub c7dfd245e3 Update EInkDisplay2.cpp 2022-06-01 20:31:39 +02:00
Mark Trevor BirssandGitHub 4e813b098a Update platformio.ini 2022-06-01 20:30:21 +02:00
Thomas GöttgensandGitHub e57dbdd26c Merge branch 'master' into master 2022-06-01 20:28:12 +02:00
Mark Trevor BirssandGitHub 9512ea45de Update EInkDisplay2.cpp 2022-06-01 19:27:38 +02:00
Mark Trevor BirssandGitHub 0d09767efd Update variant.h 2022-06-01 18:11:06 +02:00
Mark Trevor BirssandGitHub 5828e6f423 Update variant.h 2022-06-01 18:08:40 +02:00
Mark Trevor BirssandGitHub c7a9ce7f49 Update variant.h 2022-06-01 18:08:13 +02:00
Mark Trevor BirssandGitHub 95f091041b Update variant.h 2022-06-01 17:53:19 +02:00
Mark Trevor BirssandGitHub f33e6a0e66 Update platformio.ini 2022-06-01 17:49:10 +02:00
Mark Trevor BirssandGitHub fe8bfdb762 Update variant.h 2022-06-01 17:48:31 +02:00
Thomas Göttgens e8afd4fb4b If we get an unreadable buffer, don't try to process it. 2022-06-01 17:09:57 +02:00
Ben MeadorsandGitHub 71a43a97cc Bump to 13 2022-06-01 06:06:40 -05:00
Mark Trevor BirssandGitHub b34b26518b Update EInkDisplay2.cpp 2022-06-01 11:28:18 +02:00
Mark Trevor BirssandGitHub b9f25eb85c Update EInkDisplay2.cpp 2022-06-01 11:21:09 +02:00
Mark Trevor BirssandGitHub a7fbe024e4 Create variant.h 2022-06-01 11:12:45 +02:00
Mark Trevor BirssandGitHub 1f7fee8e2a Create platformio.ini 2022-06-01 11:10:49 +02:00
Mark Trevor BirssandGitHub b8e7c6ee7a Update platformio.ini 2022-06-01 11:09:21 +02:00
Ben MeadorsandGitHub 06b2ed4ebe Merge branch 'master' into sketch 2022-05-30 18:07:40 -05:00
Thomas GöttgensandGitHub 32245a1a8d Merge pull request #1477 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-30 21:40:52 +02:00
Thomas Göttgens f6982ca726 fix building with new peotobuf structure. 2022-05-30 21:12:27 +02:00
caveman99andGitHub 03bbc5eff4 [create-pull-request] automated change 2022-05-30 19:00:01 +00:00
Ben MeadorsandGitHub 0767c0b0e8 Converted to jgromes/RadioLib upstream and pegged to latest ref (#1472)
* Converted to jgromes/RadioLib upstream and pegged to latest ref
2022-05-29 19:30:20 -05:00
Thomas GöttgensandGitHub 0d574e35c6 Merge pull request #1473 from meshtastic/LocalConfig
fixed typo in AdminModule
2022-05-29 16:40:14 +02:00
Thomas Göttgens b88e75cf2a Fixed Typo in get Config 2022-05-29 16:31:30 +02:00
Jm CaslerandGitHub 6306c53bfe Bump to .12 2022-05-27 12:21:59 -07:00
Jm CaslerandGitHub 8db57601bf Merge pull request #1471 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-27 12:20:31 -07:00
mc-hamsterandGitHub 1b8830e7df [create-pull-request] automated change 2022-05-27 19:19:57 +00:00
Jm CaslerandGitHub 0411401184 Bump to .11 2022-05-25 20:47:48 -07:00
Ben MeadorsandGitHub 2ee003f2a1 Merge branch 'master' into sketch 2022-05-25 06:33:42 -05:00
Jm CaslerandGitHub 5678221ead Merge pull request #1429 from mc-hamster/compression
Compression
2022-05-24 18:19:11 -07:00
Jm Casler c5f3cad0f9 Fixed missing brackets 2022-05-24 18:06:53 -07:00
Jm Casler f3c15eb6cc Completed compression. Tested between two devices. 2022-05-24 17:42:46 -07:00
Jm CaslerandGitHub e218bba87e Merge branch 'meshtastic:master' into compression 2022-05-24 16:48:28 -07:00
Jm CaslerandGitHub c04d62158b Merge pull request #1469 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-24 08:38:31 -07:00
Thomas GöttgensandGitHub 03affc9e73 Merge branch 'master' into create-pull-request/patch 2022-05-24 10:54:38 +02:00
Thomas GöttgensandGitHub 25bf97316d Merge pull request #1468 from meshtastic/LocalConfig
make sure all segments are enabled and saved
2022-05-24 10:26:26 +02:00
Jm CaslerandGitHub 1ef70a2489 Merge branch 'master' into sketch 2022-05-24 00:23:17 -07:00
Jm CaslerandGitHub 76ef240a3d Merge branch 'master' into LocalConfig 2022-05-24 00:21:46 -07:00
Jm CaslerandGitHub 3f171b29f7 Merge pull request #1466 from LucyHosking/master
Implemented hidden SSID
2022-05-24 00:21:32 -07:00
Jm Casler dca6c27c9d Update from config.payloadVariant to config.wifi 2022-05-23 22:08:33 -07:00
Jm Casler 2631a9324e Update from radioConfig.preferences to config.lora 2022-05-23 22:06:38 -07:00
Jm CaslerandGitHub c64f4bbb11 Merge pull request #97 from meshtastic/new-compression
Update compression branch
2022-05-23 21:19:11 -07:00
Jm CaslerandGitHub 94f7e7037d Merge branch 'compression' into new-compression 2022-05-23 21:18:45 -07:00
mc-hamsterandGitHub a0b4b4efa1 [create-pull-request] automated change 2022-05-24 04:10:51 +00:00
Ben MeadorsandGitHub d68d85590b Merge branch 'master' into master 2022-05-22 07:50:32 -05:00
Thomas Göttgens 800a4200ef make sure all segments are enabled and saved 2022-05-22 13:54:24 +02:00
Thomas GöttgensandGitHub 9c50a76ea2 Merge pull request #1464 from meshtastic/LocalConfig
Segemented config works for me (TM)
2022-05-22 13:41:47 +02:00
Thomas Göttgens 4a41694ec5 Merge branch 'LocalConfig' of github.com:meshtastic/Meshtastic-device 2022-05-22 13:28:32 +02:00
Thomas Göttgens 6bb3861e95 Moduleconfig also changed to localConfig Model. 2022-05-22 13:27:56 +02:00
Thomas Göttgens e8262540d4 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-22 13:06:08 +02:00
Thomas GöttgensandGitHub 2b6f632a50 Merge branch 'master' into master 2022-05-22 13:03:13 +02:00
Thomas GöttgensandGitHub bddab68110 Merge pull request #1467 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-22 13:01:45 +02:00
caveman99andGitHub c4f69cbcc0 [create-pull-request] automated change 2022-05-22 10:59:47 +00:00
Thomas Göttgens 85f5c7a40b Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-22 12:17:09 +02:00
LucyHosking e0c5e4d441 Implemented hidden SSID
https://github.com/meshtastic/Meshtastic-device/issues/1308
2022-05-21 20:10:36 -07:00
Sacha WeatherstoneandGitHub 8dfdc11af9 Merge branch 'master' into LocalConfig 2022-05-22 12:57:26 +10:00
Jm CaslerandGitHub ba1937de39 Merge pull request #1465 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-21 19:14:23 -07:00
mc-hamsterandGitHub 2e45d4f0fd [create-pull-request] automated change 2022-05-22 00:44:37 +00:00
Jm Casler b1f309545e Delete proto 2022-05-21 17:39:50 -07:00
Jm Casler 22764425f7 updating proto submodule to latest 2022-05-21 17:10:24 -07:00
Thomas Göttgens 5e8d49d24b missed one 2022-05-21 22:51:34 +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
Garth Vander HouwenandGitHub 33938f73a6 Merge pull request #1463 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-21 13:01:09 -07:00
caveman99andGitHub e4484270b1 [create-pull-request] automated change 2022-05-21 19:46:36 +00:00
Garth Vander HouwenandGitHub 964510ef52 Merge pull request #1462 from meshtastic/garthvh-patch-1
Update GitHub action Submodule
2022-05-21 12:45:50 -07:00
Garth Vander HouwenandGitHub b108540b08 Update GitHub action 2022-05-21 12:24:50 -07:00
Thomas GöttgensandGitHub db35b92b6f Merge pull request #1461 from meshtastic/UBXFIX
remove duplicate GPS setting
2022-05-21 21:05:14 +02:00
Thomas Göttgens 5d22efd8a8 remove duplicate GPS setting 2022-05-21 20:52:43 +02:00
Thomas GöttgensandGitHub 49ccb77e43 Merge pull request #1457 from meshtastic/UBXFIX
Streamline GPS Init
2022-05-18 18:13:40 +01:00
Thomas Göttgens 3d0d45a695 More UBX stuff from 1.2 2022-05-18 18:29:26 +02:00
Thomas Göttgens 2e39900f78 Merge branch 'UBXFIX' of github.com:meshtastic/Meshtastic-device 2022-05-18 18:18:32 +02:00
Thomas Göttgens 5e82423331 More UBX fixes 2022-05-18 18:16:23 +02:00
Thomas Göttgens dd8111e737 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-18 18:13:51 +02:00
Thomas GöttgensandGitHub 9b02841506 Merge branch 'master' into UBXFIX 2022-05-18 15:19:27 +01:00
Thomas Göttgens 3c5a096873 Streamline GPS Init 2022-05-18 16:16:59 +02:00
Thomas GöttgensandGitHub 93521f7b39 Merge pull request #1454 from meshtastic/t-echo
fix GPS and Buttons on T-Echo and log UBX (1.3)
2022-05-17 20:10:42 +01:00
Thomas Göttgens bdcdc1485c Merge branch 't-echo' of github.com:meshtastic/Meshtastic-device 2022-05-17 20:55:29 +02:00
Thomas Göttgens fdc10acfdd Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-17 20:54:17 +02:00
Thomas Göttgens ac93e3196e Don't try to be too smart 2022-05-17 20:53:57 +02:00
Thomas GöttgensandGitHub e5439c21ab Merge branch 'master' into t-echo 2022-05-17 18:55:35 +01:00
Thomas Göttgens 7f9bb5748e log UBX Init 2022-05-17 19:54:29 +02:00
Thomas Göttgens 894b091553 Fix ubox gps too or at least log errors 2022-05-17 19:48:48 +02:00
Thomas Göttgens 7576270423 switch GPS back to 9600 baud, seems to work better now we only use the 2 sentences 2022-05-17 19:09:12 +02:00
Thomas Göttgens 6b8f83cd71 don't wake t-echo through the touch button 2022-05-17 13:01:15 +02:00
Thomas GöttgensandGitHub fdc3a6e432 Merge pull request #1453 from meshtastic/PIO6-fix
Make PIO6 happy again
2022-05-17 10:42:46 +01:00
Thomas Göttgens 49d8c581bd missed one here as well... 2022-05-17 11:26:03 +02:00
Thomas Göttgens c15da3c104 Make PIO6 happy again 2022-05-17 11:14:21 +02:00
Sacha Weatherstone 12c46ced45 update protobufs 2022-05-13 10:41:05 +10:00
Sacha Weatherstone 3ed9a05ac6 Update max channels in protos & remove batt_lvl from position flags 2022-05-13 10:30:01 +10:00
Sacha Weatherstone 3b4c8ad0e2 fix max message sizes for unused protobufs 2022-05-12 23:12:37 +10:00
Sacha Weatherstone d9e2e09149 Fix NTP server initialization 2022-05-12 23:05:06 +10:00
Sacha Weatherstone 97713b2daa Increased NTP update frequency to 12 hours 2022-05-12 22:45:27 +10:00
Sacha Weatherstone 7799e1b7e6 Increased NTP update frequency to 1024 seconds 2022-05-12 22:06:36 +10:00
Sacha Weatherstone 38913bb661 Consistency fixes & repo cleanup 2022-05-12 20:45:30 +10:00
Sacha WeatherstoneandGitHub 14cbc439ab Update README.md 2022-05-12 20:04:10 +10:00
Sacha WeatherstoneandGitHub 6d15b9b82a Update main_matrix.yml 2022-05-12 20:03:53 +10:00
Sacha Weatherstone 2035ddf5a9 Add ntp server config option, remove old region logic 2022-05-11 18:30:29 +10:00
Thomas GöttgensandGitHub e91dedaab5 Merge pull request #1447 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-05-10 11:03:24 +01:00
Thomas GöttgensandGitHub 54bf02352f Merge branch 'master' into create-pull-request/patch 2022-05-10 10:46:36 +01:00
Thomas GöttgensandGitHub 3f415e3e8e Merge pull request #1448 from meshtastic/M5STACK
Make M5Stack Canon Hardware
2022-05-10 10:45:47 +01:00
Thomas Göttgens 7133e6e89b Use canon HW Identifier for M5 2022-05-10 11:10:32 +02:00
Thomas Göttgens e1d49a3632 Buzzer Support for M5Stack 2022-05-10 11:07:49 +02:00
caveman99andGitHub f26fb9408e [create-pull-request] automated change 2022-05-10 08:20:52 +00:00
Thomas GöttgensandGitHub 1e48989e2d Merge pull request #1446 from meshtastic/RAK14006
Support detecting RAK14006 KB
2022-05-09 20:29:29 +01:00
Thomas Göttgens e48285a33a Support detecting RAK14006 KB 2022-05-09 20:12:49 +02:00
Thomas GöttgensandGitHub 7f0fd642ec Merge pull request #1445 from meshtastic/M5Stack
Support M5Stack
2022-05-09 19:05:46 +01:00
Thomas Göttgens 5ee8c56c94 Support M5Stack with LORA868 (RA01H) Module and TFT Display (PRIVATE_HW, Canon Hardware TBD) 2022-05-09 19:50:39 +02:00
Sacha WeatherstoneandGitHub 4940822ae8 Merge pull request #1444 from GUVWAF/master
Optimize retransmission timer
2022-05-09 09:33:16 +10:00
Sacha WeatherstoneandGitHub 8b42b78033 Merge branch 'master' into master 2022-05-08 00:23:18 +10:00
GUVWAF a7f4263db4 Optimize retransmission timer
Based on airtime of packet + transmit, processing and CAD delays
2022-05-07 15:43:35 +02:00
GUVWAF 348e78718d Call cancelSending in stopRetransmission
This also removes pending packet from txQueue if it was already in there
2022-05-07 15:39:14 +02:00
Sacha Weatherstone 0ec6771cf7 Fix build when BATTERY_PIN is set 2022-05-07 20:47:52 +10:00
Sacha Weatherstone 5e7b372345 Satisfy cppcheck 2022-05-07 20:36:15 +10:00
Sacha Weatherstone 6b0ce6b729 Finish config transition 2022-05-07 20:31:21 +10:00
Sacha Weatherstone c07976438b fix old submodule 2022-05-07 13:37:58 +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
Thomas GöttgensandGitHub b699e5e6cd Merge pull request #1441 from meshtastic/patch-1-1
Enable Malloc Support in nanopb
2022-05-06 21:26:38 +01:00
Thomas GöttgensandGitHub 4fb0cfa909 Enable Malloc Support in nanopb 2022-05-06 22:16:51 +02:00
Thomas GöttgensandGitHub bb5b10eef3 Merge pull request #1440 from meshtastic/NO-SCREEN
Make #define NO_SCREEN work again
2022-05-06 14:50:54 +01:00
Thomas Göttgens b5cc304336 Make #define NO_SCREEN work again 2022-05-06 15:41:37 +02:00
Thomas GöttgensandGitHub 1812843363 Merge pull request #1439 from meshtastic/RAK18001
RAK18001 Buzzer Support
2022-05-06 13:31:37 +01:00
Thomas Göttgens 628740d6d1 Support Buzzer in Slot C 2022-05-06 14:20:46 +02:00
Thomas Göttgens 251365dca7 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-06 14:05:51 +02:00
Ben MeadorsandGitHub 223c706e91 Use meshtastic fork of arduino thread lib 2022-05-05 13:54:21 -05:00
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
Ben MeadorsandGitHub 2b769279ae Moving platform-native into meshtastic fork (#1437) 2022-05-05 13:20:16 -05:00
Thomas Göttgens 8f8eff6f95 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-05 08:33:03 +02:00
Thomas GöttgensandGitHub 02fe597f3f Merge pull request #1432 from meshtastic/patch-1
Forgot the readFromRTC for PCF8563 (T-Echo)
2022-05-04 16:25:47 +01:00
Thomas GöttgensandGitHub 4d611ba2f0 Forgot the readFromRTC for PCF8563 (T-Echo) 2022-05-04 17:06:06 +02:00
Thomas Göttgens 403a0b2ddc Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-05-04 09:17:06 +02:00
Sacha Weatherstone 211273cc08 Fix expected values in config setters 2022-05-04 12:52:44 +10:00
Sacha Weatherstone 8ba0a9bf87 Fix config switch 2022-05-03 22:16:50 +10:00
Sacha Weatherstone f84286d138 Split config structure in two 2022-05-02 22:00:24 +10:00
Jm CaslerandGitHub b980f3e311 Merge branch 'meshtastic:master' into compression 2022-05-01 21:02:07 -07:00
Sacha Weatherstone 399e053ebd workaround for undefined payload type on phoneapi 2022-05-02 13:04:05 +10:00
Jm CaslerandGitHub d6b20ea623 Merge branch 'meshtastic:master' into compression 2022-05-01 19:35:26 -07:00
Ben MeadorsandGitHub 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
Sacha Weatherstone 7ae8601ba5 fix warnings 2022-05-02 10:24:28 +10:00
Sacha Weatherstone 8f038ced15 add handleSetConfig, remove team 2022-05-02 08:53:44 +10:00
Sacha Weatherstone 3a1f20821e Remove team and provision set_config 2022-05-02 08:35:31 +10:00
Sacha WeatherstoneandGitHub 057131b459 Merge pull request #1427 from meshtastic/radioconfig-refactor-telemetry
Radioconfig refactor telemetry
2022-05-02 08:16:06 +10:00
Ben Meadors 1040b0988a Removed unused members causing warnings 2022-05-01 15:37:34 -05:00
Ben Meadors 2ca0290662 Admin message implementation 2022-05-01 15:35:01 -05:00
Ben Meadors 163774bb1f Moved refactored prefs 2022-05-01 14:26:05 -05:00
Ben Meadors 6a8724213e Adafruit bus io is now required for sensor libs 2022-05-01 14:22:04 -05:00
Ben Meadors cf64da21fb Move adc multiplier code into battery pin region to surpress warning 2022-05-01 14:21:30 -05:00
Sacha Weatherstone c0d40895f8 Config rework - Init GetConfigResponse 2022-05-01 16:12:48 +10:00
Sacha Weatherstone 50326fbb6b Config rework - Init getConfig 2022-05-01 12:41:26 +10:00
Sacha Weatherstone 98cd19ea0f Config rework - Init getConfig 2022-05-01 12:39:48 +10:00
Holden Karau ca3192b3dc Clear the existing data before we start advertising 2022-04-30 18:20:41 -07:00
Holden Karau e1f28982cf When configured set meshtastic bluetooth name based on owner shortname. 2022-04-30 14:48:31 -07:00
Mark Trevor BirssandGitHub 8e996e3e63 Enable TXEN and RXEN for Waveshare LoRa Module (#1422)
This change enables RXEN TXEN for the use of the Waveshare Core1262-868M Anti-Interference SX1262 LoRa Module, EU868 Band
https://www.waveshare.com/core1262-868m.htm
2022-04-29 14:23:17 -05:00
Ben MeadorsandGitHub 53cc090814 Move sx1262 fixes upstream (#1421) 2022-04-29 07:46:44 -05:00
Thomas GöttgensandGitHub bfc2d30a46 Merge pull request #1419 from meshtastic/PCF8563
RTC Module support for T-Echo and others with PCF8563
2022-04-28 08:29:07 +02:00
Thomas Göttgens 516dff5b09 RTC Module support for T-Echo and others with PCF8563 2022-04-28 08:18:03 +02:00
mkinneyandGitHub 4df0e910b8 Update main_matrix.yml
add nano-g1
2022-04-27 10:23:20 -07:00
mkinneyandGitHub 3a5f492106 add nano_g1 to build (#1417) 2022-04-27 12:20:10 -05:00
Thomas GöttgensandGitHub 2dbb9075a3 Merge pull request #1408 from Pedestrian11/patch-1
TTGO_T_ECHO to use batteries, PIN_EINK_PWR_ON must be set to high
2022-04-27 15:45:01 +02:00
Thomas GöttgensandGitHub e5715a0048 Merge branch 'master' into patch-1 2022-04-27 15:32:05 +02:00
Thomas GöttgensandGitHub 629db8c718 Fix build errors and add a bit of failsafe 2022-04-27 15:30:27 +02:00
Ben MeadorsandGitHub cc2a84afcd Bump version for release 2022-04-27 07:03:09 -05:00
Thomas GöttgensandGitHub 6c1dc0d71a Merge pull request #1415 from meshtastic/RAK12002
I2C RTC Support (RAK12002)
2022-04-27 11:17:31 +02:00
Thomas Göttgens 9e97fac252 - implement generic support for on-device battery powered RTC Modules.
- implement support for I2C RV-3028 based RTC modules like the RAK12002
- pretty print some debug timestamps
2022-04-27 11:05:08 +02:00
Thomas Göttgens 3a9086dfc5 We may have RAK modules in Slot D pulling IO5 to Low permanently (like the RAK12002 RTC Module). React to assumed Long presses of the device button only 30 seconds after bootup to prevent a reboot loop. This is Particularly important for button-less RAK19003 Baseboard. 2022-04-27 11:02:45 +02:00
Thomas Göttgens a0f34a8d0a Make Debug Log less spammy 2022-04-27 11:00:26 +02:00
359b41d869 Position fwd phone (#1413)
* Correct factory reset code for NRF (from 1.2)

* Changes from 1.2

* Update proto ref

* Whoops

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-04-26 19:40:24 -05:00
Thomas GöttgensandGitHub 04723bd1a0 Merge pull request #1412 from meshtastic/nrf-softcrypt
use a tiny software AES lib if user wants AES-256
2022-04-26 21:45:54 +02:00
Thomas Göttgens 89d6990a92 Merge branch 'nrf-softcrypt' of github.com:meshtastic/Meshtastic-device into nrf-softcrypt 2022-04-26 21:30:21 +02:00
Thomas Göttgens 96f20287ff fix scope error 2022-04-26 21:30:14 +02:00
Thomas GöttgensandGitHub d8ba25747b Merge branch 'master' into nrf-softcrypt 2022-04-26 21:25:01 +02:00
Thomas Göttgens e66c01f0e6 Merge branch 'nrf-softcrypt' of github.com:meshtastic/Meshtastic-device into nrf-softcrypt 2022-04-26 21:24:29 +02:00
Thomas Göttgens aaea2e7456 make cppcheck happy 2022-04-26 21:24:21 +02:00
Ben MeadorsandGitHub 92185e763d Bump version for another 1.3 release 2022-04-26 14:10:17 -05:00
Thomas GöttgensandGitHub 4de5944474 Merge branch 'master' into nrf-softcrypt 2022-04-26 17:52:33 +02:00
Thomas Göttgens 76e48178c8 use a tiny software AES lib if user needs AES-256 2022-04-26 17:50:50 +02:00
Ben MeadorsandGitHub 75e7bccdfb Fix assert execution halt in nrf devices (#1410) 2022-04-26 06:49:05 -05:00
Ben MeadorsandGitHub 3786b1ee15 Reboot implementation for nrf devices (#1411) 2022-04-26 06:48:26 -05:00
Thomas GöttgensandGitHub f2dec07c8d Merge pull request #1409 from meshtastic/gps-check
GPS Fixes
2022-04-26 13:17:04 +02:00
Thomas Göttgens 701707a01b - Bounds Check is working on big integers, don't throw away valid coordinates.
- Set ublox chips back to NMEA mode if they have been configured wrongly before.
2022-04-26 13:00:11 +02:00
PedestrianandGitHub 13fa7c1628 TTGO_T_ECHO to use batteries, PIN_EINK_PWR_ON must be set to high 2022-04-26 17:43:32 +08:00
Thomas Göttgens b957001629 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-04-25 21:38:28 +02:00
Jm CaslerandGitHub 9b6b224af4 Merge branch 'meshtastic:master' into compression 2022-04-25 08:04:51 -07:00
Jm Casler 4785367915 Temp work on compression 2022-04-25 08:02:51 -07:00
Thomas GöttgensandGitHub d640478289 Merge pull request #1405 from meshtastic/rak-hw-crypto
use nRF52 Hardware Cryptography
2022-04-25 11:43:05 +02:00
Thomas GöttgensandGitHub b8b1a5cfb7 Merge branch 'master' into rak-hw-crypto 2022-04-25 11:14:04 +02:00
Thomas Göttgens 770f17f382 use nRF Hardware Cryptography. Removes the need for the sdk-nrfxlib submodule 2022-04-25 11:01:54 +02:00
Sacha WeatherstoneandGitHub 8ea3ebf74b Update README.md 2022-04-25 18:45:47 +10:00
Sacha WeatherstoneandGitHub cbf238652e Update README.md 2022-04-25 16:51:39 +10:00
Thomas GöttgensandGitHub c17cd47689 Update main_matrix.yml (#1402) 2022-04-25 16:48:04 +10:00
Thomas GöttgensandGitHub d2c278a856 Update main_matrix.yml (#1401) 2022-04-25 16:24:08 +10:00
213d9512f1 WIP: unify the RAK targets into one firmware (#1350)
* First steps to unify GPS Lib for RAK 1910 and RAK 12500

* Technicalities. Out with the old and build the new.

* Adapt Matrix

* We use 0.4.5 now

* While we're at it, yank the RAK815, it's EOL

* Satisfy CI - for now

* - yank UBX library, talk to GPS chip with NMEA only.
- more autodetect going on, this time for the Eink Display.

TODO: actually do something with the scan findings.

* i swear this works on windows! :-)

* these are only there to make CI happy

* don't update eink display if not detected.

* Replace Oberon Crypt Library with modified Adafruit Library. This elimintaes the need for the sdk-nfxlib submodule.

* - Revert auto screen selection (incomplete)
- Revert nrF crypto engine (needs more work)
- add separate defines for not-auto-selecting screen lib.

* Define 2 new variants for RAK - with or without epaper

* Update variants

Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
Co-authored-by: Ben Meadors <thebentern@tuta.io>
2022-04-25 15:13:41 +10:00
Andre KirchhoffandGitHub 81588d8bdc Merge pull request #1400 from meshtastic/min_app_version-1.3
update minimum_app_version to 1.3.0
2022-04-24 20:17:23 -03:00
Andre KirchhoffandGitHub 3c1407c7d2 bump minimum app version requirement to 1.3.0 2022-04-24 19:52:32 -03:00
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
Jm CaslerandGitHub e7a825d1ba Merge pull request #1394 from GUVWAF/master
Implement listen-before-talk mechanism
2022-04-23 11:08:48 -07:00
GUVWAF 1d2551350d Merge branch 'master' of https://github.com/GUVWAF/Meshtastic-device 2022-04-23 19:01:53 +02:00
GUVWAF a13157ebde Rename setRandomDelay() function 2022-04-23 18:57:45 +02:00
Ben MeadorsandGitHub a0971ebe9c Merge branch 'master' into master 2022-04-23 08:46:02 -05:00
Ben MeadorsandGitHub 8733bcb52e Peg espressif platform version to 3.5.0 2022-04-23 08:42:26 -05:00
Thomas Göttgens 7c12234a9c Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-04-23 10:12:32 +02:00
Ben MeadorsandGitHub 823e6cb1ed Merge branch 'master' into master 2022-04-22 07:56:50 -05:00
Ben MeadorsandGitHub 29e378a11e Link to open collective from contributors badge 2022-04-22 07:49:26 -05:00
GUVWAF 692278343b Merge branch 'master' of https://github.com/GUVWAF/Meshtastic-device 2022-04-20 20:16:39 +02:00
GUVWAF c60d4c1ecc Implement listen-before-talk mechanism
- Function setRandomDelay() calls either startTransmitTimer() or startTransmitTimerSNR()
- After coming back from Rx/Tx-ing, call setRandomDelay()
- If channel is currently busy, call setRandomDelay()
2022-04-20 20:09:12 +02:00
GUVWAF 6d01f9aa89 Add isChannelActive() function to radio interface 2022-04-20 20:04:44 +02:00
GUVWAF 616c7d7b0e Expose front() function in MeshPacketQueue 2022-04-20 19:58:52 +02:00
Thomas Göttgens c6a2e26876 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-04-20 09:51:35 +02:00
Jm CaslerandGitHub 6b012ca5b0 Add fiscal contributors badge 2022-04-19 22:41:00 -07:00
Thomas GöttgensandGitHub 93466baa87 Merge pull request #1393 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-04-19 23:08:29 +02:00
Thomas GöttgensandGitHub 137328f567 Merge branch 'master' into create-pull-request/patch 2022-04-19 22:52:44 +02:00
Thomas GöttgensandGitHub 838f00c7d7 Merge pull request #1391 from D4rk4/master
Brother EP-44 support
2022-04-19 22:52:16 +02:00
Dmitry Galenko 293921e95a Brother EP-44 support 2022-04-19 22:37:04 +02:00
caveman99andGitHub b82bf5c729 [create-pull-request] automated change 2022-04-19 20:26:22 +00:00
Jm Casler 90df7c2488 bump to 1.3.8 2022-04-18 17:20:03 -07:00
Jm CaslerandGitHub 8c1a81c03a Merge branch 'compression' into master 2022-04-18 17:02:45 -07:00
Jm Casler 6fe9f0b42f Disable compression / decompression (for testing) 2022-04-18 17:00:36 -07:00
Thomas GöttgensandGitHub 43f6f61472 Merge pull request #1387 from meshtastic/patch-1
tryfix #1363
2022-04-18 23:01:07 +02:00
Thomas GöttgensandGitHub ed62b6916c tryfix #1363
Ask for the register several times and only go on if the answer is the same in 2 consecutive tries.
2022-04-18 22:46:45 +02:00
Thomas GöttgensandGitHub cf45e4fce5 Merge pull request #1386 from meshtastic/patch-1
Remove References to Pre-1.2 Preffile
2022-04-18 22:19:58 +02:00
Thomas GöttgensandGitHub 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
Jm Casler 7c071e2361 updating proto submodule to latest 2022-04-18 12:29:20 -07:00
Thomas GöttgensandGitHub 0b85e97087 Merge pull request #1385 from meshtastic/oem-screen
Enable OEM Bootlogo, needs protobuf update
2022-04-18 18:43:47 +02:00
Thomas Göttgens 81d1cc1003 Merge branch 'oem-screen' of github.com:meshtastic/Meshtastic-device into oem-screen 2022-04-18 18:27:37 +02:00
Thomas Göttgens 748416d9e3 protobuf update 2022-04-18 18:27:17 +02:00
Thomas GöttgensandGitHub da6d49385c Merge branch 'master' into oem-screen 2022-04-18 18:18:19 +02:00
Thomas Göttgens f279f9614e Enable OEM Bootlogo, needs protobuf update 2022-04-18 18:11:17 +02:00
Sacha WeatherstoneandGitHub 9097475149 Add Repobeats stats image to readme 2022-04-18 23:56:16 +10:00
Jm Casler 5327d6162a remove targz library 2022-04-15 23:17:30 -07:00
Jm Casler 5d7990667d Max nodes to 64 and remove targz 2022-04-15 23:16:40 -07:00
Jm Casler 79a41bd81c updating proto submodule to latest 2022-04-15 22:30:21 -07:00
Jm CaslerandGitHub 6a3d81eff8 Merge pull request #1383 from mc-hamster/compression
Change to unishox library
2022-04-15 20:46:04 -07:00
Jm CaslerandGitHub 7cd66b2b68 Merge branch 'meshtastic:master' into compression 2022-04-15 20:45:44 -07:00
Jm Casler 8124ecbfd8 Change to unishox library 2022-04-15 18:11:17 -07:00
Jm CaslerandGitHub 7df1a64b52 Merge pull request #1382 from mc-hamster/compression
Updated welcome screen w/ text, pages and logo
2022-04-14 21:33:19 -07:00
Jm CaslerandGitHub e51b7c3c32 Merge branch 'meshtastic:master' into compression 2022-04-14 21:32:52 -07:00
Jm Casler 0c285aac6e enable welcome text 2022-04-14 21:32:00 -07:00
Jm Casler fbeb554186 Merge branch 'compression' of https://github.com/mc-hamster/Meshtastic-device into compression 2022-04-14 21:31:38 -07:00
Jm Casler 87da779478 Updated welcome screen w/ text, pages and logo
Updated welcome screen w/ text, pages and logo
2022-04-14 21:31:31 -07:00
Jm CaslerandGitHub 1082c5d771 Merge pull request #1381 from mc-hamster/compression
Fix for welcome screen going over ble pairing
2022-04-14 21:05:21 -07:00
Jm CaslerandGitHub 3933d24d62 Merge branch 'meshtastic:master' into compression 2022-04-14 21:03:18 -07:00
Jm Casler fc0508f254 Fix for welcome screen going over ble pairing 2022-04-14 21:02:52 -07:00
Jm Casler bb22b6ec58 bump to 1.3.7 2022-04-14 16:15:19 -07:00
Jm CaslerandGitHub ddb9678377 Merge pull request #1380 from mc-hamster/compression
Compression WIP
2022-04-14 16:14:31 -07:00
Jm Casler dc20cbb672 one more fix for cppcheck 2022-04-14 15:57:31 -07:00
Jm Casler a10ea604af Fixes for cppcheck errors 2022-04-14 15:51:48 -07:00
Jm CaslerandGitHub fb1caa51d0 Merge branch 'meshtastic:master' into compression 2022-04-13 21:59:42 -07:00
Jm Casler 7e977aea00 Add welcome screen feature toggle 2022-04-13 21:59:25 -07:00
Jm Casler ecc114f1cd temp work on compression 2022-04-13 19:23:35 -07:00
b76424db50 Make Observer to be able to observe multiple Observables. (#1234)
* Make Observer to be able to observe multiple Observables.

* Fix Observer destructor cleanup.

Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
2022-04-14 08:43:06 +10:00
Jm Casler f511baba9a Bump to 1.3.6 2022-04-12 21:25:33 -07:00
Jm CaslerandGitHub b056081d3c Merge branch 'meshtastic:master' into compression 2022-04-12 21:14:25 -07:00
Jm Casler 0e4699d8b6 updating proto submodule to latest 2022-04-12 21:13:35 -07:00
Ben MeadorsandGitHub 794167c701 Removed phone sds timeout (#1372) 2022-04-12 08:04:24 -05:00
b59368ca3c Updated pinut in variant tlorav2_1_16 (#1365)
* Added the last mac address bytes in bluetooth device name ESP32Bluetooth.cpp
Add default notification pinout to tlora_v2_1_16/variant.h

* updated ADC_MULTIPLIER  value for more accuracy

* Update variant.h

Updated LORA_RESET GPIO in this board is 23
Removed LORA_DIO1 35 , gpio 35 is a battery pin 
Removed LORA_DIO2 34, gpio 34 is unuse in this board

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-04-12 07:13:25 -05:00
Jm Casler a4bdef4151 compression WIP
compression works. next is to store it in the proto as a oneof and then decompress it on use.
2022-04-11 22:12:04 -07:00
Jm Casler 478274aff1 Beginning of compression 2022-04-11 20:09:48 -07:00
Jm CaslerandGitHub 02066cc8b9 Merge pull request #1370 from mc-hamster/region_unset
Work around for issue with unknown age due to not having time
2022-04-11 19:18:59 -07:00
Jm CaslerandGitHub 309de52f5c Merge branch 'master' into region_unset 2022-04-11 18:53:54 -07:00
Jm Casler 340737f2a8 Work around for issue with unknown age due to not having time
Work around for issue with unknown age due to not having time
2022-04-11 18:53:29 -07:00
Jm CaslerandGitHub 9bd970c55e Merge pull request #1368 from mc-hamster/region_unset
Show welcome screen if region unset
2022-04-10 19:55:05 -07:00
Jm Casler 6eab8f84d1 Updated text for better fit 2022-04-10 19:34:13 -07:00
Jm Casler a31bf71ec1 Merge branch 'region_unset' of https://github.com/mc-hamster/Meshtastic-device into region_unset 2022-04-10 19:27:17 -07:00
Jm Casler 14eef42762 Disable indicator on welcome screen. 2022-04-10 19:27:11 -07:00
Jm CaslerandGitHub ef85b74cec Merge branch 'master' into region_unset 2022-04-10 19:15:47 -07:00
Jm Casler 16ae867c2d Show welcome screen if region unset 2022-04-10 19:15:10 -07:00
Jm CaslerandGitHub 0643dcd745 Merge pull request #1367 from mc-hamster/region_unset
Disable TX if region is unset
2022-04-09 23:08:59 -07:00
Jm Casler 69ed477040 Disable TX if region is unset 2022-04-09 22:42:43 -07:00
Jm CaslerandGitHub 0f5b0b5f00 Update README.md 2022-04-08 19:51:13 -07:00
Sacha Weatherstone 11323acb23 Update link to site 2022-04-08 13:40:41 +10:00
Ben MeadorsandGitHub a20ba7e686 Add pca10059_diy_eink to boards matrix 2022-04-06 11:04:11 -05:00
Ben MeadorsandGitHub 10a7071300 Remove send owner interval (#1361)
* NodeInfo slimfast

* Removed send_owner_interval
2022-04-06 08:03:44 -05:00
Thomas GöttgensandGitHub eae9673ddb Merge pull request #1360 from meshtastic/1355-bug-crash-in-json-mqtt-bridge
fixes #1355
2022-04-06 14:28:23 +02:00
Thomas Göttgens 6e9cf82b68 fixes #1355 2022-04-06 14:11:39 +02:00
Thomas Göttgens 06aae85e45 Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-04-06 13:06:15 +02:00
Thomas GöttgensandGitHub 0035469790 Merge pull request #1358 from meshtastic/gpsfix
Improve T-Echo GPS Handling
2022-04-06 09:29:59 +02:00
Thomas Göttgens 028999697e Improve T-Echo GPS Handling 2022-04-06 09:18:55 +02:00
b7aa1397c7 Add DIY nRF82540 PCA10059 4.2inch NiceRF 868 (#1354)
* Update build-all.sh

* Update configuration.h

* Update EInkDisplay2.cpp

* Create platformio.ini

* Create variant.cpp

* Create variant.h

* Update platformio.ini

* Update check-all.sh

* Create nordic_pca10059.json

* Update variant.h

* Update EInkDisplay2.cpp

* Update configuration.h

* Update platformio.ini

* Update EInkDisplay2.cpp

* Update variant.h

* Update EInkDisplay2.cpp

* Update configuration.h

* Update EInkDisplay2.cpp

* Update variant.h

* Update nordic_pca10059.json

* Update platformio.ini

* Update platformio.ini

* Update platformio.ini

* Update platformio.ini

* Update variant.h

* Update variant.h

* Update variant.h

* Update variant.h

* Update variant.h

* Update variant.h

* Update variant.h

* Update configuration.h

* Update EInkDisplay2.cpp

* Update variant.h

* Update variant.h

* Update platformio.ini

* Update configuration.h

* Update configuration.h

* Update platformio.ini

* Update platformio.ini

* Update configuration.h

* Update platformio.ini

* Update configuration.h

* Update platformio.ini

* Update configuration.h

* Update configuration.h

* Update platformio.ini

* Update configuration.h

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2022-04-05 11:46:07 -05:00
279def7911 [create-pull-request] automated change (#1356)
Co-authored-by: thebentern <thebentern@users.noreply.github.com>
2022-04-05 11:31:13 -05:00
Ben MeadorsandGitHub d73d3ca959 Update proto action to use nanopb 0.4.5 2022-04-05 11:29:54 -05:00
Thomas Göttgens a2df441e1f Merge branch 'master' of github.com:meshtastic/Meshtastic-device
# Conflicts:
#	variants/heltec_v1/variant.h
2022-04-05 11:03:51 +02:00
998c90d326 Use JSON library for Web UI REST Endpoints (#1340)
* Updated rest endpoint json handling.

* Fixes, typos corrected.

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
2022-04-05 06:22:38 +10:00
0c600363c8 add nano g1 (#1351)
* add nano g1

* Update platformio.ini

* Update configuration.h

* Revert platformio.ini to previous state

* Update configuration.h

* Update platformio.ini

Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
2022-04-04 20:16:19 +10:00
Thomas GöttgensandGitHub 6c2d45d866 Merge pull request #1353 from meshtastic/patch-1
Add second scancode for SH1106
2022-04-04 09:12:09 +02:00
Thomas GöttgensandGitHub cf532496a4 Merge branch 'master' into patch-1 2022-04-04 08:52:07 +02:00
Thomas GöttgensandGitHub 92d32f722d Add second scancode for SH1106
This display is found on the Nano G1
2022-04-04 08:51:29 +02:00
Jm Casler e5b19fdf5f Bump to 1.3.5 2022-04-03 19:05:56 -07:00
Thomas GöttgensandGitHub a8ef3967cd Merge pull request #1349 from meshtastic/patch-1
adjust for serial wait time during nRF52 bootup
2022-04-02 16:25:57 +02:00
Thomas GöttgensandGitHub e372306497 Merge branch 'master' into patch-1 2022-04-02 16:03:58 +02:00
Thomas Göttgens 364d81e906 adjust for serial wait time during nRF52 bootup 2022-04-02 16:02:26 +02:00
Thomas GöttgensandGitHub f9ec201394 Merge pull request #1348 from meshtastic/patch-1
GPS Timing Mod and Pinchange on Heltec
2022-04-02 13:12:27 +02:00
Thomas Göttgens fd407a2a9e GPS Pin Change for V2 and V1 too. 2022-04-02 12:57:10 +02:00
Thomas Göttgens 7c4bb80977 Variable GPS Thread Timing, keep default of 100 msec 2022-04-02 12:52:50 +02:00
Thomas Göttgens d246c31548 GPS Pin Changes on V 2.0 and V1 too. 2022-04-02 12:16:42 +02:00
Thomas Göttgens 19589bf12d Merge branch 'master' of github.com:meshtastic/Meshtastic-device 2022-04-02 12:05:30 +02:00
Thomas Göttgens ba984aebfa Varaible GPS Thread Timing, keep default of 100 msec 2022-04-02 12:05:07 +02:00
Thomas GöttgensandGitHub 2f099a59bc Merge pull request #1346 from ssysm/master
Change GPS Pin on Heltec v2.1
2022-04-02 11:29:41 +02:00
Thomas GöttgensandGitHub 12f44def5e Merge branch 'master' into master 2022-04-02 11:09:12 +02:00
Sacha WeatherstoneandGitHub 5a67dada95 Create New Board.yml 2022-04-02 16:30:34 +11:00
ssysm 600e840889 Merge branch 'master' of https://github.com/ssysm/Meshtastic-device 2022-04-01 23:38:39 -04:00
ssysm 357c9fcd76 revert 2022-04-01 23:38:23 -04:00
ssysm e6e96803b9 Merge branch 'master' of https://github.com/ssysm/Meshtastic-device 2022-04-01 23:22:27 -04:00
Ben MeadorsandGitHub 07e2816703 Promote device metrics (#1347)
* NodeInfo slimfast

* Update
2022-04-01 18:35:18 -05:00
Shengming YuanandGitHub 9ce8db1a0b Change RX pin back to 36 2022-04-01 15:30:55 -04:00
ssysm d73ef3c2fe Change GPS Pin on Heltec v2.1 2022-03-31 23:25:37 -04:00
Ben MeadorsandGitHub 286e64d5f6 Smoke test moving device telemetry into portduino 2022-03-31 16:27:55 -05:00
Thomas GöttgensandGitHub 2319d8723e Merge pull request #1344 from meshtastic/patch-1
Fixes #1294 Bluetooth-Wifi Deadlock
2022-03-31 19:03:12 +02:00
Thomas Göttgens 4e29984549 Slightly more verbose GPS debug logging 2022-03-31 18:52:40 +02:00
Thomas Göttgens 57ba626e4c Fixes #1294 Bluetooth-Wifi Deadlock 2022-03-31 18:52:13 +02:00
Thomas GöttgensandGitHub 2627db66ff Merge pull request #1343 from meshtastic/patch-1
Fix Crash if no texts defined but plugin enabled
2022-03-31 15:10:33 +02:00
Thomas GöttgensandGitHub 7282b562fa Fix Crash if no texts defined but plugin enabled 2022-03-31 14:59:42 +02:00
Thomas GöttgensandGitHub 0e3ac246b5 Add RAK1921 OLED Probe Code (#1339) 2022-03-30 15:36:16 -05:00
Thomas GöttgensandGitHub 9586a2e932 Merge pull request #1338 from meshtastic/patch-1
Remove OSThread from UpDown Input.
2022-03-30 15:20:58 +02:00
Thomas Göttgens c3defc5c86 The UpDown Input is purely interrupt driven and doesn't need an empty OSThread. 2022-03-30 15:10:02 +02:00
Jm CaslerandGitHub da87c15d0b Merge pull request #1337 from mc-hamster/location
Added new roles
2022-03-29 22:03:06 -07:00
Jm Casler e905f15a0f Added new roles 2022-03-29 22:02:21 -07:00
Jm Casler 3d42da7968 updating proto submodule to latest 2022-03-29 21:44:49 -07:00
Jm CaslerandGitHub e21fdb5d82 Merge pull request #1336 from mc-hamster/location
bump node_db max_count to 80
2022-03-29 20:20:22 -07:00
Jm Casler c1ec842454 bump node_db max_count to 80 2022-03-29 20:06:32 -07:00
Jm Casler 9480f591e3 updating proto submodule to latest 2022-03-29 20:04:40 -07:00
Thomas GöttgensandGitHub 3b8455ff6e Merge pull request #1335 from meshtastic/patch-1176
Fix #1126
2022-03-29 14:01:27 +02:00
Thomas GöttgensandGitHub e10e781ff9 Removed unused functions for touch button
that causes logspam through TX
2022-03-29 13:52:07 +02:00
Sacha Weatherstone 2ed8ea10c0 Remove eink0.1 and Air530 files 2022-03-29 22:28:34 +11:00
Ben MeadorsandGitHub eafd205169 Update telemetry for local node (#1332) 2022-03-28 12:13:22 -05:00
Thomas GöttgensandGitHub 5366eba535 Merge pull request #1333 from meshtastic/inputbroker-v2
Add CardKB, FACES and RAK14004 support to inputbroker/cannedmessages
2022-03-28 17:57:16 +02:00
Thomas Göttgens 049481f952 Merge branch 'inputbroker-v2' of github.com:meshtastic/Meshtastic-device into inputbroker-v2 2022-03-28 17:40:27 +02:00
Thomas Göttgens 50edeb5281 remove leftover stumps 2022-03-28 17:40:17 +02:00
Thomas GöttgensandGitHub cd86d33f6f Merge branch 'master' into inputbroker-v2 2022-03-28 17:00:05 +02:00
Thomas Göttgens f119e294af Add CardKB, FACES and RAK14004 support to inputbroker/cannedmessages 2022-03-28 16:55:58 +02:00
Ben MeadorsandGitHub 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
Jm CaslerandGitHub 7b8096f5b2 Merge pull request #1329 from mc-hamster/location
Regen protos for serial baud & mode. Update serial_module to support …
2022-03-26 11:27:11 -07:00
Thomas GöttgensandGitHub 450ab95ab5 Merge branch 'master' into location 2022-03-26 18:14:41 +01:00
Thomas GöttgensandGitHub 93ab20a8af Merge pull request #1330 from meshtastic/inputbroker-v2
RAK Rotary and simple up/down/press button support for Canned Messages
2022-03-26 18:14:27 +01:00
Thomas GöttgensandGitHub a48cc202a7 Merge branch 'master' into inputbroker-v2 2022-03-26 17:46:30 +01:00
Thomas Göttgens 0058382e85 RAK Rotary and simple up/down/press button support for Canned Messages 2022-03-26 17:45:42 +01:00
Jm Casler 8bca0d94cd Regen protos for serial baud & mode. Update serial_module to support new enums.
Regen protos for serial baud & mode. Update serial_module to support new enums.
2022-03-26 09:35:06 -07:00
Jm Casler 266cdfed57 updating proto submodule to latest 2022-03-26 09:32:13 -07:00
Jm CaslerandGitHub e9fcc2ac42 Merge pull request #1328 from mc-hamster/location
Regen protos with support for messaged waypoints
2022-03-26 09:29:16 -07:00
Jm Casler 48fa2b6b9b Regen protos with support for messaged waypoints 2022-03-26 07:48:35 -07:00
Thomas GöttgensandGitHub 9bece843c3 Merge pull request #1327 from meshtastic/serialconsole
SerialDebug NRF
2022-03-26 11:29:46 +01:00
Thomas Göttgens c8254f9ec8 SerialDebug NRF
On slow systems, it takes up to 5 seconds to init serial
2022-03-26 11:15:57 +01:00
Thomas GöttgensandGitHub 62337aa4b6 Merge pull request #1326 from meshtastic/modem_config
Resync modem_config display with 1.3 protobufs
2022-03-26 11:15:31 +01:00
Thomas GöttgensandGitHub 42ee4e8416 Resync modem_config display with 1.3 protobufs
current as of 20220326
2022-03-26 10:59:36 +01:00
Thomas GöttgensandGitHub 596a889a1e Merge pull request #1322 from meshtastic/inputbroker-v2
Fixes forward ported from 1.2 and renaming of pin names for more generic use.
2022-03-26 10:22:34 +01:00
Thomas GöttgensandGitHub 74d987b24c Merge branch 'master' into inputbroker-v2 2022-03-26 08:55:40 +01:00
Thomas Göttgens cd79542e52 Merge branch 'inputbroker-v2' of github.com:meshtastic/Meshtastic-device into inputbroker-v2 2022-03-26 08:54:50 +01:00
Thomas Göttgens aec626f5e0 Update proto to HEAD 2022-03-26 08:54:37 +01:00
Jm CaslerandGitHub 31d7724ef1 Merge pull request #1325 from mc-hamster/location
Update protos regen scripts
2022-03-25 23:08:00 -07:00
Jm Casler 34dc5b92a5 Update protos regen scripts 2022-03-25 23:06:54 -07:00
Jm Casler 15db9f056f updating proto submodule to latest 2022-03-25 22:30:41 -07:00
Jm Casler bea1611e5f updating proto submodule to latest 2022-03-25 22:22:20 -07:00
Ben MeadorsandGitHub 92482199ed Merge branch 'master' into inputbroker-v2 2022-03-26 01:00:07 +00:00
Thomas GöttgensandGitHub 7aeca185f1 Merge pull request #1324 from meshtastic/nRF-serialinit
Wait up to 2 seconds for port being connected.
2022-03-25 23:16:19 +01:00
Thomas GöttgensandGitHub 54d802f15d Wait up to 2 seconds for port being connected.
This will send serial debug log from the beginning and not somewhere in between.
2022-03-25 23:06:31 +01:00
Ben MeadorsandGitHub e0142a9363 Merge branch 'master' into inputbroker-v2 2022-03-25 12:25:27 +00:00
amerinojandGitHub 501067cd36 Added the last mac address bytes in bluetooth device and default notification pinout to tlora_v2_1_16 (#1320)
* Added the last mac address bytes in bluetooth device name ESP32Bluetooth.cpp
Add default notification pinout to tlora_v2_1_16/variant.h

* updated ADC_MULTIPLIER  value for more accuracy
2022-03-25 07:24:56 -05:00
Thomas Göttgens 98792f0c05 fix option name 2022-03-25 12:52:11 +01: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
Thomas GöttgensandGitHub 8bfe277269 Merge branch 'master' into inputbroker-v2 2022-03-25 11:45:13 +01:00
Thomas GöttgensandGitHub 1022b8216b Merge pull request #1321 from meshtastic/create-pull-request/patch
Changes by create-pull-request action - this will break CI builds till the next merge request
2022-03-25 11:44:50 +01:00
caveman99andGitHub 3e8ca1f381 [create-pull-request] automated change 2022-03-25 10:40:54 +00:00
Thomas Göttgens ad2cec2579 Update Protobuf Submodule to Master 2022-03-25 11:38:01 +01:00
Ben MeadorsandGitHub 362795a7c8 Meshtastic-diy battery and adc multiplier 2022-03-24 19:20:15 -05:00
Thomas Göttgens fe5b5ebf15 Adjust rotary defines to new universal names 2022-03-24 22:17:06 +01:00
Thomas GöttgensandGitHub 188306d429 Merge pull request #1318 from meshtastic/gps-disabled
free serial pins if gps_disabled is set
2022-03-24 18:52:03 +01:00
Thomas GöttgensandGitHub 72f443c519 free serial pins if gps_disabled is set 2022-03-24 18:22:31 +01:00
Thomas GöttgensandGitHub cef1614770 Autodetect OLED Controller 1306/1106 (#1317)
* Autodetect OLED Controller 1306/1106 and make #define NO_SCREEN work again

* fix epaper with autodetect

* Try kicking CI - NFC
2022-03-24 11:36:56 -05:00
Ben MeadorsandGitHub 47524d58d7 Telemetry tweaks (#1315)
* 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

* Fixed missing metric and updated power level to uint

* Regen
2022-03-23 15:46:39 -05:00
Ben MeadorsandGitHub 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
Thomas GöttgensandGitHub bbf044795a weed out old versioning macros (#1312)
weed out old versioning macros
2022-03-20 11:53:37 +01:00
Sacha Weatherstone 8adacba3a1 Respect loc_share_disabled 2022-03-20 16:12:55 +11:00
Sacha Weatherstone e5e25c2f31 Use gps_disabled 2022-03-20 15:57:49 +11:00
Sacha Weatherstone a530249503 Fix typo "Fahrenheit" 2022-03-20 14:15:32 +11:00
Sacha Weatherstone 285413c68c Rename packetNum to packetId 2022-03-20 11:40:13 +11:00
Sacha Weatherstone 4cd1570543 make location_share a boolean 2022-03-20 11:01:49 +11:00
mkinneyandGitHub 535919dfff Merge pull request #1302 from mkinney/nrf_factory_reset_for_13
remove /prefs for nrf factory reset
2022-03-17 12:47:10 -07: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
Jm CaslerandGitHub 5b8ff56731 Merge pull request #1296 from caveman99/littlefs-fix
LittleFS recursive display and erase.
2022-03-16 10:11:30 -07:00
Thomas GöttgensandGitHub 3e14f76a94 Merge branch 'master' into littlefs-fix 2022-03-16 08:44:23 +01:00
Thomas Göttgens cb6846ebc6 fix PortduinoFS integration for Firmware. 2022-03-16 08:30:38 +01:00
Jm CaslerandGitHub 44681c90f5 Merge pull request #1298 from mc-hamster/router
comment out DSRRouter
2022-03-15 18:02:47 -07:00
Jm CaslerandGitHub 5eccfb6f2b Merge branch 'meshtastic:master' into router 2022-03-15 17:52:43 -07:00
Jm Casler b4f9008b2b comment out DSRRouter 2022-03-15 17:52:18 -07:00
Jm CaslerandGitHub 5eb761c397 Merge pull request #1297 from mc-hamster/router
remove is_router in favor of role == Role_Router
2022-03-15 17:12:06 -07:00
Jm Casler 11130496c4 remove is_router in favor of role == Role_Router 2022-03-15 15:49:25 -07:00
Jm Casler e893ff447f updating proto submodule to latest 2022-03-15 15:45:59 -07:00
Thomas Göttgens e435453363 fix building for nRF52 2022-03-15 22:49:06 +01:00
Thomas Göttgens 697c749a8d LittleFS recursive display and erase. Cause we got directories now, baby! 2022-03-15 22:22:05 +01:00
Sacha Weatherstone b9058ce7c5 fix build 2022-03-15 18:28:39 +11:00
Sacha Weatherstone ceacbe0b94 Cleanup pio config (less intimidating) 2022-03-15 17:35:29 +11:00
Sacha Weatherstone 5b8ce7fe07 Remove unused scripts 2022-03-15 17:30:55 +11:00
Jm CaslerandGitHub 9037a51f83 Merge pull request #1293 from mc-hamster/router
support for position_broadcast_smart_disabled
2022-03-14 18:22:49 -07:00
Jm Casler 1b1c3936a4 support for position_broadcast_smart_disabled 2022-03-14 18:09:11 -07:00
Jm Casler d1897f8e5a updating proto submodule to latest 2022-03-14 18:05:25 -07:00
Jm CaslerandGitHub abc0579e75 Merge pull request #1292 from mc-hamster/router
Add weighted tx delay for flooding router
2022-03-14 17:56:57 -07:00
Jm Casler 3816a2fbe0 Add weighted tx delay for flooding router 2022-03-14 17:47:01 -07:00
Jm CaslerandGitHub bb15a001f7 Merge branch 'meshtastic:master' into router 2022-03-14 16:59:09 -07:00
mkinneyandGitHub 6fa2d47f0c Merge pull request #1291 from raldi/master
Get sleep side effect out of DEBUG_MSG()
2022-03-14 13:33:27 -07:00
Mike Schiraldi f1ed691fd3 Get sleep side effect out of DEBUG_MSG() 2022-03-14 13:05:25 -07:00
mkinneyandGitHub f7f783b48b Merge pull request #1290 from raldi/master
Get side effects out of DEBUG_MSG
2022-03-14 12:58:44 -07:00
Mike Schiraldi fc0eb7de46 Add semicolon 2022-03-14 12:40:57 -07:00
Mike Schiraldi 88d6850c82 Get side effects out of DEBUG_MSG 2022-03-14 12:31:13 -07:00
Jm Casler 0a1e6517a1 updating proto submodule to latest 2022-03-14 07:42:01 -07:00
Jm Casler 82591b2a69 Remove more old router role work. 2022-03-13 14:50:27 -07:00
Jm Casler cb4ca87abe remove role from flooding router 2022-03-12 07:22:59 -08:00
d4e6dd32c5 JSON MQTT Integration (#1283)
* Added downstream JSON MQTT handling.

* Added uplink JSON messaging

* Fixed shadow variable.

* Added missing dependency.

* Fixes Environment -> Telemetry.

* Fixed native issue.

* Added json11 pio reg dependency.

* Fixed json11 library dependency.

Co-authored-by: Sacha Weatherstone <sachaw100@hotmail.com>
2022-03-12 08:08:57 -06:00
Sacha Weatherstone f33cd4081e Implement getOwner 2022-03-10 09:14:56 +11:00
Sacha Weatherstone 8a7a6e9a5d Use registry version of OneButton 2022-03-10 09:03:30 +11:00
Sacha Weatherstone 593dc67cfb Remove unused lib dir 2022-03-10 08:40:39 +11:00
Sacha Weatherstone 400630199f Use nanopb from PIO registry 2022-03-10 08:37:24 +11:00
Sacha Weatherstone 379fd9cdd0 Remove unused nrf52 tests 2022-03-10 08:13:39 +11:00
Sacha Weatherstone b31580a35c Removed unused linker files 2022-03-10 08:04:45 +11:00
Sacha Weatherstone 5f47939543 Remove CMakeLists 2022-03-10 08:00:27 +11:00
Sacha WeatherstoneandGitHub 655d694552 Move README-docker.md to docs 2022-03-10 00:41:28 +11:00
Sacha WeatherstoneandGitHub 3292b2ff21 Delete .gitlab-ci.yml 2022-03-10 00:10:24 +11:00
Sacha Weatherstone c98a9441d6 Update CI 2022-03-10 00:04:49 +11:00
Sacha Weatherstone 6bee95d6b2 Rename MeshPlugin, SinglePortPlugin and ProtobufPlugin 2022-03-09 19:01:43 +11:00
Sacha Weatherstone 46b8b61b7f Fix Serial Plugin name 2022-03-09 18:37:41 +11:00
Jm CaslerandGitHub f5369c3f1b Merge pull request #1280 from michaelkleinhenz/txt-mqtt
Plaintext publish to MQTT
2022-03-08 15:35:46 -08:00
Michael Kleinhenz 428d062b9a Added txt message publishing on MQTT. 2022-03-07 20:45:50 +01:00
Jm Casler 2b20bf3d0a Building new BLE stack for 1.3.4 2022-03-06 17:52:05 -08:00
Jm CaslerandGitHub 61c2e58479 Merge pull request #1273 from joshpirihi/master
NimBLE API Implementation
2022-03-06 17:48:14 -08:00
Jm CaslerandGitHub eddc202799 Merge branch 'master' into master 2022-03-06 16:12:11 -08:00
Jm CaslerandGitHub e22601b599 Merge pull request #1278 from mc-hamster/router
Update to flooding router -- add 'isPacketLocal' and change to sniffReceived
2022-03-06 16:11:58 -08:00
Jm Casler 2a2448e367 address tool-cppcheck error 2022-03-06 15:46:56 -08:00
Jm CaslerandGitHub c1c8fea21e Merge branch 'meshtastic:master' into router 2022-03-06 14:40:11 -08:00
Ben MeadorsandGitHub ca21e8b2bf New PR artifacts upload scheme 2022-03-06 08:50:42 -06:00
Ben MeadorsandGitHub 6151af0343 Merge branch 'master' into master 2022-03-06 02:39:54 +00:00
hb9tobandGitHub bcac20490e Update Screen.cpp (#1274) 2022-03-05 20:26:25 -06:00
Jm Casler ec86246da9 Update to flooding router 2022-03-05 12:38:26 -08:00
Joshua Pirihi d27efd0749 Merge branch 'master' of https://github.com/joshpirihi/Meshtastic-device into mymaster 2022-03-06 05:59:20 +13:00
Joshua Pirihi a48838153b NimBLE merge conflicts 2022-03-06 05:59:13 +13:00
Joshua Pirihi d59de171c5 NimBLE implementation 2022-03-06 05:57:38 +13:00
Joshua Pirihi facf7f56c2 Merge branch 'master' of https://github.com/meshtastic/Meshtastic-device 2022-03-06 05:56:34 +13:00
joshpirihiandGitHub 0a14f5d168 Merge branch 'meshtastic:master' into master 2022-03-06 05:46:32 +13:00
Joshua Pirihi 3ab2ca57e9 NimBLE implementation 2022-03-06 05:43:26 +13:00
mkinneyandGitHub ea99f96014 Merge pull request #1270 from mkinney/bugfixes_from_1_2
merge the 1.2 hang bugfix to 1.3
2022-03-02 21:36:56 -08:00
mkinneyandGitHub 6001e96c82 Merge branch 'master' into bugfixes_from_1_2 2022-03-02 21:28:11 -08:00
Jm Casler 2fe124eb17 Bump to 1.3.3 2022-03-02 20:50:09 -08:00
mkinneyandGitHub d91a63a5ee Merge branch 'master' into bugfixes_from_1_2 2022-03-02 20:43:12 -08:00
Jm Casler a450aac3b5 Merge branch 'master' of https://github.com/meshtastic/Meshtastic-device 2022-03-02 20:42:06 -08:00
Jm Casler 958f20da1a Update to 1.3.2 2022-03-02 20:42:05 -08:00
mkinneyandGitHub 047c5ec36a Merge branch 'master' into bugfixes_from_1_2 2022-03-02 20:40:36 -08:00
Jm CaslerandGitHub ef4c01f4ea Merge pull request #1271 from mc-hamster/router
Update PERIODS_TO_LOG
2022-03-02 20:39:10 -08:00
Jm CaslerandGitHub 97c76cde3c Merge branch 'master' into router 2022-03-02 20:39:01 -08:00
Jm Casler 2ab0548dda Merge branch 'router' of https://github.com/mc-hamster/Meshtastic-device into router 2022-03-02 20:38:15 -08:00
Jm Casler 75bf2cc9c6 Update PERIODS_TO_LOG 2022-03-02 20:38:14 -08:00
Mike Kinney 0f862edc47 remove the --user 2022-03-03 04:29:34 +00:00
Mike Kinney c1613de426 merge the 1.2 hang bugfix to 1.3 2022-03-03 04:27:49 +00:00
Jm Casler ee533b2d5c Bumping to 1.3.1 2022-03-02 19:02:08 -08:00
Jm CaslerandGitHub 52960f5fa2 Merge pull request #1269 from mc-hamster/router
Fix tophone build error
2022-03-02 18:55:43 -08:00
Jm CaslerandGitHub 5c281154fd Merge branch 'meshtastic:master' into router 2022-03-02 18:55:26 -08:00
Jm Casler 2c7b3acbb9 Fix tophone build error 2022-03-02 18:55:11 -08:00
Jm CaslerandGitHub cf928fca93 Merge pull request #1268 from mc-hamster/router
Added router to mynodeinfo
2022-03-02 18:52:52 -08:00
Jm CaslerandGitHub 8eaaf842ab Merge branch 'meshtastic:master' into router 2022-03-02 18:52:25 -08:00
Jm Casler 09edd7f89b updating proto submodule to latest 2022-03-02 18:49:46 -08:00
Ben MeadorsandGitHub 556fc6210d Moved power fsm thread out of main (#1265) 2022-03-01 12:40:21 -06:00
Jm Casler 4d8c0c11dc Added router to mynodeinfo 2022-02-28 22:44:51 -08:00
Jm CaslerandGitHub 950b54aaba Merge pull request #1263 from mc-hamster/router
Add rssi to printPacket
2022-02-28 22:06:01 -08:00
Jm CaslerandGitHub 4b87a82eb3 Merge branch 'meshtastic:master' into router 2022-02-28 22:05:20 -08:00
Jm Casler 2fa8f45d74 updating proto submodule to latest 2022-02-28 22:03:39 -08:00
Jm Casler 4209fc8b2c updating proto submodule to latest 2022-02-28 19:35:59 -08:00
Jm Casler 6d4d2bb6fa Merge branch 'router' of https://github.com/mc-hamster/Meshtastic-device into router 2022-02-28 17:47:11 -08:00
Jm Casler 32ef354c22 Add rssi to printPacket 2022-02-28 17:47:09 -08:00
Jm CaslerandGitHub a0395c1027 Merge pull request #1261 from mc-hamster/router
Add rssi meta data to the rf95 interface
2022-02-28 17:09:00 -08:00
Jm CaslerandGitHub 1f43132b52 Merge branch 'master' into router 2022-02-28 17:08:43 -08:00
Jm Casler ac8ba706f0 Add rssi meta data to the rf95 interface 2022-02-28 17:07:31 -08:00
Ben MeadorsandGitHub ca4c1c9d7c Moved button thread to its own file (#1260)
* Moved button thread to its own file

* Move some debug code blocks into their own files

* Shutdown refactoring

* Removed GENIEBLOCKS
2022-02-28 15:19:38 -06:00
Jm CaslerandGitHub 7b8746d596 Merge pull request #1259 from puzzled-pancake/master
Added comments on ANZ added 1w limit
2022-02-27 14:48:12 -08:00
puzzled-pancakeandGitHub 91b0fcb257 Added comments on ANZ added 1w limit
Added comments 
https://iotalliance.org.nz/wp-content/uploads/sites/4/2019/05/IoT-Spectrum-in-NZ-Briefing-Paper.pdf
https://www.iot.org.au/wp/wp-content/uploads/2016/12/IoTSpectrumFactSheet.pdf

As noted 1w limit on both
2022-02-28 10:39:48 +13:00
Jm CaslerandGitHub 768c26bb1b Merge pull request #1258 from mc-hamster/router
Add role to generated proto
2022-02-27 12:56:49 -08:00
Jm Casler e5e13d78c3 Add role to generated proto 2022-02-27 12:56:18 -08:00
Jm Casler a2eb148c50 Revert "Merge pull request #1257 from mc-hamster/router"
This reverts commit 33ed9476f8, reversing
changes made to 10fefe7c7b.
2022-02-27 12:50:50 -08:00
Jm CaslerandGitHub 33ed9476f8 Merge pull request #1257 from mc-hamster/router
Remove incomplete ReliableRouter implementation
2022-02-27 12:46:59 -08:00
Jm Casler 92d5dedc63 Remove incomplete ReliableRouter implementation 2022-02-27 12:46:23 -08:00
Jm Casler 10fefe7c7b updating proto submodule to latest 2022-02-27 10:01:40 -08:00
Jm Casler 92ffbca339 updating proto submodule to latest 2022-02-27 09:57:09 -08:00
Jm Casler 7c868c78cc updating proto submodule to latest 2022-02-27 09:52:31 -08:00
Jm CaslerandGitHub 3f2baeb56e Merge pull request #1256 from mc-hamster/router
Rename Plugin to Module in ui related areas.
2022-02-27 02:26:41 -08:00
Jm Casler ebba628736 Rename Plugin to Module in ui related areas. 2022-02-27 02:26:22 -08:00
Jm CaslerandGitHub 2a02b4594f Merge pull request #1255 from mc-hamster/router
more rename plugin to module
2022-02-27 02:21:51 -08:00
Jm Casler 1e689b86b5 Merge branch 'router' of https://github.com/mc-hamster/Meshtastic-device into router 2022-02-27 02:21:26 -08:00
Jm Casler e53abbfb2b more rename plugin to module 2022-02-27 02:21:02 -08:00
Jm CaslerandGitHub 6f086bd3ba Merge pull request #1254 from mc-hamster/router
More renaming plugin to module
2022-02-27 01:49:57 -08:00
Jm Casler 3c5e49d8f4 More renaming plugin to module 2022-02-27 01:49:24 -08:00
Jm CaslerandGitHub 7a5ae40289 Merge pull request #1253 from mc-hamster/router
Rename plugins in /esp32
2022-02-27 01:27:39 -08:00
Jm Casler a83cfffd3a Rename plugins in /esp32 2022-02-27 01:27:17 -08:00
Jm CaslerandGitHub 031b3665f8 Merge pull request #1252 from mc-hamster/router
CannedMessages from plugin to module
2022-02-27 01:21:17 -08:00
Jm Casler 206ae4e2b8 Merge branch 'router' of https://github.com/mc-hamster/Meshtastic-device into router 2022-02-27 01:20:54 -08:00
Jm Casler 24556f2803 CannedMessages from plugin to module 2022-02-27 01:20:23 -08:00
Jm CaslerandGitHub ffa7a36a03 Merge pull request #1251 from mc-hamster/router
Update canned messages from plugin to module
2022-02-27 01:10:07 -08:00
Jm Casler ba7644e376 Update canned messages from plugin to module 2022-02-27 01:09:36 -08:00
Jm Casler ebc9fef222 updating proto submodule to latest 2022-02-27 01:00:35 -08:00
Jm CaslerandGitHub dee577cb5c Merge pull request #1250 from mc-hamster/router
Update _plugin_ in radioconfig to _module_
2022-02-27 00:52:58 -08:00
Jm Casler ed5dea9f85 Update _plugin_ in radioconfig to _module_ 2022-02-27 00:52:25 -08:00
Jm Casler eeacb280d1 updating proto submodule to latest 2022-02-27 00:48:54 -08:00
Jm Casler bc27dbde98 updating proto submodule to latest 2022-02-27 00:38:07 -08:00
Jm CaslerandGitHub 9b1bf7787c Merge pull request #1249 from mc-hamster/router
"plugin(s)" renamed to "module(s)" in comments and debug
2022-02-27 00:30:31 -08:00
Jm Casler 71bf9de638 Merge branch 'router' of https://github.com/mc-hamster/Meshtastic-device into router 2022-02-27 00:29:15 -08:00
Jm Casler 3a04a0ee7a "plugin(s)" renamed to "module(s)" in comments and debug 2022-02-27 00:29:05 -08:00
Jm CaslerandGitHub e218740488 Merge pull request #1248 from mc-hamster/router
mv plugins/ to modules/
2022-02-27 00:18:53 -08:00
Jm Casler 86e767eec2 Update filenames from plugins to modules 2022-02-27 00:18:35 -08:00
Jm CaslerandGitHub d57704b3bd Merge branch 'meshtastic:master' into router 2022-02-26 23:56:51 -08:00
Jm Casler 218a208ab7 mv plugins/ to modules/ 2022-02-26 23:56:26 -08:00
Jm CaslerandGitHub c5c12bcc6b Merge pull request #1244 from puzzled-pancake/master
Added NZ865 Frequency
2022-02-26 21:36:58 -08:00
Jm CaslerandGitHub 0e686e4645 Merge pull request #1247 from mc-hamster/router
regen protos for NZ regioncode
2022-02-26 21:33:58 -08:00
Jm Casler 9050fe7f90 regen protos for NZ regioncode 2022-02-26 21:32:52 -08:00
Jm Casler c511fa2fe6 updating proto submodule to latest 2022-02-26 21:28:05 -08:00
puzzled-pancakeandGitHub 9b44d2e999 Update RadioInterface.cpp 2022-02-27 18:12:27 +13:00
Jm CaslerandGitHub 01a86133ea Merge branch 'master' into master 2022-02-26 21:07:44 -08:00
Jm CaslerandGitHub 338c30fe9a Merge pull request #1245 from mc-hamster/router
Rename environmental_monitoring to telemetry
2022-02-26 21:07:28 -08:00
Jm Casler ac43a1b182 Rename environmental measurement to telemetry 2022-02-26 20:52:22 -08:00
Jm CaslerandGitHub 5bff62e428 Delete environmental_measurement.pb.h 2022-02-26 20:31:16 -08:00
Jm CaslerandGitHub a0f80c1a2a Delete environmental_measurement.pb.c 2022-02-26 20:31:05 -08:00
puzzled-pancakeandGitHub f9bcddafef Update RadioInterface.cpp 2022-02-27 17:30:11 +13:00
puzzled-pancakeandGitHub a25beff241 Update RadioInterface.cpp 2022-02-27 17:29:25 +13:00
Jm CaslerandGitHub 529707489a Rename EnvironmentalMeasurementPlugin.h to Telemetry.h 2022-02-26 20:19:14 -08:00
Jm CaslerandGitHub ceccbd3ef2 Rename Telemetry to Telemetry.cpp 2022-02-26 20:18:50 -08:00
Jm CaslerandGitHub 59ce0c7d09 Rename EnvironmentalMeasurementPlugin.cpp to Telemetry 2022-02-26 20:18:32 -08:00
puzzled-pancakeandGitHub f2a31cc678 Update RadioInterface.cpp
Add NZ 866
2022-02-27 17:01:25 +13:00
Ben MeadorsandGitHub c97541d4fc Turns out this workflow is needed on the target branch 2022-02-25 17:25:43 -06:00
Ben MeadorsandGitHub fc54f2f63d Temporary 1.2 legacy PR checks (#1243)
* Temporary 1.2 legacy PR checks
2022-02-25 16:13:28 -06:00
joshpirihiandGitHub 961cadd550 Merge branch 'meshtastic:master' into master 2022-02-26 10:26:04 +13:00
Andre KirchhoffandGitHub c3cee236bd add m-flasher to README (#1241) 2022-02-25 08:22:59 -06:00
Mark Trevor BirssandGitHub c5a8cc6d3f Add 1.54, 2.9 and 4.2 inch e-Paper support for RAK4361 boards - with partial updates for faster screen transitions (#1240)
* Update platformio.ini
2022-02-25 07:03:52 -06:00
Jm CaslerandGitHub 2e402a726b Merge pull request #1238 from mc-hamster/group-chat
Remove chat groups
2022-02-24 20:08:51 -08:00
Jm CaslerandGitHub ca8598f8b7 Merge branch 'meshtastic:master' into group-chat 2022-02-24 20:05:46 -08:00
Jm Casler b6d7eadea3 Remove chat groups 2022-02-24 20:05:27 -08:00
Jm Casler cd9def6850 Add my test ssid 2022-02-22 19:01:24 -08:00
Jm CaslerandGitHub 060eac7ab9 Merge pull request #1235 from mc-hamster/group-chat
remove test code
2022-02-22 17:18:19 -08:00
Jm CaslerandGitHub d95d874258 Merge branch 'meshtastic:master' into group-chat 2022-02-22 17:17:56 -08:00
Jm Casler e52f94820e remove test code 2022-02-22 17:16:45 -08:00
Jm Casler 31f4ec5d6c updating proto submodule to latest 2022-02-22 17:10:01 -08:00
Balázs KelemenandGitHub bb15ed903d Cleanup docker readme. (#1233)
Cleanup docker readme.
2022-02-22 06:18:54 -06:00
Jm CaslerandGitHub ef2bc2b9fc Merge pull request #1232 from prampec/extend_canned_message_length
Canned message - Extend messages length
2022-02-21 22:10:40 -08:00
Balazs Kelemen 972c2bb329 Revert "Canned message - Fixes"
This reverts commit 54ff8f2db3.
2022-02-22 07:08:44 +01:00
Balazs Kelemen 54ff8f2db3 Canned message - Fixes 2022-02-21 23:53:56 +01:00
Balazs Kelemen a36889abba Canned message - Extend messages length 2022-02-21 22:04:58 +01:00
Jm CaslerandGitHub eb66ba2510 Merge pull request #1230 from mc-hamster/group-chat
Add debug output of the group names.
2022-02-20 10:48:42 -08:00
Jm Casler 1e6e3805ad Add debug output of the group names. 2022-02-20 10:47:57 -08:00
Jm CaslerandGitHub 0133186f70 Merge pull request #1227 from mc-hamster/group-chat
Add STATE_SEND_GROUPS to PhoneAPI::available
2022-02-20 08:23:34 -08:00
Jm Casler b15ef2749f Add STATE_SEND_GROUPS to PhoneAPI::available 2022-02-20 08:23:05 -08:00
Jm CaslerandGitHub 7b2042f391 Merge pull request #1226 from mc-hamster/group-chat
Fix webserver crash with new filesystem & Add groups to payloadVariant
2022-02-20 02:45:09 -08:00
Jm Casler 3d4fc63ecc Fix webserver crash with new filesystem 2022-02-20 02:44:13 -08:00
Jm Casler 3fdd425634 Add groups to payloadVariant 2022-02-20 01:33:49 -08:00
Jm Casler d416f28341 updating proto submodule to latest 2022-02-20 01:32:50 -08:00
Jm CaslerandGitHub 06064d92cd Merge pull request #1225 from mc-hamster/group-chat
Add ourGroupInfo to NodeDB
2022-02-20 00:05:13 -08:00
Jm CaslerandGitHub 837c0e3717 Merge branch 'meshtastic:master' into group-chat 2022-02-20 00:04:46 -08:00
Jm Casler 389a8f1401 Add ourGroupInfo to NodeDB 2022-02-20 00:04:32 -08:00
Jm CaslerandGitHub d32989cd7e Merge pull request #1224 from mc-hamster/group-chat
Plumbing for the GroupPlugin
2022-02-19 23:50:39 -08:00
Jm CaslerandGitHub e969e83037 Merge branch 'meshtastic:master' into group-chat 2022-02-19 23:50:14 -08:00
Jm Casler 57d824cf5d updating proto submodule to latest 2022-02-19 23:48:21 -08:00
Jm Casler e34190b497 Plumbing for the GroupPlugin 2022-02-19 23:43:32 -08:00
Jm Casler 701668804a updating proto submodule to latest 2022-02-19 23:17:48 -08:00
Jm Casler a7aa82e732 updating proto submodule to latest 2022-02-19 23:10:51 -08:00
Jm Casler 1075b95f79 updating proto submodule to latest 2022-02-19 22:55:36 -08:00
Ben MeadorsandGitHub 29e70a80c6 Add rak eink variant (#1221) 2022-02-19 07:32:15 -06:00
Mark Trevor BirssandGitHub 8303500b74 Add RAK4361_5005_RAK14000 board variant and enable e-Paper module (#1199)
* Create platformio.ini

* Create variant.cpp

* Create variant.h

* Update EInkDisplay2.cpp

* Update build-all.sh
2022-02-19 07:30:30 -06:00
Thomas GöttgensandGitHub e7e001c159 Install littlefs-python during pio run (#1220)
Install only if it is missing from the ENV. Caveat: this python module is essentially lib binding and needs Cython and a working compiler as well. this MAY or MAY NOT work.
2022-02-18 11:42:24 -06:00
Thomas GöttgensandGitHub 54f062e94d Add littlefs dependancy to release flow as well (#1217) 2022-02-16 07:22:40 -06:00
Joshua Pirihi a37f49bcbf Add define to platformio.ini to switch between old and new bluetooth 2022-02-16 19:57:35 +13:00
Sacha Weatherstone 717491752b Merge branch 'master' of github.com:meshtastic/meshtastic-device 2022-02-16 17:52:37 +11:00
Sacha Weatherstone 9cdc6ae860 Add bug report issue template 2022-02-16 17:52:14 +11:00
joshpirihiandGitHub de9680d461 Merge branch 'meshtastic:master' into master 2022-02-16 19:50:16 +13:00
Jm CaslerandGitHub 4941fd30f7 Merge pull request #1216 from mc-hamster/Radio&Band-Refactor
Fix bug in frequency formulas
2022-02-15 18:49:45 -08:00
Jm CaslerandGitHub 5ddd280f92 Merge branch 'master' into Radio&Band-Refactor 2022-02-15 18:49:38 -08:00
Jm Casler 3a621ef262 Fix bug in frequency formulas 2022-02-15 18:48:54 -08:00
Sacha Weatherstone 0c946609d5 Remove old CI script 2022-02-16 11:39:29 +11:00
Jm CaslerandGitHub 554729dab2 Merge pull request #1214 from mc-hamster/Radio&Band-Refactor
Fix typo in default channel (Thanks Andre!)
2022-02-15 07:37:21 -08:00
Jm Casler ae6d0686bd Merge branch 'Radio&Band-Refactor' of https://github.com/mc-hamster/Meshtastic-device into Radio&Band-Refactor 2022-02-15 07:36:29 -08:00
Jm Casler 57bbd912b1 Fix typo in default channel (Thanks Andre!) 2022-02-15 07:36:28 -08:00
Jm CaslerandGitHub 6befed1176 Merge pull request #1213 from mc-hamster/Radio&Band-Refactor
Remove hw_model_deprecated
2022-02-14 20:38:20 -08:00
Jm Casler 1ba7f009dd Remove hw_model_deprecated 2022-02-14 20:37:44 -08:00
Jm Casler eae8720068 updating proto submodule to latest 2022-02-14 20:35:44 -08:00
Jm Casler 18e95e6bb4 updating proto submodule to latest 2022-02-14 20:08:29 -08:00
Jm CaslerandGitHub 01e86512aa Merge pull request #1212 from mc-hamster/Radio&Band-Refactor
Remove old style of region code fix
2022-02-14 20:01:14 -08:00
Jm Casler 9fda734743 Merge branch 'Radio&Band-Refactor' of https://github.com/mc-hamster/Meshtastic-device into Radio&Band-Refactor 2022-02-14 20:00:52 -08:00
Jm Casler 04d16b82ba Remove old style of region code fix 2022-02-14 20:00:46 -08:00
Jm CaslerandGitHub 4206982572 Merge pull request #1211 from mc-hamster/Radio&Band-Refactor
Remove legacyRadio and Legacy Preferences
2022-02-14 19:59:39 -08:00
Jm Casler b99d793e23 Remove legacyRadio and Legacy Preferences 2022-02-14 19:58:54 -08:00
Jm Casler 71d5e6c478 updating proto submodule to latest 2022-02-14 19:55:19 -08:00
Jm CaslerandGitHub 111d7ecd5e Merge pull request #1210 from mc-hamster/Radio&Band-Refactor
Remove myNodeInfo.num_bands. It's not used by android.
2022-02-14 19:45:53 -08:00
Jm Casler 1de086819c Remove myNodeInfo.num_bands. It's not used by android. 2022-02-14 19:45:26 -08:00
Jm Casler af1804ea62 updating proto submodule to latest 2022-02-14 19:42:03 -08:00
Jm CaslerandGitHub fe87682d69 Merge pull request #1209 from mc-hamster/Radio&Band-Refactor
New bands, new band plans and new channel configurations
2022-02-14 19:33:03 -08:00
Jm Casler 96b5537217 New bands, new band plans and new channel configurations 2022-02-14 19:32:31 -08:00
Jm CaslerandGitHub 449926cff9 Merge pull request #1208 from mc-hamster/Radio&Band-Refactor
Change the default pre shared key to break backward compatibility of default channel
2022-02-14 18:06:47 -08:00
Jm Casler d4e5a3c67c Merge branch 'Radio&Band-Refactor' of https://github.com/mc-hamster/Meshtastic-device into Radio&Band-Refactor 2022-02-14 18:06:12 -08:00
Jm Casler 2428ca09fc Change the default pre shared key to break backward compatibility of default channel 2022-02-14 18:06:05 -08:00
Jm CaslerandGitHub 346712fbf3 Merge pull request #1207 from mc-hamster/Radio&Band-Refactor
Updated modem configuration
2022-02-14 18:01:58 -08:00
Jm Casler a1ad1e7973 Updated modem configuration 2022-02-14 18:01:34 -08:00
Jm Casler 806a61251b updating proto submodule to latest 2022-02-14 17:59:43 -08:00
Jm CaslerandGitHub 34eee247e9 Merge pull request #1206 from mc-hamster/Radio&Band-Refactor
Rename EU865 to EU868 & Add TH and IN
2022-02-14 17:58:14 -08:00
Jm Casler ee95594f74 Rename EU865 to EU868 & Add TH and IN 2022-02-14 17:01:13 -08:00
Jm Casler 7f3ad672b8 updating proto submodule to latest 2022-02-14 16:59:24 -08:00
Jm Casler 7cda49aba5 updating proto submodule to latest 2022-02-14 16:56:57 -08:00
joshpirihiandGitHub 53e8a40ffa Merge branch 'meshtastic:master' into master 2022-02-15 06:52:48 +13:00
Joshua Pirihi 6c17626132 Use NimBLE API for ESP32 bluetooth 2022-02-15 06:52:00 +13:00
Thomas GöttgensandGitHub 8e9b852faa Littlefs rebased to Master (#1205)
* Littlefs
2022-02-14 11:45:29 -06:00
Ben MeadorsandGitHub 6b4907e841 Added after-checks 2022-02-14 11:27:33 -06:00
Ben MeadorsandGitHub 1808e9b3d8 Pick up littlefs instead of spiffs bin 2022-02-14 10:39:31 -06:00
Ben MeadorsandGitHub 1dd53eeaf5 Set max parallel workers on jobs to favor esp32 2022-02-14 10:36:16 -06:00
Ben MeadorsandGitHub 892d9a34c7 Add littlefs-python package for ESP32 target 2022-02-14 10:21:28 -06:00
Ben MeadorsandGitHub ab96579904 Github action runs on job matrix now for parallel operation (both build and check) (#1202)
* Build matrix for parallel jobs
2022-02-13 14:10:59 -06:00
Ben MeadorsandGitHub 3f83acdbef Ignore version.properties on ci-build 2022-02-10 21:13:36 -06:00
Ben MeadorsandGitHub 9db7c62a49 1.2.55 release 2022-02-10 21:02:43 -06:00
d79dc631f1 Fixed RAK11200 configuration and added to build-all (#1192)
* Fixed RAK11200 configuration and added to build-all 

Co-authored-by: Mike Kinney <mike.kinney@gmail.com>
2022-02-10 20:21:36 -06:00
Ben MeadorsandGitHub 7ea6babb7f Add workflow_dispatch back 2022-02-10 16:23:34 -06:00
Garth Vander HouwenandGitHub 0b4b901504 Merge pull request #1196 from meshtastic/mkinney-patch-1
Update main.yml
2022-02-10 14:09:49 -08:00
mkinneyandGitHub cc7b5cf136 Update main.yml 2022-02-10 14:06:09 -08:00
Clemens H / OE1RFC / datacopandGitHub e3df4fe4b4 fix: log error if node_db is full instead of firmware crash (#1191) 2022-02-10 11:44:58 -06:00
Jm Casler 288f2be8ea bump to 1.2.54 2022-02-09 16:46:26 -08:00
Ben MeadorsandGitHub c867af8522 Adjusted adc_multiplier for heltec2.1 and added adc_mulitplier_override (#1183) 2022-02-09 13:37:48 -06:00
Ric LetsonandGitHub 856f2f9589 MCP9808 sensor implementation (#1188)
* MCP9808 Sensor Implementation Initial Test
2022-02-08 11:03:34 -06:00
Ben MeadorsandGitHub e649bc84e1 Fix PR artifact permissions (#1190) 2022-02-08 10:29:57 -06:00
Ben MeadorsandGitHub bbcd59ec7b Specify branch for PR artifact storage (#1187) 2022-02-07 12:44:10 -06:00
Ben MeadorsandGitHub e11fd593ae Update github action to flatten firmware zip and attach artifacts (#1186) 2022-02-07 11:15:03 -06:00
Thomas GöttgensandGitHub 868af9dd6b Get rid of log clutter during oled screen animation (#1182) 2022-02-03 07:22:46 -06:00
Garth Vander HouwenandGitHub 10800a6914 Merge pull request #1180 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-02-02 19:59:41 -08:00
thebenternandGitHub e567fe7322 [create-pull-request] automated change 2022-02-03 03:21:12 +00:00
Ben MeadorsandGitHub 365120e9c2 Added RAK11200 board variant support (#1177)
* Added RAK11200 board variant support
2022-02-02 12:41:07 -06:00
Ben MeadorsandGitHub 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
github-actions[bot]andGitHub dd31a829fb Update and regen protobufs (#1175)
* Update and regen protobufs
2022-02-01 09:41:56 -06:00
Thomas GöttgensandGitHub 9a505c27fa add missing Config definition for PRIVATE_HW (#1174) 2022-02-01 08:08:03 -06:00
Ben MeadorsandGitHub ed9cd7b03d Update nimble (#1173) 2022-01-31 20:56:31 -06:00
Ben MeadorsandGitHub 66413d8b7f Refactored sensors (#1172)
* Refactored sensors
2022-01-31 20:24:32 -06:00
Jm CaslerandGitHub e4fe2c159a Merge pull request #1165 from joshpirihi/master
Allow publishing of decrypted packets to MQTT
2022-01-28 21:10:00 -08:00
Jm CaslerandGitHub f5e0718052 Merge branch 'master' into master 2022-01-28 20:13:46 -08:00
Jm CaslerandGitHub 64ff48c4a5 Merge pull request #1163 from caveman99/caveman99-patch-1
Fixed typo
2022-01-28 13:05:52 -08:00
Jm CaslerandGitHub 50969c4e42 Merge branch 'master' into caveman99-patch-1 2022-01-28 13:05:45 -08:00
Jm CaslerandGitHub 5288f1846a Merge pull request #1166 from rnauber/fix_nullptrderef
Prevent null pointer dereference in setup() if radio is not available.
2022-01-28 13:05:25 -08:00
Jm CaslerandGitHub c545155b03 Merge branch 'master' into fix_nullptrderef 2022-01-28 13:05:11 -08:00
Vladislav OsmanovandGitHub a4e9fca80c DIY versions cleaning - moved to the one folder (#1167) 2022-01-28 14:58:27 -06:00
Richard Nauber 3611293a98 Prevent null pointer dereference in setup() if radio is not available. 2022-01-28 21:02:02 +01:00
joshpirihiandGitHub dc7f376778 Correct a comment 2022-01-29 06:40:17 +13:00
Joshua Pirihi ff2cad9cac Allow publishing of decrypted mqtt packets 2022-01-29 06:06:49 +13:00
Joshua Pirihi b781fb613c Allow publishing of decrypted mqtt packets 2022-01-29 06:03:48 +13:00
Thomas GöttgensandGitHub 0a1125d7e4 Merge branch 'master' into caveman99-patch-1 2022-01-28 08:44:46 +01:00
Thomas GöttgensandGitHub ed2de3b885 Fixed typo 2022-01-28 08:43:48 +01:00
Jm Casler 19c1f9fa59 Bump to 1.2.53 2022-01-27 18:41:29 -08:00
Jm Casler 266d6ad205 Proto regen for .53 2022-01-27 17:52:03 -08:00
Jm CaslerandGitHub 66cd824437 Merge pull request #1162 from mkinney/remote_hw
gpio read and write work as expected
2022-01-27 17:49:23 -08:00
mkinneyandGitHub e2db4f6927 Merge branch 'master' into remote_hw 2022-01-27 17:40:29 -08:00
Jm Casler 56fb141ed0 updating proto submodule to latest 2022-01-27 17:40:00 -08:00
Mike Kinney e8e209be25 gpio read and write work as expected 2022-01-28 00:11:16 +00:00
mkinneyandGitHub c278a0e299 Merge pull request #1149 from caveman99/caveman99-patch-1
accept one or more environment definitions
2022-01-27 11:39:43 -08:00
mkinneyandGitHub fbc25c3a13 Merge branch 'master' into caveman99-patch-1 2022-01-27 11:09:57 -08:00
mkinneyandGitHub b7f04f4c91 Merge pull request #1159 from meshtastic/create-pull-request/patch
Changes by create-pull-request action
2022-01-27 11:09:46 -08:00
mkinneyandGitHub d5377a0f19 Merge branch 'master' into create-pull-request/patch 2022-01-27 10:40:01 -08:00
Jm CaslerandGitHub dafc1092aa Merge pull request #1158 from meshtastic/thebentern-patch-2
Ignore markdown and yml for continuous integration
2022-01-27 10:37:09 -08:00
Jm CaslerandGitHub 477b666998 Merge branch 'master' into thebentern-patch-2 2022-01-27 10:37:04 -08:00
Jm CaslerandGitHub dbcd720391 Merge pull request #1154 from osmanovv/patch-1
Fix MISO/MOSI pins for DIY v1.1
2022-01-27 10:36:38 -08:00
Ben MeadorsandGitHub 59c2bcd978 Merge branch 'master' into thebentern-patch-2 2022-01-27 12:33:55 -06:00
mkinneyandGitHub aea6675e64 [create-pull-request] automated change 2022-01-27 18:32:55 +00:00
mkinneyandGitHub 8bff696bef Merge branch 'master' into patch-1 2022-01-27 10:28:21 -08:00
mkinneyandGitHub da0ec09bf4 Merge pull request #1157 from meshtastic/thebentern-patch-1
Create pr instead of commit
2022-01-27 10:28:03 -08:00
Ben MeadorsandGitHub 2c99020037 Ignore markdown and yml for continuous integration 2022-01-27 11:59:08 -06:00
Ben MeadorsandGitHub 14419cbd02 Create pr instead of commit 2022-01-27 11:54:32 -06:00
Ben MeadorsandGitHub 1bfa6839e2 Use correct path to mesh (#1155) 2022-01-27 08:57:49 -06:00
Ben MeadorsandGitHub a61676504f Attempt to only update proto (#1153) 2022-01-27 07:51:51 -06:00
Vladislav OsmanovandGitHub f4d3de086a Fix MISO/MOSI pins for DIY v1.1 2022-01-27 16:49:55 +03:00
Thomas GöttgensandGitHub af249da1a3 accept one or more environment definitions
This is a non breaking change. Up till now you could either specify ONE board to check or run with default settings hich would check a sensible set. With this change you can provide a space-separated list of boards to check, this facilitates parallel CI executions better.
2022-01-27 09:18:31 +01:00
Jm CaslerandGitHub 7613c7bf83 Merge pull request #1148 from mc-hamster/master
position plugin - only send if channel utilization is <50 percent
2022-01-26 22:40:52 -08:00
Jm Casler e4608e0a10 position plugin - only send if channel utilization is <50 percent 2022-01-26 22:32:33 -08:00
Jm CaslerandGitHub d26549c7c2 Merge pull request #1147 from mc-hamster/master
rangeTestPlugin - only send if channelUtilization is less than 25%
2022-01-26 22:20:35 -08:00
Jm Casler 697d52b9bd rangeTestPlugin - only send if channelUtilization is less than 25% 2022-01-26 22:20:13 -08:00
Ben MeadorsandGitHub 7a9450b250 Only update protos (#1145) 2022-01-26 16:17:30 -06:00
Jm Casler 6d372743f5 updating proto submodule to latest 2022-01-26 13:35:46 -08:00
mkinneyandGitHub c2b309195d Merge pull request #1144 from meshtastic/update-protos-action
Update protobufs and regenerate classes action
2022-01-26 13:24:58 -08:00
Ben MeadorsandGitHub 3c7670186a Update protobufs and regenerate classes 2022-01-26 14:25:30 -06:00
Ben MeadorsandGitHub b51be320dd BME680 support (#1142) 2022-01-25 14:22:48 -06:00
Thomas GöttgensandGitHub 409ad9c2c3 Split platformio.ini into one file for each board, only leaving platform definitions and a handful of stale (?) boards around.. (#1141) 2022-01-25 08:56:16 -06:00
mkinneyandGitHub eaa5252cdb Merge pull request #1138 from mkinney/fix_some_cpp_warnings
Fix some cpp warnings
2022-01-24 15:34:58 -08:00
Mike Kinney 3d718f45d5 fail the build if we have any cppcheck warnings 2022-01-24 21:35:24 +00:00
mkinneyandGitHub a8dab94087 Merge branch 'master' into fix_some_cpp_warnings 2022-01-24 13:27:33 -08:00
mkinneyandGitHub 5a348da0e9 Merge pull request #1139 from caveman99/master
use the new version of Screen lib when building
2022-01-24 13:27:18 -08:00
Thomas GöttgensandGitHub 115b835b83 Merge branch 'master' into master 2022-01-24 21:57:54 +01:00
Thomas GöttgensandGitHub 9df42799ff Tryfix: Local replica for build problem (#1)
* Tryfix: Local replica for build problem

* Update platformio.ini

* use the real repo again
2022-01-24 21:56:31 +01:00
mkinneyandGitHub e1d3c01199 Merge branch 'master' into fix_some_cpp_warnings 2022-01-24 12:52:21 -08:00
mkinneyandGitHub bdcc0f252b Merge pull request #1140 from costonisp/master
added a new variant heltec_2.1
2022-01-24 12:44:49 -08:00
Mike Kinney 437aa1e9af make check a different job on ci 2022-01-24 20:04:31 +00:00
Mike Kinney 6883bc7afc fix more warnings; add to CI; suppress some warnings 2022-01-24 19:58:07 +00:00
co stoandGitHub a2eef895bd Create variant.h 2022-01-24 20:40:28 +01:00
co stoandGitHub 64671c8ce7 Delete variants/heltev_v2.1 directory 2022-01-24 20:38:51 +01:00
Thomas GöttgensandGitHub 252a27174e New checkout for library 2022-01-24 20:28:16 +01:00
Mike Kinney 7c362af3de more warning fixes 2022-01-24 18:39:17 +00:00
co stoandGitHub c6b851a2e6 Update variant.h 2022-01-24 19:01:23 +01:00
co stoandGitHub ec4346aba3 Update variant.h 2022-01-24 18:59:09 +01:00
co stoandGitHub 791186a264 Create variant.h 2022-01-24 18:58:32 +01:00
co stoandGitHub ab947f06aa Delete .heltec_v2.1 2022-01-24 18:55:51 +01:00
co stoandGitHub cfa0ceb604 Create .heltec_v2.1 2022-01-24 18:55:26 +01:00
co stoandGitHub c7686ad57e Delete variant.h 2022-01-24 18:46:35 +01:00
co stoandGitHub 8732b7cb4d Add files via upload 2022-01-24 18:45:51 +01:00
co stoandGitHub fe9dcbb316 Delete heltec_v2.1 2022-01-24 18:40:15 +01:00
co stoandGitHub 38d1a381e6 Create heltec_v2.1 2022-01-24 18:35:25 +01:00
co stoandGitHub 0b2f1d5675 Update platformio.ini 2022-01-24 18:33:31 +01:00
Mike Kinney caaa235c5d more cppcheck warnings fixes 2022-01-24 17:24:40 +00:00
Thomas GöttgensandGitHub 9a0126cde1 use the new version of Screen lib when building 2022-01-24 17:37:33 +01:00
co stoandGitHub 39d0c0fd8f Merge branch 'meshtastic:master' into master 2022-01-24 14:00:33 +01:00
mkinneyandGitHub be0b9979bc Merge pull request #3 from meshtastic/master
refresh branch from master
2022-01-23 23:02:02 -08:00
Mike Kinney b3210f6c2c fix some cppcheck warnings 2022-01-24 07:00:14 +00:00
Jm CaslerandGitHub 2357240d84 Merge pull request #1136 from osmanovv/diy-v11
Meshtastic DIY v1.1 new schematic
2022-01-23 20:43:00 -08:00
co stoandGitHub c2f0048931 Merge branch 'meshtastic:master' into master 2022-01-24 00:14:42 +01:00
Vladislav Osmanov d1ba314065 Meshtastic DIY v1.1 new schematic 2022-01-23 23:44:58 +03:00
Jm CaslerandGitHub 8a79ede285 Merge pull request #1135 from mc-hamster/master
Protos regened for reply and tapback
2022-01-23 09:31:26 -08:00
Jm Casler c8ecd6ac8e Protos regened for reply and tapback 2022-01-23 09:30:44 -08:00
Jm Casler 13226adb2a updating proto submodule to latest 2022-01-23 09:10:33 -08:00
Ben MeadorsandGitHub e706aae41d Added NRF/RAK support for env plugin (#1133)
* Added NRF/RAK support for env plugin

* Added Environmental mixin to platform io
2022-01-23 10:05:39 -06:00
co stoandGitHub 91ad0df11c Update variant.h 2022-01-23 17:04:55 +01:00
co stoandGitHub 976627d974 Merge branch 'meshtastic:master' into master 2022-01-23 14:20:29 +01:00
Jm CaslerandGitHub 6830f9861a Merge pull request #1132 from mc-hamster/master
set the routerMessage buffer to Constants_DATA_PAYLOAD_LEN
2022-01-23 02:14:55 -08:00
Jm CaslerandGitHub 2db307fc8d Merge branch 'meshtastic:master' into master 2022-01-23 01:05:36 -08:00
Jm Casler 7fae43e1a5 Merge branch 'master' of https://github.com/mc-hamster/Meshtastic-device 2022-01-23 01:05:09 -08:00
Jm Casler 8b60226497 set the routerMessage buffer to Constants_DATA_PAYLOAD_LEN 2022-01-23 01:05:07 -08:00
Jm CaslerandGitHub ab8083dec4 Merge pull request #1131 from mc-hamster/master
Fixes PIO code inspector
2022-01-23 01:01:50 -08:00
Jm CaslerandGitHub a561713a48 Merge branch 'meshtastic:master' into master 2022-01-23 00:29:54 -08:00
Jm Casler 00f3996cee Merge branch 'master' of https://github.com/mc-hamster/Meshtastic-device 2022-01-23 00:29:24 -08:00
Jm Casler 9e4e79c5d7 Fixes PIO code inspector 2022-01-23 00:29:16 -08:00
Ben MeadorsandGitHub 61e1b8d859 Set lastMeasurementPacket as one we're sending (#1130) 2022-01-22 19:24:47 -06:00
mkinneyandGitHub 165e8e8cba Merge pull request #1127 from mkinney/add_docker
initial dockerfile and notes
2022-01-22 14:02:19 -08:00
mkinneyandGitHub 635fbcf0d5 Merge branch 'master' into add_docker 2022-01-22 13:34:29 -08:00
mkinneyandGitHub 815222ad80 Merge pull request #1128 from osmanovv/diy-rfm95
RFM95/SX127x support in DIY
2022-01-22 13:34:17 -08:00
mkinneyandGitHub 64a9f15b1c Merge branch 'master' into add_docker 2022-01-22 13:16:20 -08:00
Ben MeadorsandGitHub abcdf39b20 Merge branch 'master' into diy-rfm95 2022-01-22 15:09:57 -06:00
Ben MeadorsandGitHub 16ee75313a BME280 support for environment and screen re-org (#1129) 2022-01-22 15:09:17 -06:00
Vladislav Osmanov bfd9938507 RFM95/SX127x support in DIY 2022-01-22 16:13:52 +03:00
Mike Kinney 01f5f1b5ba initial dockerfile and notes 2022-01-22 00:01:32 -08:00
Ben MeadorsandGitHub b6706c7ac1 Admin message shutdown feature (#1124)
* Shutdown via proto admin message
2022-01-21 15:03:26 -06:00
Thomas GöttgensandGitHub 7723b30951 Custom_ArialMT_Plain_10 not used anywhere (#1122) 2022-01-21 09:53:57 -06:00
Ben MeadorsandGitHub 6d34151590 Admin message shutdown protobufs (#1119)
* Updated protos for admin message shutdown protobufs
2022-01-20 21:43:15 -06:00
co stoandGitHub 2230cbbe2a Correction for wrong battery display on tlora_v2_1_16 board (#1120)
* Update variant.h
2022-01-20 20:47:30 -06:00
co stoandGitHub b49ba55658 Merge branch 'master' into master 2022-01-21 02:37:39 +01:00
co stoandGitHub 0864154157 Update platformio.ini 2022-01-21 02:26:59 +01:00
co stoandGitHub c4f64b1592 Update variant.h 2022-01-21 02:09:25 +01:00
co stoandGitHub 001d054924 Update platformio.ini 2022-01-21 02:07:29 +01:00
mkinneyandGitHub 5e590a4a5e Merge pull request #1118 from meshtastic/mkinney-patch-1
Update README.md
2022-01-20 10:57:17 -08:00
mkinneyandGitHub 22a2fe2cb4 Update README.md
add github downloads badge
2022-01-20 10:16:18 -08:00
mkinneyandGitHub f047ae6792 Update README.md
add ci badge
2022-01-20 10:04:43 -08:00
Ben MeadorsandGitHub e1ef495071 Add tlora-v2-1-1.6 to default envs for consistency (#1117) 2022-01-20 08:34:03 -06:00
Jm Casler 209c6253a6 updating proto submodule to latest 2022-01-19 18:18:55 -08:00
mkinneyandGitHub 1acabb9d35 Merge pull request #1110 from prampec/master
Temporary fix on canned messages total length.
2022-01-19 16:14:56 -08:00
mkinneyandGitHub 420495cb2d Merge branch 'master' into master 2022-01-19 15:45:58 -08:00
Ben MeadorsandGitHub 9309824874 RAK / NRF shutdown functionality on user button long press (#1113) 2022-01-19 17:10:02 -06:00
Balázs KelemenandGitHub 4fc443e760 Merge branch 'meshtastic:master' into master 2022-01-19 17:22:34 +01:00
Balazs Kelemen 53399f06e5 Canned message plugin status fix. 2022-01-19 09:55:06 +01:00
Ben MeadorsandGitHub 4e3fda87a1 Initial configuration.h -> variants refactor (#1104)
* Initial configuration to variants refactor
2022-01-18 18:35:42 -06:00
Balazs Kelemen 1ff3b3326c Temporary fix on canned messages total length. 2022-01-18 23:15:54 +01:00
mkinneyandGitHub 9f0ddda6ca Merge pull request #1107 from mkinney/fix_warning
change name of define because MAX_BLOCKSIZE is already taken
2022-01-17 23:14:26 -08:00
mkinneyandGitHub 8e3d30bd7f Merge branch 'master' into fix_warning 2022-01-17 22:44:01 -08:00
mkinneyandGitHub 6ca3186bff Merge pull request #1106 from mkinney/add_more_env_sensors
add DHT22
2022-01-17 22:17:48 -08:00
Mike Kinney 68fadfe26c change name of define because MAX_BLOCKSIZE is already taken 2022-01-18 06:13:43 +00:00
Jm Casler 92bcdb5e53 updating proto submodule to latest 2022-01-17 09:23:29 -08:00
Jm CaslerandGitHub 04b1948ee9 Merge pull request #1105 from prampec/master
CannedMessagePlugin typo fix.
2022-01-16 22:46:57 -08:00
Mike Kinney 6fdc16017a revert the cheking for esptool 2022-01-17 02:31:25 +00:00
Mike Kinney 7f759d6bb5 Merge remote-tracking branch 'prampec/master' into add_more_env_sensors 2022-01-17 00:03:14 +00:00
Mike Kinney 1f227797c1 updated file after updating protobufs 2022-01-16 23:54:10 +00:00
Mike Kinney ab87c0a9ee updating proto 2022-01-16 23:49:18 +00:00
Mike Kinney 6d960918e2 minor change to re-trigger ci 2022-01-16 15:22:17 -08:00
Mike Kinney 5797e32461 add support for other 2 sensors 2022-01-16 15:16:03 -08:00
Mike Kinney 41da6c3b99 add DHT22 2022-01-16 15:06:34 -08:00
Balazs Kelemen fe3a352511 CannedMessagePlugin typo fix. 2022-01-16 23:18:40 +01:00
Jm CaslerandGitHub b53f4214bc Merge pull request #1099 from mc-hamster/master
AirTime - fix bug in array shifter
2022-01-15 15:28:39 -08:00
Jm CaslerandGitHub b6b1bcc5ad Merge branch 'meshtastic:master' into master 2022-01-15 15:27:45 -08:00
Jm Casler 91117ca7c6 AirTime - fix bug in array shifter 2022-01-15 15:27:25 -08:00
Jm CaslerandGitHub 2d8e55a34e Merge pull request #1098 from mc-hamster/master
Airtime - calculate ms in a hour in preprocessor
2022-01-15 12:24:50 -08:00
Jm CaslerandGitHub 3a7292d3d0 Merge branch 'meshtastic:master' into master 2022-01-15 12:24:31 -08:00
Jm Casler 3fea1c4e5f Merge branch 'master' of https://github.com/mc-hamster/Meshtastic-device 2022-01-15 12:24:17 -08:00
Jm Casler c2435470c1 Airtime - calculate ms in a hour in preprocessor 2022-01-15 12:24:16 -08:00
Jm CaslerandGitHub 1c993c10a1 Merge pull request #1097 from mc-hamster/master
airtime - reuse some functions
2022-01-15 11:20:33 -08:00
Jm CaslerandGitHub 0a62ce23af Merge branch 'master' into master 2022-01-15 11:20:21 -08:00
Jm Casler 38efb8b3ad Merge branch 'master' of https://github.com/mc-hamster/Meshtastic-device 2022-01-15 11:19:52 -08:00
Jm Casler 9ee7f5e0bd airtime - reuse some functions 2022-01-15 11:19:50 -08:00
Jm CaslerandGitHub c798e1a2da Merge pull request #1096 from mc-hamster/master
Airtime - removed debug message
2022-01-15 09:51:46 -08:00
Jm CaslerandGitHub 7eb4713422 Merge branch 'meshtastic:master' into master 2022-01-15 09:51:10 -08:00
Jm CaslerandGitHub a9ed26fdbc Merge pull request #1090 from prampec/CannedMessagePlugin
Canned message plugin
2022-01-15 09:50:39 -08:00
Jm Casler a7451b6abe Airtime - removed debug message 2022-01-15 09:50:10 -08:00
Jm CaslerandGitHub e61db642bc Merge pull request #1095 from mc-hamster/master
Add airtime tx calculation as a 1hr rolling window
2022-01-15 09:45:12 -08:00
Jm Casler 25a540c28b Add airtime tx calculation as a 1hr rolling window 2022-01-15 09:44:29 -08:00
Jm Casler 1993b8f8a6 updating proto submodule to latest 2022-01-15 09:34:11 -08:00
Jm CaslerandGitHub 38dd5612fd Merge branch 'master' into CannedMessagePlugin 2022-01-15 09:20:10 -08:00
Jm CaslerandGitHub 8a63c6f3a3 Merge pull request #1094 from mc-hamster/master
Fix borked airtime report in /json/reports
2022-01-15 08:25:46 -08:00
Jm CaslerandGitHub 778d13dee7 Merge branch 'meshtastic:master' into master 2022-01-15 08:25:11 -08:00
Jm Casler 2fd0d2baff Fixed borked airtime report in /json/reports
For: https://github.com/meshtastic/Meshtastic-device/issues/1086
2022-01-15 08:24:39 -08:00
Jm CaslerandGitHub 399792803a Merge pull request #1092 from mkinney/add_quotes_in_device_install
add quotes around PYTHON; add check for esptool
2022-01-15 07:49:30 -08:00
Mike Kinney 8a6bbcb985 add quotes around PYTHON; add check for esptool 2022-01-14 10:40:18 -08:00
Jm CaslerandGitHub 419349e13e Merge branch 'master' into CannedMessagePlugin 2022-01-13 17:31:12 -08:00
Jm CaslerandGitHub 6b0770fdd5 Merge pull request #1088 from markbirss/master
Fix SSD1306 OLED pinout on TLORA_V1_3
2022-01-13 17:22:21 -08:00
Jm CaslerandGitHub ee2b05da78 Merge branch 'master' into master 2022-01-13 16:56:06 -08:00
Jm Casler d900847bab updating proto submodule to latest 2022-01-13 16:55:20 -08:00
Ben MeadorsandGitHub 8b56ebd566 Merge branch 'master' into CannedMessagePlugin 2022-01-13 13:20:02 -06:00
Jm Casler b63802cef3 1.2.52 2022-01-13 06:49:55 -08:00
Balazs Kelemen a1f80f024e CannedMessagePlugin merge fix 2022-01-13 14:19:55 +01:00
Balazs Kelemen 41de8a1309 Relocate 'input' folder. 2022-01-13 14:17:21 +01:00
Balazs Kelemen 33f08364e4 Reset plugin in case of inactivity. 2022-01-13 14:17:21 +01:00
Balazs Kelemen c5b95ed3c0 Screen update event. 2022-01-13 14:17:21 +01:00
Balazs Kelemen f7c8cabdfe Screen drawing routine goes to Plugin. 2022-01-13 14:17:20 +01:00
Balazs Kelemen 0f1c424731 Rotary get rid of duplicate methods. 2022-01-13 14:17:20 +01:00
Balazs Kelemen 3fa00f603b Make all variables configurable. 2022-01-13 14:17:16 +01:00
Balazs Kelemen f5004a66a1 Introduce InputBroker 2022-01-13 14:15:53 +01:00
Balazs Kelemen b832b82ec6 Use init() instead of constructor. 2022-01-13 14:15:53 +01:00
Balazs Kelemen fbd5b8b721 Canned message bugfixes. 2022-01-13 14:15:53 +01:00
Balazs Kelemen 772dfe39dc Combine rotary with canned messages. 2022-01-13 14:15:53 +01:00
Balazs Kelemen c7e62142e9 RotaryEncoderInterruptBase 2022-01-13 14:15:53 +01:00
Balazs Kelemen 6eb2b33124 Fix rotary glitch. 2022-01-13 14:15:53 +01:00
Balazs Kelemen b3ddf16d64 Display sending state. 2022-01-13 14:15:53 +01:00
Balazs Kelemen 4a29aef19e Show previous and next message in list. 2022-01-13 14:15:53 +01:00
Balazs Kelemen 7b8849493f Adding screen frame 2022-01-13 14:15:53 +01:00
Balazs Kelemen 2b588f1567 CannedMessagePlugin initial commit 2022-01-13 14:15:53 +01:00
Mark Trevor BirssandGitHub 975f7c0332 Fix SSD1306 OLED pinout on TLORA_V1_3
The V1.3 board OLED pinout changed from V1
Now on pin SDA(21) and SCL(22) not SDA(4) and SCL(15)

LILYGO Product Page
http://www.lilygo.cn/prod_view.aspx?TypeId=50060&Id=1253&FId=t3:50060:3

Product Pin
https://ae01.alicdn.com/kf/H098cb5d5159841b398fcfd4ebf705725W.jpg
2022-01-13 10:28:02 +02:00
495 changed files with 25252 additions and 19045 deletions
-11
View File
@@ -1,11 +0,0 @@
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.162.0/containers/ubuntu/.devcontainer/base.Dockerfile
# [Choice] Ubuntu version: bionic, focal
ARG VARIANT="focal"
FROM mcr.microsoft.com/vscode/devcontainers/base:0-${VARIANT}
# [Optional] Uncomment this section to install additional OS packages.
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install python3-distutils python3-pip
RUN pip3 install platformio meshtastic adafruit-nrfutil
RUN wget https://github.com/protocolbuffers/protobuf/releases/download/v3.15.8/protoc-3.15.8-linux-x86_64.zip -O /tmp/protoc.zip && cd /tmp && unzip protoc.zip && chmod a+x bin/protoc && cp bin/protoc /usr/local/bin
-32
View File
@@ -1,32 +0,0 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.162.0/containers/ubuntu
{
"name": "Ubuntu",
"build": {
"dockerfile": "Dockerfile",
// Update 'VARIANT' to pick an Ubuntu version: focal, bionic
"args": { "VARIANT": "focal" }
},
// Set *default* container specific settings.json values on container create.
"settings": {
"terminal.integrated.shell.linux": "/bin/bash"
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"platformio.platformio-ide",
"xaver.clang-format"
],
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "uname -a",
// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode",
"postCreateCommand": "git submodule update --init"
}
+76
View File
@@ -0,0 +1,76 @@
name: Bug Report
description: File a bug report
title: "[Bug]: "
labels: ["bug", "triage"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: dropdown
id: category
attributes:
label: Category
description: How would you catagorize this issue?
multiple: true
options:
- Hardware Compatibility
- BLE
- Serial
- WiFi
- Other
validations:
required: true
- type: dropdown
id: hardware
attributes:
label: Hardware
description: What hardware are you encountering this issue on?
multiple: true
options:
- Not Applicable
- T-Beam
- T-Beam 0.7
- T-Lora v1
- T-Lora v1.3
- T-Lora v2 1.6
- T-Echo
- Rak4631
- Rak11200
- Heltec v1
- Heltec v2
- Heltec v2.1
- Relay v1
- Relay v2
- DIY
- Other
validations:
required: true
- type: input
id: version
attributes:
label: Firmware Version
description: This can be found on the device's screen or via one of the apps.
placeholder: x.x.x.yyyyyyy
validations:
required: true
- type: textarea
id: body
attributes:
label: Description
description: Please provide details on what steps you performed for this to happen.
validations:
required: true
- type: textarea
id: logs
attributes:
label: Relevant log output
description: If you have any log output to help in diagnosing your bug, please provide it here.
render: Shell
validations:
required: false
+46
View File
@@ -0,0 +1,46 @@
name: New Board
description: Request us to support new hardware
title: "[Board]: "
labels: ["enhancement", "triage"]
body:
- type: markdown
attributes:
value: |
Thanks for requesting a new board, this will not gurantee that we will support it, but will be on our radar.
- type: dropdown
id: soc
attributes:
label: SOC
description: What SOC does your board have?
multiple: true
options:
- NRF52
- ESP32
- Other
validations:
required: true
- type: input
id: lora
attributes:
label: Lora IC
description: What LoRa IC does the board have?
validations:
required: true
- type: input
id: link
attributes:
label: Product Link
description: Where can we find this product?
validations:
required: true
- type: textarea
id: body
attributes:
label: Description
description: Please provide any further details you think we may need.
validations:
required: true
@@ -1,38 +0,0 @@
---
name: Bug report or feature proposal
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
Please - if you just have a question (i.e. not a bug report or a feature proposal), post in our [forum](https://meshtastic.discourse.group/) instead.
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Device info:**
- Device model: [e.g. TBEAM]
- Software Version [e.g. 0.7.8]
**Smartphone information (if relevant):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- App Version [e.g. 0.7.2]
**Additional context**
Add any other context about the problem here.
+27
View File
@@ -0,0 +1,27 @@
name: Feature Request
description: Request a new feature
title: "[Feature Request]: "
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Thanks for your request this will not gurantee that we will implement it, but it will be reviewed.
- type: dropdown
id: soc
attributes:
label: Platform
description: What device platform will support your feature?
multiple: true
options:
- NRF52
- ESP32
validations:
required: true
- type: textarea
id: body
attributes:
label: Description
description: Please provide details about your enhancement.
validations:
required: true
-39
View File
@@ -1,39 +0,0 @@
name: 'Common init'
# WARNING due to https://github.com/actions/runner/issues/646
# this code can't work - must copy and paste into workflows for now because 'uses' is not supported
runs:
using: "composite"
steps:
- name: Setup Python
uses: actions/setup-python@v2
with:
python-version: 3.x
- name: Cache python libs
uses: actions/cache@v1
id: cache-pip # needed in if test
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip
- name: Upgrade python tools
# We actually want to run this every time
# if: steps.cache-pip.outputs.cache-hit != 'true'
run: |
python -m pip install --upgrade pip
pip install -U platformio meshtastic adafruit-nrfutil
# Don't cache for now because I want to be lazy with portuino updates githashes
# - name: Cache platformio
# uses: actions/cache@v1
# id: cache-platformio # needed in if test
# with:
# path: ~/.platformio
# key: ${{ runner.os }}-platformio
- name: Upgrade platformio
run: |
pio upgrade
+41
View File
@@ -0,0 +1,41 @@
name: 'Setup Build Base Composite Action'
description: 'Base build actions for Meshtastic Platform IO steps'
runs:
using: "composite"
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
submodules: "recursive"
ref: ${{github.event.pull_request.head.ref}}
repository: ${{github.event.pull_request.head.repo.full_name}}
- name: Install cppcheck
shell: bash
run: |
sudo apt-get install -y cppcheck
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: 3.x
- name: Cache python libs
uses: actions/cache@v3
id: cache-pip # needed in if test
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip
- name: Upgrade python tools
shell: bash
run: |
python -m pip install --upgrade pip
pip install -U platformio adafruit-nrfutil
pip install -U meshtastic --pre
- name: Upgrade platformio
shell: bash
run: |
pio upgrade
+54
View File
@@ -0,0 +1,54 @@
name: Build ESP32
on:
workflow_call:
inputs:
board:
required: true
type: string
jobs:
build-esp32:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build base
id: base
uses: ./.github/actions/setup-base
- name: Pull web ui
uses: dsaltares/fetch-gh-release-asset@master
with:
repo: "meshtastic/web"
file: "build.tar"
target: "build.tar"
token: ${{ secrets.GITHUB_TOKEN }}
- name: Unpack web ui
run: |
tar -xf build.tar -C data/static
rm build.tar
- name: Build ESP32
run: bin/build-esp32.sh ${{ inputs.board }}
- name: Pull OTA Firmware
uses: dsaltares/fetch-gh-release-asset@master
with:
repo: "meshtastic/firmware-ota"
file: "firmware.bin"
target: "release/bleota.bin"
token: ${{ secrets.GITHUB_TOKEN }}
- name: Get release version string
shell: bash
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
id: version
- name: Store binaries as an artifact
uses: actions/upload-artifact@v3
with:
name: firmware-${{ inputs.board }}-${{ steps.version.outputs.version }}.zip
path: |
release/*.bin
release/*.elf
+33
View File
@@ -0,0 +1,33 @@
name: Build NRF52
on:
workflow_call:
inputs:
board:
required: true
type: string
jobs:
build-nrf52:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build base
id: base
uses: ./.github/actions/setup-base
- name: Build NRF52
run: bin/build-nrf52.sh ${{ inputs.board }}
- name: Get release version string
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
id: version
- name: Store binaries as an artifact
uses: actions/upload-artifact@v3
with:
name: firmware-${{ inputs.board }}-${{ steps.version.outputs.version }}.zip
path: |
release/*.uf2
release/*.elf
release/*.zip
+32
View File
@@ -0,0 +1,32 @@
name: Build RPI2040
on:
workflow_call:
inputs:
board:
required: true
type: string
jobs:
build-rpi2040:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build base
id: base
uses: ./.github/actions/setup-base
- name: Build Raspberry Pi 2040
run: ./bin/build-rpi2040.sh ${{ inputs.board }}
- name: Get release version string
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
id: version
- name: Store binaries as an artifact
uses: actions/upload-artifact@v3
with:
name: firmware-${{ inputs.board }}-${{ steps.version.outputs.version }}.zip
path: |
release/*.uf2
release/*.elf
-106
View File
@@ -1,106 +0,0 @@
name: Continuous Integration
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
# setup:
# runs-on: ubuntu-latest
# steps:
# - name: Startup
# run: echo "No action setup currently needed, skipping..."
ci-build:
# needs: setup
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: Setup Python
uses: actions/setup-python@v2
with:
python-version: 3.x
- name: Cache python libs
uses: actions/cache@v1
id: cache-pip # needed in if test
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip
#- name: Install linux apt packages
# run: |
# sudo apt-get install -y libgpiod-dev
- name: Upgrade python tools
# We actually want to run this every time
# if: steps.cache-pip.outputs.cache-hit != 'true'
run: |
python -m pip install --upgrade pip
pip install -U platformio meshtastic adafruit-nrfutil
# - name: Cache platformio
# uses: actions/cache@v1
# id: cache-platformio # needed in if test
# with:
# path: ~/.platformio
# key: ${{ runner.os }}-platformio
- name: Upgrade platformio
run: |
pio upgrade
- name: Pull web ui
uses: dsaltares/fetch-gh-release-asset@master
with:
repo: "meshtastic/meshtastic-web"
file: "build.tar"
target: "build.tar"
token: ${{ secrets.GITHUB_TOKEN }}
- name: Unpack web ui
run: |
tar -xf build.tar -C data/static
rm build.tar
# We now run integration test before other build steps (to quickly see runtime failures)
- name: Build for native
run: platformio run -e native
- name: Integration test
run: |
.pio/build/native/program &
sleep 20 # 5 seconds was not enough
echo "Simulator started, launching python test..."
python3 -c 'from meshtastic.test import testSimulator; testSimulator()'
# - name: Build for tbeam
# run: platformio run -e tbeam
# - name: Build for heltec
# run: platformio run -e heltec
# - name: Build for wisblock RAK4631
# run: platformio run -e rak4631
- name: Build everything
run: bin/build-all.sh
- name: Store binaries as an artifact
uses: actions/upload-artifact@v2
with:
name: built
path: release/archive/firmware-*.zip
retention-days: 30
- name: Store debugging elf files as an artifact
uses: actions/upload-artifact@v2
with:
name: debug-elfs
path: release/archive/elfs-*.zip
retention-days: 7
+315
View File
@@ -0,0 +1,315 @@
name: CI
on:
# # Triggers the workflow on push but only for the master branch
push:
branches: [master, develop]
paths-ignore:
- "**.md"
- "version.properties"
# Note: This is different from "pull_request". Need to specify ref when doing checkouts.
pull_request_target:
branches: [master, develop]
paths-ignore:
- "**.md"
#- "**.yml"
workflow_dispatch:
jobs:
check:
strategy:
fail-fast: false
matrix:
include:
- board: rak11200
- board: tlora-v2-1-1.6
- board: tbeam
- board: heltec-v2.1
- board: meshtastic-diy-v1
- board: rak4631
- board: t-echo
- board: station-g1
- board: m5stack-coreink
- board: tbeam-s3-core
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build base
id: base
uses: ./.github/actions/setup-base
- name: Check ${{ matrix.board }}
run: bin/check-all.sh ${{ matrix.board }}
build-esp32:
strategy:
fail-fast: false
matrix:
include:
- board: rak11200
- board: tlora-v2
- board: tlora-v1
- board: tlora_v1_3
- board: tlora-v2-1-1.6
- board: tbeam
- board: heltec-v1
- board: heltec-v2.0
- board: heltec-v2.1
- board: heltec-v3
- board: heltec-wsl-v3
- board: tbeam0.7
- board: meshtastic-diy-v1
- board: meshtastic-dr-dev
- board: nano-g1
- board: station-g1
- board: m5stack-core
- board: m5stack-coreink
- board: tbeam-s3-core
uses: ./.github/workflows/build_esp32.yml
with:
board: ${{ matrix.board }}
build-nrf52:
strategy:
fail-fast: false
max-parallel: 2
matrix:
include:
- board: rak4631
- board: rak4631_eink
- board: t-echo
- board: pca10059_diy_eink
- board: feather_diy
uses: ./.github/workflows/build_nrf52.yml
with:
board: ${{ matrix.board }}
build-rpi2040:
strategy:
fail-fast: false
max-parallel: 2
matrix:
include:
- board: pico
uses: ./.github/workflows/build_rpi2040.yml
with:
board: ${{ matrix.board }}
build-native:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build base
id: base
uses: ./.github/actions/setup-base
# We now run integration test before other build steps (to quickly see runtime failures)
- name: Build for native
run: platformio run -e native
- name: Integration test
run: |
.pio/build/native/program &
sleep 20 # 5 seconds was not enough
echo "Simulator started, launching python test..."
python3 -c 'from meshtastic.test import testSimulator; testSimulator()'
- name: Build Native
run: bin/build-native.sh
- name: Get release version string
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
id: version
- name: Store binaries as an artifact
uses: actions/upload-artifact@v3
with:
name: firmware-native-${{ steps.version.outputs.version }}.zip
path: |
release/device-*.sh
release/device-*.bat
- name: Docker login
if: ${{ github.event_name == 'workflow_dispatch' }}
uses: docker/login-action@v2
with:
username: meshtastic
password: ${{ secrets.DOCKER_TOKEN }}
- name: Docker setup
if: ${{ github.event_name == 'workflow_dispatch' }}
uses: docker/setup-buildx-action@v2
- name: Docker build and push
if: ${{ github.event_name == 'workflow_dispatch' }}
uses: docker/build-push-action@v3
with:
context: .
file: ./Dockerfile
push: true
tags: meshtastic/device-simulator:latest
after-checks:
runs-on: ubuntu-latest
needs: [check]
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{github.event.pull_request.head.ref}}
repository: ${{github.event.pull_request.head.repo.full_name}}
gather-artifacts:
runs-on: ubuntu-latest
needs: [build-esp32, build-nrf52, build-native, build-rpi2040]
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{github.event.pull_request.head.ref}}
repository: ${{github.event.pull_request.head.repo.full_name}}
- uses: actions/download-artifact@v3
with:
path: ./
- name: Get release version string
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
id: version
- name: Move files up
run: mv -b -t ./ ./*tbeam-2*/littlefs*.bin ./*tbeam-2*/bleota.bin ./**/firmware*.bin ./*t-echo*/Meshtastic_nRF52_factory_erase.uf2 ./**/firmware-*.uf2 ./**/firmware-*-ota.zip ./**/*.elf ./*native*/*device-*.sh ./*native*/*device-*.bat
- name: Repackage in single firmware zip
uses: actions/upload-artifact@v3
with:
name: firmware-${{ steps.version.outputs.version }}
path: |
./*.bin
./*.uf2
./firmware-*-ota.zip
./device-*.sh
./device-*.bat
retention-days: 90
- uses: actions/download-artifact@v3
with:
name: firmware-${{ steps.version.outputs.version }}
path: ./output
# For diagnostics
- name: Show artifacts
run: ls -lR
- name: Device scripts permissions
run: |
chmod +x ./output/device-install.sh
chmod +x ./output/device-update.sh
- name: Zip firmware
run: zip -j -9 -r ./firmware-${{ steps.version.outputs.version }}.zip ./output
- name: Repackage in single elfs zip
uses: actions/upload-artifact@v3
with:
name: debug-elfs-${{ steps.version.outputs.version }}.zip
path: ./*.elf
retention-days: 30
- name: Create request artifacts
if: ${{ github.event_name == 'pull_request_target' || github.event_name == 'pull_request' }}
uses: gavv/pull-request-artifacts@v1.0.0
with:
commit: ${{ (github.event.pull_request_target || github.event.pull_request).head.sha }}
repo-token: ${{ secrets.GITHUB_TOKEN }}
artifacts-token: ${{ secrets.ARTIFACTS_TOKEN }}
artifacts-repo: meshtastic/artifacts
artifacts-branch: device
artifacts-dir: pr
artifacts: ./firmware-${{ steps.version.outputs.version }}.zip
release-artifacts:
runs-on: ubuntu-latest
if: ${{ github.event_name == 'workflow_dispatch' }}
needs: [gather-artifacts, after-checks]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: 3.x
- name: Get release version string
run: echo "version=$(./bin/buildinfo.py long)" >> $GITHUB_OUTPUT
id: version
- uses: actions/download-artifact@v3
with:
name: firmware-${{ steps.version.outputs.version }}
path: ./output
- name: Device scripts permissions
run: |
chmod +x ./output/device-install.sh
chmod +x ./output/device-update.sh
- name: Zip firmware
run: zip -j -9 -r ./firmware-${{ steps.version.outputs.version }}.zip ./output
- uses: actions/download-artifact@v3
with:
name: debug-elfs-${{ steps.version.outputs.version }}.zip
path: ./elfs
- name: Zip Elfs
run: zip -j -9 -r ./debug-elfs-${{ steps.version.outputs.version }}.zip ./elfs
# For diagnostics
- name: Show artifacts
run: ls -lR
- name: Create release
uses: actions/create-release@v1
id: create_release
with:
draft: true
prerelease: true
release_name: Meshtastic Firmware ${{ steps.version.outputs.version }}
tag_name: v${{ steps.version.outputs.version }}
body: |
Autogenerated by github action, developer should edit as required before publishing...
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Add bins to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./firmware-${{ steps.version.outputs.version }}.zip
asset_name: firmware-${{ steps.version.outputs.version }}.zip
asset_content_type: application/zip
- name: Add debug elfs to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./debug-elfs-${{ steps.version.outputs.version }}.zip
asset_name: debug-elfs-${{ steps.version.outputs.version }}.zip
asset_content_type: application/zip
- name: Bump version.properties
run: >-
bin/bump_version.py
- name: Create version.properties pull request
uses: peter-evans/create-pull-request@v3
with:
add-paths: |
version.properties
-93
View File
@@ -1,93 +0,0 @@
name: Make Release
on:
# Can optionally take parameters from the github UI, more info here https://github.blog/changelog/2020-07-06-github-actions-manual-triggers-with-workflow_dispatch/#:~:text=You%20can%20now%20create%20workflows,the%20workflow%20is%20run%20on.
# workflow_dispatch:
# inputs:
# Only want to run if version.properties is bumped in master
push:
branches:
- master
paths:
- 'version.properties'
jobs:
release-build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
submodules: 'recursive'
- name: Setup Python
uses: actions/setup-python@v2
with:
python-version: 3.x
# Will be available in steps.version.outputs.version
- name: Get release version string
run: echo "::set-output name=version::$(./bin/buildinfo.py long)"
id: version
# Note: we don't use caches on release builds because we don't want to accidentally not have a virgin build machine
- name: Upgrade python tools
# We actually want to run this every time
# if: steps.cache-pip.outputs.cache-hit != 'true'
run: |
python -m pip install --upgrade pip
pip install -U platformio meshtastic adafruit-nrfutil
- name: Upgrade platformio
run: |
pio upgrade
- name: Pull web ui
uses: dsaltares/fetch-gh-release-asset@master
with:
repo: "meshtastic/meshtastic-web"
file: "build.tar"
target: "build.tar"
token: ${{ secrets.GITHUB_TOKEN }}
- name: Unpack web ui
run: |
tar -xf build.tar -C data/static
rm build.tar
- name: Build everything
run: bin/build-all.sh
- name: Create release
uses: actions/create-release@v1
id: create_release
with:
draft: true
prerelease: true
release_name: ${{ steps.version.outputs.version }} alpha
tag_name: v${{ steps.version.outputs.version }}
body: |
Autogenerated by github action, developer should edit as required before publishing...
env:
GITHUB_TOKEN: ${{ github.token }}
- name: Add bins to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: release/archive/firmware-${{ steps.version.outputs.version }}.zip
asset_name: firmware-${{ steps.version.outputs.version }}.zip
asset_content_type: application/zip
- name: Add debug elfs to release
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: release/archive/elfs-${{ steps.version.outputs.version }}.zip
asset_name: debug-elfs-${{ steps.version.outputs.version }}.zip
asset_content_type: application/zip
+40
View File
@@ -0,0 +1,40 @@
---
name: Flawfinder Scan
on:
push:
branches: [master, develop]
paths-ignore:
- "**.md"
- "version.properties"
jobs:
flawfinder:
runs-on: ubuntu-latest
name: Flawfinder
steps:
# step 1
- name: clone application source code
uses: actions/checkout@v3
# step 2
- name: flawfinder_scan
uses: david-a-wheeler/flawfinder@2.0.19
with:
arguments: '--sarif ./'
output: 'flawfinder_report.sarif'
# step 3
- name: save report as pipeline artifact
uses: actions/upload-artifact@v3
with:
name: flawfinder_report.sarif
path: flawfinder_report.sarif
# step 4
- name: publish code scanning alerts
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: flawfinder_report.sarif
category: flawfinder
@@ -0,0 +1,44 @@
---
name: Semgrep Full Scan
on:
workflow_dispatch:
branches:
- master
schedule:
- cron: '0 1 * * 6'
jobs:
semgrep-full:
runs-on: ubuntu-latest
container:
image: returntocorp/semgrep
steps:
# step 1
- name: clone application source code
uses: actions/checkout@v3
# step 2
- name: full scan
run: |
semgrep \
--sarif --output report.sarif \
--metrics=off \
--config="p/default"
# step 3
- name: save report as pipeline artifact
uses: actions/upload-artifact@v3
with:
name: report.sarif
path: report.sarif
# step 4
- name: publish code scanning alerts
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: report.sarif
category: semgrep
@@ -0,0 +1,28 @@
---
name: Semgrep Differential Scan
on:
pull_request
jobs:
semgrep-diff:
runs-on: ubuntu-latest
container:
image: returntocorp/semgrep
steps:
# step 1
- name: clone application source code
uses: actions/checkout@v3
with:
fetch-depth: 0
# step 2
- name: differential scan
run: |
semgrep scan \
--error \
--metrics=off \
--baseline-commit ${{ github.event.pull_request.base.sha }} \
--config="p/default"
+20 -11
View File
@@ -1,4 +1,4 @@
name: "Update protobufs"
name: "Update protobufs and regenerate classes"
on: workflow_dispatch
jobs:
@@ -7,18 +7,27 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
submodules: true
- name: Update Submodule
- name: Update submodule
run: |
git pull --recurse-submodules
git submodule update --remote --recursive
- name: Commit update
git submodule update --remote protobufs
- name: Download nanopb
run: |
git config --global user.name 'github-actions'
git config --global user.email 'bot@noreply.github.com'
git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }}
git add proto
git commit -m "Update protobuf submodule" && git push || echo "No changes to commit"
wget https://jpa.kapsi.fi/nanopb/download/nanopb-0.4.7-linux-x86.tar.gz
tar xvzf nanopb-0.4.7-linux-x86.tar.gz
mv nanopb-0.4.7-linux-x86 nanopb-0.4.7
- name: Re-generate protocol buffers
run: |
./bin/regen-protos.sh
- name: Create pull request
uses: peter-evans/create-pull-request@v3
with:
add-paths: |
protobufs
src/mesh
+4
View File
@@ -26,3 +26,7 @@ __pycache__
*.swp
*.swo
*~
venv/
release/
.vscode/extensions.json
-50
View File
@@ -1,50 +0,0 @@
image: python:latest
variables:
# make sure GitLab check out submodules
GIT_SUBMODULE_STRATEGY: recursive
stages:
- buildall
- upload
build:
stage: buildall
before_script:
# we need zip later for packaging
- "apt update;apt -y install zip"
- "pip install -U platformio"
script:
# clean up residues from previous run
- rm -rf release
- bin/build-all.sh
# This is for my local environment, if your runners are tagged differently, modify or remove
tags:
- dockerized
# The files which are to be made available in GitLab
artifacts:
paths:
- release/archive/firmware*.zip
upload:
image: curlimages/curl:latest
stage: upload
script:
- |
PACKAGE_REGISTRY_URL="${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_PROJECT_NAME}/master"
cd release/archive
for f in *.zip; do
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${f} ${PACKAGE_REGISTRY_URL}/${f}
done
echo 'Package uploaded!'
# This is for my local environment, if your runners are tagged differently, modify or remove
tags:
- dockerized
+3 -9
View File
@@ -1,9 +1,3 @@
[submodule "proto"]
path = proto
url = https://github.com/meshtastic/Meshtastic-protobufs.git
[submodule "sdk-nrfxlib"]
path = sdk-nrfxlib
url = https://github.com/nrfconnect/sdk-nrfxlib.git
[submodule "design"]
path = design
url = https://github.com/meshtastic/meshtastic-design.git
[submodule "protobufs"]
path = protobufs
url = https://github.com/meshtastic/protobufs.git
+2
View File
@@ -0,0 +1,2 @@
.github/workflows/main_matrix.yml
src/mesh/compression/unishox2.c
+11 -8
View File
@@ -1,8 +1,11 @@
{
// See http://go.microsoft.com/fwlink/?LinkId=827846
// for the documentation about the extensions.json format
"recommendations": [
"platformio.platformio-ide",
"xaver.clang-format"
]
}
{
// See http://go.microsoft.com/fwlink/?LinkId=827846
// for the documentation about the extensions.json format
"recommendations": [
"platformio.platformio-ide",
"xaver.clang-format"
],
"unwantedRecommendations": [
"ms-vscode.cpptools-extension-pack"
]
}
+4 -6
View File
@@ -51,7 +51,10 @@
"iterator": "cpp",
"shared_mutex": "cpp",
"iostream": "cpp",
"esp_nimble_hci.h": "c"
"esp_nimble_hci.h": "c",
"map": "cpp",
"random": "cpp",
"*.tpp": "cpp"
},
"cSpell.words": [
"Blox",
@@ -73,10 +76,5 @@
"cmake.configureOnOpen": true,
"protoc": {
"compile_on_save": false,
"compile_all_path": "/home/kevinh/development/meshtastic/meshtastic-esp32/proto",
"options": [
"--java_out=/tmp",
"-I=/home/kevinh/development/meshtastic/meshtastic-esp32/proto"
]
}
}
-36
View File
@@ -1,36 +0,0 @@
# !!! WARNING !!! AUTO-GENERATED FILE, PLEASE DO NOT MODIFY IT AND USE
# https://docs.platformio.org/page/projectconf/section_env_build.html#build-flags
#
# If you need to override existing CMake configuration or add extra,
# please create `CMakeListsUser.txt` in the root of project.
# The `CMakeListsUser.txt` will not be overwritten by PlatformIO.
cmake_minimum_required(VERSION 3.13)
set(CMAKE_SYSTEM_NAME Generic)
set(CMAKE_C_COMPILER_WORKS 1)
set(CMAKE_CXX_COMPILER_WORKS 1)
project("meshtastic-esp32" C CXX)
include(CMakeListsPrivate.txt)
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/CMakeListsUser.txt)
include(CMakeListsUser.txt)
endif()
include_directories("$ENV{HOME}/.platformio/packages/framework-portduino")
include_directories("/usr/include")
add_custom_target(
Production ALL
COMMAND platformio -c clion run "$<$<NOT:$<CONFIG:All>>:-e${CMAKE_BUILD_TYPE}>"
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
add_custom_target(
Debug ALL
COMMAND platformio -c clion run --target debug "$<$<NOT:$<CONFIG:All>>:-e${CMAKE_BUILD_TYPE}>"
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
)
add_executable(Z_DUMMY_TARGET ${SRC_LIST})
File diff suppressed because it is too large Load Diff
+41
View File
@@ -0,0 +1,41 @@
FROM debian:bullseye-slim AS builder
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Etc/UTC
# http://bugs.python.org/issue19846
# > At the moment, setting "LANG=C" on a Linux system *fundamentally breaks Python 3*, and that's not OK.
ENV LANG C.UTF-8
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
# Install build deps
USER root
RUN apt-get update && \
apt-get -y install wget python3 g++ zip python3-venv git vim ca-certificates
# create a non-priveleged user & group
RUN groupadd -g 1000 mesh && useradd -ml -u 1000 -g 1000 mesh
USER mesh
RUN wget https://raw.githubusercontent.com/platformio/platformio-core-installer/master/get-platformio.py -qO /tmp/get-platformio.py && \
chmod +x /tmp/get-platformio.py && \
python3 /tmp/get-platformio.py && \
git clone https://github.com/meshtastic/firmware --recurse-submodules /tmp/firmware && \
cd /tmp/firmware && \
chmod +x /tmp/firmware/bin/build-native.sh && \
source ~/.platformio/penv/bin/activate && \
./bin/build-native.sh
FROM frolvlad/alpine-glibc
RUN apk --update add --no-cache g++ shadow && \
groupadd -g 1000 mesh && useradd -ml -u 1000 -g 1000 mesh
COPY --from=builder /tmp/firmware/release/meshtasticd_linux_amd64 /home/mesh/
USER mesh
WORKDIR /home/mesh
CMD sh -cx "./meshtasticd_linux_amd64 --hwid '$RANDOM'"
HEALTHCHECK NONE
+14 -7
View File
@@ -1,11 +1,18 @@
# Meshtastic-device
[![Open in Visual Studio Code](https://open.vscode.dev/badges/open-in-vscode.svg)](https://open.vscode.dev/meshtastic/Meshtastic-device)
## This repository contains the device firmware used in the [Meshtastic](https://meshtastic.org) project.
# Meshtastic Firmware
Update Instructions
![GitHub release downloads](https://img.shields.io/github/downloads/meshtastic/firmware/total)
[![CI](https://img.shields.io/github/workflow/status/meshtastic/firmware/CI?label=actions&logo=github&color=yellow)](https://github.com/meshtastic/firmware/actions/workflows/main_matrix.yml)
[![CLA assistant](https://cla-assistant.io/readme/badge/meshtastic/firmware)](https://cla-assistant.io/meshtastic/firmware)
[![Fiscal Contributors](https://opencollective.com/meshtastic/tiers/badge.svg?label=Fiscal%20Contributors&color=deeppink)](https://opencollective.com/meshtastic/)
[![Vercel](https://img.shields.io/static/v1?label=Powered%20by&message=Vercel&style=flat&logo=vercel&color=000000)](https://vercel.com?utm_source=meshtastic&utm_campaign=oss)
[For ESP32 devices click here](https://meshtastic.org/docs/getting-started/flashing-esp32)
## Overview
[For nRF52 devices click here](https://meshtastic.org/docs/getting-started/flashing-nrf52)
This repository contains the device firmware for the Meshtastic project.
For developer information and specific building instructions, please see the [developer doccumentation](https://meshtastic.org/docs/developers)
**[Building Instructions](https://meshtastic.org/docs/development/firmware/build)**
**[Flashing Instructions](https://meshtastic.org/docs/getting-started/flashing-firmware/)**
## Stats
![Alt](https://repobeats.axiom.co/api/embed/a92f097d9197ae853e780ec53d7d126e545629ab.svg "Repobeats analytics image")
+54
View File
@@ -0,0 +1,54 @@
; Common settings for ESP targes, mixin with extends = esp32_base
[esp32_base]
extends = arduino_base
platform = platformio/espressif32@^5.2.0
build_src_filter =
${arduino_base.build_src_filter} -<platform/nrf52/> -<platform/stm32wl> -<platform/rp2040> -<mesh/eth/>
upload_speed = 921600
debug_init_break = tbreak setup
monitor_filters = esp32_exception_decoder
board_build.filesystem = littlefs
# Remove -DMYNEWT_VAL_BLE_HS_LOG_LVL=LOG_LEVEL_CRITICAL for low level BLE logging.
# See library directory for BLE logging possible values: .pio/libdeps/tbeam/NimBLE-Arduino/src/log_common/log_common.h
# This overrides the BLE logging default of LOG_LEVEL_INFO (1) from: .pio/libdeps/tbeam/NimBLE-Arduino/src/esp_nimble_cfg.h
build_flags =
${arduino_base.build_flags}
-Wall
-Wextra
-Isrc/platform/esp32
-std=c++11
-DLOG_LOCAL_LEVEL=ESP_LOG_DEBUG
-DCORE_DEBUG_LEVEL=ARDUHAL_LOG_LEVEL_DEBUG
-DMYNEWT_VAL_BLE_HS_LOG_LVL=LOG_LEVEL_CRITICAL
-DAXP_DEBUG_PORT=Serial
-DCONFIG_BT_NIMBLE_ENABLED
-DCONFIG_NIMBLE_CPP_LOG_LEVEL=2
-DCONFIG_BT_NIMBLE_MAX_CCCDS=20
-DESP_OPENSSL_SUPPRESS_LEGACY_WARNING
-DDEBUG_HEAP
lib_deps =
${arduino_base.lib_deps}
${networking_base.lib_deps}
${environmental_base.lib_deps}
https://github.com/meshtastic/esp32_https_server.git#23665b3adc080a311dcbb586ed5941b5f94d6ea2
h2zero/NimBLE-Arduino@^1.4.0
https://github.com/lewisxhe/XPowersLib.git#84b7373faea3118b6c37954d52f98b8a337148d6
caveman99/ESP32 Codec2@^1.0.1
lib_ignore =
segger_rtt
ESP32 BLE Arduino
; leave this commented out to avoid breaking Windows
;upload_port = /dev/ttyUSB0
;monitor_port = /dev/ttyUSB0
; Please don't delete these lines. JM uses them.
;upload_port = /dev/cu.SLAB_USBtoUART
;monitor_port = /dev/cu.SLAB_USBtoUART
; customize the partition table
; http://docs.platformio.org/en/latest/platforms/espressif32.html#partition-tables
board_build.partitions = partition-table.csv
+47
View File
@@ -0,0 +1,47 @@
[esp32s2_base]
extends = arduino_base
platform = platformio/espressif32@^5.2.0
build_src_filter =
${arduino_base.build_src_filter} -<platform/nrf52/> -<platform/stm32wl> -<platform/rp2040> -<mesh/eth/> -<nimble/>
upload_speed = 961200
monitor_speed = 115200
debug_init_break = tbreak setup
monitor_filters = esp32_exception_decoder
board_build.filesystem = littlefs
# Remove -DMYNEWT_VAL_BLE_HS_LOG_LVL=LOG_LEVEL_CRITICAL for low level BLE logging.
# See library directory for BLE logging possible values: .pio/libdeps/tbeam/NimBLE-Arduino/src/log_common/log_common.h
# This overrides the BLE logging default of LOG_LEVEL_INFO (1) from: .pio/libdeps/tbeam/NimBLE-Arduino/src/esp_nimble_cfg.h
build_flags =
${arduino_base.build_flags}
-Wall
-Wextra
-Isrc/platform/esp32
-std=c++11
-DLOG_LOCAL_LEVEL=ESP_LOG_DEBUG
-DCORE_DEBUG_LEVEL=ARDUHAL_LOG_LEVEL_DEBUG
-DMYNEWT_VAL_BLE_HS_LOG_LVL=LOG_LEVEL_CRITICAL
-DAXP_DEBUG_PORT=Serial
-DCONFIG_BT_NIMBLE_ENABLED
-DCONFIG_NIMBLE_CPP_LOG_LEVEL=2
-DCONFIG_BT_NIMBLE_MAX_CCCDS=20
-DESP_OPENSSL_SUPPRESS_LEGACY_WARNING
-DHAS_BLUETOOTH=0
-DDEBUG_HEAP
lib_deps =
${arduino_base.lib_deps}
${networking_base.lib_deps}
${environmental_base.lib_deps}
https://github.com/meshtastic/esp32_https_server.git#23665b3adc080a311dcbb586ed5941b5f94d6ea2
https://github.com/lewisxhe/XPowersLib.git#84b7373faea3118b6c37954d52f98b8a337148d6
caveman99/ESP32 Codec2@^1.0.1
lib_ignore =
segger_rtt
ESP32 BLE Arduino
; customize the partition table
; http://docs.platformio.org/en/latest/platforms/espressif32.html#partition-tables
board_build.partitions = partition-table.csv
+47
View File
@@ -0,0 +1,47 @@
[esp32s3_base]
extends = arduino_base
platform = platformio/espressif32@^5.2.0
build_src_filter =
${arduino_base.build_src_filter} -<platform/nrf52/> -<platform/stm32wl> -<platform/rp2040> -<mesh/eth/>
upload_speed = 961200
monitor_speed = 115200
debug_init_break = tbreak setup
monitor_filters = esp32_exception_decoder
board_build.filesystem = littlefs
# Remove -DMYNEWT_VAL_BLE_HS_LOG_LVL=LOG_LEVEL_CRITICAL for low level BLE logging.
# See library directory for BLE logging possible values: .pio/libdeps/tbeam/NimBLE-Arduino/src/log_common/log_common.h
# This overrides the BLE logging default of LOG_LEVEL_INFO (1) from: .pio/libdeps/tbeam/NimBLE-Arduino/src/esp_nimble_cfg.h
build_flags =
${arduino_base.build_flags}
-Wall
-Wextra
-Isrc/platform/esp32
-std=c++11
-DLOG_LOCAL_LEVEL=ESP_LOG_DEBUG
-DCORE_DEBUG_LEVEL=ARDUHAL_LOG_LEVEL_DEBUG
-DMYNEWT_VAL_BLE_HS_LOG_LVL=LOG_LEVEL_CRITICAL
-DAXP_DEBUG_PORT=Serial
-DCONFIG_BT_NIMBLE_ENABLED
-DCONFIG_NIMBLE_CPP_LOG_LEVEL=2
-DCONFIG_BT_NIMBLE_MAX_CCCDS=20
-DESP_OPENSSL_SUPPRESS_LEGACY_WARNING
-DDEBUG_HEAP
lib_deps =
${arduino_base.lib_deps}
${networking_base.lib_deps}
${environmental_base.lib_deps}
https://github.com/meshtastic/esp32_https_server.git#23665b3adc080a311dcbb586ed5941b5f94d6ea2
h2zero/NimBLE-Arduino@^1.4.0
https://github.com/lewisxhe/XPowersLib.git#84b7373faea3118b6c37954d52f98b8a337148d6
caveman99/ESP32 Codec2@^1.0.1
lib_ignore =
segger_rtt
ESP32 BLE Arduino
; customize the partition table
; http://docs.platformio.org/en/latest/platforms/espressif32.html#partition-tables
board_build.partitions = partition-table.csv
+18
View File
@@ -0,0 +1,18 @@
[nrf52_base]
; Instead of the standard nordicnrf52 platform, we use our fork which has our added variant files
platform = platformio/nordicnrf52@^9.4.0
extends = arduino_base
build_type = debug ; I'm debugging with ICE a lot now
build_flags =
${arduino_base.build_flags} -Wno-unused-variable
-Isrc/platform/nrf52
build_src_filter =
${arduino_base.build_src_filter} -<platform/esp32/> -<platform/stm32wl> -<nimble/> -<mesh/wifi/> -<mesh/http/> -<modules/esp32> -<mqtt/> -<platform/rp2040> -<mesh/eth/>
lib_ignore =
BluetoothOTA
; Note: By default no lora device is created for this build - it uses a simulated interface
[env:feather_nrf52832]
extends = nrf52_base
board = adafruit_feather_nrf52832
+14
View File
@@ -0,0 +1,14 @@
[nrf52840_base]
extends = nrf52_base
build_flags = ${nrf52_base.build_flags}
lib_deps =
${arduino_base.lib_deps}
${environmental_base.lib_deps}
https://github.com/Kongduino/Adafruit_nRFCrypto.git#e31a8825ea3300b163a0a3c1ddd5de34e10e1371
; Note: By default no lora device is created for this build - it uses a simulated interface
[env:nrf52840dk]
extends = nrf52840_base
board = nrf52840_dk
+21
View File
@@ -0,0 +1,21 @@
; The Portduino based sim environment on top of any host OS, all hardware will be simulated
[portduino_base]
platform = https://github.com/meshtastic/platform-native.git#096b3c3e9c5c8e19d4c3b6cd803fffef2a9be4c5
framework = arduino
build_src_filter =
${env.build_src_filter}
-<platform/esp32/>
-<nimble/>
-<platform/nrf52/>
-<platform/stm32wl/>
-<platform/rp2040>
-<mesh/http/>
-<mesh/eth/>
-<modules/esp32>
-<modules/Telemetry>
+<../variants/portduino>
lib_deps =
${env.lib_deps}
${networking_base.lib_deps}
rweather/Crypto@^0.4.0
build_flags = ${arduino_base.build_flags} -Isrc/platform/portduino
+21
View File
@@ -0,0 +1,21 @@
; Common settings for rp2040 Processor based targets
[rp2040_base]
platform = https://github.com/maxgerhardt/platform-raspberrypi.git#20c7dbfcfe6677c5305fa28ecf5e3870321cb157
platform_packages =
earlephilhower/toolchain-rp2040-earlephilhower@^5.100300.221223
extends = arduino_base
board_build.core = earlephilhower
board_build.filesystem_size = 0.5m
build_flags =
${arduino_base.build_flags} -Wno-unused-variable
-Isrc/platform/rp2040
-D__PLAT_RP2040__
# -D _POSIX_THREADS
build_src_filter =
${arduino_base.build_src_filter} -<platform/esp32/> -<nimble/> -<mesh/wifi/> -<mesh/http/> -<modules/esp32> -<mqtt/> -<platform/nrf52/> -<platform/stm32wl> -<mesh/eth/>
lib_ignore =
BluetoothOTA
lib_deps =
${arduino_base.lib_deps}
${environmental_base.lib_deps}
https://github.com/kokke/tiny-AES-c.git#f06ac37fc31dfdaca2e0d9bec83f90d5663c319b
+18
View File
@@ -0,0 +1,18 @@
[stm32wl5e_base]
platform = platformio/ststm32@^15.4.1
board = generic_wl5e
framework = arduino
build_type = debug
build_flags =
${arduino_base.build_flags}
-Isrc/platform/stm32wl -g
-DHAL_SUBGHZ_MODULE_ENABLED
# Arduino/PlatformIO framework-arduinoststm32 package does not presently have SUBGHZSPI support
# -DPIN_SPI_MOSI=PINSUBGHZSPIMOSI -DPIN_SPI_MISO=PINSUBGHZSPIMISO -DPIN_SPI_SCK=PINSUBGHZSPISCK
build_src_filter =
${arduino_base.build_src_filter} -<platform/esp32/> -<nimble/> -<mesh/wifi/> -<mesh/http/> -<modules/esp32> -<mesh/eth/> -<mqtt/> -<graphics> -<input> -<buzz> -<modules/Telemetry> -<platform/nrf52> -<platform/portduino> -<platform/rp2040>
lib_deps =
${env.lib_deps}
https://github.com/kokke/tiny-AES-c.git#f06ac37fc31dfdaca2e0d9bec83f90d5663c319b
lib_ignore =
mathertel/OneButton@^2.0.3
Binary file not shown.
-110
View File
@@ -1,110 +0,0 @@
#!/usr/bin/env bash
set -e
VERSION=`bin/buildinfo.py long`
SHORT_VERSION=`bin/buildinfo.py short`
BOARDS_ESP32="tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1"
#BOARDS_ESP32=tbeam
# FIXME note nrf52840dk build is for some reason only generating a BIN file but not a HEX file nrf52840dk-geeksville is fine
BOARDS_NRF52="rak4631_5005 rak4631_19003 t-echo"
#BOARDS_NRF52=""
OUTDIR=release/latest
# We keep all old builds (and their map files in the archive dir)
ARCHIVEDIR=release/archive
rm -f $OUTDIR/firmware*
mkdir -p $OUTDIR/bins $ARCHIVEDIR
rm -r $OUTDIR/bins/* || true
mkdir -p $OUTDIR/bins/universal $OUTDIR/elfs/universal
# build the named environment and copy the bins to the release directory
function do_build() {
BOARD=$1
isNrf=$3
echo "Building for $BOARD with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$BOARD/firmware.*
# The shell vars the build tool expects to find
export APP_VERSION=$VERSION
# Are we building a universal/regionless rom?
export HW_VERSION="1.0"
basename=universal/firmware-$BOARD-$VERSION
pio run --environment $BOARD # -v
SRCELF=.pio/build/$BOARD/firmware.elf
cp $SRCELF $OUTDIR/elfs/$basename.elf
if [ "$isNrf" = "false" ]
then
echo "Copying ESP32 bin file"
SRCBIN=.pio/build/$BOARD/firmware.bin
cp $SRCBIN $OUTDIR/bins/$basename.bin
else
echo "Generating NRF52 uf2 file"
SRCHEX=.pio/build/$BOARD/firmware.hex
bin/uf2conv.py $SRCHEX -c -o $OUTDIR/bins/$basename.uf2 -f 0xADA52840
fi
}
function do_boards() {
declare boards=$1
declare isNrf=$2
for board in $boards; do
# Build universal
do_build $board "" "$isNrf"
done
}
# Make sure our submodules are current
git submodule update
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio lib update
do_boards "$BOARDS_ESP32" "false"
do_boards "$BOARDS_NRF52" "true"
pio run --environment native
cp .pio/build/native/program $OUTDIR/bins/universal/meshtasticd_linux_amd64
echo "Building SPIFFS for ESP32 targets"
pio run --environment tbeam -t buildfs
cp .pio/build/tbeam/spiffs.bin $OUTDIR/bins/universal/spiffs-$VERSION.bin
# keep the bins in archive also
cp $OUTDIR/bins/universal/spiffs* $OUTDIR/bins/universal/firmware* $OUTDIR/elfs/universal/firmware* $ARCHIVEDIR
echo Updating android bins $OUTDIR/forandroid
rm -rf $OUTDIR/forandroid
mkdir -p $OUTDIR/forandroid
cp -a $OUTDIR/bins/universal/*.bin $OUTDIR/forandroid/
cat >$OUTDIR/curfirmwareversion.xml <<XML
<?xml version="1.0" encoding="utf-8"?>
<!-- This file is kept in source control because it reflects the last stable
release. It is used by the android app for forcing software updates. Do not edit.
Generated by bin/buildall.sh -->
<resources>
<string name="cur_firmware_version" translatable="false">$VERSION</string>
<string name="short_firmware_version" translatable="false">$SHORT_VERSION</string>
</resources>
XML
echo Generating $ARCHIVEDIR/firmware-$VERSION.zip
rm -f $ARCHIVEDIR/firmware-$VERSION.zip
zip --junk-paths $ARCHIVEDIR/firmware-$VERSION.zip $ARCHIVEDIR/spiffs-$VERSION.bin $OUTDIR/bins/universal/firmware-*-$VERSION.* $OUTDIR/bins/universal/meshtasticd* images/system-info.bin bin/device-install.* bin/device-update.*
echo Generating $ARCHIVEDIR/elfs-$VERSION.zip
rm -f $ARCHIVEDIR/elfs-$VERSION.zip
zip --junk-paths $ARCHIVEDIR/elfs-$VERSION.zip $OUTDIR/elfs/universal/firmware-*-$VERSION.*
echo BUILT ALL
+40
View File
@@ -0,0 +1,40 @@
#!/usr/bin/env bash
set -e
VERSION=`bin/buildinfo.py long`
SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/
rm -f $OUTDIR/firmware*
rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update
echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$1/firmware.*
# The shell vars the build tool expects to find
export APP_VERSION=$VERSION
basename=firmware-$1-$VERSION
pio run --environment $1 # -v
SRCELF=.pio/build/$1/firmware.elf
cp $SRCELF $OUTDIR/$basename.elf
echo "Copying ESP32 bin file"
SRCBIN=.pio/build/$1/firmware.factory.bin
cp $SRCBIN $OUTDIR/$basename.bin
echo "Copying ESP32 update bin file"
SRCBIN=.pio/build/$1/firmware.bin
cp $SRCBIN $OUTDIR/$basename-update.bin
echo "Building Filesystem for ESP32 targets"
pio run --environment tbeam -t buildfs
cp .pio/build/tbeam/littlefs.bin $OUTDIR/littlefs-$VERSION.bin
cp bin/device-install.* $OUTDIR
cp bin/device-update.* $OUTDIR
+23
View File
@@ -0,0 +1,23 @@
#!/usr/bin/env bash
set -e
VERSION=`bin/buildinfo.py long`
SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/
rm -f $OUTDIR/firmware*
mkdir -p $OUTDIR/
rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update
pio run --environment native
cp .pio/build/native/program $OUTDIR/meshtasticd_linux_amd64
cp bin/device-install.* $OUTDIR
cp bin/device-update.* $OUTDIR
+36
View File
@@ -0,0 +1,36 @@
#!/usr/bin/env bash
set -e
VERSION=`bin/buildinfo.py long`
SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/
rm -f $OUTDIR/firmware*
rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update
echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$1/firmware.*
# The shell vars the build tool expects to find
export APP_VERSION=$VERSION
basename=firmware-$1-$VERSION
pio run --environment $1 # -v
SRCELF=.pio/build/$1/firmware.elf
DFUPKG=.pio/build/$1/firmware.zip
cp $SRCELF $OUTDIR/$basename.elf
cp $DFUPKG $OUTDIR/$basename-ota.zip
echo "Generating NRF52 uf2 file"
SRCHEX=.pio/build/$1/firmware.hex
bin/uf2conv.py $SRCHEX -c -o $OUTDIR/$basename.uf2 -f 0xADA52840
cp bin/device-install.* $OUTDIR
cp bin/device-update.* $OUTDIR
cp bin/*.uf2 $OUTDIR
+33
View File
@@ -0,0 +1,33 @@
#!/usr/bin/env bash
set -e
VERSION=`bin/buildinfo.py long`
SHORT_VERSION=`bin/buildinfo.py short`
OUTDIR=release/
rm -f $OUTDIR/firmware*
rm -r $OUTDIR/* || true
# Important to pull latest version of libs into all device flavors, otherwise some devices might be stale
platformio pkg update
echo "Building for $1 with $PLATFORMIO_BUILD_FLAGS"
rm -f .pio/build/$1/firmware.*
# The shell vars the build tool expects to find
export APP_VERSION=$VERSION
basename=firmware-$1-$VERSION
pio run --environment $1 # -v
SRCELF=.pio/build/$1/firmware.elf
cp $SRCELF $OUTDIR/$basename.elf
echo "Copying uf2 file"
SRCBIN=.pio/build/$1/firmware.uf2
cp $SRCBIN $OUTDIR/$basename.uf2
cp bin/device-install.* $OUTDIR
cp bin/device-update.* $OUTDIR
+16
View File
@@ -0,0 +1,16 @@
#!/usr/bin/env python
"""Bump the version number"""
lines = None
with open('version.properties', 'r', encoding='utf-8') as f:
lines = f.readlines()
with open('version.properties', 'w', encoding='utf-8') as f:
for line in lines:
if line.lstrip().startswith("build = "):
words = line.split(" = ")
ver = f'build = {int(words[1]) + 1}'
f.write(f'{ver}\n')
else:
f.write(line)
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# Note: This is a prototype for how we could add static code analysis to the CI.
set -e
VERSION=`bin/buildinfo.py long`
# The shell vars the build tool expects to find
export APP_VERSION=$VERSION
if [[ $# -gt 0 ]]; then
# can override which environment by passing arg
BOARDS="$@"
else
BOARDS="tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1 rak4631 rak4631_eink rak11200 t-echo pca10059_diy_eink"
fi
echo "BOARDS:${BOARDS}"
CHECK=""
for BOARD in $BOARDS; do
CHECK="${CHECK} -e ${BOARD}"
done
pio check --flags "-DAPP_VERSION=${APP_VERSION} --suppressions-list=suppressions.txt" $CHECK --skip-packages --pattern="src/" --fail-on-defect=low --fail-on-defect=medium --fail-on-defect=high
+23
View File
@@ -0,0 +1,23 @@
#!/usr/bin/env bash
# Note: This is a prototype for how we could add static code analysis to the CI.
set -e
if [[ $# -gt 0 ]]; then
# can override which environment by passing arg
BOARDS="$@"
else
BOARDS="rak4631 rak4631_eink t-echo pca10059_diy_eink pico rak11200 tlora-v2 tlora-v1 tlora_v1_3 tlora-v2-1-1.6 tbeam heltec-v1 heltec-v2.0 heltec-v2.1 tbeam0.7 meshtastic-diy-v1 nano-g1 station-g1 m5stack-core m5stack-coreink tbeam-s3-core"
fi
echo "BOARDS:${BOARDS}"
CHECK=""
for BOARD in $BOARDS; do
CHECK="${CHECK} -e ${BOARD}"
done
echo $CHECK
pio pkg outdated -e $CHECK
Regular → Executable
+10 -7
View File
@@ -26,17 +26,20 @@ IF "__%FILENAME%__" == "____" (
echo "Missing FILENAME"
goto HELP
)
IF EXIST %FILENAME% (
IF EXIST %FILENAME% IF x%FILENAME:update=%==x%FILENAME% (
echo Trying to flash update %FILENAME%, but first erasing and writing system information"
%PYTHON% -m esptool --baud 921600 erase_flash
%PYTHON% -m esptool --baud 921600 write_flash 0x1000 system-info.bin
for %%f in (spiffs-*.bin) do (
%PYTHON% -m esptool --baud 921600 write_flash 0x00390000 %%f
%PYTHON% -m esptool --baud 115200 erase_flash
%PYTHON% -m esptool --baud 115200 write_flash 0x00 %FILENAME%
%PYTHON% -m esptool --baud 115200 write_flash 0x260000 bleota.bin
for %%f in (littlefs-*.bin) do (
%PYTHON% -m esptool --baud 115200 write_flash 0x300000 %%f
)
%PYTHON% -m esptool --baud 921600 write_flash 0x10000 %FILENAME%
) else (
echo "Invalid file: %FILENAME%"
goto HELP
) else (
echo "Invalid file: %FILENAME%"
goto HELP
)
:EOF
:EOF
+9 -7
View File
@@ -11,9 +11,10 @@ Usage: $(basename $0) [-h] [-p ESPTOOL_PORT] [-P PYTHON] [-f FILENAME|FILENAME]
Flash image file to device, but first erasing and writing system information"
-h Display this help and exit
-p ESPTOOL_PORT Set the environment variable for ESPTOOL_PORT. If not set, ESPTOOL iterates all ports (Dangerrous).
-p ESPTOOL_PORT Set the environment variable for ESPTOOL_PORT. If not set, ESPTOOL iterates all ports (Dangerous).
-P PYTHON Specify alternate python interpreter to use to invoke esptool. (Default: "$PYTHON")
-f FILENAME The .bin file to flash. Custom to your device type and region.
EOF
}
@@ -44,15 +45,16 @@ shift "$((OPTIND-1))"
shift
}
if [ -f "${FILENAME}" ]; then
if [ -f "${FILENAME}" ] && [ ! -z "${FILENAME##*"update"*}" ]; then
echo "Trying to flash ${FILENAME}, but first erasing and writing system information"
$PYTHON -m esptool erase_flash
$PYTHON -m esptool write_flash 0x1000 system-info.bin
$PYTHON -m esptool write_flash 0x00390000 spiffs-*.bin
$PYTHON -m esptool write_flash 0x10000 ${FILENAME}
"$PYTHON" -m esptool erase_flash
"$PYTHON" -m esptool write_flash 0x00 ${FILENAME}
"$PYTHON" -m esptool write_flash 0x260000 bleota.bin
"$PYTHON" -m esptool write_flash 0x300000 littlefs-*.bin
else
echo "Invalid file: ${FILENAME}"
show_help
echo "Invalid file: ${FILENAME}"
fi
exit 0
Regular → Executable
+7 -6
View File
@@ -10,7 +10,7 @@ echo.
echo -h Display this help and exit
echo -p ESPTOOL_PORT Set the environment variable for ESPTOOL_PORT. If not set, ESPTOOL iterates all ports (Dangerrous).
echo -P PYTHON Specify alternate python interpreter to use to invoke esptool. (Default: %PYTHON%)
echo -f FILENAME The .bin file to flash. Custom to your device type and region.
echo -f FILENAME The *update.bin file to flash. Custom to your device type.
goto EOF
:GETOPTS
@@ -26,14 +26,15 @@ IF "__%FILENAME%__" == "____" (
echo "Missing FILENAME"
goto HELP
)
IF EXIST %FILENAME% (
IF EXIST %FILENAME% IF NOT x%FILENAME:update=%==x%FILENAME% (
echo Trying to flash update %FILENAME%
%PYTHON% -m esptool --baud 921600 write_flash 0x10000 %FILENAME%
echo Erasing the otadata partition, which will turn off flash flippy-flop and force the first image to be used
%PYTHON% -m esptool --baud 921600 erase_region 0xe000 0x2000
%PYTHON% -m esptool --baud 115200 write_flash 0x10000 %FILENAME%
) else (
echo "Invalid file: %FILENAME%"
goto HELP
) else (
echo "Invalid file: %FILENAME%"
goto HELP
)
:EOF
:EOF
+6 -7
View File
@@ -11,7 +11,8 @@ Flash image file to device, leave existing system intact."
-h Display this help and exit
-p ESPTOOL_PORT Set the environment variable for ESPTOOL_PORT. If not set, ESPTOOL iterates all ports (Dangerrous).
-P PYTHON Specify alternate python interpreter to use to invoke esptool. (Default: "$PYTHON")
-f FILENAME The .bin file to flash. Custom to your device type and region.
-f FILENAME The *update.bin file to flash. Custom to your device type.
EOF
}
@@ -42,14 +43,12 @@ shift "$((OPTIND-1))"
shift
}
if [ -f "${FILENAME}" ]; then
echo "Trying to flash update ${FILENAME}."
$PYTHON -m esptool --baud 921600 write_flash 0x10000 ${FILENAME}
echo "Erasing the otadata partition, which will turn off flash flippy-flop and force the first image to be used"
$PYTHON -m esptool --baud 921600 erase_region 0xe000 0x2000
if [ -f "${FILENAME}" ] && [ -z "${FILENAME##*"update"*}" ]; then
printf "Trying to flash update ${FILENAME}"
$PYTHON -m esptool --baud 115200 write_flash 0x10000 ${FILENAME}
else
echo "Invalid file: ${FILENAME}"
show_help
echo "Invalid file: ${FILENAME}"
fi
exit 0
-37
View File
@@ -1,37 +0,0 @@
#!/usr/bin/env bash
# You probably don't want to use this script, it programs a custom bootloader build onto a nrf52 board
set -e
# dependencies
# apt install srecord
BOOTDIR=/home/kevinh/development/meshtastic/Adafruit_nRF52_Bootloader
BOARD=othernet_ppr1
BOOTVER=0.3.2
BOOTNUM=128
BOOTSHA=gc01b9ea
SDCODE=s113
SDVER=7.2.0
PROJ=ppr1
# FIXME for nRF52840 use 0xff000, for nRF52833 use 0x7f000
BOOTSET=0x7f000
nrfjprog --eraseall -f nrf52
# this generates an intel hex file that can be programmed into a NRF52 to tell the adafruit bootloader that the current app image is valid
# Bootloader settings are at BOOTLOADER_SETTINGS (rw) : ORIGIN = 0xFF000, LENGTH = 0x1000
# first 4 bytes should be 0x01 to indicate valid app image
# second 4 bytes should be 0x00 to indicate no CRC required for image
echo "01 00 00 00 00 00 00 00" | xxd -r -p - >/tmp/bootconf.bin
srec_cat /tmp/bootconf.bin -binary -offset $BOOTSET -output /tmp/bootconf.hex -intel
echo Generating merged hex file from .pio/build/$PROJ/firmware.hex
mergehex -o ${BOARD}_full.hex -m $BOOTDIR/_build/build-$BOARD/${BOARD}_bootloader-$BOOTVER-$BOOTNUM-$BOOTSHA-dirty_${SDCODE}_$SDVER.hex .pio/build/$PROJ/firmware.hex /tmp/bootconf.hex
echo Telling bootloader app region is valid and telling CPU to run
nrfjprog --program ${BOARD}_full.hex -f nrf52 --reset
# nrfjprog --readuicr /tmp/uicr.hex; objdump -s /tmp/uicr.hex | less
-26
View File
@@ -1,26 +0,0 @@
#!/usr/bin/env bash
# You probably don't want to use this script, it programs a custom bootloader build onto a nrf52 board
set -e
BOOTDIR=/home/kevinh/development/meshtastic/Adafruit_nRF52_Bootloader
nrfjprog --eraseall -f nrf52
# to get tool run "sudo apt-get install srecord"
# this generates an intel hex file that can be programmed into a NRF52 to tell the adafruit bootloader that the current app image is valid
# Bootloader settings are at BOOTLOADER_SETTINGS (rw) : ORIGIN = 0xFF000, LENGTH = 0x1000
# first 4 bytes should be 0x01 to indicate valid app image
# second 4 bytes should be 0x00 to indicate no CRC required for image
echo "01 00 00 00 00 00 00 00" | xxd -r -p - >/tmp/bootconf.bin
srec_cat /tmp/bootconf.bin -binary -offset 0xff000 -output /tmp/bootconf.hex -intel
echo Generating merged hex file
mergehex -m $BOOTDIR/_build/build-ttgo_eink/ttgo_eink_bootloader-0.3.2-213-gf67f592-dirty_s140_6.1.1.hex .pio/build/eink/firmware.hex /tmp/bootconf.hex -o ttgo_eink_full.hex
echo Telling bootloader app region is valid and telling CPU to run
nrfjprog --program ttgo_eink_full.hex -f nrf52 --reset
# nrfjprog --readuicr /tmp/uicr.hex; objdump -s /tmp/uicr.hex | less
-61
View File
@@ -1,61 +0,0 @@
# Example OpenOCD configuration file for ESP-WROOM-32 module.
# By default, the following configuration is used:
# - dual core debugging
# - support for listing FreeRTOS tasks is enabled
# - OpenOCD is configured to set SPI flash voltage at 3.3V
# by keeping MTDI bootstrapping pin low
#
# Use variables listed below to customize this.
# Variables can be modified in this file or set on the command line.
#
# For example, OpenOCD can be started for single core ESP32 debugging on
# ESP-WROVER-KIT with ESP-WROOM-32 module as follows:
#
# openocd -f interface/ftdi/esp32_devkitj_v1.cfg -c 'set ESP32_ONLYCPU 1' -f board/esp-wroom-32.cfg
#
# If a different JTAG interface is used, change the first -f option.
#
# If OpenOCD is built from source, pass an additional -s option to specify
# the location of 'tcl' directory:
#
# src/openocd -s tcl <rest of the command line>
#
# Note:
# For ESP32-WROVER module use 'esp32-wrover.cfg' configuration file
# ESP-WROOM-32 and ESP32-WROVER have different flash voltage setting
# The ESP32 only supports JTAG.
transport select jtag
# The speed of the JTAG interface, in KHz. If you get DSR/DIR errors (and they
# do not relate to OpenOCD trying to read from a memory range without physical
# memory being present there), you can try lowering this.
#
# On DevKit-J, this can go as high as 20MHz if CPU frequency is 80MHz, or 26MHz
# if CPU frequency is 160MHz or 240MHz.
adapter_khz 20000
# If single core debugging is required, uncomment the following line
# set ESP32_ONLYCPU 1
# To disable RTOS support, uncomment the following line
# set ESP32_RTOS none
# Tell OpenOCD which SPI flash voltage is used by the board (3.3 or 1.8)
# The TDI pin of ESP32 is also a bootstrap pin that selects the voltage the SPI flash
# chip runs at. When a hard reset happens (e.g. because someone switches the board off
# and on) the ESP32 will use the current TDI value as the bootstrap value because the
# JTAG adapter overrides the pull-up or pull-down resistor that is supposed to do the
# bootstrapping. These lines basically set the idle value of the TDI line to a
# specified value, therefore reducing the chance of a bad bootup due to a bad flash
# voltage greatly.
# This option defaults to 3.3, if not set. To override the default, uncomment
# the following line:
# set ESP32_FLASH_VOLTAGE 1.8
# Set semihosting I/O base dir
# set ESP_SEMIHOST_BASEDIR ""
# Source the ESP32 configuration file
source [find target/esp32.cfg]
-4
View File
@@ -1,4 +0,0 @@
#!/usr/bin/env bash
mosquitto_sub -h mqtt.meshtastic.org -v -t \$SYS/\# -t msh/+/stat/\# -t msh/+/json/\#
# mosquitto_sub -h test.mosquitto.org -v -t mesh/\# -F "%j"
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
mosquitto_pub -h mqtt.meshtastic.org -u meshdev -P large4cats -t msh/1/stat/FakeNode -m online -d
-4
View File
@@ -1,4 +0,0 @@
#!/usr/bin/env bash
# JLinkRTTViewer
JLinkRTTClient
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
JLinkGDBServerCLExe -if SWD -select USB -port 2331 -device NRF52832_XXAA
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
JLinkGDBServerCLExe -if SWD -select USB -port 2331 -device NRF52833_XXAA
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
JLinkGDBServerCLExe -if SWD -select USB -port 2331 -device NRF52840_XXAA -SuppressInfoUpdateFW -DisableAutoUpdateFW -rtos GDBServer/RTOSPlugin_FreeRTOS
+57 -4
View File
@@ -1,17 +1,70 @@
import subprocess
import configparser
import traceback
import sys
from os.path import join
from readprops import readProps
Import("env")
platform = env.PioPlatform()
def esp32_create_combined_bin(source, target, env):
# this sub is borrowed from ESPEasy build toolchain. It's licensed under GPL V3
# https://github.com/letscontrolit/ESPEasy/blob/mega/tools/pio/post_esp32.py
print("Generating combined binary for serial flashing")
app_offset = 0x10000
new_file_name = env.subst("$BUILD_DIR/${PROGNAME}.factory.bin")
sections = env.subst(env.get("FLASH_EXTRA_IMAGES"))
firmware_name = env.subst("$BUILD_DIR/${PROGNAME}.bin")
chip = env.get("BOARD_MCU")
flash_size = env.BoardConfig().get("upload.flash_size")
flash_freq = env.BoardConfig().get("build.f_flash", '40m')
flash_freq = flash_freq.replace('000000L', 'm')
flash_mode = env.BoardConfig().get("build.flash_mode", "dio")
memory_type = env.BoardConfig().get("build.arduino.memory_type", "qio_qspi")
if flash_mode == "qio" or flash_mode == "qout":
flash_mode = "dio"
if memory_type == "opi_opi" or memory_type == "opi_qspi":
flash_mode = "dout"
cmd = [
"--chip",
chip,
"merge_bin",
"-o",
new_file_name,
"--flash_mode",
flash_mode,
"--flash_freq",
flash_freq,
"--flash_size",
flash_size,
]
print(" Offset | File")
for section in sections:
sect_adr, sect_file = section.split(" ", 1)
print(f" - {sect_adr} | {sect_file}")
cmd += [sect_adr, sect_file]
print(f" - {hex(app_offset)} | {firmware_name}")
cmd += [hex(app_offset), firmware_name]
print('Using esptool.py arguments: %s' % ' '.join(cmd))
esptool.main(cmd)
if (platform.name == "espressif32"):
sys.path.append(join(platform.get_package_dir("tool-esptoolpy")))
import esptool
env.AddPostAction("$BUILD_DIR/${PROGNAME}.bin", esp32_create_combined_bin)
Import("projenv")
prefsLoc = projenv["PROJECT_DIR"] + "/version.properties"
verObj = readProps(prefsLoc)
print("Using meshtastic platform-custom.py, firmare version " + verObj['long'])
# print("path is" + ','.join(sys.path))
print("Using meshtastic platformio-custom.py, firmware version " + verObj['long'])
# General options that are passed to the C and C++ compilers
projenv.Append(CCFLAGS=[
-5
View File
@@ -1,5 +0,0 @@
#!/usr/bin/env bash
esptool.py --baud 921600 write_flash 0x10000 release/archive/old/firmware-tbeam-EU865-1.0.0.bin
echo "Erasing the otadata partition, which will turn off flash flippy-flop and force the first image to be used"
esptool.py --baud 921600 erase_region 0xe000 0x2000
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
esptool.py --baud 921600 write_flash 0x10000 release/archive/old/firmware-tbeam-1.1.50.bin
-7
View File
@@ -1,7 +0,0 @@
#!/usr/bin/env bash
set -e
source bin/version.sh
esptool.py --baud 921600 write_flash 0x10000 release/latest/bins/firmware-heltec-US-$VERSION.bin
-9
View File
@@ -1,9 +0,0 @@
#!/usr/bin/env bash
set -e
VERSION=`bin/buildinfo.py`
FILENAME=release/latest/bins/universal/firmware-tbeam-$VERSION.bin
echo Installing $FILENAME
esptool.py --baud 921600 write_flash 0x10000 $FILENAME
-7
View File
@@ -1,7 +0,0 @@
#!/usr/bin/env bash
set -e
source bin/version.sh
esptool.py --baud 921600 write_flash 0x10000 release/latest/bins/universal/firmware-tbeam-$VERSION.bin
-3
View File
@@ -9,9 +9,6 @@ VERSION=`bin/buildinfo.py long`
# Must have a V prefix to trigger github
git tag "v${VERSION}"
# Commented out per https://github.com/meshtastic/Meshtastic-device/issues/947
#git push root "v${VERSION}" # push the tag
git push origin "v${VERSION}" # push the tag
echo "Tag ${VERSION} pushed to github, github actions should now be building the draft release. If it seems good, click to publish it"
-8
View File
@@ -1,8 +0,0 @@
#!/usr/bin/env bash
# You probably don't need this - it is a basic test of the serial flash on the TTGO eink board
nrfjprog --qspiini nrf52/ttgo_eink_qpsi.ini --qspieraseall
nrfjprog --qspiini nrf52/ttgo_eink_qpsi.ini --memwr 0x12000000 --val 0xdeadbeef --verify
nrfjprog --qspiini nrf52/ttgo_eink_qpsi.ini --readqspi spi.hex
objdump -s spi.hex | less
+1 -1
View File
@@ -1,3 +1,3 @@
#!/usr/bin/env bash
esptool.py --baud 921600 read_flash 0x1000 0xf000 system-info.img
esptool.py --baud 115200 read_flash 0x1000 0xf000 system-info.img
+1 -1
View File
@@ -32,6 +32,6 @@ def readProps(prefsLoc):
# traceback.print_exc()
verObj['long'] = verObj['short']
# print("firmare version " + verStr)
# print("firmware version " + verStr)
return verObj
# print("path is" + ','.join(sys.path))
+1 -1
View File
@@ -1 +1 @@
cd proto && ..\nanopb-0.4.4\generator-bin\protoc.exe --nanopb_out=-v:..\src\mesh\generated -I=..\proto *.proto
cd protobufs && ..\nanopb-0.4.7\generator-bin\protoc.exe --nanopb_out=-v:..\src\mesh\generated -I=..\protobufs *.proto
+5 -5
View File
@@ -2,13 +2,13 @@
set -e
echo "This script requires https://jpa.kapsi.fi/nanopb/download/ version 0.4.4 to be located in the"
echo "meshtastic-device root directory if the following step fails, you should download the correct"
echo "prebuilt binaries for your computer into nanopb-0.4.4"
echo "This script requires https://jpa.kapsi.fi/nanopb/download/ version 0.4.7 to be located in the"
echo "firmware root directory if the following step fails, you should download the correct"
echo "prebuilt binaries for your computer into nanopb-0.4.7"
# the nanopb tool seems to require that the .options file be in the current directory!
cd proto
../nanopb-0.4.4/generator-bin/protoc --nanopb_out=-v:../src/mesh/generated -I=../proto *.proto
cd protobufs
../nanopb-0.4.7/generator-bin/protoc --nanopb_out=-v:../src/mesh/generated -I=../protobufs *.proto
#echo "Regenerating protobuf documentation - if you see an error message"
#echo "you can ignore it unless doing a new protobuf release to github."
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
pio run --upload-port /dev/ttyUSB0 -t upload -t monitor
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
pio run --upload-port /dev/ttyUSB1 -t upload -t monitor
-9
View File
@@ -1,9 +0,0 @@
#!/usr/bin/env bash
set -e
echo uploading to usb1
pio run --upload-port /dev/ttyUSB1 -t upload
echo uploading to usb0
pio run --upload-port /dev/ttyUSB0 -t upload -t monitor
-15
View File
@@ -1,15 +0,0 @@
#!/usr/bin/env bash
set -e
TARG=tbeam
pio run -e $TARG
echo uploading to usb1
pio run --upload-port /dev/ttyUSB1 -t upload -e $TARG &
echo uploading to usb0
pio run --upload-port /dev/ttyUSB0 -t upload -e $TARG &
wait
-5
View File
@@ -1,5 +0,0 @@
#!/usr/bin/env bash
# /home/kevinh/.platformio/packages/tool-openocd-esp32/bin/openocd -s /home/kevinh/.platformio/packages/tool-openocd-esp32 -c gdb_port pipe; tcl_port disabled; telnet_port disabled -s /home/kevinh/.platformio/packages/tool-openocd-esp32/share/openocd/scripts -f interface/jlink.cfg -f board/esp-wroom-32.cfg
/home/kevinh/.platformio/packages/tool-openocd-esp32/bin/openocd -s /home/kevinh/.platformio/packages/tool-openocd-esp32 -s /home/kevinh/.platformio/packages/tool-openocd-esp32/share/openocd/scripts -f interface/jlink.cfg -f ./lora32-openocd.cfg
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
pio device monitor -b 921600
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
pio device monitor -p /dev/ttyUSB1 -b 921600
-10
View File
@@ -1,10 +0,0 @@
#!/usr/bin/env bash
set -e
echo "building for t-echo"
pio run --environment t-echo
echo "Converting to uf2 for NRF52 Adafruit bootloader - double tap on the reset button to force bootloader entry"
bin/uf2conv.py .pio/build/t-echo/firmware.hex -f 0xADA52840
cp flash.uf2 /media/kevinh/FTH*BOOT/
-7
View File
@@ -1,7 +0,0 @@
#!/usr/bin/env bash
set -e
echo "Converting to uf2 for NRF52 Adafruit bootloader"
bin/uf2conv.py .pio/build/rak4631/firmware.hex -f 0xADA52840
cp flash.uf2 /media/kevinh/FTH*BOOT/
-3
View File
@@ -1,3 +0,0 @@
#!/usr/bin/env bash
pio run --upload-port /dev/ttyUSB1 -t upload
+31
View File
@@ -0,0 +1,31 @@
{
"build": {
"core": "stm32",
"cpu": "cortex-m4",
"extra_flags": "-DSTM32WLxx -DSTM32WLE5xx -DARDUINO_GENERIC_WLE5CCUX",
"f_cpu": "48000000L",
"mcu": "stm32wle5ccu",
"variant": "STM32WLxx/WL54CCU_WL55CCU_WLE4C(8-B-C)U_WLE5C(8-B-C)U",
"product_line": "STM32WLE5xx"
},
"debug": {
"default_tools": [
"stlink"
],
"jlink_device": "STM32WLE5CC",
"openocd_target": "stm32wlx",
"svd_path": "STM32WLE5_CM4.svd"
},
"frameworks": ["arduino"],
"name": "BB-STM32WL",
"upload": {
"maximum_ram_size": 65536,
"maximum_size": 262144,
"protocol": "cmsis-dap",
"protocols": [
"cmsis-dap"
]
},
"url": "https://www.st.com/en/microcontrollers-microprocessors/stm32wl-series.html",
"vendor": "ST"
}
+72
View File
@@ -0,0 +1,72 @@
{
"build": {
"arduino": {
"ldscript": "nrf52840_s140_v6.ld"
},
"core": "nRF5",
"cpu": "cortex-m4",
"extra_flags": "-DARDUINO_NRF52840_FEATHER -DNRF52840_XXAA",
"f_cpu": "64000000L",
"hwids": [
[
"0x239A",
"0x8029"
],
[
"0x239A",
"0x0029"
],
[
"0x239A",
"0x002A"
],
[
"0x239A",
"0x802A"
]
],
"usb_product": "PCA10059",
"mcu": "nrf52840",
"variant": "nRF52840 Dongle",
"bsp": {
"name": "adafruit"
},
"softdevice": {
"sd_flags": "-DS140",
"sd_name": "s140",
"sd_version": "6.1.1",
"sd_fwid": "0x00B6"
},
"bootloader": {
"settings_addr": "0xFF000"
}
},
"connectivity": [
"bluetooth"
],
"debug": {
"jlink_device": "nRF52840_xxAA",
"svd_path": "nrf52840.svd"
},
"frameworks": [
"arduino"
],
"name": "nRF52840 Dongle",
"upload": {
"maximum_ram_size": 248832,
"maximum_size": 815104,
"speed": 115200,
"protocol": "nrfutil",
"protocols": [
"jlink",
"nrfjprog",
"nrfutil",
"stlink"
],
"use_1200bps_touch": true,
"require_upload_port": true,
"wait_for_upload_port": true
},
"url": "https://www.nordicsemi.com/Products/Development-hardware/nrf52840-dongle",
"vendor": "Nordic Semiconductor"
}
-55
View File
@@ -1,55 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "nrf52832_s132_v6.ld"
},
"core": "nRF5",
"cpu": "cortex-m4",
"extra_flags": "-DNRF52832_XXAA -DNRF52",
"f_cpu": "64000000L",
"hwids": [
[
"0x10c4",
"0xea60"
]
],
"usb_product": "RAK815",
"mcu": "nrf52832",
"variant": "rak815",
"bsp": {
"name": "adafruit"
},
"softdevice": {
"sd_flags": "-DS132",
"sd_name": "s132",
"sd_version": "6.1.1",
"sd_fwid": "0x00B7"
}
},
"connectivity": [
"bluetooth"
],
"debug": {
"jlink_device": "nRF52832_xxAA",
"svd_path": "nrf52.svd"
},
"frameworks": [
"arduino"
],
"name": "RAK RAK815",
"upload": {
"maximum_ram_size": 65536,
"maximum_size": 524288,
"require_upload_port": true,
"speed": 115200,
"protocol": "nrfutil",
"protocols": [
"jlink",
"nrfjprog",
"nrfutil",
"stlink"
]
},
"url": "https://store.rakwireless.com/products/rak815-hybrid-location-tracker",
"vendor": "RAK"
}
+46
View File
@@ -0,0 +1,46 @@
{
"build": {
"arduino": {
"ldscript": "esp32s3_out.ld"
},
"core": "esp32",
"extra_flags": [
"-DBOARD_HAS_PSRAM",
"-DLILYGO_TBEAM_S3_CORE",
"-DARDUINO_USB_CDC_ON_BOOT=1",
"-DARDUINO_USB_MODE=0",
"-DARDUINO_RUNNING_CORE=1",
"-DARDUINO_EVENT_RUNNING_CORE=1"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"hwids": [
[
"0X303A",
"0x1001"
]
],
"mcu": "esp32s3",
"variant": "tbeam-s3-core"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino"
],
"name": "LilyGo TBeam-S3-Core",
"upload": {
"flash_size": "8MB",
"maximum_ram_size": 327680,
"maximum_size": 8388608,
"require_upload_port": true,
"speed": 921600
},
"url": "http://www.lilygo.cn/",
"vendor": "LilyGo"
}
+47
View File
@@ -0,0 +1,47 @@
{
"build": {
"arduino": {
"ldscript": "esp32s3_out.ld"
},
"core": "esp32",
"extra_flags": [
"-DLILYGO_T3S3_V1",
"-DARDUINO_USB_CDC_ON_BOOT=1",
"-DARDUINO_USB_MODE=0",
"-DARDUINO_RUNNING_CORE=1",
"-DARDUINO_EVENT_RUNNING_CORE=1"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"hwids": [
[
"0X303A",
"0x1001"
]
],
"mcu": "esp32s3",
"variant": "tlora-t3s3-v1"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "LilyGo TLora-T3S3-V1",
"upload": {
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"wait_for_upload_port": true,
"require_upload_port": true,
"speed": 921600
},
"url": "http://www.lilygo.cn/",
"vendor": "LilyGo"
}
+39
View File
@@ -0,0 +1,39 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
"mcu": "esp32",
"variant": "WisCore_RAK11200_Board"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"frameworks": [
"arduino",
"espidf"
],
"name": "WisCore RAK11200 Board",
"upload": {
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"protocols": [
"esptool",
"espota",
"ftdi"
],
"require_upload_port": true,
"speed": 460800
},
"url": "https://www.rakwireless.com",
"vendor": "RAKwireless"
}
Submodule design deleted from 73ba05ceef
+13
View File
@@ -0,0 +1,13 @@
version: "3.7"
services:
meshtastic-node:
build: .
deploy:
mode: replicated
replicas: 4
networks:
- mesh
networks:
mesh:
-19
View File
@@ -1,19 +0,0 @@
# Setup Monitor Mode Debugging
# Per .platformio/packages/framework-arduinoadafruitnrf52-old/cores/nRF5/linker/nrf52840_s140_v6.ld
# our appload starts at 0x26000
# Disable for now because our version on board doesn't support monitor mode debugging
# mon exec SetMonModeDebug=1
# mon exec SetMonModeVTableAddr=0x26000
# echo setting RTTAddr
# eval "monitor exec SetRTTAddr %p", &_SEGGER_RTT
# the jlink debugger seems to want a pause after reset before we tell it to start running
define restart
echo Restarting
monitor reset
shell sleep 1
cont
end
-353
View File
@@ -1,353 +0,0 @@
# Geeksville's current work queue
You probably don't care about this section - skip to the next one.
* usb lora dongle from pine64, add end user instructions
* measure rak4630 power draw and turn off power for GPS most of the time. We should be able to run on the small solar panel.
* turn on watchdog reset if app hangs on nrf52 or esp32
* pine64 solar boards
* for the matrix gateway? recommended by @sam-uk https://github.com/matrix-org/coap-proxy
* figure our wss for mqtt.meshtastic - use cloudflare? 2052 ws, 2053 crypt
* ask for vercel access
* finish plan for riot.im
* turn on setTx(timeout) and state = setDioIrqParams(SX126X_IRQ_TX_DONE | SX126X_IRQ_TIMEOUT, SX126X_IRQ_TX_DONE | SX126X_IRQ_TIMEOUT); in sx1262 code
* NO add rak4600 support (with rf95 radio and limited ram)
* store esp32 crashes to flash (and 64KB coredump partition) - https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/core_dump.html
* If more nodes appear than the nodedb can hold, delete oldest entries from DB
* send debug info 'in-band'
* DONE @luxonn reports that after a while the android app stops showing new messages
* DONE release android APK - fix recent 1.2.28 crash report
* DONE remote admin busted?
* DONE check android code - @havealoha comments about odd sleep behavior
* ABANDONED test github actions locally on linux
* DONE fix github actions per sasha tip
* tell ttgo to preinstall new bins
* DONE sendtext busted in portduino, due to bytetime calculations
* remove linux dependency in native build
* DONE tcp stream problem in python+pordtuino, server thinks client dropped when client DID NOT DROP
* DONE TCP mode for android, localhost is at 10.0.2.2
* DONE make sure USB still works in android
* add license to portduino and make announcement
* DONE naks are being dropped (though enqueuedLocal) sometimes before phone/PC gets them
* DONE have android fill in if local GPS has poor signal
* optionally restrict position sends to a named channel
* release to beta and amazon
* add reference counting to mesh packets
* allow multiple simultanteous phoneapi connections
* DONE split position.time and last_heard
* DONE update android app to use last_heard
* DONE turn off bluetooth interface ENTIRELY while using serial API (was python client times out on connect sometimes)
* DONE gps assistance from phone not working?
* DONE test latest firmware update with is_router
* DONE firmware OTA updates of is_router true nodes fails?
* DONE add UI in android app to reset to defaults https://github.com/meshtastic/Meshtastic-Android/issues/263
* DONE TEST THIS! changing channels requires a reboot to take effect https://github.com/meshtastic/Meshtastic-device/issues/752
* DONE bug report with remote info request timing out
* DONE retest channel changing in android (using sim?)
* DONE move remote admin doc from forum into git
* DONE check crashlytics
* DONE ask for a documentation czar
* DONE timestamps on oled screen are wrong - don't seem to be updating based on message rx (actually: this is expected behavior when no node on the mesh has GPS time)
* DONE add ch-del
* DONE channel hash suffixes are wrong on android
* DONE before next relase: test empty channel sets on android
* DONE channel sharing in android
* DONE test 1.0 firmware update on android
* DONE test 1.1 firmwhttps://github.com/meshtastic/Meshtastic-Android/issues/271are update on android
* DONE test 1.2.10 firmware update on android
* DONE test link sharing on android
* FIXED? luxon bug report - seeing rx acks for nodes that are not on the network
* DONE release py
* DONE show GPS time only if we know what global time is
* DONE android should always provide time to nodes - so that it is easier for the mesh to learn the current time
## Multichannel support
* DONE cleanup the external notification and serial plugins
* non ack version of stress test fails sometimes!
* tx fault test has a bug #734 - * turn off fault 8: https://github.com/meshtastic/Meshtastic-device/issues/734
* DONE move device types into an enum in nodeinfo
* DONE fix android to use new device types for firmware update
* nrf52 should preserve local time across reset
* cdcacm bug on nrf52: emittx thinks it emitted but client sees nothing. works again later
* nrf52: segger logs have errors in formatting that should be impossible (because not going through serial, try stalling on segger)
* DONE call RouterPlugin for *all* packets - not just Router packets
* DONE generate channel hash from the name of the channel+the psk (not just one or the other)
* DONE send a hint that can be used to select which channel to try and hash against with each message
* DONE remove deprecated
* DONE fix setchannel in phoneapi.cpp
* DONE set mynodeinfo.max_channels
* DONE set mynodeinfo.num_bands (formerly num_channels)
* DONE fix sniffing of non Routing packets
* DONE enable remote setttings access by moving settings operations into a regular plugin (move settings ops out of PhoneAPI)
* DONE move portnum up?
* DONE remove region specific builds from the firmware
* DONE test single channel without python
* DONE Use "default" for name if name is empty
* DONE fix python data packet receiving (nothing showing in log?)
* DONE implement 'get channels' Admin plugin operation
* DONE use get-channels from python
* DONE use get channels & get settings from android
* DONE use set-channel from python
* DONE make settings changes from python work
* DONE pthon should stop fetching channels once we've reached our first empty channel definition (hasSettings == true)
* DONE add check for old devices with new API library
* DONE release python api
* DONE release protobufs
* DONE release to developers
* DONE fix setch-fast in python tool
* age out pendingrequests in the python API
* DONE stress test channel download from python, sometimes it seems like we don't get all replies, bug was due to simultaneous android connection
* DONE combine acks and responses in a single message if possible (do routing plugin LAST and drop ACK if someone else has already replied)
* DONE don't send packets we received from the phone BACK TOWARDS THE PHONE (possibly use fromnode 0 for packets the phone sends?)
* DONE fix 1.1.50 android debug panel display
* DONE test android channel setting
* DONE release to users
* DONE warn in android app about unset regions
* DONE use set-channel from android
* DONE add gui in android app for setting region
* DONE clean up python channel usage
* DONE use bindToChannel to limit admin access for remote nodes
* DONE move channels and radio config out of device settings
* DONE test remote info and remote settings changes
* make python tests more exhaustive
* DONE pick default random admin key
* exclude admin channels from URL?
* make a way to share just secondary channels via URL
* generalize the concept of "shortstrings" use it for both PSKs and well known channel names. Possibly use a ShortString class.
* use single byte 'well known' channel names for admin, gpio, etc...
* use presence of gpio channel to enable gpio ops, same for serial etc...
* DONE restrict gpio & serial & settings operations to the admin channel (unless local to the current node)
* DONE add channel restrictions for plugins (and restrict routing plugin to the "control" channel)
* stress test multi channel
* DONE investigate @mc-hamster report of heap corruption
* DONE use set-user from android
* untrusted users should not be allowed to provide bogus times (via position broadcasts) to the rest of the mesh. Invent a new lowest quality notion of UntrustedTime.
* use portuino TCP connection to debug with python API
* document the relationship between want_response (indicating remote node received it) and want_ack (indicating that this message should be sent reliably - and also get acks from the first rx node and naks if it is never delivered)
* DONE android should stop fetching channels once we've reached our first empty channel definition (hasSettings == true)
* DONE warn in python api if we are too new to talk to the device code
* DONE make a post warning about 1.2, telling how to stay on old android & python clients. link to this from the android dialog message and python version warning.
* DONE "FIXME - move the radioconfig/user/channel READ operations into SettingsMessage as well"
* DONE scrub protobufs to make sure they are absoloute minimum wiresize (in particular Data, ChannelSets and positions)
* DONE change syncword (now ox2b)
* allow chaning packets in single transmission - to increase airtime efficiency and amortize packet overhead
* DONE move most parts of meshpacket into the Data packet, so that we can chain multiple Data for sending when they all have a common destination and key.
* when selecting a MeshPacket for transmit, scan the TX queue for any Data packets we can merge together as a WirePayload. In the low level send/rx code expand that into multiple MeshPackets as needed (thus 'hiding' from MeshPacket that over the wire we send multiple datapackets
* DONE confirm we are still calling the plugins for messages inbound from the phone (or generated locally)
* DONE confirm we are still multi hop routing flood broadcasts
* DONE confirm we are still doing resends on unicast reliable packets
* add history to routed packets: https://meshtastic.discourse.group/t/packet-source-tracking/2764/2
* add support for full DSR unicast delivery
* DONE move acks into routing
* DONE make all subpackets different versions of data
* DONE move routing control into a data packet
* have phoneapi done via plugin (will allow multiple simultaneous API clients - stop disabling BLE while using phone API)
* use reference counting and dynamic sizing for meshpackets. - use https://docs.microsoft.com/en-us/cpp/cpp/how-to-create-and-use-shared-ptr-instances?view=msvc-160 (already used in arduino)
* let multiple PhoneAPI endpoints work at once
* allow multiple simultaneous bluetooth connections (create the bluetooth phoneapi instance dynamically based on client id)
* DONE figure out how to add micro_delta to position, make it so that phone apps don't need to understand it?
* only send battery updates a max of once a minute
* DONE add python channel selection for sending
* DONE record recevied channel in meshpacket
* test remote settings operations (confirm it works 3 hops away)
* DONE make a primaryChannel global and properly maintain it when the phone sends setChannel
* DONE move setCrypto call into packet send and packet decode code
* implement 'small location diffs' change
* move battery level out of position?
* consider "A special exception (FIXME, not sure if this is a good idea) - packets that arrive on the local interface
are allowed on any channel (this lets the local user do anything)." Probably by adding a "secure_local_interface" settings bool.
* DOUBLE CHECK android app can still upgrade 1.1 and 1.0 loads
For app cleanup:
* don't store redundant User admin or position broadcasts in the ToPhone queue (only keep one per sending node per proto type, and only most recent)
* use structured logging to kep logs in ram. Also send logs as packets to api clients
* DONE writeup nice python options docs (common cases, link to protobuf docs)
* have android app link to user manual
* DONE only do wantReplies once per packet type, if we change network settings force it again
* update positions and nodeinfos based on packets we just merely witness on the mesh. via isPromsciousPort bool, remove sniffing
* DONE make device build always have a valid version
* DONE do fixed position bug https://github.com/meshtastic/Meshtastic-device/issues/536
* DONE check build guide
* DONE write devapi user guide
* DONE update android code: https://developer.android.com/topic/libraries/view-binding/migration
* DONE test GPIO watch
* DONE set --set-chan-fast, --set-chan-default
* writeup docs on gpio
* DONE make python ping command
* DONE make hello world example service
* DONE have python tool check max packet size before sending to device
* DONE if request was sent reliably, send reply reliably
* DONE require a recent python api to talk to these new device loads
* DONE require a recent android app to talk to these new device loads
* DONE fix handleIncomingPosition
* DONE move want_replies handling into plugins
* DONE on android for received positions handle either old or new positions / user messages
* DONE on android side send old or new positions as needed / user messages
* DONE test python side handle new position/user messages
* DONE make a gpio example. --gpiowrb 4 1, --gpiord 0x444, --gpiowatch 0x3ff
* DONE fix position sending to use new plugin
* DONE Add SinglePortNumPlugin - as the new most useful baseclass
* DONE move positions into regular data packets (use new app framework)
* DONE move user info into regular data packets (use new app framework)
* DONE test that positions, text messages and user info still work
* DONE test that position, text messages and user info work properly with new android app and old device code
* DONE do UDP tunnel
* DONE fix the RTC drift bug
* move python ping functionality into device, reply with rxsnr info
* use channels for gpio security https://github.com/meshtastic/Meshtastic-device/issues/104
* MeshPackets for sending should be reference counted so that API clients would have the option of checking sent status (would allow removing the nasty 30 sec timer in gpio watch sending)
For high speed/lots of devices/short range tasks:
- When guessing numhops for sending: if I've heard from many local (0 hop neighbors) decrease hopcount by 2 rather than 1.
This should nicely help 'router' nodes do the right thing when long range, or if there are many local nodes for short range.
- fix timeouts/delays to be based on packet length at current radio settings
* update faq with antennas https://meshtastic.discourse.group/t/range-test-ideas-requested/738/2
* update faq on recommended android version and phones
* add help link inside the app, reference a page on the wiki
* turn on amazon reviews support
* add a tablet layout (with map next to messages) in the android app
# Completed
## eink 1.0
* DONE check email of reported issues
* DONE turn off vbus driving (in bootloader)
* new battery level sensing
* current draw no good
* DONE: fix backlight
* DONE - USB is busted because of power enable mode?
* test CPU voltage? something is bad with RAM (removing eink module does not help)
* test that board leaves bootloader always
* test USB - works in bootloader
* test LEDs
* Test BME280
* test gps
* check GPS fast locking
* tested! dlora
* test eink backlight
* tested! eink
* test buttons
* test battery charging
* test serial flash
* send updated app and bootloader image
* OHH BME280! THAT IS GREAT!
* make new screen work, ask for datasheet
* say I think you could ship this
* leds seem busted
* fix hw_model: "nrf52unknown"
* use larger icon for meshtastic logo
* send email about variants & faster flash programming - https://github.com/geeksville/Meshtastic-esp32/commit/f110225173a77326aac029321cdb6491bfa640f6
* send PR for bootloader
* fix nrf52 time/date
* send new master bin file
* send email about low power mode problems
* support new flash chip in appload, possibly use low power mode
* swbug! stuck busy tx occurred!
# Old docs to merge
MESH RADIO PROTOCOL
Old TODO notes on the mesh radio protocol, merge into real docs someday...
for each named group we have a pre-shared key known by all group members and
wrapped around the device. you can only be in one group at a time (FIXME?!) To
join the group we read a qr code with the preshared key and ParamsCodeEnum. that
gets sent via bluetooth to the device. ParamsCodeEnum maps to a set of various
radio params (regulatory region, center freq, SF, bandwidth, bitrate, power
etc...) so all members of the mesh can have their radios set the same way.
once in that group, we can talk between 254 node numbers.
to get our node number (and announce our presence in the channel) we pick a
random node number and broadcast as that node with WANT-NODENUM(my globally
unique name). If anyone on the channel has seen someone _else_ using that name
within the last 24 hrs(?) they reply with DENY-NODENUM. Note: we might receive
multiple denies. Note: this allows others to speak up for some other node that
might be saving battery right now. Any time we hear from another node (for any
message type), we add that node number to the unpickable list. To dramatically
decrease the odds a node number we request is already used by someone. If no one
denies within TBD seconds, we assume that we have that node number. As long as
we keep talking to folks at least once every 24 hrs, others should remember we
have it.
Once we have a node number we can broadcast POSITION-UPDATE(my globally unique
name, lat, lon, alt, amt battery remaining). All receivers will use this to a)
update the mapping of who is at what node nums, b) the time of last rx, c)
position. If we haven't heard from that node in a while we reply to that node
(only) with our current POSITION_UPDATE state - so that node (presumably just
rejoined the network) can build a map of all participants.
We will periodically broadcast POSITION-UPDATE as needed based on distance moved
or a periodic minimum heartbeat.
If user wants to send a text they can SEND_TEXT(dest user, short text message).
Dest user is a node number, or 0xff for broadcast.
# Medium priority
Items to complete before 1.0.
# Post 1.0 ideas
- finish DSR for unicast
- check fcc rules on duty cycle. we might not need to freq hop. https://www.sunfiretesting.com/LoRa-FCC-Certification-Guide/ . Might need to add enforcement for europe though.
- make a no bluetooth configured yet screen - include this screen in the loop if the user hasn't yet paired
- if radio params change fundamentally, discard the nodedb
- re-enable the bluetooth battery level service on the T-BEAM
- provide generalized (but slow) internet message forwarding service if one of our nodes has internet connectivity (MQTT) [ Not a requirement but a personal interest ]
# Low priority ideas
Items after the first final candidate release.
- implement nimble battery level service
- Nimble implement device info service remaining fields (hw version etc)
- Turn on RPA addresses for the device side in Nimble
- Try to teardown less of the Nimble protocol stack across sleep
- dynamic frequency scaling could save a lot of power on ESP32, but it seems to corrupt uart (even with ref_tick set correctly)
- Change back to using a fixed sized MemoryPool rather than MemoryDynamic (see bug #149)
- scan to find channels with low background noise? (Use CAD mode of the RF95 to automatically find low noise channels)
- If the phone doesn't read fromradio mailbox within X seconds, assume the phone is gone and we can stop queing location msgs
for it (because it will redownload the nodedb when it comes back)
- add frequency hopping, dependent on the gps time, make the switch moment far from the time anyone is going to be transmitting
- assign every "channel" a random shared 8 bit sync word (per 4.2.13.6 of datasheet) - use that word to filter packets before even checking CRC. This will ensure our CPU will only wake for packets on our "channel"
- the BLE stack is leaking about 200 bytes each time we go to light sleep
- use fuse bits to store the board type and region. So one load can be used on all boards
- Don't store position packets in the to phone fifo if we are disconnected. The phone will get that info for 'free' when it
fetches the fresh nodedb.
- Use the RFM95 sequencer to stay in idle mode most of the time, then automatically go to receive mode and automatically go from transmit to receive mode. See 4.2.8.2 of manual.
- Use fixed32 for node IDs, packetIDs, successid, failid, and lat/lon - will require all nodes to be updated, but make messages slightly smaller.
- add "store and forward" support for messages, or move to the DB sync model. This would allow messages to be eventually delivered even if nodes are out of contact at the moment.
- use variable length Strings in protobufs (instead of current fixed buffers). This would save lots of RAM
- use BLEDevice::setPower to lower our BLE transmit power - extra range doesn't help us, it costs amps and it increases snoopability
- make a Ham build: just a new frequency list, a bool to say 'never do encryption' and use the callsign as that node's unique id. -from Girts
- don't forward redundant pings or ping responses to the phone, it just wastes phone battery
- don't send location packets if we haven't moved significantly
- scrub default radio config settings for bandwidth/range/speed
- show radio and gps signal strength as an image
- only BLE advertise for a short time after the screen is on and button pressed - to save power and prevent people for sniffing for our BT app.
- make mesh aware network timing state machine (sync wake windows to gps time) - this can save LOTS of battery
- split out the software update utility so other projects can use it. Have the appload specify the URL for downloads.
- read the PMU battery fault indicators and blink/led/warn user on screen
- discard very old nodedb records (> 1wk)
- handle millis() rollover in GPS.getTime - otherwise we will break after 50 days
- report esp32 device code bugs back to the mothership via android
- change BLE bonding to something more secure. see comment by pSecurity->setAuthenticationMode(ESP_LE_AUTH_BOND)
Changes related to wifi support on ESP32:
- iram space: https://esp32.com/viewtopic.php?t=8460
- set https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/external-ram.html spi ram bss
- figure out if iram or bluetooth classic caused ble problems
- post bug on esp32-arduino with BLE bug findings
# Spinoff project ideas
- an open source version of https://www.burnair.ch/skynet/
- a paragliding app like http://airwhere.co.uk/
- How do avalanche beacons work? Could this do that as well? possibly by using beacon mode feature of the RF95?
-25
View File
@@ -1,25 +0,0 @@
* nutcracker https://www.pine64.org/2020/10/28/nutcracker-challenge-blob-free-wifi-ble/
* https://github.com/pine64/bl_iot_sdk
* https://github.com/pine64/bl602-docs / https://pine64.github.io/bl602-docs/
* https://github.com/pine64/ArduinoCore-bouffalo
cd ~/packages
git clone --recursive https://github.com/pine64/bl_iot_sdk
https://github.com/spacemeowx2/blflash/releases
# FIXME or BL604
cd bl_iot_sdk
export BL60X_SDK_PATH=/home/kevinh/packages/bl_iot_sdk
export CONFIG_CHIP_NAME=BL602
cd customer_app/bl602_boot2
make
* todo run hello world on hardware (check for bl604 vs bl602 first)
* build/run in the crummy arduino environment
* build in platformio
https://lupyuen.github.io/articles/lorawan2
-51
View File
@@ -1,51 +0,0 @@
# Notes on the pine64 lora board
like before but sx1262 based?
Since both DIO3 and DIO2 not apply to PINE64 LoRa situation, I will wire SX1262 INT [DIO1] pin, contact to CS341F pin 7 INT# and pin 5.
FIX ch341 GPIO access from linux
RF95 packet RX seems busted FIX FIRST
USE ch341 devboard if needed
SX1262 BUSY seems to come out on pin 15 of the RFM90 HOPE module. The 'footprint' seems rotated on the pine64 board schematic and that becomes pin 7 on U4 which is "DIO5" on that schematic. Which goes to pin 8 on the CH341F, which that datasheet calls "IN3"
FIXME - see if possible to read BUSY from "IN3"?
on a ch341a
* - Pin 15 (D0/CS0 ) as input/output/CS (CH341_PIN_MODE_IN/CH341_PIN_MODE_OUT/CH341_PIN_MODE_CS) (confirm hooked to CS)
* - Pin 16 (D1/CS1 ) as input/output/CS (CH341_PIN_MODE_IN/CH341_PIN_MODE_OUT/CH341_PIN_MODE_CS)
* - Pin 17 (D2/CS2 ) as input/output/CS (CH341_PIN_MODE_IN/CH341_PIN_MODE_OUT/CH341_PIN_MODE_CS)
* - Pin 19 (D4/DOUT2) as input/output (CH341_PIN_MODE_IN/CH341_PIN_MODE_OUT) / gpio4 in linux driver / (FIXME: confirm hooked to IRQ also?)
* - Pin 21 (D6/DIN2 ) as input (CH341_PIN_MODE_IN) / called RTS when in UART mode
## ch341-driver
driver busted in 5.11 kernels (rf95 init fails). 5.8.0 is okay, 5.8.18 is okay. fails on 5.10.31, 5.9.16 is okay. Therefore breakage happened in 5.10 kernels! Possibly not really breakage, possibly just sloppy caching or something that is more easily caught with modern threading.
cs_change is not being set on the way into the driver!
## gpio
the new GPIO interface https://embeddedbits.org/new-linux-kernel-gpio-user-space-interface/
~/development/meshtastic/meshtastic-esp32$ gpiodetect
gpiochip0 [INT34BB:00] (312 lines)
gpiochip1 [ch341] (2 lines)
~/development/meshtastic/meshtastic-esp32$ gpioinfo 1
gpiochip1 - 2 lines:
line 0: "gpio4" unused input active-high
line 1: "gpio5" unused input active-high
gpiofind gpio4
gpiochip1 0
DO NOT "apt install libgpiod-dev" It doesn't work with kernels newer than about 5.8. Instead build and install from source: https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/
## Send in patch
Fix drivers/spi/spi.c transfer_once
read about spi: https://elinux.org/images/2/20/Whats_going_on_with_SPI--mark_brown.pdf
https://www.kernel.org/doc/html/v4.17/process/submitting-patches.html
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Binary file not shown.
-32
View File
@@ -1,32 +0,0 @@
{
"name": "BluetoothOTA",
"keywords": "esp32, bluetooth",
"description": "A BTLE based software OTA update tool",
"repository": {
"type": "git",
"url": "https://github.com/geeksville/fixme.git"
},
"authors": [
{
"name": "Kevin Hester",
"email": "kevinh@geeksville.com",
"url": "https://github.com/geeksville",
"maintainer": true
}
],
"version": "0.0.1",
"frameworks": "arduino",
"platforms": "*",
"dependencies": [
{
"name": "Update"
},
{
"name": "ESP32 BLE Arduino"
},
{
"name": "arduino-fsm",
"version": "https://github.com/meshtastic/arduino-fsm.git"
}
]
}
-878
View File
@@ -1,878 +0,0 @@
/* Common parts of the nanopb library. Most of these are quite low-level
* stuff. For the high-level interface, see pb_encode.h and pb_decode.h.
*/
#ifndef PB_H_INCLUDED
#define PB_H_INCLUDED
/*****************************************************************
* Nanopb compilation time options. You can change these here by *
* uncommenting the lines, or on the compiler command line. *
*****************************************************************/
/* Enable support for dynamically allocated fields */
#define PB_ENABLE_MALLOC 1
/* Define this if your CPU / compiler combination does not support
* unaligned memory access to packed structures. */
/* #define PB_NO_PACKED_STRUCTS 1 */
/* Increase the number of required fields that are tracked.
* A compiler warning will tell if you need this. */
/* #define PB_MAX_REQUIRED_FIELDS 256 */
/* Add support for tag numbers > 65536 and fields larger than 65536 bytes. */
/* #define PB_FIELD_32BIT 1 */
/* Disable support for error messages in order to save some code space. */
/* #define PB_NO_ERRMSG 1 */
/* Disable support for custom streams (support only memory buffers). */
/* #define PB_BUFFER_ONLY 1 */
/* Disable support for 64-bit datatypes, for compilers without int64_t
or to save some code space. */
/* #define PB_WITHOUT_64BIT 1 */
/* Don't encode scalar arrays as packed. This is only to be used when
* the decoder on the receiving side cannot process packed scalar arrays.
* Such example is older protobuf.js. */
/* #define PB_ENCODE_ARRAYS_UNPACKED 1 */
/* Enable conversion of doubles to floats for platforms that do not
* support 64-bit doubles. Most commonly AVR. */
/* #define PB_CONVERT_DOUBLE_FLOAT 1 */
/* Check whether incoming strings are valid UTF-8 sequences. Slows down
* the string processing slightly and slightly increases code size. */
/* #define PB_VALIDATE_UTF8 1 */
/******************************************************************
* You usually don't need to change anything below this line. *
* Feel free to look around and use the defined macros, though. *
******************************************************************/
/* Version of the nanopb library. Just in case you want to check it in
* your own program. */
#define NANOPB_VERSION nanopb - 0.4.4
/* Include all the system headers needed by nanopb. You will need the
* definitions of the following:
* - strlen, memcpy, memset functions
* - [u]int_least8_t, uint_fast8_t, [u]int_least16_t, [u]int32_t, [u]int64_t
* - size_t
* - bool
*
* If you don't have the standard header files, you can instead provide
* a custom header that defines or includes all this. In that case,
* define PB_SYSTEM_HEADER to the path of this file.
*/
#ifdef PB_SYSTEM_HEADER
#include PB_SYSTEM_HEADER
#else
#include <limits.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
#include <string.h>
#ifdef PB_ENABLE_MALLOC
#include <stdlib.h>
#endif
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* Macro for defining packed structures (compiler dependent).
* This just reduces memory requirements, but is not required.
*/
#if defined(PB_NO_PACKED_STRUCTS)
/* Disable struct packing */
#define PB_PACKED_STRUCT_START
#define PB_PACKED_STRUCT_END
#define pb_packed
#elif defined(__GNUC__) || defined(__clang__)
/* For GCC and clang */
#define PB_PACKED_STRUCT_START
#define PB_PACKED_STRUCT_END
#define pb_packed __attribute__((packed))
#elif defined(__ICCARM__) || defined(__CC_ARM)
/* For IAR ARM and Keil MDK-ARM compilers */
#define PB_PACKED_STRUCT_START _Pragma("pack(push, 1)")
#define PB_PACKED_STRUCT_END _Pragma("pack(pop)")
#define pb_packed
#elif defined(_MSC_VER) && (_MSC_VER >= 1500)
/* For Microsoft Visual C++ */
#define PB_PACKED_STRUCT_START __pragma(pack(push, 1))
#define PB_PACKED_STRUCT_END __pragma(pack(pop))
#define pb_packed
#else
/* Unknown compiler */
#define PB_PACKED_STRUCT_START
#define PB_PACKED_STRUCT_END
#define pb_packed
#endif
/* Handly macro for suppressing unreferenced-parameter compiler warnings. */
#ifndef PB_UNUSED
#define PB_UNUSED(x) (void)(x)
#endif
/* Harvard-architecture processors may need special attributes for storing
* field information in program memory. */
#ifndef PB_PROGMEM
#ifdef __AVR__
#include <avr/pgmspace.h>
#define PB_PROGMEM PROGMEM
#define PB_PROGMEM_READU32(x) pgm_read_dword(&x)
#else
#define PB_PROGMEM
#define PB_PROGMEM_READU32(x) (x)
#endif
#endif
/* Compile-time assertion, used for checking compatible compilation options.
* If this does not work properly on your compiler, use
* #define PB_NO_STATIC_ASSERT to disable it.
*
* But before doing that, check carefully the error message / place where it
* comes from to see if the error has a real cause. Unfortunately the error
* message is not always very clear to read, but you can see the reason better
* in the place where the PB_STATIC_ASSERT macro was called.
*/
#ifndef PB_NO_STATIC_ASSERT
#ifndef PB_STATIC_ASSERT
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
/* C11 standard _Static_assert mechanism */
#define PB_STATIC_ASSERT(COND, MSG) _Static_assert(COND, #MSG);
#else
/* Classic negative-size-array static assert mechanism */
#define PB_STATIC_ASSERT(COND, MSG) typedef char PB_STATIC_ASSERT_MSG(MSG, __LINE__, __COUNTER__)[(COND) ? 1 : -1];
#define PB_STATIC_ASSERT_MSG(MSG, LINE, COUNTER) PB_STATIC_ASSERT_MSG_(MSG, LINE, COUNTER)
#define PB_STATIC_ASSERT_MSG_(MSG, LINE, COUNTER) pb_static_assertion_##MSG##_##LINE##_##COUNTER
#endif
#endif
#else
/* Static asserts disabled by PB_NO_STATIC_ASSERT */
#define PB_STATIC_ASSERT(COND, MSG)
#endif
/* Number of required fields to keep track of. */
#ifndef PB_MAX_REQUIRED_FIELDS
#define PB_MAX_REQUIRED_FIELDS 64
#endif
#if PB_MAX_REQUIRED_FIELDS < 64
#error You should not lower PB_MAX_REQUIRED_FIELDS from the default value (64).
#endif
#ifdef PB_WITHOUT_64BIT
#ifdef PB_CONVERT_DOUBLE_FLOAT
/* Cannot use doubles without 64-bit types */
#undef PB_CONVERT_DOUBLE_FLOAT
#endif
#endif
/* List of possible field types. These are used in the autogenerated code.
* Least-significant 4 bits tell the scalar type
* Most-significant 4 bits specify repeated/required/packed etc.
*/
typedef uint_least8_t pb_type_t;
/**** Field data types ****/
/* Numeric types */
#define PB_LTYPE_BOOL 0x00U /* bool */
#define PB_LTYPE_VARINT 0x01U /* int32, int64, enum, bool */
#define PB_LTYPE_UVARINT 0x02U /* uint32, uint64 */
#define PB_LTYPE_SVARINT 0x03U /* sint32, sint64 */
#define PB_LTYPE_FIXED32 0x04U /* fixed32, sfixed32, float */
#define PB_LTYPE_FIXED64 0x05U /* fixed64, sfixed64, double */
/* Marker for last packable field type. */
#define PB_LTYPE_LAST_PACKABLE 0x05U
/* Byte array with pre-allocated buffer.
* data_size is the length of the allocated PB_BYTES_ARRAY structure. */
#define PB_LTYPE_BYTES 0x06U
/* String with pre-allocated buffer.
* data_size is the maximum length. */
#define PB_LTYPE_STRING 0x07U
/* Submessage
* submsg_fields is pointer to field descriptions */
#define PB_LTYPE_SUBMESSAGE 0x08U
/* Submessage with pre-decoding callback
* The pre-decoding callback is stored as pb_callback_t right before pSize.
* submsg_fields is pointer to field descriptions */
#define PB_LTYPE_SUBMSG_W_CB 0x09U
/* Extension pseudo-field
* The field contains a pointer to pb_extension_t */
#define PB_LTYPE_EXTENSION 0x0AU
/* Byte array with inline, pre-allocated byffer.
* data_size is the length of the inline, allocated buffer.
* This differs from PB_LTYPE_BYTES by defining the element as
* pb_byte_t[data_size] rather than pb_bytes_array_t. */
#define PB_LTYPE_FIXED_LENGTH_BYTES 0x0BU
/* Number of declared LTYPES */
#define PB_LTYPES_COUNT 0x0CU
#define PB_LTYPE_MASK 0x0FU
/**** Field repetition rules ****/
#define PB_HTYPE_REQUIRED 0x00U
#define PB_HTYPE_OPTIONAL 0x10U
#define PB_HTYPE_SINGULAR 0x10U
#define PB_HTYPE_REPEATED 0x20U
#define PB_HTYPE_FIXARRAY 0x20U
#define PB_HTYPE_ONEOF 0x30U
#define PB_HTYPE_MASK 0x30U
/**** Field allocation types ****/
#define PB_ATYPE_STATIC 0x00U
#define PB_ATYPE_POINTER 0x80U
#define PB_ATYPE_CALLBACK 0x40U
#define PB_ATYPE_MASK 0xC0U
#define PB_ATYPE(x) ((x)&PB_ATYPE_MASK)
#define PB_HTYPE(x) ((x)&PB_HTYPE_MASK)
#define PB_LTYPE(x) ((x)&PB_LTYPE_MASK)
#define PB_LTYPE_IS_SUBMSG(x) (PB_LTYPE(x) == PB_LTYPE_SUBMESSAGE || PB_LTYPE(x) == PB_LTYPE_SUBMSG_W_CB)
/* Data type used for storing sizes of struct fields
* and array counts.
*/
#if defined(PB_FIELD_32BIT)
typedef uint32_t pb_size_t;
typedef int32_t pb_ssize_t;
#else
typedef uint_least16_t pb_size_t;
typedef int_least16_t pb_ssize_t;
#endif
#define PB_SIZE_MAX ((pb_size_t)-1)
/* Data type for storing encoded data and other byte streams.
* This typedef exists to support platforms where uint8_t does not exist.
* You can regard it as equivalent on uint8_t on other platforms.
*/
typedef uint_least8_t pb_byte_t;
/* Forward declaration of struct types */
typedef struct pb_istream_s pb_istream_t;
typedef struct pb_ostream_s pb_ostream_t;
typedef struct pb_field_iter_s pb_field_iter_t;
/* This structure is used in auto-generated constants
* to specify struct fields.
*/
typedef struct pb_msgdesc_s pb_msgdesc_t;
struct pb_msgdesc_s {
const uint32_t *field_info;
const pb_msgdesc_t *const *submsg_info;
const pb_byte_t *default_value;
bool (*field_callback)(pb_istream_t *istream, pb_ostream_t *ostream, const pb_field_iter_t *field);
pb_size_t field_count;
pb_size_t required_field_count;
pb_size_t largest_tag;
};
/* Iterator for message descriptor */
struct pb_field_iter_s {
const pb_msgdesc_t *descriptor; /* Pointer to message descriptor constant */
void *message; /* Pointer to start of the structure */
pb_size_t index; /* Index of the field */
pb_size_t field_info_index; /* Index to descriptor->field_info array */
pb_size_t required_field_index; /* Index that counts only the required fields */
pb_size_t submessage_index; /* Index that counts only submessages */
pb_size_t tag; /* Tag of current field */
pb_size_t data_size; /* sizeof() of a single item */
pb_size_t array_size; /* Number of array entries */
pb_type_t type; /* Type of current field */
void *pField; /* Pointer to current field in struct */
void *pData; /* Pointer to current data contents. Different than pField for arrays and pointers. */
void *pSize; /* Pointer to count/has field */
const pb_msgdesc_t *submsg_desc; /* For submessage fields, pointer to field descriptor for the submessage. */
};
/* For compatibility with legacy code */
typedef pb_field_iter_t pb_field_t;
/* Make sure that the standard integer types are of the expected sizes.
* Otherwise fixed32/fixed64 fields can break.
*
* If you get errors here, it probably means that your stdint.h is not
* correct for your platform.
*/
#ifndef PB_WITHOUT_64BIT
PB_STATIC_ASSERT(sizeof(int64_t) == 2 * sizeof(int32_t), INT64_T_WRONG_SIZE)
PB_STATIC_ASSERT(sizeof(uint64_t) == 2 * sizeof(uint32_t), UINT64_T_WRONG_SIZE)
#endif
/* This structure is used for 'bytes' arrays.
* It has the number of bytes in the beginning, and after that an array.
* Note that actual structs used will have a different length of bytes array.
*/
#define PB_BYTES_ARRAY_T(n) \
struct { \
pb_size_t size; \
pb_byte_t bytes[n]; \
}
#define PB_BYTES_ARRAY_T_ALLOCSIZE(n) ((size_t)n + offsetof(pb_bytes_array_t, bytes))
struct pb_bytes_array_s {
pb_size_t size;
pb_byte_t bytes[1];
};
typedef struct pb_bytes_array_s pb_bytes_array_t;
/* This structure is used for giving the callback function.
* It is stored in the message structure and filled in by the method that
* calls pb_decode.
*
* The decoding callback will be given a limited-length stream
* If the wire type was string, the length is the length of the string.
* If the wire type was a varint/fixed32/fixed64, the length is the length
* of the actual value.
* The function may be called multiple times (especially for repeated types,
* but also otherwise if the message happens to contain the field multiple
* times.)
*
* The encoding callback will receive the actual output stream.
* It should write all the data in one call, including the field tag and
* wire type. It can write multiple fields.
*
* The callback can be null if you want to skip a field.
*/
typedef struct pb_callback_s pb_callback_t;
struct pb_callback_s {
/* Callback functions receive a pointer to the arg field.
* You can access the value of the field as *arg, and modify it if needed.
*/
union {
bool (*decode)(pb_istream_t *stream, const pb_field_t *field, void **arg);
bool (*encode)(pb_ostream_t *stream, const pb_field_t *field, void *const *arg);
} funcs;
/* Free arg for use by callback */
void *arg;
};
extern bool pb_default_field_callback(pb_istream_t *istream, pb_ostream_t *ostream, const pb_field_t *field);
/* Wire types. Library user needs these only in encoder callbacks. */
typedef enum { PB_WT_VARINT = 0, PB_WT_64BIT = 1, PB_WT_STRING = 2, PB_WT_32BIT = 5 } pb_wire_type_t;
/* Structure for defining the handling of unknown/extension fields.
* Usually the pb_extension_type_t structure is automatically generated,
* while the pb_extension_t structure is created by the user. However,
* if you want to catch all unknown fields, you can also create a custom
* pb_extension_type_t with your own callback.
*/
typedef struct pb_extension_type_s pb_extension_type_t;
typedef struct pb_extension_s pb_extension_t;
struct pb_extension_type_s {
/* Called for each unknown field in the message.
* If you handle the field, read off all of its data and return true.
* If you do not handle the field, do not read anything and return true.
* If you run into an error, return false.
* Set to NULL for default handler.
*/
bool (*decode)(pb_istream_t *stream, pb_extension_t *extension, uint32_t tag, pb_wire_type_t wire_type);
/* Called once after all regular fields have been encoded.
* If you have something to write, do so and return true.
* If you do not have anything to write, just return true.
* If you run into an error, return false.
* Set to NULL for default handler.
*/
bool (*encode)(pb_ostream_t *stream, const pb_extension_t *extension);
/* Free field for use by the callback. */
const void *arg;
};
struct pb_extension_s {
/* Type describing the extension field. Usually you'll initialize
* this to a pointer to the automatically generated structure. */
const pb_extension_type_t *type;
/* Destination for the decoded data. This must match the datatype
* of the extension field. */
void *dest;
/* Pointer to the next extension handler, or NULL.
* If this extension does not match a field, the next handler is
* automatically called. */
pb_extension_t *next;
/* The decoder sets this to true if the extension was found.
* Ignored for encoding. */
bool found;
};
#define pb_extension_init_zero \
{ \
NULL, NULL, NULL, false \
}
/* Memory allocation functions to use. You can define pb_realloc and
* pb_free to custom functions if you want. */
#ifdef PB_ENABLE_MALLOC
#ifndef pb_realloc
#define pb_realloc(ptr, size) realloc(ptr, size)
#endif
#ifndef pb_free
#define pb_free(ptr) free(ptr)
#endif
#endif
/* This is used to inform about need to regenerate .pb.h/.pb.c files. */
#define PB_PROTO_HEADER_VERSION 40
/* These macros are used to declare pb_field_t's in the constant array. */
/* Size of a structure member, in bytes. */
#define pb_membersize(st, m) (sizeof((st *)0)->m)
/* Number of entries in an array. */
#define pb_arraysize(st, m) (pb_membersize(st, m) / pb_membersize(st, m[0]))
/* Delta from start of one member to the start of another member. */
#define pb_delta(st, m1, m2) ((int)offsetof(st, m1) - (int)offsetof(st, m2))
/* Force expansion of macro value */
#define PB_EXPAND(x) x
/* Binding of a message field set into a specific structure */
#define PB_BIND(msgname, structname, width) \
const uint32_t structname##_field_info[] PB_PROGMEM = {msgname##_FIELDLIST(PB_GEN_FIELD_INFO_##width, structname) 0}; \
const pb_msgdesc_t *const structname##_submsg_info[] = {msgname##_FIELDLIST(PB_GEN_SUBMSG_INFO, structname) NULL}; \
const pb_msgdesc_t structname##_msg = { \
structname##_field_info, \
structname##_submsg_info, \
msgname##_DEFAULT, \
msgname##_CALLBACK, \
0 msgname##_FIELDLIST(PB_GEN_FIELD_COUNT, structname), \
0 msgname##_FIELDLIST(PB_GEN_REQ_FIELD_COUNT, structname), \
0 msgname##_FIELDLIST(PB_GEN_LARGEST_TAG, structname), \
}; \
msgname##_FIELDLIST(PB_GEN_FIELD_INFO_ASSERT_##width, structname)
#define PB_GEN_FIELD_COUNT(structname, atype, htype, ltype, fieldname, tag) +1
#define PB_GEN_REQ_FIELD_COUNT(structname, atype, htype, ltype, fieldname, tag) +(PB_HTYPE_##htype == PB_HTYPE_REQUIRED)
#define PB_GEN_LARGEST_TAG(structname, atype, htype, ltype, fieldname, tag) *0 + tag
/* X-macro for generating the entries in struct_field_info[] array. */
#define PB_GEN_FIELD_INFO_1(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_1(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_2(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_2(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_4(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_4(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_8(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_8(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_AUTO(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_AUTO2(PB_FIELDINFO_WIDTH_AUTO(_PB_ATYPE_##atype, _PB_HTYPE_##htype, _PB_LTYPE_##ltype), tag, \
PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_FIELDINFO_AUTO2(width, tag, type, data_offset, data_size, size_offset, array_size) \
PB_FIELDINFO_AUTO3(width, tag, type, data_offset, data_size, size_offset, array_size)
#define PB_FIELDINFO_AUTO3(width, tag, type, data_offset, data_size, size_offset, array_size) \
PB_FIELDINFO_##width(tag, type, data_offset, data_size, size_offset, array_size)
/* X-macro for generating asserts that entries fit in struct_field_info[] array.
* The structure of macros here must match the structure above in PB_GEN_FIELD_INFO_x(),
* but it is not easily reused because of how macro substitutions work. */
#define PB_GEN_FIELD_INFO_ASSERT_1(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_ASSERT_1(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_ASSERT_2(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_ASSERT_2(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_ASSERT_4(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_ASSERT_4(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_ASSERT_8(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_ASSERT_8(tag, PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_GEN_FIELD_INFO_ASSERT_AUTO(structname, atype, htype, ltype, fieldname, tag) \
PB_FIELDINFO_ASSERT_AUTO2(PB_FIELDINFO_WIDTH_AUTO(_PB_ATYPE_##atype, _PB_HTYPE_##htype, _PB_LTYPE_##ltype), tag, \
PB_ATYPE_##atype | PB_HTYPE_##htype | PB_LTYPE_MAP_##ltype, \
PB_DATA_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_DATA_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_SIZE_OFFSET_##atype(_PB_HTYPE_##htype, structname, fieldname), \
PB_ARRAY_SIZE_##atype(_PB_HTYPE_##htype, structname, fieldname))
#define PB_FIELDINFO_ASSERT_AUTO2(width, tag, type, data_offset, data_size, size_offset, array_size) \
PB_FIELDINFO_ASSERT_AUTO3(width, tag, type, data_offset, data_size, size_offset, array_size)
#define PB_FIELDINFO_ASSERT_AUTO3(width, tag, type, data_offset, data_size, size_offset, array_size) \
PB_FIELDINFO_ASSERT_##width(tag, type, data_offset, data_size, size_offset, array_size)
#define PB_DATA_OFFSET_STATIC(htype, structname, fieldname) PB_DO##htype(structname, fieldname)
#define PB_DATA_OFFSET_POINTER(htype, structname, fieldname) PB_DO##htype(structname, fieldname)
#define PB_DATA_OFFSET_CALLBACK(htype, structname, fieldname) PB_DO##htype(structname, fieldname)
#define PB_DO_PB_HTYPE_REQUIRED(structname, fieldname) offsetof(structname, fieldname)
#define PB_DO_PB_HTYPE_SINGULAR(structname, fieldname) offsetof(structname, fieldname)
#define PB_DO_PB_HTYPE_ONEOF(structname, fieldname) offsetof(structname, PB_ONEOF_NAME(FULL, fieldname))
#define PB_DO_PB_HTYPE_OPTIONAL(structname, fieldname) offsetof(structname, fieldname)
#define PB_DO_PB_HTYPE_REPEATED(structname, fieldname) offsetof(structname, fieldname)
#define PB_DO_PB_HTYPE_FIXARRAY(structname, fieldname) offsetof(structname, fieldname)
#define PB_SIZE_OFFSET_STATIC(htype, structname, fieldname) PB_SO##htype(structname, fieldname)
#define PB_SIZE_OFFSET_POINTER(htype, structname, fieldname) PB_SO_PTR##htype(structname, fieldname)
#define PB_SIZE_OFFSET_CALLBACK(htype, structname, fieldname) PB_SO_CB##htype(structname, fieldname)
#define PB_SO_PB_HTYPE_REQUIRED(structname, fieldname) 0
#define PB_SO_PB_HTYPE_SINGULAR(structname, fieldname) 0
#define PB_SO_PB_HTYPE_ONEOF(structname, fieldname) \
PB_SO_PB_HTYPE_ONEOF2(structname, PB_ONEOF_NAME(FULL, fieldname), PB_ONEOF_NAME(UNION, fieldname))
#define PB_SO_PB_HTYPE_ONEOF2(structname, fullname, unionname) PB_SO_PB_HTYPE_ONEOF3(structname, fullname, unionname)
#define PB_SO_PB_HTYPE_ONEOF3(structname, fullname, unionname) pb_delta(structname, fullname, which_##unionname)
#define PB_SO_PB_HTYPE_OPTIONAL(structname, fieldname) pb_delta(structname, fieldname, has_##fieldname)
#define PB_SO_PB_HTYPE_REPEATED(structname, fieldname) pb_delta(structname, fieldname, fieldname##_count)
#define PB_SO_PB_HTYPE_FIXARRAY(structname, fieldname) 0
#define PB_SO_PTR_PB_HTYPE_REQUIRED(structname, fieldname) 0
#define PB_SO_PTR_PB_HTYPE_SINGULAR(structname, fieldname) 0
#define PB_SO_PTR_PB_HTYPE_ONEOF(structname, fieldname) PB_SO_PB_HTYPE_ONEOF(structname, fieldname)
#define PB_SO_PTR_PB_HTYPE_OPTIONAL(structname, fieldname) 0
#define PB_SO_PTR_PB_HTYPE_REPEATED(structname, fieldname) PB_SO_PB_HTYPE_REPEATED(structname, fieldname)
#define PB_SO_PTR_PB_HTYPE_FIXARRAY(structname, fieldname) 0
#define PB_SO_CB_PB_HTYPE_REQUIRED(structname, fieldname) 0
#define PB_SO_CB_PB_HTYPE_SINGULAR(structname, fieldname) 0
#define PB_SO_CB_PB_HTYPE_ONEOF(structname, fieldname) PB_SO_PB_HTYPE_ONEOF(structname, fieldname)
#define PB_SO_CB_PB_HTYPE_OPTIONAL(structname, fieldname) 0
#define PB_SO_CB_PB_HTYPE_REPEATED(structname, fieldname) 0
#define PB_SO_CB_PB_HTYPE_FIXARRAY(structname, fieldname) 0
#define PB_ARRAY_SIZE_STATIC(htype, structname, fieldname) PB_AS##htype(structname, fieldname)
#define PB_ARRAY_SIZE_POINTER(htype, structname, fieldname) PB_AS_PTR##htype(structname, fieldname)
#define PB_ARRAY_SIZE_CALLBACK(htype, structname, fieldname) 1
#define PB_AS_PB_HTYPE_REQUIRED(structname, fieldname) 1
#define PB_AS_PB_HTYPE_SINGULAR(structname, fieldname) 1
#define PB_AS_PB_HTYPE_OPTIONAL(structname, fieldname) 1
#define PB_AS_PB_HTYPE_ONEOF(structname, fieldname) 1
#define PB_AS_PB_HTYPE_REPEATED(structname, fieldname) pb_arraysize(structname, fieldname)
#define PB_AS_PB_HTYPE_FIXARRAY(structname, fieldname) pb_arraysize(structname, fieldname)
#define PB_AS_PTR_PB_HTYPE_REQUIRED(structname, fieldname) 1
#define PB_AS_PTR_PB_HTYPE_SINGULAR(structname, fieldname) 1
#define PB_AS_PTR_PB_HTYPE_OPTIONAL(structname, fieldname) 1
#define PB_AS_PTR_PB_HTYPE_ONEOF(structname, fieldname) 1
#define PB_AS_PTR_PB_HTYPE_REPEATED(structname, fieldname) 1
#define PB_AS_PTR_PB_HTYPE_FIXARRAY(structname, fieldname) pb_arraysize(structname, fieldname[0])
#define PB_DATA_SIZE_STATIC(htype, structname, fieldname) PB_DS##htype(structname, fieldname)
#define PB_DATA_SIZE_POINTER(htype, structname, fieldname) PB_DS_PTR##htype(structname, fieldname)
#define PB_DATA_SIZE_CALLBACK(htype, structname, fieldname) PB_DS_CB##htype(structname, fieldname)
#define PB_DS_PB_HTYPE_REQUIRED(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_PB_HTYPE_SINGULAR(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_PB_HTYPE_OPTIONAL(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_PB_HTYPE_ONEOF(structname, fieldname) pb_membersize(structname, PB_ONEOF_NAME(FULL, fieldname))
#define PB_DS_PB_HTYPE_REPEATED(structname, fieldname) pb_membersize(structname, fieldname[0])
#define PB_DS_PB_HTYPE_FIXARRAY(structname, fieldname) pb_membersize(structname, fieldname[0])
#define PB_DS_PTR_PB_HTYPE_REQUIRED(structname, fieldname) pb_membersize(structname, fieldname[0])
#define PB_DS_PTR_PB_HTYPE_SINGULAR(structname, fieldname) pb_membersize(structname, fieldname[0])
#define PB_DS_PTR_PB_HTYPE_OPTIONAL(structname, fieldname) pb_membersize(structname, fieldname[0])
#define PB_DS_PTR_PB_HTYPE_ONEOF(structname, fieldname) pb_membersize(structname, PB_ONEOF_NAME(FULL, fieldname)[0])
#define PB_DS_PTR_PB_HTYPE_REPEATED(structname, fieldname) pb_membersize(structname, fieldname[0])
#define PB_DS_PTR_PB_HTYPE_FIXARRAY(structname, fieldname) pb_membersize(structname, fieldname[0][0])
#define PB_DS_CB_PB_HTYPE_REQUIRED(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_CB_PB_HTYPE_SINGULAR(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_CB_PB_HTYPE_OPTIONAL(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_CB_PB_HTYPE_ONEOF(structname, fieldname) pb_membersize(structname, PB_ONEOF_NAME(FULL, fieldname))
#define PB_DS_CB_PB_HTYPE_REPEATED(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_DS_CB_PB_HTYPE_FIXARRAY(structname, fieldname) pb_membersize(structname, fieldname)
#define PB_ONEOF_NAME(type, tuple) PB_EXPAND(PB_ONEOF_NAME_##type tuple)
#define PB_ONEOF_NAME_UNION(unionname, membername, fullname) unionname
#define PB_ONEOF_NAME_MEMBER(unionname, membername, fullname) membername
#define PB_ONEOF_NAME_FULL(unionname, membername, fullname) fullname
#define PB_GEN_SUBMSG_INFO(structname, atype, htype, ltype, fieldname, tag) \
PB_SUBMSG_INFO_##htype(_PB_LTYPE_##ltype, structname, fieldname)
#define PB_SUBMSG_INFO_REQUIRED(ltype, structname, fieldname) PB_SI##ltype(structname##_##fieldname##_MSGTYPE)
#define PB_SUBMSG_INFO_SINGULAR(ltype, structname, fieldname) PB_SI##ltype(structname##_##fieldname##_MSGTYPE)
#define PB_SUBMSG_INFO_OPTIONAL(ltype, structname, fieldname) PB_SI##ltype(structname##_##fieldname##_MSGTYPE)
#define PB_SUBMSG_INFO_ONEOF(ltype, structname, fieldname) \
PB_SUBMSG_INFO_ONEOF2(ltype, structname, PB_ONEOF_NAME(UNION, fieldname), PB_ONEOF_NAME(MEMBER, fieldname))
#define PB_SUBMSG_INFO_ONEOF2(ltype, structname, unionname, membername) \
PB_SUBMSG_INFO_ONEOF3(ltype, structname, unionname, membername)
#define PB_SUBMSG_INFO_ONEOF3(ltype, structname, unionname, membername) \
PB_SI##ltype(structname##_##unionname##_##membername##_MSGTYPE)
#define PB_SUBMSG_INFO_REPEATED(ltype, structname, fieldname) PB_SI##ltype(structname##_##fieldname##_MSGTYPE)
#define PB_SUBMSG_INFO_FIXARRAY(ltype, structname, fieldname) PB_SI##ltype(structname##_##fieldname##_MSGTYPE)
#define PB_SI_PB_LTYPE_BOOL(t)
#define PB_SI_PB_LTYPE_BYTES(t)
#define PB_SI_PB_LTYPE_DOUBLE(t)
#define PB_SI_PB_LTYPE_ENUM(t)
#define PB_SI_PB_LTYPE_UENUM(t)
#define PB_SI_PB_LTYPE_FIXED32(t)
#define PB_SI_PB_LTYPE_FIXED64(t)
#define PB_SI_PB_LTYPE_FLOAT(t)
#define PB_SI_PB_LTYPE_INT32(t)
#define PB_SI_PB_LTYPE_INT64(t)
#define PB_SI_PB_LTYPE_MESSAGE(t) PB_SUBMSG_DESCRIPTOR(t)
#define PB_SI_PB_LTYPE_MSG_W_CB(t) PB_SUBMSG_DESCRIPTOR(t)
#define PB_SI_PB_LTYPE_SFIXED32(t)
#define PB_SI_PB_LTYPE_SFIXED64(t)
#define PB_SI_PB_LTYPE_SINT32(t)
#define PB_SI_PB_LTYPE_SINT64(t)
#define PB_SI_PB_LTYPE_STRING(t)
#define PB_SI_PB_LTYPE_UINT32(t)
#define PB_SI_PB_LTYPE_UINT64(t)
#define PB_SI_PB_LTYPE_EXTENSION(t)
#define PB_SI_PB_LTYPE_FIXED_LENGTH_BYTES(t)
#define PB_SUBMSG_DESCRIPTOR(t) &(t##_msg),
/* The field descriptors use a variable width format, with width of either
* 1, 2, 4 or 8 of 32-bit words. The two lowest bytes of the first byte always
* encode the descriptor size, 6 lowest bits of field tag number, and 8 bits
* of the field type.
*
* Descriptor size is encoded as 0 = 1 word, 1 = 2 words, 2 = 4 words, 3 = 8 words.
*
* Formats, listed starting with the least significant bit of the first word.
* 1 word: [2-bit len] [6-bit tag] [8-bit type] [8-bit data_offset] [4-bit size_offset] [4-bit data_size]
*
* 2 words: [2-bit len] [6-bit tag] [8-bit type] [12-bit array_size] [4-bit size_offset]
* [16-bit data_offset] [12-bit data_size] [4-bit tag>>6]
*
* 4 words: [2-bit len] [6-bit tag] [8-bit type] [16-bit array_size]
* [8-bit size_offset] [24-bit tag>>6]
* [32-bit data_offset]
* [32-bit data_size]
*
* 8 words: [2-bit len] [6-bit tag] [8-bit type] [16-bit reserved]
* [8-bit size_offset] [24-bit tag>>6]
* [32-bit data_offset]
* [32-bit data_size]
* [32-bit array_size]
* [32-bit reserved]
* [32-bit reserved]
* [32-bit reserved]
*/
#define PB_FIELDINFO_1(tag, type, data_offset, data_size, size_offset, array_size) \
(0 | (((tag) << 2) & 0xFF) | ((type) << 8) | (((uint32_t)(data_offset)&0xFF) << 16) | \
(((uint32_t)(size_offset)&0x0F) << 24) | (((uint32_t)(data_size)&0x0F) << 28)),
#define PB_FIELDINFO_2(tag, type, data_offset, data_size, size_offset, array_size) \
(1 | (((tag) << 2) & 0xFF) | ((type) << 8) | (((uint32_t)(array_size)&0xFFF) << 16) | \
(((uint32_t)(size_offset)&0x0F) << 28)), \
(((uint32_t)(data_offset)&0xFFFF) | (((uint32_t)(data_size)&0xFFF) << 16) | (((uint32_t)(tag)&0x3c0) << 22)),
#define PB_FIELDINFO_4(tag, type, data_offset, data_size, size_offset, array_size) \
(2 | (((tag) << 2) & 0xFF) | ((type) << 8) | (((uint32_t)(array_size)&0xFFFF) << 16)), \
((uint32_t)(int_least8_t)(size_offset) | (((uint32_t)(tag) << 2) & 0xFFFFFF00)), (data_offset), (data_size),
#define PB_FIELDINFO_8(tag, type, data_offset, data_size, size_offset, array_size) \
(3 | (((tag) << 2) & 0xFF) | ((type) << 8)), \
((uint32_t)(int_least8_t)(size_offset) | (((uint32_t)(tag) << 2) & 0xFFFFFF00)), (data_offset), (data_size), \
(array_size), 0, 0, 0,
/* These assertions verify that the field information fits in the allocated space.
* The generator tries to automatically determine the correct width that can fit all
* data associated with a message. These asserts will fail only if there has been a
* problem in the automatic logic - this may be worth reporting as a bug. As a workaround,
* you can increase the descriptor width by defining PB_FIELDINFO_WIDTH or by setting
* descriptorsize option in .options file.
*/
#define PB_FITS(value, bits) ((uint32_t)(value) < ((uint32_t)1 << bits))
#define PB_FIELDINFO_ASSERT_1(tag, type, data_offset, data_size, size_offset, array_size) \
PB_STATIC_ASSERT(PB_FITS(tag, 6) && PB_FITS(data_offset, 8) && PB_FITS(size_offset, 4) && PB_FITS(data_size, 4) && \
PB_FITS(array_size, 1), \
FIELDINFO_DOES_NOT_FIT_width1_field##tag)
#define PB_FIELDINFO_ASSERT_2(tag, type, data_offset, data_size, size_offset, array_size) \
PB_STATIC_ASSERT(PB_FITS(tag, 10) && PB_FITS(data_offset, 16) && PB_FITS(size_offset, 4) && PB_FITS(data_size, 12) && \
PB_FITS(array_size, 12), \
FIELDINFO_DOES_NOT_FIT_width2_field##tag)
#ifndef PB_FIELD_32BIT
/* Maximum field sizes are still 16-bit if pb_size_t is 16-bit */
#define PB_FIELDINFO_ASSERT_4(tag, type, data_offset, data_size, size_offset, array_size) \
PB_STATIC_ASSERT(PB_FITS(tag, 16) && PB_FITS(data_offset, 16) && PB_FITS((int_least8_t)size_offset, 8) && \
PB_FITS(data_size, 16) && PB_FITS(array_size, 16), \
FIELDINFO_DOES_NOT_FIT_width4_field##tag)
#define PB_FIELDINFO_ASSERT_8(tag, type, data_offset, data_size, size_offset, array_size) \
PB_STATIC_ASSERT(PB_FITS(tag, 16) && PB_FITS(data_offset, 16) && PB_FITS((int_least8_t)size_offset, 8) && \
PB_FITS(data_size, 16) && PB_FITS(array_size, 16), \
FIELDINFO_DOES_NOT_FIT_width8_field##tag)
#else
/* Up to 32-bit fields supported.
* Note that the checks are against 31 bits to avoid compiler warnings about shift wider than type in the test.
* I expect that there is no reasonable use for >2GB messages with nanopb anyway.
*/
#define PB_FIELDINFO_ASSERT_4(tag, type, data_offset, data_size, size_offset, array_size) \
PB_STATIC_ASSERT(PB_FITS(tag, 30) && PB_FITS(data_offset, 31) && PB_FITS(size_offset, 8) && PB_FITS(data_size, 31) && \
PB_FITS(array_size, 16), \
FIELDINFO_DOES_NOT_FIT_width4_field##tag)
#define PB_FIELDINFO_ASSERT_8(tag, type, data_offset, data_size, size_offset, array_size) \
PB_STATIC_ASSERT(PB_FITS(tag, 30) && PB_FITS(data_offset, 31) && PB_FITS(size_offset, 8) && PB_FITS(data_size, 31) && \
PB_FITS(array_size, 31), \
FIELDINFO_DOES_NOT_FIT_width8_field##tag)
#endif
/* Automatic picking of FIELDINFO width:
* Uses width 1 when possible, otherwise resorts to width 2.
* This is used when PB_BIND() is called with "AUTO" as the argument.
* The generator will give explicit size argument when it knows that a message
* structure grows beyond 1-word format limits.
*/
#define PB_FIELDINFO_WIDTH_AUTO(atype, htype, ltype) PB_FI_WIDTH##atype(htype, ltype)
#define PB_FI_WIDTH_PB_ATYPE_STATIC(htype, ltype) PB_FI_WIDTH##htype(ltype)
#define PB_FI_WIDTH_PB_ATYPE_POINTER(htype, ltype) PB_FI_WIDTH##htype(ltype)
#define PB_FI_WIDTH_PB_ATYPE_CALLBACK(htype, ltype) 2
#define PB_FI_WIDTH_PB_HTYPE_REQUIRED(ltype) PB_FI_WIDTH##ltype
#define PB_FI_WIDTH_PB_HTYPE_SINGULAR(ltype) PB_FI_WIDTH##ltype
#define PB_FI_WIDTH_PB_HTYPE_OPTIONAL(ltype) PB_FI_WIDTH##ltype
#define PB_FI_WIDTH_PB_HTYPE_ONEOF(ltype) PB_FI_WIDTH##ltype
#define PB_FI_WIDTH_PB_HTYPE_REPEATED(ltype) 2
#define PB_FI_WIDTH_PB_HTYPE_FIXARRAY(ltype) 2
#define PB_FI_WIDTH_PB_LTYPE_BOOL 1
#define PB_FI_WIDTH_PB_LTYPE_BYTES 2
#define PB_FI_WIDTH_PB_LTYPE_DOUBLE 1
#define PB_FI_WIDTH_PB_LTYPE_ENUM 1
#define PB_FI_WIDTH_PB_LTYPE_UENUM 1
#define PB_FI_WIDTH_PB_LTYPE_FIXED32 1
#define PB_FI_WIDTH_PB_LTYPE_FIXED64 1
#define PB_FI_WIDTH_PB_LTYPE_FLOAT 1
#define PB_FI_WIDTH_PB_LTYPE_INT32 1
#define PB_FI_WIDTH_PB_LTYPE_INT64 1
#define PB_FI_WIDTH_PB_LTYPE_MESSAGE 2
#define PB_FI_WIDTH_PB_LTYPE_MSG_W_CB 2
#define PB_FI_WIDTH_PB_LTYPE_SFIXED32 1
#define PB_FI_WIDTH_PB_LTYPE_SFIXED64 1
#define PB_FI_WIDTH_PB_LTYPE_SINT32 1
#define PB_FI_WIDTH_PB_LTYPE_SINT64 1
#define PB_FI_WIDTH_PB_LTYPE_STRING 2
#define PB_FI_WIDTH_PB_LTYPE_UINT32 1
#define PB_FI_WIDTH_PB_LTYPE_UINT64 1
#define PB_FI_WIDTH_PB_LTYPE_EXTENSION 1
#define PB_FI_WIDTH_PB_LTYPE_FIXED_LENGTH_BYTES 2
/* The mapping from protobuf types to LTYPEs is done using these macros. */
#define PB_LTYPE_MAP_BOOL PB_LTYPE_BOOL
#define PB_LTYPE_MAP_BYTES PB_LTYPE_BYTES
#define PB_LTYPE_MAP_DOUBLE PB_LTYPE_FIXED64
#define PB_LTYPE_MAP_ENUM PB_LTYPE_VARINT
#define PB_LTYPE_MAP_UENUM PB_LTYPE_UVARINT
#define PB_LTYPE_MAP_FIXED32 PB_LTYPE_FIXED32
#define PB_LTYPE_MAP_FIXED64 PB_LTYPE_FIXED64
#define PB_LTYPE_MAP_FLOAT PB_LTYPE_FIXED32
#define PB_LTYPE_MAP_INT32 PB_LTYPE_VARINT
#define PB_LTYPE_MAP_INT64 PB_LTYPE_VARINT
#define PB_LTYPE_MAP_MESSAGE PB_LTYPE_SUBMESSAGE
#define PB_LTYPE_MAP_MSG_W_CB PB_LTYPE_SUBMSG_W_CB
#define PB_LTYPE_MAP_SFIXED32 PB_LTYPE_FIXED32
#define PB_LTYPE_MAP_SFIXED64 PB_LTYPE_FIXED64
#define PB_LTYPE_MAP_SINT32 PB_LTYPE_SVARINT
#define PB_LTYPE_MAP_SINT64 PB_LTYPE_SVARINT
#define PB_LTYPE_MAP_STRING PB_LTYPE_STRING
#define PB_LTYPE_MAP_UINT32 PB_LTYPE_UVARINT
#define PB_LTYPE_MAP_UINT64 PB_LTYPE_UVARINT
#define PB_LTYPE_MAP_EXTENSION PB_LTYPE_EXTENSION
#define PB_LTYPE_MAP_FIXED_LENGTH_BYTES PB_LTYPE_FIXED_LENGTH_BYTES
/* These macros are used for giving out error messages.
* They are mostly a debugging aid; the main error information
* is the true/false return value from functions.
* Some code space can be saved by disabling the error
* messages if not used.
*
* PB_SET_ERROR() sets the error message if none has been set yet.
* msg must be a constant string literal.
* PB_GET_ERROR() always returns a pointer to a string.
* PB_RETURN_ERROR() sets the error and returns false from current
* function.
*/
#ifdef PB_NO_ERRMSG
#define PB_SET_ERROR(stream, msg) PB_UNUSED(stream)
#define PB_GET_ERROR(stream) "(errmsg disabled)"
#else
#define PB_SET_ERROR(stream, msg) (stream->errmsg = (stream)->errmsg ? (stream)->errmsg : (msg))
#define PB_GET_ERROR(stream) ((stream)->errmsg ? (stream)->errmsg : "(none)")
#endif
#define PB_RETURN_ERROR(stream, msg) return PB_SET_ERROR(stream, msg), false
#ifdef __cplusplus
} /* extern "C" */
#endif
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define PB_CONSTEXPR constexpr
#else // __cplusplus >= 201103L
#define PB_CONSTEXPR
#endif // __cplusplus >= 201103L
#if __cplusplus >= 201703L
#define PB_INLINE_CONSTEXPR inline constexpr
#else // __cplusplus >= 201703L
#define PB_INLINE_CONSTEXPR PB_CONSTEXPR
#endif // __cplusplus >= 201703L
namespace nanopb
{
// Each type will be partially specialized by the generator.
template <typename GenMessageT> struct MessageDescriptor;
} // namespace nanopb
#endif /* __cplusplus */
#endif
-49
View File
@@ -1,49 +0,0 @@
/* pb_common.h: Common support functions for pb_encode.c and pb_decode.c.
* These functions are rarely needed by applications directly.
*/
#ifndef PB_COMMON_H_INCLUDED
#define PB_COMMON_H_INCLUDED
#include "pb.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Initialize the field iterator structure to beginning.
* Returns false if the message type is empty. */
bool pb_field_iter_begin(pb_field_iter_t *iter, const pb_msgdesc_t *desc, void *message);
/* Get a field iterator for extension field. */
bool pb_field_iter_begin_extension(pb_field_iter_t *iter, pb_extension_t *extension);
/* Same as pb_field_iter_begin(), but for const message pointer.
* Note that the pointers in pb_field_iter_t will be non-const but shouldn't
* be written to when using these functions. */
bool pb_field_iter_begin_const(pb_field_iter_t *iter, const pb_msgdesc_t *desc, const void *message);
bool pb_field_iter_begin_extension_const(pb_field_iter_t *iter, const pb_extension_t *extension);
/* Advance the iterator to the next field.
* Returns false when the iterator wraps back to the first field. */
bool pb_field_iter_next(pb_field_iter_t *iter);
/* Advance the iterator until it points at a field with the given tag.
* Returns false if no such field exists. */
bool pb_field_iter_find(pb_field_iter_t *iter, uint32_t tag);
/* Find a field with type PB_LTYPE_EXTENSION, or return false if not found.
* There can be only one extension range field per message. */
bool pb_field_iter_find_extension(pb_field_iter_t *iter);
#ifdef PB_VALIDATE_UTF8
/* Validate UTF-8 text string */
bool pb_validate_utf8(const char *s);
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif
-199
View File
@@ -1,199 +0,0 @@
/* pb_decode.h: Functions to decode protocol buffers. Depends on pb_decode.c.
* The main function is pb_decode. You also need an input stream, and the
* field descriptions created by nanopb_generator.py.
*/
#ifndef PB_DECODE_H_INCLUDED
#define PB_DECODE_H_INCLUDED
#include "pb.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Structure for defining custom input streams. You will need to provide
* a callback function to read the bytes from your storage, which can be
* for example a file or a network socket.
*
* The callback must conform to these rules:
*
* 1) Return false on IO errors. This will cause decoding to abort.
* 2) You can use state to store your own data (e.g. buffer pointer),
* and rely on pb_read to verify that no-body reads past bytes_left.
* 3) Your callback may be used with substreams, in which case bytes_left
* is different than from the main stream. Don't use bytes_left to compute
* any pointers.
*/
struct pb_istream_s
{
#ifdef PB_BUFFER_ONLY
/* Callback pointer is not used in buffer-only configuration.
* Having an int pointer here allows binary compatibility but
* gives an error if someone tries to assign callback function.
*/
int *callback;
#else
bool (*callback)(pb_istream_t *stream, pb_byte_t *buf, size_t count);
#endif
void *state; /* Free field for use by callback implementation */
size_t bytes_left;
#ifndef PB_NO_ERRMSG
const char *errmsg;
#endif
};
#ifndef PB_NO_ERRMSG
#define PB_ISTREAM_EMPTY {0,0,0,0}
#else
#define PB_ISTREAM_EMPTY {0,0,0}
#endif
/***************************
* Main decoding functions *
***************************/
/* Decode a single protocol buffers message from input stream into a C structure.
* Returns true on success, false on any failure.
* The actual struct pointed to by dest must match the description in fields.
* Callback fields of the destination structure must be initialized by caller.
* All other fields will be initialized by this function.
*
* Example usage:
* MyMessage msg = {};
* uint8_t buffer[64];
* pb_istream_t stream;
*
* // ... read some data into buffer ...
*
* stream = pb_istream_from_buffer(buffer, count);
* pb_decode(&stream, MyMessage_fields, &msg);
*/
bool pb_decode(pb_istream_t *stream, const pb_msgdesc_t *fields, void *dest_struct);
/* Extended version of pb_decode, with several options to control
* the decoding process:
*
* PB_DECODE_NOINIT: Do not initialize the fields to default values.
* This is slightly faster if you do not need the default
* values and instead initialize the structure to 0 using
* e.g. memset(). This can also be used for merging two
* messages, i.e. combine already existing data with new
* values.
*
* PB_DECODE_DELIMITED: Input message starts with the message size as varint.
* Corresponds to parseDelimitedFrom() in Google's
* protobuf API.
*
* PB_DECODE_NULLTERMINATED: Stop reading when field tag is read as 0. This allows
* reading null terminated messages.
* NOTE: Until nanopb-0.4.0, pb_decode() also allows
* null-termination. This behaviour is not supported in
* most other protobuf implementations, so PB_DECODE_DELIMITED
* is a better option for compatibility.
*
* Multiple flags can be combined with bitwise or (| operator)
*/
#define PB_DECODE_NOINIT 0x01U
#define PB_DECODE_DELIMITED 0x02U
#define PB_DECODE_NULLTERMINATED 0x04U
bool pb_decode_ex(pb_istream_t *stream, const pb_msgdesc_t *fields, void *dest_struct, unsigned int flags);
/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define pb_decode_noinit(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_NOINIT)
#define pb_decode_delimited(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_DELIMITED)
#define pb_decode_delimited_noinit(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_DELIMITED | PB_DECODE_NOINIT)
#define pb_decode_nullterminated(s,f,d) pb_decode_ex(s,f,d, PB_DECODE_NULLTERMINATED)
#ifdef PB_ENABLE_MALLOC
/* Release any allocated pointer fields. If you use dynamic allocation, you should
* call this for any successfully decoded message when you are done with it. If
* pb_decode() returns with an error, the message is already released.
*/
void pb_release(const pb_msgdesc_t *fields, void *dest_struct);
#else
/* Allocation is not supported, so release is no-op */
#define pb_release(fields, dest_struct) PB_UNUSED(fields); PB_UNUSED(dest_struct);
#endif
/**************************************
* Functions for manipulating streams *
**************************************/
/* Create an input stream for reading from a memory buffer.
*
* msglen should be the actual length of the message, not the full size of
* allocated buffer.
*
* Alternatively, you can use a custom stream that reads directly from e.g.
* a file or a network socket.
*/
pb_istream_t pb_istream_from_buffer(const pb_byte_t *buf, size_t msglen);
/* Function to read from a pb_istream_t. You can use this if you need to
* read some custom header data, or to read data in field callbacks.
*/
bool pb_read(pb_istream_t *stream, pb_byte_t *buf, size_t count);
/************************************************
* Helper functions for writing field callbacks *
************************************************/
/* Decode the tag for the next field in the stream. Gives the wire type and
* field tag. At end of the message, returns false and sets eof to true. */
bool pb_decode_tag(pb_istream_t *stream, pb_wire_type_t *wire_type, uint32_t *tag, bool *eof);
/* Skip the field payload data, given the wire type. */
bool pb_skip_field(pb_istream_t *stream, pb_wire_type_t wire_type);
/* Decode an integer in the varint format. This works for enum, int32,
* int64, uint32 and uint64 field types. */
#ifndef PB_WITHOUT_64BIT
bool pb_decode_varint(pb_istream_t *stream, uint64_t *dest);
#else
#define pb_decode_varint pb_decode_varint32
#endif
/* Decode an integer in the varint format. This works for enum, int32,
* and uint32 field types. */
bool pb_decode_varint32(pb_istream_t *stream, uint32_t *dest);
/* Decode a bool value in varint format. */
bool pb_decode_bool(pb_istream_t *stream, bool *dest);
/* Decode an integer in the zig-zagged svarint format. This works for sint32
* and sint64. */
#ifndef PB_WITHOUT_64BIT
bool pb_decode_svarint(pb_istream_t *stream, int64_t *dest);
#else
bool pb_decode_svarint(pb_istream_t *stream, int32_t *dest);
#endif
/* Decode a fixed32, sfixed32 or float value. You need to pass a pointer to
* a 4-byte wide C variable. */
bool pb_decode_fixed32(pb_istream_t *stream, void *dest);
#ifndef PB_WITHOUT_64BIT
/* Decode a fixed64, sfixed64 or double value. You need to pass a pointer to
* a 8-byte wide C variable. */
bool pb_decode_fixed64(pb_istream_t *stream, void *dest);
#endif
#ifdef PB_CONVERT_DOUBLE_FLOAT
/* Decode a double value into float variable. */
bool pb_decode_double_as_float(pb_istream_t *stream, float *dest);
#endif
/* Make a limited-length substream for reading a PB_WT_STRING field. */
bool pb_make_string_substream(pb_istream_t *stream, pb_istream_t *substream);
bool pb_close_string_substream(pb_istream_t *stream, pb_istream_t *substream);
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif
-185
View File
@@ -1,185 +0,0 @@
/* pb_encode.h: Functions to encode protocol buffers. Depends on pb_encode.c.
* The main function is pb_encode. You also need an output stream, and the
* field descriptions created by nanopb_generator.py.
*/
#ifndef PB_ENCODE_H_INCLUDED
#define PB_ENCODE_H_INCLUDED
#include "pb.h"
#ifdef __cplusplus
extern "C" {
#endif
/* Structure for defining custom output streams. You will need to provide
* a callback function to write the bytes to your storage, which can be
* for example a file or a network socket.
*
* The callback must conform to these rules:
*
* 1) Return false on IO errors. This will cause encoding to abort.
* 2) You can use state to store your own data (e.g. buffer pointer).
* 3) pb_write will update bytes_written after your callback runs.
* 4) Substreams will modify max_size and bytes_written. Don't use them
* to calculate any pointers.
*/
struct pb_ostream_s
{
#ifdef PB_BUFFER_ONLY
/* Callback pointer is not used in buffer-only configuration.
* Having an int pointer here allows binary compatibility but
* gives an error if someone tries to assign callback function.
* Also, NULL pointer marks a 'sizing stream' that does not
* write anything.
*/
int *callback;
#else
bool (*callback)(pb_ostream_t *stream, const pb_byte_t *buf, size_t count);
#endif
void *state; /* Free field for use by callback implementation. */
size_t max_size; /* Limit number of output bytes written (or use SIZE_MAX). */
size_t bytes_written; /* Number of bytes written so far. */
#ifndef PB_NO_ERRMSG
const char *errmsg;
#endif
};
/***************************
* Main encoding functions *
***************************/
/* Encode a single protocol buffers message from C structure into a stream.
* Returns true on success, false on any failure.
* The actual struct pointed to by src_struct must match the description in fields.
* All required fields in the struct are assumed to have been filled in.
*
* Example usage:
* MyMessage msg = {};
* uint8_t buffer[64];
* pb_ostream_t stream;
*
* msg.field1 = 42;
* stream = pb_ostream_from_buffer(buffer, sizeof(buffer));
* pb_encode(&stream, MyMessage_fields, &msg);
*/
bool pb_encode(pb_ostream_t *stream, const pb_msgdesc_t *fields, const void *src_struct);
/* Extended version of pb_encode, with several options to control the
* encoding process:
*
* PB_ENCODE_DELIMITED: Prepend the length of message as a varint.
* Corresponds to writeDelimitedTo() in Google's
* protobuf API.
*
* PB_ENCODE_NULLTERMINATED: Append a null byte to the message for termination.
* NOTE: This behaviour is not supported in most other
* protobuf implementations, so PB_ENCODE_DELIMITED
* is a better option for compatibility.
*/
#define PB_ENCODE_DELIMITED 0x02U
#define PB_ENCODE_NULLTERMINATED 0x04U
bool pb_encode_ex(pb_ostream_t *stream, const pb_msgdesc_t *fields, const void *src_struct, unsigned int flags);
/* Defines for backwards compatibility with code written before nanopb-0.4.0 */
#define pb_encode_delimited(s,f,d) pb_encode_ex(s,f,d, PB_ENCODE_DELIMITED)
#define pb_encode_nullterminated(s,f,d) pb_encode_ex(s,f,d, PB_ENCODE_NULLTERMINATED)
/* Encode the message to get the size of the encoded data, but do not store
* the data. */
bool pb_get_encoded_size(size_t *size, const pb_msgdesc_t *fields, const void *src_struct);
/**************************************
* Functions for manipulating streams *
**************************************/
/* Create an output stream for writing into a memory buffer.
* The number of bytes written can be found in stream.bytes_written after
* encoding the message.
*
* Alternatively, you can use a custom stream that writes directly to e.g.
* a file or a network socket.
*/
pb_ostream_t pb_ostream_from_buffer(pb_byte_t *buf, size_t bufsize);
/* Pseudo-stream for measuring the size of a message without actually storing
* the encoded data.
*
* Example usage:
* MyMessage msg = {};
* pb_ostream_t stream = PB_OSTREAM_SIZING;
* pb_encode(&stream, MyMessage_fields, &msg);
* printf("Message size is %d\n", stream.bytes_written);
*/
#ifndef PB_NO_ERRMSG
#define PB_OSTREAM_SIZING {0,0,0,0,0}
#else
#define PB_OSTREAM_SIZING {0,0,0,0}
#endif
/* Function to write into a pb_ostream_t stream. You can use this if you need
* to append or prepend some custom headers to the message.
*/
bool pb_write(pb_ostream_t *stream, const pb_byte_t *buf, size_t count);
/************************************************
* Helper functions for writing field callbacks *
************************************************/
/* Encode field header based on type and field number defined in the field
* structure. Call this from the callback before writing out field contents. */
bool pb_encode_tag_for_field(pb_ostream_t *stream, const pb_field_iter_t *field);
/* Encode field header by manually specifying wire type. You need to use this
* if you want to write out packed arrays from a callback field. */
bool pb_encode_tag(pb_ostream_t *stream, pb_wire_type_t wiretype, uint32_t field_number);
/* Encode an integer in the varint format.
* This works for bool, enum, int32, int64, uint32 and uint64 field types. */
#ifndef PB_WITHOUT_64BIT
bool pb_encode_varint(pb_ostream_t *stream, uint64_t value);
#else
bool pb_encode_varint(pb_ostream_t *stream, uint32_t value);
#endif
/* Encode an integer in the zig-zagged svarint format.
* This works for sint32 and sint64. */
#ifndef PB_WITHOUT_64BIT
bool pb_encode_svarint(pb_ostream_t *stream, int64_t value);
#else
bool pb_encode_svarint(pb_ostream_t *stream, int32_t value);
#endif
/* Encode a string or bytes type field. For strings, pass strlen(s) as size. */
bool pb_encode_string(pb_ostream_t *stream, const pb_byte_t *buffer, size_t size);
/* Encode a fixed32, sfixed32 or float value.
* You need to pass a pointer to a 4-byte wide C variable. */
bool pb_encode_fixed32(pb_ostream_t *stream, const void *value);
#ifndef PB_WITHOUT_64BIT
/* Encode a fixed64, sfixed64 or double value.
* You need to pass a pointer to a 8-byte wide C variable. */
bool pb_encode_fixed64(pb_ostream_t *stream, const void *value);
#endif
#ifdef PB_CONVERT_DOUBLE_FLOAT
/* Encode a float value so that it appears like a double in the encoded
* message. */
bool pb_encode_float_as_double(pb_ostream_t *stream, float value);
#endif
/* Encode a submessage field.
* You need to pass the pb_field_t array and pointer to struct, just like
* with pb_encode(). This internally encodes the submessage twice, first to
* calculate message size and then to actually write it out.
*/
bool pb_encode_submessage(pb_ostream_t *stream, const pb_msgdesc_t *fields, const void *src_struct);
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif
-388
View File
@@ -1,388 +0,0 @@
/* pb_common.c: Common support functions for pb_encode.c and pb_decode.c.
*
* 2014 Petteri Aimonen <jpa@kapsi.fi>
*/
#include "pb_common.h"
static bool load_descriptor_values(pb_field_iter_t *iter)
{
uint32_t word0;
uint32_t data_offset;
int_least8_t size_offset;
if (iter->index >= iter->descriptor->field_count)
return false;
word0 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index]);
iter->type = (pb_type_t)((word0 >> 8) & 0xFF);
switch(word0 & 3)
{
case 0: {
/* 1-word format */
iter->array_size = 1;
iter->tag = (pb_size_t)((word0 >> 2) & 0x3F);
size_offset = (int_least8_t)((word0 >> 24) & 0x0F);
data_offset = (word0 >> 16) & 0xFF;
iter->data_size = (pb_size_t)((word0 >> 28) & 0x0F);
break;
}
case 1: {
/* 2-word format */
uint32_t word1 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 1]);
iter->array_size = (pb_size_t)((word0 >> 16) & 0x0FFF);
iter->tag = (pb_size_t)(((word0 >> 2) & 0x3F) | ((word1 >> 28) << 6));
size_offset = (int_least8_t)((word0 >> 28) & 0x0F);
data_offset = word1 & 0xFFFF;
iter->data_size = (pb_size_t)((word1 >> 16) & 0x0FFF);
break;
}
case 2: {
/* 4-word format */
uint32_t word1 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 1]);
uint32_t word2 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 2]);
uint32_t word3 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 3]);
iter->array_size = (pb_size_t)(word0 >> 16);
iter->tag = (pb_size_t)(((word0 >> 2) & 0x3F) | ((word1 >> 8) << 6));
size_offset = (int_least8_t)(word1 & 0xFF);
data_offset = word2;
iter->data_size = (pb_size_t)word3;
break;
}
default: {
/* 8-word format */
uint32_t word1 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 1]);
uint32_t word2 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 2]);
uint32_t word3 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 3]);
uint32_t word4 = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index + 4]);
iter->array_size = (pb_size_t)word4;
iter->tag = (pb_size_t)(((word0 >> 2) & 0x3F) | ((word1 >> 8) << 6));
size_offset = (int_least8_t)(word1 & 0xFF);
data_offset = word2;
iter->data_size = (pb_size_t)word3;
break;
}
}
if (!iter->message)
{
/* Avoid doing arithmetic on null pointers, it is undefined */
iter->pField = NULL;
iter->pSize = NULL;
}
else
{
iter->pField = (char*)iter->message + data_offset;
if (size_offset)
{
iter->pSize = (char*)iter->pField - size_offset;
}
else if (PB_HTYPE(iter->type) == PB_HTYPE_REPEATED &&
(PB_ATYPE(iter->type) == PB_ATYPE_STATIC ||
PB_ATYPE(iter->type) == PB_ATYPE_POINTER))
{
/* Fixed count array */
iter->pSize = &iter->array_size;
}
else
{
iter->pSize = NULL;
}
if (PB_ATYPE(iter->type) == PB_ATYPE_POINTER && iter->pField != NULL)
{
iter->pData = *(void**)iter->pField;
}
else
{
iter->pData = iter->pField;
}
}
if (PB_LTYPE_IS_SUBMSG(iter->type))
{
iter->submsg_desc = iter->descriptor->submsg_info[iter->submessage_index];
}
else
{
iter->submsg_desc = NULL;
}
return true;
}
static void advance_iterator(pb_field_iter_t *iter)
{
iter->index++;
if (iter->index >= iter->descriptor->field_count)
{
/* Restart */
iter->index = 0;
iter->field_info_index = 0;
iter->submessage_index = 0;
iter->required_field_index = 0;
}
else
{
/* Increment indexes based on previous field type.
* All field info formats have the following fields:
* - lowest 2 bits tell the amount of words in the descriptor (2^n words)
* - bits 2..7 give the lowest bits of tag number.
* - bits 8..15 give the field type.
*/
uint32_t prev_descriptor = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index]);
pb_type_t prev_type = (prev_descriptor >> 8) & 0xFF;
pb_size_t descriptor_len = (pb_size_t)(1 << (prev_descriptor & 3));
/* Add to fields.
* The cast to pb_size_t is needed to avoid -Wconversion warning.
* Because the data is is constants from generator, there is no danger of overflow.
*/
iter->field_info_index = (pb_size_t)(iter->field_info_index + descriptor_len);
iter->required_field_index = (pb_size_t)(iter->required_field_index + (PB_HTYPE(prev_type) == PB_HTYPE_REQUIRED));
iter->submessage_index = (pb_size_t)(iter->submessage_index + PB_LTYPE_IS_SUBMSG(prev_type));
}
}
bool pb_field_iter_begin(pb_field_iter_t *iter, const pb_msgdesc_t *desc, void *message)
{
memset(iter, 0, sizeof(*iter));
iter->descriptor = desc;
iter->message = message;
return load_descriptor_values(iter);
}
bool pb_field_iter_begin_extension(pb_field_iter_t *iter, pb_extension_t *extension)
{
const pb_msgdesc_t *msg = (const pb_msgdesc_t*)extension->type->arg;
bool status;
uint32_t word0 = PB_PROGMEM_READU32(msg->field_info[0]);
if (PB_ATYPE(word0 >> 8) == PB_ATYPE_POINTER)
{
/* For pointer extensions, the pointer is stored directly
* in the extension structure. This avoids having an extra
* indirection. */
status = pb_field_iter_begin(iter, msg, &extension->dest);
}
else
{
status = pb_field_iter_begin(iter, msg, extension->dest);
}
iter->pSize = &extension->found;
return status;
}
bool pb_field_iter_next(pb_field_iter_t *iter)
{
advance_iterator(iter);
(void)load_descriptor_values(iter);
return iter->index != 0;
}
bool pb_field_iter_find(pb_field_iter_t *iter, uint32_t tag)
{
if (iter->tag == tag)
{
return true; /* Nothing to do, correct field already. */
}
else if (tag > iter->descriptor->largest_tag)
{
return false;
}
else
{
pb_size_t start = iter->index;
uint32_t fieldinfo;
if (tag < iter->tag)
{
/* Fields are in tag number order, so we know that tag is between
* 0 and our start position. Setting index to end forces
* advance_iterator() call below to restart from beginning. */
iter->index = iter->descriptor->field_count;
}
do
{
/* Advance iterator but don't load values yet */
advance_iterator(iter);
/* Do fast check for tag number match */
fieldinfo = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index]);
if (((fieldinfo >> 2) & 0x3F) == (tag & 0x3F))
{
/* Good candidate, check further */
(void)load_descriptor_values(iter);
if (iter->tag == tag &&
PB_LTYPE(iter->type) != PB_LTYPE_EXTENSION)
{
/* Found it */
return true;
}
}
} while (iter->index != start);
/* Searched all the way back to start, and found nothing. */
(void)load_descriptor_values(iter);
return false;
}
}
bool pb_field_iter_find_extension(pb_field_iter_t *iter)
{
if (PB_LTYPE(iter->type) == PB_LTYPE_EXTENSION)
{
return true;
}
else
{
pb_size_t start = iter->index;
uint32_t fieldinfo;
do
{
/* Advance iterator but don't load values yet */
advance_iterator(iter);
/* Do fast check for field type */
fieldinfo = PB_PROGMEM_READU32(iter->descriptor->field_info[iter->field_info_index]);
if (PB_LTYPE((fieldinfo >> 8) & 0xFF) == PB_LTYPE_EXTENSION)
{
return load_descriptor_values(iter);
}
} while (iter->index != start);
/* Searched all the way back to start, and found nothing. */
(void)load_descriptor_values(iter);
return false;
}
}
static void *pb_const_cast(const void *p)
{
/* Note: this casts away const, in order to use the common field iterator
* logic for both encoding and decoding. The cast is done using union
* to avoid spurious compiler warnings. */
union {
void *p1;
const void *p2;
} t;
t.p2 = p;
return t.p1;
}
bool pb_field_iter_begin_const(pb_field_iter_t *iter, const pb_msgdesc_t *desc, const void *message)
{
return pb_field_iter_begin(iter, desc, pb_const_cast(message));
}
bool pb_field_iter_begin_extension_const(pb_field_iter_t *iter, const pb_extension_t *extension)
{
return pb_field_iter_begin_extension(iter, (pb_extension_t*)pb_const_cast(extension));
}
bool pb_default_field_callback(pb_istream_t *istream, pb_ostream_t *ostream, const pb_field_t *field)
{
if (field->data_size == sizeof(pb_callback_t))
{
pb_callback_t *pCallback = (pb_callback_t*)field->pData;
if (pCallback != NULL)
{
if (istream != NULL && pCallback->funcs.decode != NULL)
{
return pCallback->funcs.decode(istream, field, &pCallback->arg);
}
if (ostream != NULL && pCallback->funcs.encode != NULL)
{
return pCallback->funcs.encode(ostream, field, &pCallback->arg);
}
}
}
return true; /* Success, but didn't do anything */
}
#ifdef PB_VALIDATE_UTF8
/* This function checks whether a string is valid UTF-8 text.
*
* Algorithm is adapted from https://www.cl.cam.ac.uk/~mgk25/ucs/utf8_check.c
* Original copyright: Markus Kuhn <http://www.cl.cam.ac.uk/~mgk25/> 2005-03-30
* Licensed under "Short code license", which allows use under MIT license or
* any compatible with it.
*/
bool pb_validate_utf8(const char *str)
{
const pb_byte_t *s = (const pb_byte_t*)str;
while (*s)
{
if (*s < 0x80)
{
/* 0xxxxxxx */
s++;
}
else if ((s[0] & 0xe0) == 0xc0)
{
/* 110XXXXx 10xxxxxx */
if ((s[1] & 0xc0) != 0x80 ||
(s[0] & 0xfe) == 0xc0) /* overlong? */
return false;
else
s += 2;
}
else if ((s[0] & 0xf0) == 0xe0)
{
/* 1110XXXX 10Xxxxxx 10xxxxxx */
if ((s[1] & 0xc0) != 0x80 ||
(s[2] & 0xc0) != 0x80 ||
(s[0] == 0xe0 && (s[1] & 0xe0) == 0x80) || /* overlong? */
(s[0] == 0xed && (s[1] & 0xe0) == 0xa0) || /* surrogate? */
(s[0] == 0xef && s[1] == 0xbf &&
(s[2] & 0xfe) == 0xbe)) /* U+FFFE or U+FFFF? */
return false;
else
s += 3;
}
else if ((s[0] & 0xf8) == 0xf0)
{
/* 11110XXX 10XXxxxx 10xxxxxx 10xxxxxx */
if ((s[1] & 0xc0) != 0x80 ||
(s[2] & 0xc0) != 0x80 ||
(s[3] & 0xc0) != 0x80 ||
(s[0] == 0xf0 && (s[1] & 0xf0) == 0x80) || /* overlong? */
(s[0] == 0xf4 && s[1] > 0x8f) || s[0] > 0xf4) /* > U+10FFFF? */
return false;
else
s += 4;
}
else
{
return false;
}
}
return true;
}
#endif
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More