From 7d8fa9743aa9cb90210551ac5c6f398706662273 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 13:59:56 -0700 Subject: [PATCH 01/41] update bluetooth page --- docs/configuration/device-config/device.mdx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/device.mdx b/docs/configuration/device-config/device.mdx index 5d7b91c9..feb94db7 100644 --- a/docs/configuration/device-config/device.mdx +++ b/docs/configuration/device-config/device.mdx @@ -50,7 +50,11 @@ values={[ :::info -Device config is not available for Android. +Device Config is available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > Device Config** + ::: From 5ab852796a91de53375b3e8f8844ed223da3a97d Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:00:38 -0700 Subject: [PATCH 02/41] update bluetooth page --- docs/configuration/device-config/bluetooth.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configuration/device-config/bluetooth.mdx b/docs/configuration/device-config/bluetooth.mdx index 04f5d7b9..384da701 100644 --- a/docs/configuration/device-config/bluetooth.mdx +++ b/docs/configuration/device-config/bluetooth.mdx @@ -57,7 +57,7 @@ values={[ All Bluetooth config options are available for Android. 1. Open the Meshtastic App -2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config** +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > Bluetooth Config** ::: From 7ee80cbdd52f23fc96629e6e9cf36626d83ba41a Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:01:17 -0700 Subject: [PATCH 03/41] update device.mdx --- docs/configuration/device-config/device.mdx | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/configuration/device-config/device.mdx b/docs/configuration/device-config/device.mdx index feb94db7..8c9f26c0 100644 --- a/docs/configuration/device-config/device.mdx +++ b/docs/configuration/device-config/device.mdx @@ -50,6 +50,7 @@ values={[ :::info + Device Config is available for Android. 1. Open the Meshtastic App From 0204e896962d3aea6d9aee57b8e296475d99c6fd Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:03:07 -0700 Subject: [PATCH 04/41] update display.mdx --- docs/configuration/device-config/display.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/display.mdx b/docs/configuration/device-config/display.mdx index 87d4aafa..4d3512ad 100644 --- a/docs/configuration/device-config/display.mdx +++ b/docs/configuration/device-config/display.mdx @@ -67,7 +67,12 @@ values={[ :::info -Display config is not available for Android. + +Display Config is available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > Display Config** + ::: From df0ee628cc58d3ac4d187ad55f6e378e72fde685 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:07:48 -0700 Subject: [PATCH 05/41] update lora.mdx --- docs/configuration/device-config/lora.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/lora.mdx b/docs/configuration/device-config/lora.mdx index c1209454..bbb7a5c2 100644 --- a/docs/configuration/device-config/lora.mdx +++ b/docs/configuration/device-config/lora.mdx @@ -82,7 +82,12 @@ values={[ :::info -Region and Modem Preset can be configured on Android. + +LoRa Config options such as Region, Modem Preset, and Hop Limit can be configured on Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > LoRa Config** + ::: From a12f46c2e6bc9beb80a0087ec8d169993b90e2a6 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:09:37 -0700 Subject: [PATCH 06/41] update network.mdx --- docs/configuration/device-config/network.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/network.mdx b/docs/configuration/device-config/network.mdx index d90caa60..68566f9f 100644 --- a/docs/configuration/device-config/network.mdx +++ b/docs/configuration/device-config/network.mdx @@ -77,7 +77,12 @@ values={[ :::info -Network config is not available for Android. + +Network Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > Network Config** + ::: From 1574cf7419e546b97d164fa78578858cb49c9809 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:12:04 -0700 Subject: [PATCH 07/41] update position.mdx --- docs/configuration/device-config/position.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/position.mdx b/docs/configuration/device-config/position.mdx index 1f474cb5..01544690 100644 --- a/docs/configuration/device-config/position.mdx +++ b/docs/configuration/device-config/position.mdx @@ -89,7 +89,12 @@ values={[ :::info -Position config is not available for Android. + +Position Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > Position Config** + ::: From 31c6e3ac91962cfdbabbb362e6b2e36c8603b611 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:13:26 -0700 Subject: [PATCH 08/41] update power.mdx --- docs/configuration/device-config/power.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/power.mdx b/docs/configuration/device-config/power.mdx index cda97b17..dfbaf642 100644 --- a/docs/configuration/device-config/power.mdx +++ b/docs/configuration/device-config/power.mdx @@ -80,7 +80,12 @@ values={[ :::info -Light Sleep Interval and Wait Bluetooth Interval are available under advanced settings for Android. + +Power Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > Power Config** + ::: From 8c7fe4284051ff6e7e5d4fd8e74f9a3f12b194df Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:15:11 -0700 Subject: [PATCH 09/41] update user.mdx --- docs/configuration/device-config/user.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/device-config/user.mdx b/docs/configuration/device-config/user.mdx index a80ec458..469b19f1 100644 --- a/docs/configuration/device-config/user.mdx +++ b/docs/configuration/device-config/user.mdx @@ -51,7 +51,12 @@ values={[ :::info -`LongName` can be edited on Android. + +User Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Device Settings > User Config** + ::: From 93df7a3b0db75a8ae3ed508644a0c5a726469666 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:18:54 -0700 Subject: [PATCH 10/41] update channels.mdx --- docs/configuration/device-config/channels.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configuration/device-config/channels.mdx b/docs/configuration/device-config/channels.mdx index b30b2ecc..da72f43d 100644 --- a/docs/configuration/device-config/channels.mdx +++ b/docs/configuration/device-config/channels.mdx @@ -111,7 +111,7 @@ values={[ :::info -Limited Channel config options are available on android. QR code scanning is available. +Limited Channel Config options are available on Android. QR code scanning is available. ::: From 165c74ad32a7df53d32c40342378d7a30dbeee02 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:23:40 -0700 Subject: [PATCH 11/41] update audio.mdx --- docs/configuration/module-config/audio.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/audio.mdx b/docs/configuration/module-config/audio.mdx index dd5f546c..f77cbbc4 100644 --- a/docs/configuration/module-config/audio.mdx +++ b/docs/configuration/module-config/audio.mdx @@ -59,7 +59,12 @@ values={[ :::info -Audio module config is not available for Android. + +Audio Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > Audio Config** + ::: From ba6f1cec6be0ab3533460a3f38c66b2b261d1cf7 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:26:06 -0700 Subject: [PATCH 12/41] update canned-message.mdx --- docs/configuration/module-config/canned-message.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/canned-message.mdx b/docs/configuration/module-config/canned-message.mdx index 52537a83..17c72edf 100644 --- a/docs/configuration/module-config/canned-message.mdx +++ b/docs/configuration/module-config/canned-message.mdx @@ -87,7 +87,12 @@ values={[ :::info -Canned Message module config is not available for Android. + +Canned Message Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > Canned Message Config** + ::: From 9327e0b8fc33db043190d4be4cfe59c9ca27d334 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:28:19 -0700 Subject: [PATCH 13/41] update external-notification.mdx --- docs/configuration/module-config/external-notification.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/external-notification.mdx b/docs/configuration/module-config/external-notification.mdx index 293992b7..1f2f4cba 100644 --- a/docs/configuration/module-config/external-notification.mdx +++ b/docs/configuration/module-config/external-notification.mdx @@ -57,7 +57,12 @@ values={[ :::info -External notification module config is not available for Android. + +External Notification Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > External Notification Config** + ::: From ccaf4eacffcb108e40ce0ec792a3c448ac00d8d8 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:30:08 -0700 Subject: [PATCH 14/41] update mqtt.mdx --- docs/configuration/module-config/mqtt.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/mqtt.mdx b/docs/configuration/module-config/mqtt.mdx index 3670fe9a..c4f64841 100644 --- a/docs/configuration/module-config/mqtt.mdx +++ b/docs/configuration/module-config/mqtt.mdx @@ -55,7 +55,12 @@ values={[ :::info -MQTT module config is not available for Android. + +MQTT Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > MQTT Config** + ::: From 165234aa63e62f3eedac17ce091561dfee855f99 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:31:33 -0700 Subject: [PATCH 15/41] update range-test.mdx --- docs/configuration/module-config/range-test.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/range-test.mdx b/docs/configuration/module-config/range-test.mdx index f2d1b117..a7beac91 100644 --- a/docs/configuration/module-config/range-test.mdx +++ b/docs/configuration/module-config/range-test.mdx @@ -43,7 +43,12 @@ values={[ :::info -Range Test features are available for Android. + +Range Test Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > Range Test Config** + ::: From 9f4fe3c2d7f1534b94e6618daa5f17efe2d3c89b Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:32:56 -0700 Subject: [PATCH 16/41] update serial.mdx --- docs/configuration/module-config/serial.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/serial.mdx b/docs/configuration/module-config/serial.mdx index 5cc46cef..3248c6e6 100644 --- a/docs/configuration/module-config/serial.mdx +++ b/docs/configuration/module-config/serial.mdx @@ -73,7 +73,12 @@ values={[ :::info -Serial module config is not available for Android. + +Serial Module Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > Serial Config** + ::: From 21201b594b387450132e5903fc739473d6d3c860 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Sun, 4 Dec 2022 14:34:26 -0700 Subject: [PATCH 17/41] update telemetry.mdx --- docs/configuration/module-config/telemetry.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/configuration/module-config/telemetry.mdx b/docs/configuration/module-config/telemetry.mdx index 741cae9e..bc4be744 100644 --- a/docs/configuration/module-config/telemetry.mdx +++ b/docs/configuration/module-config/telemetry.mdx @@ -74,7 +74,12 @@ values={[ :::info -Telemetry Module config is not available for Android. + +Telemetry Config options are available for Android. + +1. Open the Meshtastic App +2. Navigate to: **Vertical Ellipsis (3 dots top right) > Module Settings > Telemetry Config** + ::: From 2a511ad18b6d76d642e83cc913462b42166c22c6 Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Sun, 4 Dec 2022 16:58:46 -0500 Subject: [PATCH 18/41] Update index.mdx Update docs for the ability to send JSON Position to device assuming something like pull request #2018 for firmware gets included in 2.0.7. --- docs/software/mqtt/index.mdx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/software/mqtt/index.mdx b/docs/software/mqtt/index.mdx index a593211d..1c62b575 100644 --- a/docs/software/mqtt/index.mdx +++ b/docs/software/mqtt/index.mdx @@ -287,3 +287,17 @@ The flow is: ``` [{"id":"32ca608d9e7c5236","type":"inject","z":"23dbb1ee.bc2e8e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":96.5,"y":1952,"wires":[["2b536512e8c7aef2"]]},{"id":"20bbd2d1408b8dc5","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"channelId_outbound","pt":"flow","to":"LongFast","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2027,"wires":[[]]},{"id":"c6cb373157be01d6","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"gatewayId_outbound","pt":"flow","to":"\"!55c7312c\"","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2066,"wires":[[]]},{"id":"24199ec7eaf89c1a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"portnum_outbound","pt":"flow","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":774,"y":2106,"wires":[[]]},{"id":"de38ad5ef343623a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"from_outbound","pt":"flow","to":"1439117612","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":781,"y":2146,"wires":[[]]},{"id":"d435e8abe0852f93","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"to_outbound","pt":"flow","to":"4294967295","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":790,"y":2188,"wires":[[]]},{"id":"1f8d172708898860","type":"function","z":"23dbb1ee.bc2e8e","name":"Assemble Position protobuf","func":"msg.protobufType=null;\nmsg.payload =\n{\n \"packet\": {\n \"from\": flow.get(\"from_outbound\"),\n \"to\": flow.get(\"to_outbound\"), \n \"decoded\":{\n //how ENUMS are handled here\n //portnum is decoded as string but encoded as number\n //in the encode/decode node-red nodes based on protobuf.js\n \"portnum\": flow.get(\"portnum_outbound\"),\n \"payload\": msg.payload \n } \n },\n\n \"channelId\": flow.get(\"channelId_outbound\"),\n \"gatewayId\": flow.get(\"gatewayId_outbound\"),\n};\nreturn msg;\n//info on how to get json data into protobuf \"bytes\" field\n//https://github.com/protobufjs/protobuf.js/wiki/Changes-in-ProtoBuf.js-3.8","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1086,"y":2019,"wires":[["b8ccf1cfe8bf40a3"]]},{"id":"b8ccf1cfe8bf40a3","type":"encode","z":"23dbb1ee.bc2e8e","name":"","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1287,"y":2020,"wires":[["dbc78f035c9c2b56","a002c148f3a06bac"]]},{"id":"03a7e69ca6d471fe","type":"debug","z":"23dbb1ee.bc2e8e","name":"show hex string","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1319,"y":2180,"wires":[]},{"id":"dbc78f035c9c2b56","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as hex string","func":"var hex=Buffer.from(msg.payload,\"hex\");\nmsg.payload=hex.toString(\"hex\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1096,"y":2178,"wires":[["03a7e69ca6d471fe"]]},{"id":"2b536512e8c7aef2","type":"function","z":"23dbb1ee.bc2e8e","name":"Inject lat lon alt","func":"msg.payload={\n \"latitudeI\": 399600000,\n \"longitudeI\": -862600000,\n \"altitude\": 100\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":277.5,"y":1953,"wires":[["9443a9a980e54c75"]]},{"id":"9443a9a980e54c75","type":"encode","z":"23dbb1ee.bc2e8e","name":"encode Position as protobuf","protofile":"dbab6472b07929a0","protoType":"Position","x":506,"y":1953,"wires":[["5c36d3a7f4dca14e"]]},{"id":"5c36d3a7f4dca14e","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"nested_outbound","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":776,"y":1952,"wires":[["20bbd2d1408b8dc5","c6cb373157be01d6","24199ec7eaf89c1a","de38ad5ef343623a","d435e8abe0852f93","04d0c4a5f3485c6f"]]},{"id":"04d0c4a5f3485c6f","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as base64 string","func":"var hex=Buffer.from(msg.payload,\"base64\");\nmsg.payload=hex.toString(\"base64\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1082,"y":1952,"wires":[["1f8d172708898860"]]},{"id":"a002c148f3a06bac","type":"decode","z":"23dbb1ee.bc2e8e","name":"test decode Protobuf","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1249,"y":1860,"wires":[["4b6fc79398d05782"]]},{"id":"4b6fc79398d05782","type":"debug","z":"23dbb1ee.bc2e8e","name":"test entire payload","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1458,"y":1859,"wires":[]},{"id":"a0d4288141f6a629","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mqtt.proto","watchFile":true,"keepCase":false},{"id":"dbab6472b07929a0","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mesh.proto","watchFile":true,"keepCase":false}] ``` + +In firwmare version 2.0.7+ it will be possible to send JSON position to the mesh via MQTT for broadcast. This introduces a new MQTT Service Envelope type: "sendposition". A valid MQTT envelope and message to broadcast lat, lon, altitude looks like this. +```json +{ + "sender": "someSender", + "type": "sendposition", + "payload": { + "latitude_i": 399600000, + "longitude_i": -862600000, + "altitude": 100 + } +} + + ``` From a568762b07b201f8b1c4952fbf94599080a9f63c Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Sun, 4 Dec 2022 19:50:49 -0500 Subject: [PATCH 19/41] Position JSON nod-red example --- static/documents/mqtt/PosJSON.jpg | Bin 0 -> 97044 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 static/documents/mqtt/PosJSON.jpg diff --git a/static/documents/mqtt/PosJSON.jpg b/static/documents/mqtt/PosJSON.jpg new file mode 100644 index 0000000000000000000000000000000000000000..61b5737d80308bf807bcdaf5f5a82664052fafd5 GIT binary patch literal 97044 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
7VCF|2o}x`ABmnsOj> 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 literal 0 HcmV?d00001 From a5e0b55fc3df323e890d7f43ef1229d477e5e9db Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Sun, 4 Dec 2022 19:54:00 -0500 Subject: [PATCH 20/41] Updated with time and node-red example. --- docs/software/mqtt/index.mdx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/software/mqtt/index.mdx b/docs/software/mqtt/index.mdx index 1c62b575..a3f323b2 100644 --- a/docs/software/mqtt/index.mdx +++ b/docs/software/mqtt/index.mdx @@ -296,8 +296,11 @@ In firwmare version 2.0.7+ it will be possible to send JSON position to the mesh "payload": { "latitude_i": 399600000, "longitude_i": -862600000, - "altitude": 100 + "altitude": 100, + "time": 1670201543 } } ``` +An example of doing this in node-red: +[](/documents/mqtt/PosJSON.jpg) From 44d937dfa2075538ded1a51f2902ae0861d4b78d Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Sun, 4 Dec 2022 19:34:44 -0600 Subject: [PATCH 21/41] A bit more details for text messaging --- docs/configuration/module-config/serial.mdx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/docs/configuration/module-config/serial.mdx b/docs/configuration/module-config/serial.mdx index 5cc46cef..b6abb039 100644 --- a/docs/configuration/module-config/serial.mdx +++ b/docs/configuration/module-config/serial.mdx @@ -12,6 +12,9 @@ The serial module config options are: Enabled, Echo, Mode, Receive GPIO, Transmi This is a simple interface to send messages over the mesh network by sending strings over a serial port. Anything you send the node will be turned into a message sent out over the mesh, and anything received from the mesh will be sent to the serial port. Note that this module does not (yet) allow arbitrary protobuf commands to be sent over the serial connection. +![image](https://user-images.githubusercontent.com/9000580/205529843-962c3187-8411-452c-b729-42c58b1571f5.png) + + ## Serial Module Config Values ### Enabled @@ -161,10 +164,12 @@ Default is to use RX GPIO 16 and TX GPIO 17. 1. Enable the module by setting `serial.enabled` to `1`. 2. Set the pins (`serial.rxd` / `serial.txd`) for your preferred RX and TX GPIO pins. On tbeam boards it is recommended to use: - - RXD 35 - - TXD 15 + - RXD 13 + - TXD 14 3. Set `serial.timeout` to the amount of time to wait before we consider your packet as "done". 4. (Optional) set serial.mode to TESTMSG if you want to send messages to/from the general text message channel 5. Connect to your device over the serial interface at `38400 8N1`. -6. Send a packet up to 237 bytes in length. This will get relayed over the mesh network. -7. (Optional) Set `serial.echo` to `1` and any message you send out will be echoed back to your device. + + With [tio](https://github.com/tio/tio) – `tio -e -b 38400 -f none /dev/myserialport` +7. Send a packet up to 237 bytes in length. This will get relayed over the mesh network. +8. (Optional) Set `serial.echo` to `1` and any message you send out will be echoed back to your device. From 67607e06c02f2f04d17ab52299c3a188f6adfd3a Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Sun, 4 Dec 2022 19:38:22 -0600 Subject: [PATCH 22/41] Fix typo --- docs/configuration/module-config/serial.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/configuration/module-config/serial.mdx b/docs/configuration/module-config/serial.mdx index b6abb039..2fb1444b 100644 --- a/docs/configuration/module-config/serial.mdx +++ b/docs/configuration/module-config/serial.mdx @@ -167,7 +167,7 @@ Default is to use RX GPIO 16 and TX GPIO 17. - RXD 13 - TXD 14 3. Set `serial.timeout` to the amount of time to wait before we consider your packet as "done". -4. (Optional) set serial.mode to TESTMSG if you want to send messages to/from the general text message channel +4. (Optional) set serial.mode to TEXTMSG if you want to send messages to/from the general text message channel 5. Connect to your device over the serial interface at `38400 8N1`. With [tio](https://github.com/tio/tio) – `tio -e -b 38400 -f none /dev/myserialport` From 6431fcf9b7a48e8e7ae25e18f7d498704a682dc5 Mon Sep 17 00:00:00 2001 From: rcarteraz Date: Thu, 8 Dec 2022 11:56:16 -0700 Subject: [PATCH 23/41] updates to community apps --- docs/1.2-End-of-life/index.mdx | 2 -- docs/software/community/atak.mdx | 33 ++++++++++++++++++++++ docs/software/community/index.mdx | 13 ++++++--- docs/software/community/meshtasticator.mdx | 16 +++++++++++ 4 files changed, 58 insertions(+), 6 deletions(-) create mode 100644 docs/software/community/atak.mdx create mode 100644 docs/software/community/meshtasticator.mdx diff --git a/docs/1.2-End-of-life/index.mdx b/docs/1.2-End-of-life/index.mdx index b6ff0d1d..f8495081 100644 --- a/docs/1.2-End-of-life/index.mdx +++ b/docs/1.2-End-of-life/index.mdx @@ -7,8 +7,6 @@ sidebar_position: 20 Meshtastic 1.2 was a beta version that has been superceded by 1.3. Version 1.2 is fundamentally incompatible with any 1.3 versions of device firmware, flashing utilities, or client applications. -While 1.2 is end of life, it may continue to be useful for certain networks with Android only users, or users of ATAK until the forwarder is updated. - - Last 1.2 Python api version install: pip install meshtastic==1.2.95 - Final 1.2 Meshtastic Flasher install: pip install meshtastic-flasher==1.0.106 (Do not attempt to install 1.3.x firmware with this release) - [Final 1.2 Device Firmware](https://github.com/meshtastic/firmware/releases/tag/v1.2.65.0adc5ce) diff --git a/docs/software/community/atak.mdx b/docs/software/community/atak.mdx new file mode 100644 index 00000000..efe45244 --- /dev/null +++ b/docs/software/community/atak.mdx @@ -0,0 +1,33 @@ +--- +id: community-atak +title: ATAK Forwarder +sidebar_label: ATAK Forwarder +sidebar_position: 1 +--- + +:::note + +This is a community project maintained by @paulmandal. +Development can be followed on [GitHub](https://github.com/paulmandal/atak-forwarder). +Support should be sought from the respective authors. + +::: + +:::info + +The ATAK Forwarder plugin has recently been updated to support Meshtastic 2.0.6+ but is currently a pre-release version to allow for additional testing to be completed. +- After installing you need to open the Meshtastic app and click the add device "+" so it will ask for Bluetooth permissions. + +::: + +The ATAK Forwarder plugin requires the Meshtastic Android app to be installed. + +This is a plugin for ATAK (Android Team Awareness Kit) that uses Meshtastic to provide off-grid communications. This includes plotting the position of others on the map, transmission of markers and routes, and chat messages. It has been signed by the TAK Product Center for use with the Play Store version of ATAK. He is currently distributing development builds via [Google Drive](https://drive.google.com/drive/folders/1xeKJnn9tmzkkmuDbMp0LCLOV9OzHU-Ex), aiming to publish it to the Play Store in the future. + +![ATAK Module](/img/atak-animation.gif) + +The builds of the module on the Google Drive are now signed for the Play Store version of ATAK, as of 6/3/2021. + +- A walk-through on how to [set up ATAK](https://paul-mandal.medium.com/atak-for-hikers-d96d5246193e). +- The module source is available on [GitHub](https://github.com/paulmandal/atak-forwarder), along with instructions for setting it up. +- Development builds are available on [Google Drive](https://drive.google.com/drive/folders/1xeKJnn9tmzkkmuDbMp0LCLOV9OzHU-Ex). diff --git a/docs/software/community/index.mdx b/docs/software/community/index.mdx index 29cefad4..87f7bb59 100644 --- a/docs/software/community/index.mdx +++ b/docs/software/community/index.mdx @@ -1,10 +1,15 @@ --- -title: Community +title: Community Apps slug: /software/community -sidebar_label: Community +sidebar_label: Community Apps sidebar_position: 10 --- -## Simulator +The Meshtastic ecosystem is highly extensible, and a number of community projects have been made to fit different people's needs. If you wish to create your own application or module, please read the information in the developers section, and tell us about your project on the forum. -- https://github.com/GUVWAF/Meshtasticator \ No newline at end of file +Current community projects: + +- [ATAK (Android Team Awareness Kit) Forwarder](/docs/software/community/community-atak) - An ATAK plugin for forwarding CoT messages via a hardware layer which supports Meshtastic devices. +- [Meshtasticator (Simulator)](/docs/software/community/community-meshtasticator) - Meshtasticator is a discrete-event and interactive simulator that mimics the radio section of the device software. + +Support for these projects should be sought from their respective authors. \ No newline at end of file diff --git a/docs/software/community/meshtasticator.mdx b/docs/software/community/meshtasticator.mdx new file mode 100644 index 00000000..b7ebbd69 --- /dev/null +++ b/docs/software/community/meshtasticator.mdx @@ -0,0 +1,16 @@ +--- +id: community-meshtasticator +title: Meshtasticator +sidebar_label: Meshtasticator (Simulator) +sidebar_position: 2 +--- + +:::note + +This is a community project maintained by @GUVWAF. +Development can be followed on [GitHub](https://github.com/GUVWAF/Meshtasticator). +Support should be sought from the respective authors. + +::: + +Meshtasticator is a discrete-event and interactive simulator that mimics the radio section of the device software and can be used to assess the performance of your scenario, or the scalability of the protocol. Meshtasticator was created and is maintained by GUVWAF and more information on its use and setup can be found on the [Meshtasticator Github page](https://github.com/GUVWAF/Meshtasticator) From 5f7b49f902ecab79166596f52999bdffd675e19d Mon Sep 17 00:00:00 2001 From: arduinoGP <115203453+arduionoGP@users.noreply.github.com> Date: Fri, 9 Dec 2022 18:02:36 -0500 Subject: [PATCH 24/41] Update index.mdx Updated as requested --- docs/software/mqtt/index.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/software/mqtt/index.mdx b/docs/software/mqtt/index.mdx index a3f323b2..b6042410 100644 --- a/docs/software/mqtt/index.mdx +++ b/docs/software/mqtt/index.mdx @@ -288,7 +288,7 @@ The flow is: [{"id":"32ca608d9e7c5236","type":"inject","z":"23dbb1ee.bc2e8e","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":96.5,"y":1952,"wires":[["2b536512e8c7aef2"]]},{"id":"20bbd2d1408b8dc5","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"channelId_outbound","pt":"flow","to":"LongFast","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2027,"wires":[[]]},{"id":"c6cb373157be01d6","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"gatewayId_outbound","pt":"flow","to":"\"!55c7312c\"","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":772,"y":2066,"wires":[[]]},{"id":"24199ec7eaf89c1a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"portnum_outbound","pt":"flow","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":774,"y":2106,"wires":[[]]},{"id":"de38ad5ef343623a","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"from_outbound","pt":"flow","to":"1439117612","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":781,"y":2146,"wires":[[]]},{"id":"d435e8abe0852f93","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"to_outbound","pt":"flow","to":"4294967295","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":790,"y":2188,"wires":[[]]},{"id":"1f8d172708898860","type":"function","z":"23dbb1ee.bc2e8e","name":"Assemble Position protobuf","func":"msg.protobufType=null;\nmsg.payload =\n{\n \"packet\": {\n \"from\": flow.get(\"from_outbound\"),\n \"to\": flow.get(\"to_outbound\"), \n \"decoded\":{\n //how ENUMS are handled here\n //portnum is decoded as string but encoded as number\n //in the encode/decode node-red nodes based on protobuf.js\n \"portnum\": flow.get(\"portnum_outbound\"),\n \"payload\": msg.payload \n } \n },\n\n \"channelId\": flow.get(\"channelId_outbound\"),\n \"gatewayId\": flow.get(\"gatewayId_outbound\"),\n};\nreturn msg;\n//info on how to get json data into protobuf \"bytes\" field\n//https://github.com/protobufjs/protobuf.js/wiki/Changes-in-ProtoBuf.js-3.8","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1086,"y":2019,"wires":[["b8ccf1cfe8bf40a3"]]},{"id":"b8ccf1cfe8bf40a3","type":"encode","z":"23dbb1ee.bc2e8e","name":"","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1287,"y":2020,"wires":[["dbc78f035c9c2b56","a002c148f3a06bac"]]},{"id":"03a7e69ca6d471fe","type":"debug","z":"23dbb1ee.bc2e8e","name":"show hex string","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1319,"y":2180,"wires":[]},{"id":"dbc78f035c9c2b56","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as hex string","func":"var hex=Buffer.from(msg.payload,\"hex\");\nmsg.payload=hex.toString(\"hex\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1096,"y":2178,"wires":[["03a7e69ca6d471fe"]]},{"id":"2b536512e8c7aef2","type":"function","z":"23dbb1ee.bc2e8e","name":"Inject lat lon alt","func":"msg.payload={\n \"latitudeI\": 399600000,\n \"longitudeI\": -862600000,\n \"altitude\": 100\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":277.5,"y":1953,"wires":[["9443a9a980e54c75"]]},{"id":"9443a9a980e54c75","type":"encode","z":"23dbb1ee.bc2e8e","name":"encode Position as protobuf","protofile":"dbab6472b07929a0","protoType":"Position","x":506,"y":1953,"wires":[["5c36d3a7f4dca14e"]]},{"id":"5c36d3a7f4dca14e","type":"change","z":"23dbb1ee.bc2e8e","name":"","rules":[{"t":"set","p":"nested_outbound","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":776,"y":1952,"wires":[["20bbd2d1408b8dc5","c6cb373157be01d6","24199ec7eaf89c1a","de38ad5ef343623a","d435e8abe0852f93","04d0c4a5f3485c6f"]]},{"id":"04d0c4a5f3485c6f","type":"function","z":"23dbb1ee.bc2e8e","name":"dump payload as base64 string","func":"var hex=Buffer.from(msg.payload,\"base64\");\nmsg.payload=hex.toString(\"base64\");\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1082,"y":1952,"wires":[["1f8d172708898860"]]},{"id":"a002c148f3a06bac","type":"decode","z":"23dbb1ee.bc2e8e","name":"test decode Protobuf","protofile":"a0d4288141f6a629","protoType":"ServiceEnvelope","x":1249,"y":1860,"wires":[["4b6fc79398d05782"]]},{"id":"4b6fc79398d05782","type":"debug","z":"23dbb1ee.bc2e8e","name":"test entire payload","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1458,"y":1859,"wires":[]},{"id":"a0d4288141f6a629","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mqtt.proto","watchFile":true,"keepCase":false},{"id":"dbab6472b07929a0","type":"protobuf-file","protopath":"E:\\Meshtastic-protobufs-master\\mesh.proto","watchFile":true,"keepCase":false}] ``` -In firwmare version 2.0.7+ it will be possible to send JSON position to the mesh via MQTT for broadcast. This introduces a new MQTT Service Envelope type: "sendposition". A valid MQTT envelope and message to broadcast lat, lon, altitude looks like this. +Sending a position to a device for broadcast to the mesh is much easier with JSON. This introduces a new MQTT Service Envelope type: "sendposition". A valid MQTT envelope and message to broadcast lat, lon, altitude looks like this. ```json { "sender": "someSender", From 37cba0e8c81c97c4250f8a732d157490a8450fcd Mon Sep 17 00:00:00 2001 From: Sacha Weatherstone Date: Sat, 10 Dec 2022 16:54:44 +1000 Subject: [PATCH 25/41] update downloads page & deps --- package.json | 16 +- pnpm-lock.yaml | 516 +++++++++--------- protobufs | 2 +- .../downloads/_components/FirmwareCard.tsx | 36 +- src/pages/downloads/index.tsx | 21 +- src/utils/apiTypes.ts | 15 + src/utils/github.ts | 128 ----- 7 files changed, 314 insertions(+), 420 deletions(-) delete mode 100644 src/utils/github.ts diff --git a/package.json b/package.json index 645a02c3..a6da1bbb 100644 --- a/package.json +++ b/package.json @@ -17,11 +17,11 @@ "@docusaurus/core": "2.2.0", "@docusaurus/plugin-content-docs": "2.2.0", "@docusaurus/preset-classic": "2.2.0", - "@headlessui/react": "^1.7.4", + "@headlessui/react": "^1.7.5", "@heroicons/react": "^2.0.13", "@leenguyen/react-flip-clock-countdown": "^1.3.1", "@mdx-js/react": "^1.6.22", - "@meshtastic/meshtasticjs": "^0.6.115", + "@meshtastic/meshtasticjs": "^0.7.2", "autoprefixer": "^10.4.13", "base64-js": "^1.5.1", "dotenv": "^16.0.3", @@ -31,20 +31,20 @@ "react-dom": "^17.0.2", "react-icons": "^4.7.1", "react-responsive-carousel": "^3.2.23", - "swr": "^1.3.0", + "swr": "^2.0.0", "tailwindcss": "^3.2.4", "url-search-params-polyfill": "^8.1.1", - "use-breakpoint": "^3.0.4" + "use-breakpoint": "^3.0.6" }, "devDependencies": { "@docusaurus/module-type-aliases": "2.2.0", "@meshtastic/eslint-config": "^1.0.8", "@tailwindcss/typography": "^0.5.8", "@tsconfig/docusaurus": "^1.0.6", - "@types/node": "^18.11.9", - "@types/react": "^18.0.25", + "@types/node": "^18.11.12", + "@types/react": "^18.0.26", "@types/react-dom": "^18.0.9", - "prettier": "^2.8.0", - "typescript": "^4.9.3" + "prettier": "^2.8.1", + "typescript": "^4.9.4" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0f94385a..abef3f9f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,43 +6,43 @@ specifiers: '@docusaurus/module-type-aliases': 2.2.0 '@docusaurus/plugin-content-docs': 2.2.0 '@docusaurus/preset-classic': 2.2.0 - '@headlessui/react': ^1.7.4 + '@headlessui/react': ^1.7.5 '@heroicons/react': ^2.0.13 '@leenguyen/react-flip-clock-countdown': ^1.3.1 '@mdx-js/react': ^1.6.22 '@meshtastic/eslint-config': ^1.0.8 - '@meshtastic/meshtasticjs': ^0.6.115 + '@meshtastic/meshtasticjs': ^0.7.2 '@tailwindcss/typography': ^0.5.8 '@tsconfig/docusaurus': ^1.0.6 - '@types/node': ^18.11.9 - '@types/react': ^18.0.25 + '@types/node': ^18.11.12 + '@types/react': ^18.0.26 '@types/react-dom': ^18.0.9 autoprefixer: ^10.4.13 base64-js: ^1.5.1 dotenv: ^16.0.3 framer-motion: ^6.5.1 postcss: ^8.4.19 - prettier: ^2.8.0 + prettier: ^2.8.1 react: ^17.0.2 react-dom: ^17.0.2 react-icons: ^4.7.1 react-responsive-carousel: ^3.2.23 - swr: ^1.3.0 + swr: ^2.0.0 tailwindcss: ^3.2.4 - typescript: ^4.9.3 + typescript: ^4.9.4 url-search-params-polyfill: ^8.1.1 - use-breakpoint: ^3.0.4 + use-breakpoint: ^3.0.6 dependencies: '@algolia/client-search': 4.14.2 - '@docusaurus/core': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/preset-classic': 2.2.0_bsafmusoukf4e6aet6onn76mra - '@headlessui/react': 1.7.4_sfoxds7t5ydpegc3knd667wn6m + '@docusaurus/core': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-docs': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/preset-classic': 2.2.0_22q2hxpszkftyzjrvpgqgbgrjm + '@headlessui/react': 1.7.5_sfoxds7t5ydpegc3knd667wn6m '@heroicons/react': 2.0.13_react@17.0.2 '@leenguyen/react-flip-clock-countdown': 1.3.1_react@17.0.2 '@mdx-js/react': 1.6.22_react@17.0.2 - '@meshtastic/meshtasticjs': 0.6.115 + '@meshtastic/meshtasticjs': 0.7.2 autoprefixer: 10.4.13_postcss@8.4.19 base64-js: 1.5.1 dotenv: 16.0.3 @@ -52,21 +52,21 @@ dependencies: react-dom: 17.0.2_react@17.0.2 react-icons: 4.7.1_react@17.0.2 react-responsive-carousel: 3.2.23 - swr: 1.3.0_react@17.0.2 + swr: 2.0.0_react@17.0.2 tailwindcss: 3.2.4_postcss@8.4.19 url-search-params-polyfill: 8.1.1 - use-breakpoint: 3.0.4_sfoxds7t5ydpegc3knd667wn6m + use-breakpoint: 3.0.6_sfoxds7t5ydpegc3knd667wn6m devDependencies: '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@meshtastic/eslint-config': 1.0.8 '@tailwindcss/typography': 0.5.8_tailwindcss@3.2.4 '@tsconfig/docusaurus': 1.0.6 - '@types/node': 18.11.9 - '@types/react': 18.0.25 + '@types/node': 18.11.12 + '@types/react': 18.0.26 '@types/react-dom': 18.0.9 - prettier: 2.8.0 - typescript: 4.9.3 + prettier: 2.8.1 + typescript: 4.9.4 packages: @@ -1550,7 +1550,7 @@ packages: resolution: {integrity: sha512-rODCdDtGyudLj+Va8b6w6Y85KE85bXRsps/R4Yjwt5vueXKXZQKYw0aA9knxLBT6a/bI/GMrAcmCR75KYOM6hg==} dev: false - /@docsearch/react/3.3.0_owu7fnyguu6wv2n4xo4xexy6ri: + /@docsearch/react/3.3.0_jogigzj45gcb527cihwgbv576e: resolution: {integrity: sha512-fhS5adZkae2SSdMYEMVg6pxI5a/cE+tW16ki1V0/ur4Fdok3hBRkmN/H8VvlXnxzggkQIIRIVvYPn00JPjen3A==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' @@ -1567,7 +1567,7 @@ packages: '@algolia/autocomplete-core': 1.7.2 '@algolia/autocomplete-preset-algolia': 1.7.2_qs6lk5nhygj2o3hj4sf6xnr724 '@docsearch/css': 3.3.0 - '@types/react': 18.0.25 + '@types/react': 18.0.26 algoliasearch: 4.14.2 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 @@ -1575,107 +1575,7 @@ packages: - '@algolia/client-search' dev: false - /@docusaurus/core/2.2.0_aeigrxhfhc4abyd45ix2hknizy: - resolution: {integrity: sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==} - engines: {node: '>=16.14'} - hasBin: true - peerDependencies: - react: ^16.8.4 || ^17.0.0 - react-dom: ^16.8.4 || ^17.0.0 - dependencies: - '@babel/core': 7.20.5 - '@babel/generator': 7.20.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.5 - '@babel/plugin-transform-runtime': 7.19.6_@babel+core@7.20.5 - '@babel/preset-env': 7.20.2_@babel+core@7.20.5 - '@babel/preset-react': 7.18.6_@babel+core@7.20.5 - '@babel/preset-typescript': 7.18.6_@babel+core@7.20.5 - '@babel/runtime': 7.20.6 - '@babel/runtime-corejs3': 7.20.6 - '@babel/traverse': 7.20.5 - '@docusaurus/cssnano-preset': 2.2.0 - '@docusaurus/logger': 2.2.0 - '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y - '@docusaurus/react-loadable': 5.5.2_react@17.0.2 - '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 - '@docusaurus/utils-common': 2.2.0_@docusaurus+types@2.2.0 - '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 - '@slorber/static-site-generator-webpack-plugin': 4.0.7 - '@svgr/webpack': 6.5.1 - autoprefixer: 10.4.13_postcss@8.4.19 - babel-loader: 8.3.0_ztqwsvkb6z73luspkai6ilstpu - babel-plugin-dynamic-import-node: 2.3.3 - boxen: 6.2.1 - chalk: 4.1.2 - chokidar: 3.5.3 - clean-css: 5.3.1 - cli-table3: 0.6.3 - combine-promises: 1.1.0 - commander: 5.1.0 - copy-webpack-plugin: 11.0.0_webpack@5.75.0 - core-js: 3.26.1 - css-loader: 6.7.2_webpack@5.75.0 - css-minimizer-webpack-plugin: 4.2.2_2xq5u4vuzw4op42d4uqzx2gxfa - cssnano: 5.1.14_postcss@8.4.19 - del: 6.1.1 - detect-port: 1.5.1 - escape-html: 1.0.3 - eta: 1.12.3 - file-loader: 6.2.0_webpack@5.75.0 - fs-extra: 10.1.0 - html-minifier-terser: 6.1.0 - html-tags: 3.2.0 - html-webpack-plugin: 5.5.0_webpack@5.75.0 - import-fresh: 3.3.0 - leven: 3.1.0 - lodash: 4.17.21 - mini-css-extract-plugin: 2.7.1_webpack@5.75.0 - postcss: 8.4.19 - postcss-loader: 7.0.2_upg3rk2kpasnbk27hkqapxaxfq - prompts: 2.4.2 - react: 17.0.2 - react-dev-utils: 12.0.1_vfotqvx6lgcbf3upbs6hgaza4q - react-dom: 17.0.2_react@17.0.2 - react-helmet-async: 1.3.0_sfoxds7t5ydpegc3knd667wn6m - react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 - react-loadable-ssr-addon-v5-slorber: 1.0.1_pwfl7zyferpbeh35vaepqxwaky - react-router: 5.3.4_react@17.0.2 - react-router-config: 5.1.1_2dl5roaqnyqqppnjni7uetnb3a - react-router-dom: 5.3.4_react@17.0.2 - rtl-detect: 1.0.4 - semver: 7.3.8 - serve-handler: 6.1.5 - shelljs: 0.8.5 - terser-webpack-plugin: 5.3.6_webpack@5.75.0 - tslib: 2.4.1 - update-notifier: 5.1.0 - url-loader: 4.1.1_p5dl6emkcwslbw72e37w4ug7em - wait-on: 6.0.1 - webpack: 5.75.0 - webpack-bundle-analyzer: 4.7.0 - webpack-dev-server: 4.11.1_webpack@5.75.0 - webpack-merge: 5.8.0 - webpackbar: 5.0.2_webpack@5.75.0 - transitivePeerDependencies: - - '@docusaurus/types' - - '@parcel/css' - - '@swc/core' - - '@swc/css' - - bufferutil - - csso - - debug - - esbuild - - eslint - - lightningcss - - supports-color - - typescript - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - dev: false - - /@docusaurus/core/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/core/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==} engines: {node: '>=16.14'} hasBin: true @@ -1734,7 +1634,107 @@ packages: postcss-loader: 7.0.2_upg3rk2kpasnbk27hkqapxaxfq prompts: 2.4.2 react: 17.0.2 - react-dev-utils: 12.0.1_vfotqvx6lgcbf3upbs6hgaza4q + react-dev-utils: 12.0.1_3fkjkrd3audxnith3e7fo4fnxi + react-dom: 17.0.2_react@17.0.2 + react-helmet-async: 1.3.0_sfoxds7t5ydpegc3knd667wn6m + react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 + react-loadable-ssr-addon-v5-slorber: 1.0.1_pwfl7zyferpbeh35vaepqxwaky + react-router: 5.3.4_react@17.0.2 + react-router-config: 5.1.1_2dl5roaqnyqqppnjni7uetnb3a + react-router-dom: 5.3.4_react@17.0.2 + rtl-detect: 1.0.4 + semver: 7.3.8 + serve-handler: 6.1.5 + shelljs: 0.8.5 + terser-webpack-plugin: 5.3.6_webpack@5.75.0 + tslib: 2.4.1 + update-notifier: 5.1.0 + url-loader: 4.1.1_p5dl6emkcwslbw72e37w4ug7em + wait-on: 6.0.1 + webpack: 5.75.0 + webpack-bundle-analyzer: 4.7.0 + webpack-dev-server: 4.11.1_webpack@5.75.0 + webpack-merge: 5.8.0 + webpackbar: 5.0.2_webpack@5.75.0 + transitivePeerDependencies: + - '@docusaurus/types' + - '@parcel/css' + - '@swc/core' + - '@swc/css' + - bufferutil + - csso + - debug + - esbuild + - eslint + - lightningcss + - supports-color + - typescript + - uglify-js + - utf-8-validate + - vue-template-compiler + - webpack-cli + dev: false + + /@docusaurus/core/2.2.0_vukvsfkp4hxnee7vteliqou2xy: + resolution: {integrity: sha512-Vd6XOluKQqzG12fEs9prJgDtyn6DPok9vmUWDR2E6/nV5Fl9SVkhEQOBxwObjk3kQh7OY7vguFaLh0jqdApWsA==} + engines: {node: '>=16.14'} + hasBin: true + peerDependencies: + react: ^16.8.4 || ^17.0.0 + react-dom: ^16.8.4 || ^17.0.0 + dependencies: + '@babel/core': 7.20.5 + '@babel/generator': 7.20.5 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.5 + '@babel/plugin-transform-runtime': 7.19.6_@babel+core@7.20.5 + '@babel/preset-env': 7.20.2_@babel+core@7.20.5 + '@babel/preset-react': 7.18.6_@babel+core@7.20.5 + '@babel/preset-typescript': 7.18.6_@babel+core@7.20.5 + '@babel/runtime': 7.20.6 + '@babel/runtime-corejs3': 7.20.6 + '@babel/traverse': 7.20.5 + '@docusaurus/cssnano-preset': 2.2.0 + '@docusaurus/logger': 2.2.0 + '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y + '@docusaurus/react-loadable': 5.5.2_react@17.0.2 + '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 + '@docusaurus/utils-common': 2.2.0_@docusaurus+types@2.2.0 + '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 + '@slorber/static-site-generator-webpack-plugin': 4.0.7 + '@svgr/webpack': 6.5.1 + autoprefixer: 10.4.13_postcss@8.4.19 + babel-loader: 8.3.0_ztqwsvkb6z73luspkai6ilstpu + babel-plugin-dynamic-import-node: 2.3.3 + boxen: 6.2.1 + chalk: 4.1.2 + chokidar: 3.5.3 + clean-css: 5.3.1 + cli-table3: 0.6.3 + combine-promises: 1.1.0 + commander: 5.1.0 + copy-webpack-plugin: 11.0.0_webpack@5.75.0 + core-js: 3.26.1 + css-loader: 6.7.2_webpack@5.75.0 + css-minimizer-webpack-plugin: 4.2.2_2xq5u4vuzw4op42d4uqzx2gxfa + cssnano: 5.1.14_postcss@8.4.19 + del: 6.1.1 + detect-port: 1.5.1 + escape-html: 1.0.3 + eta: 1.12.3 + file-loader: 6.2.0_webpack@5.75.0 + fs-extra: 10.1.0 + html-minifier-terser: 6.1.0 + html-tags: 3.2.0 + html-webpack-plugin: 5.5.0_webpack@5.75.0 + import-fresh: 3.3.0 + leven: 3.1.0 + lodash: 4.17.21 + mini-css-extract-plugin: 2.7.1_webpack@5.75.0 + postcss: 8.4.19 + postcss-loader: 7.0.2_upg3rk2kpasnbk27hkqapxaxfq + prompts: 2.4.2 + react: 17.0.2 + react-dev-utils: 12.0.1_3fkjkrd3audxnith3e7fo4fnxi react-dom: 17.0.2_react@17.0.2 react-helmet-async: 1.3.0_sfoxds7t5ydpegc3knd667wn6m react-loadable: /@docusaurus/react-loadable/5.5.2_react@17.0.2 @@ -1872,7 +1872,7 @@ packages: '@docusaurus/react-loadable': 5.5.2_react@17.0.2 '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@types/history': 4.7.11 - '@types/react': 18.0.25 + '@types/react': 18.0.26 '@types/react-router-config': 5.0.6 '@types/react-router-dom': 5.3.3 react: 17.0.2 @@ -1885,14 +1885,14 @@ packages: - uglify-js - webpack-cli - /@docusaurus/plugin-content-blog/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/plugin-content-blog/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-0mWBinEh0a5J2+8ZJXJXbrCk1tSTNf7Nm4tYAl5h2/xx+PvH/Bnu0V+7mMljYm/1QlDYALNIIaT/JcoZQFUN3w==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/logger': 2.2.0 '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m @@ -1928,14 +1928,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-docs/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/plugin-content-docs/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-BOazBR0XjzsHE+2K1wpNxz5QZmrJgmm3+0Re0EVPYFGW8qndCWGNtXW/0lGKhecVPML8yyFeAmnUCIs7xM2wPw==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/logger': 2.2.0 '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m @@ -1971,14 +1971,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-content-pages/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/plugin-content-pages/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-+OTK3FQHk5WMvdelz8v19PbEbx+CNT6VSpx7nVOvMNs5yJCKvmqBJBQ2ZSxROxhVDYn+CZOlmyrC56NSXzHf6g==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 @@ -2006,20 +2006,20 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-debug/2.2.0_ixno2qfzajksn7oqk6oqqxtn4a: + /@docusaurus/plugin-debug/2.2.0_zp57ocvs5gm4vtomo27yeonsjq: resolution: {integrity: sha512-p9vOep8+7OVl6r/NREEYxf4HMAjV8JMYJ7Bos5fCFO0Wyi9AZEo0sCTliRd7R8+dlJXZEgcngSdxAUo/Q+CJow==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 fs-extra: 10.1.0 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 - react-json-view: 1.21.3_7lpwapvzekzihmf4mk5gspfxj4 + react-json-view: 1.21.3_yqqarjzm4nnoetch7z7xn2dea4 tslib: 2.4.1 transitivePeerDependencies: - '@parcel/css' @@ -2041,14 +2041,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-analytics/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/plugin-google-analytics/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-+eZVVxVeEnV5nVQJdey9ZsfyEVMls6VyWTIj8SmX0k5EbqGvnIfET+J2pYEuKQnDIHxy+syRMoRM6AHXdHYGIg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 react: 17.0.2 @@ -2072,14 +2072,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-google-gtag/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/plugin-google-gtag/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-6SOgczP/dYdkqUMGTRqgxAS1eTp6MnJDAQMy8VCF1QKbWZmlkx4agHDexihqmYyCujTYHqDAhm1hV26EET54NQ==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 react: 17.0.2 @@ -2103,14 +2103,14 @@ packages: - webpack-cli dev: false - /@docusaurus/plugin-sitemap/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/plugin-sitemap/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-0jAmyRDN/aI265CbWZNZuQpFqiZuo+5otk2MylU9iVrz/4J7gSc+ZJ9cy4EHrEsW7PV8s1w18hIEsmcA1YgkKg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/logger': 2.2.0 '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 @@ -2139,24 +2139,24 @@ packages: - webpack-cli dev: false - /@docusaurus/preset-classic/2.2.0_bsafmusoukf4e6aet6onn76mra: + /@docusaurus/preset-classic/2.2.0_22q2hxpszkftyzjrvpgqgbgrjm: resolution: {integrity: sha512-yKIWPGNx7BT8v2wjFIWvYrS+nvN04W+UameSFf8lEiJk6pss0kL6SG2MRvyULiI3BDxH+tj6qe02ncpSPGwumg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy - '@docusaurus/plugin-content-blog': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-pages': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-debug': 2.2.0_ixno2qfzajksn7oqk6oqqxtn4a - '@docusaurus/plugin-google-analytics': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-google-gtag': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-sitemap': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/theme-classic': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/theme-common': 2.2.0_aeigrxhfhc4abyd45ix2hknizy - '@docusaurus/theme-search-algolia': 2.2.0_bt4qpczpsttwow5542um2nf6x4 + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy + '@docusaurus/plugin-content-blog': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-docs': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-pages': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-debug': 2.2.0_zp57ocvs5gm4vtomo27yeonsjq + '@docusaurus/plugin-google-analytics': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-google-gtag': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-sitemap': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/theme-classic': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/theme-common': 2.2.0_vukvsfkp4hxnee7vteliqou2xy + '@docusaurus/theme-search-algolia': 2.2.0_zndlek4zpwmve2whopv6jgeerm '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m react: 17.0.2 react-dom: 17.0.2_react@17.0.2 @@ -2186,24 +2186,24 @@ packages: peerDependencies: react: '*' dependencies: - '@types/react': 18.0.25 + '@types/react': 18.0.26 prop-types: 15.8.1 react: 17.0.2 - /@docusaurus/theme-classic/2.2.0_wfh3mw2ke2bdr53qfq544ltemu: + /@docusaurus/theme-classic/2.2.0_lhsnqlb35hvawm3f6bviuzo2eu: resolution: {integrity: sha512-kjbg/qJPwZ6H1CU/i9d4l/LcFgnuzeiGgMQlt6yPqKo0SOJIBMPuz7Rnu3r/WWbZFPi//o8acclacOzmXdUUEg==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/plugin-content-blog': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-pages': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/theme-common': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/plugin-content-blog': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-docs': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-pages': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/theme-common': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/theme-translations': 2.2.0 '@docusaurus/types': 2.2.0_sfoxds7t5ydpegc3knd667wn6m '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 @@ -2242,7 +2242,7 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-common/2.2.0_aeigrxhfhc4abyd45ix2hknizy: + /@docusaurus/theme-common/2.2.0_vukvsfkp4hxnee7vteliqou2xy: resolution: {integrity: sha512-R8BnDjYoN90DCL75gP7qYQfSjyitXuP9TdzgsKDmSFPNyrdE3twtPNa2dIN+h+p/pr+PagfxwWbd6dn722A1Dw==} engines: {node: '>=16.14'} peerDependencies: @@ -2251,12 +2251,12 @@ packages: dependencies: '@docusaurus/mdx-loader': 2.2.0_zneentkx4scexj4pzosurqq55y '@docusaurus/module-type-aliases': 2.2.0_sfoxds7t5ydpegc3knd667wn6m - '@docusaurus/plugin-content-blog': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/plugin-content-pages': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu + '@docusaurus/plugin-content-blog': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-docs': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/plugin-content-pages': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 '@types/history': 4.7.11 - '@types/react': 18.0.25 + '@types/react': 18.0.26 '@types/react-router-config': 5.0.6 clsx: 1.2.1 parse-numeric-range: 1.3.0 @@ -2284,18 +2284,18 @@ packages: - webpack-cli dev: false - /@docusaurus/theme-search-algolia/2.2.0_bt4qpczpsttwow5542um2nf6x4: + /@docusaurus/theme-search-algolia/2.2.0_zndlek4zpwmve2whopv6jgeerm: resolution: {integrity: sha512-2h38B0tqlxgR2FZ9LpAkGrpDWVdXZ7vltfmTdX+4RsDs3A7khiNsmZB+x/x6sA4+G2V2CvrsPMlsYBy5X+cY1w==} engines: {node: '>=16.14'} peerDependencies: react: ^16.8.4 || ^17.0.0 react-dom: ^16.8.4 || ^17.0.0 dependencies: - '@docsearch/react': 3.3.0_owu7fnyguu6wv2n4xo4xexy6ri - '@docusaurus/core': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docsearch/react': 3.3.0_jogigzj45gcb527cihwgbv576e + '@docusaurus/core': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/logger': 2.2.0 - '@docusaurus/plugin-content-docs': 2.2.0_wfh3mw2ke2bdr53qfq544ltemu - '@docusaurus/theme-common': 2.2.0_aeigrxhfhc4abyd45ix2hknizy + '@docusaurus/plugin-content-docs': 2.2.0_lhsnqlb35hvawm3f6bviuzo2eu + '@docusaurus/theme-common': 2.2.0_vukvsfkp4hxnee7vteliqou2xy '@docusaurus/theme-translations': 2.2.0 '@docusaurus/utils': 2.2.0_@docusaurus+types@2.2.0 '@docusaurus/utils-validation': 2.2.0_@docusaurus+types@2.2.0 @@ -2345,7 +2345,7 @@ packages: react-dom: ^16.8.4 || ^17.0.0 dependencies: '@types/history': 4.7.11 - '@types/react': 18.0.25 + '@types/react': 18.0.26 commander: 5.1.0 joi: 17.7.0 react: 17.0.2 @@ -2524,8 +2524,8 @@ packages: dependencies: '@hapi/hoek': 9.3.0 - /@headlessui/react/1.7.4_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-D8n5yGCF3WIkPsjEYeM8knn9jQ70bigGGb5aUvN6y4BGxcT3OcOQOKcM3zRGllRCZCFxCZyQvYJF6ZE7bQUOyQ==} + /@headlessui/react/1.7.5_sfoxds7t5ydpegc3knd667wn6m: + resolution: {integrity: sha512-UZSxOfA0CYKO7QDT5OGlFvesvlR1SKkawwSjwQJwt7XQItpzRKdE3ZUQxHcg4LEz3C0Wler2s9psdb872ynwrQ==} engines: {node: '>=10'} peerDependencies: react: ^16 || ^17 || ^18 @@ -2578,7 +2578,7 @@ packages: '@jest/schemas': 29.0.0 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 18.11.9 + '@types/node': 18.11.12 '@types/yargs': 17.0.15 chalk: 4.1.2 dev: false @@ -2677,8 +2677,8 @@ packages: /@meshtastic/eslint-config/1.0.8: resolution: {integrity: sha512-Jzwaf3TyYFGeFuxLRQA5Yj5Rmz097VleFQUkswXH9nvLO81JjJbHgJWbHQ6RpxC31q/2hWV03QdaH98swpYcQA==} dependencies: - '@typescript-eslint/eslint-plugin': 5.45.0_czs5uoqkd3podpy6vgtsxfc7au - '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/eslint-plugin': 5.45.0_wke4plxjew2ogjxrdwvzd2srfq + '@typescript-eslint/parser': 5.45.0_wy4udjehnvkneqnogzx5kughki eslint: 8.28.0 eslint-config-prettier: 8.5.0_eslint@8.28.0 eslint-import-resolver-typescript: 2.7.1_ktrec6dplf4now6nlbc6d67jee @@ -2686,20 +2686,21 @@ packages: eslint-plugin-import: 2.26.0_zakvy25bvwc2d644723rsy4ypy eslint-plugin-react: 7.31.11_eslint@8.28.0 eslint-plugin-react-hooks: 4.6.0_eslint@8.28.0 - prettier: 2.8.0 - prettier-plugin-tailwindcss: 0.1.13_prettier@2.8.0 - typescript: 4.9.3 + prettier: 2.8.1 + prettier-plugin-tailwindcss: 0.1.13_prettier@2.8.1 + typescript: 4.9.4 transitivePeerDependencies: - eslint-import-resolver-webpack - supports-color dev: true - /@meshtastic/meshtasticjs/0.6.115: - resolution: {integrity: sha512-/CjaIo6vjU/AID6DfLpCCg5cg03EgCkVTIxRhOAfi2zyLbrkzL4rHaQtm9k3qBtMMUecQIDGfziXOFhrMO6Fgg==} + /@meshtastic/meshtasticjs/0.7.2: + resolution: {integrity: sha512-RJCJLtlGUn7To+I4MnxuSDxwWK/MgAAfbfq+Naib6fve2VQEBu2CPF2Iy0A+wAHxR1ygOKcS8VbyS2D1FAQhcw==} dependencies: '@protobuf-ts/runtime': 2.8.2 glob: 8.0.3 sub-events: 1.9.0 + tslog: 4.4.4 dev: false /@motionone/animation/10.14.0: @@ -2989,26 +2990,26 @@ packages: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: '@types/connect': 3.4.35 - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/bonjour/3.5.10: resolution: {integrity: sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/connect-history-api-fallback/1.3.5: resolution: {integrity: sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==} dependencies: '@types/express-serve-static-core': 4.17.31 - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/connect/3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/eslint-scope/3.7.4: @@ -3029,7 +3030,7 @@ packages: /@types/express-serve-static-core/4.17.31: resolution: {integrity: sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 dev: false @@ -3059,7 +3060,7 @@ packages: /@types/http-proxy/1.17.9: resolution: {integrity: sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/istanbul-lib-coverage/2.0.4: @@ -3088,7 +3089,7 @@ packages: /@types/keyv/3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/mdast/3.0.10: @@ -3105,8 +3106,8 @@ packages: resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} dev: false - /@types/node/18.11.9: - resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} + /@types/node/18.11.12: + resolution: {integrity: sha512-FgD3NtTAKvyMmD44T07zz2fEf+OKwutgBCEVM8GcvMGVGaDktiLNTDvPwC/LUe3PinMW+X6CuLOF2Ui1mAlSXg==} /@types/parse-json/4.0.0: resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} @@ -3130,31 +3131,31 @@ packages: /@types/react-dom/18.0.9: resolution: {integrity: sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==} dependencies: - '@types/react': 18.0.25 + '@types/react': 18.0.26 dev: true /@types/react-router-config/5.0.6: resolution: {integrity: sha512-db1mx37a1EJDf1XeX8jJN7R3PZABmJQXR8r28yUjVMFSjkmnQo6X6pOEEmNl+Tp2gYQOGPdYbFIipBtdElZ3Yg==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.0.25 + '@types/react': 18.0.26 '@types/react-router': 5.1.19 /@types/react-router-dom/5.3.3: resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.0.25 + '@types/react': 18.0.26 '@types/react-router': 5.1.19 /@types/react-router/5.1.19: resolution: {integrity: sha512-Fv/5kb2STAEMT3wHzdKQK2z8xKq38EDIGVrutYLmQVVLe+4orDFquU52hQrULnEHinMKv9FSA6lf9+uNT1ITtA==} dependencies: '@types/history': 4.7.11 - '@types/react': 18.0.25 + '@types/react': 18.0.26 - /@types/react/18.0.25: - resolution: {integrity: sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g==} + /@types/react/18.0.26: + resolution: {integrity: sha512-hCR3PJQsAIXyxhTNSiDFY//LhnMZWpNNr5etoCqx/iUfGc5gXWtQR2Phl908jVR6uPXacojQWTg4qRpkxTuGug==} dependencies: '@types/prop-types': 15.7.5 '@types/scheduler': 0.16.2 @@ -3163,7 +3164,7 @@ packages: /@types/responselike/1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/retry/0.12.0: @@ -3173,7 +3174,7 @@ packages: /@types/sax/1.2.4: resolution: {integrity: sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/scheduler/0.16.2: @@ -3193,13 +3194,13 @@ packages: resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==} dependencies: '@types/mime': 3.0.1 - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/sockjs/0.3.33: resolution: {integrity: sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/unist/2.0.6: @@ -3209,7 +3210,7 @@ packages: /@types/ws/8.5.3: resolution: {integrity: sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 dev: false /@types/yargs-parser/21.0.0: @@ -3222,7 +3223,7 @@ packages: '@types/yargs-parser': 21.0.0 dev: false - /@typescript-eslint/eslint-plugin/5.45.0_czs5uoqkd3podpy6vgtsxfc7au: + /@typescript-eslint/eslint-plugin/5.45.0_wke4plxjew2ogjxrdwvzd2srfq: resolution: {integrity: sha512-CXXHNlf0oL+Yg021cxgOdMHNTXD17rHkq7iW6RFHoybdFgQBjU3yIXhhcPpGwr1CjZlo6ET8C6tzX5juQoXeGA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3233,23 +3234,23 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/parser': 5.45.0_wy4udjehnvkneqnogzx5kughki '@typescript-eslint/scope-manager': 5.45.0 - '@typescript-eslint/type-utils': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a - '@typescript-eslint/utils': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/type-utils': 5.45.0_wy4udjehnvkneqnogzx5kughki + '@typescript-eslint/utils': 5.45.0_wy4udjehnvkneqnogzx5kughki debug: 4.3.4 eslint: 8.28.0 ignore: 5.2.1 natural-compare-lite: 1.4.0 regexpp: 3.2.0 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.9.3 - typescript: 4.9.3 + tsutils: 3.21.0_typescript@4.9.4 + typescript: 4.9.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/parser/5.45.0_hsf322ms6xhhd4b5ne6lb74y4a: + /@typescript-eslint/parser/5.45.0_wy4udjehnvkneqnogzx5kughki: resolution: {integrity: sha512-brvs/WSM4fKUmF5Ot/gEve6qYiCMjm6w4HkHPfS6ZNmxTS0m0iNN4yOChImaCkqc1hRwFGqUyanMXuGal6oyyQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3261,10 +3262,10 @@ packages: dependencies: '@typescript-eslint/scope-manager': 5.45.0 '@typescript-eslint/types': 5.45.0 - '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.3 + '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.4 debug: 4.3.4 eslint: 8.28.0 - typescript: 4.9.3 + typescript: 4.9.4 transitivePeerDependencies: - supports-color dev: true @@ -3277,7 +3278,7 @@ packages: '@typescript-eslint/visitor-keys': 5.45.0 dev: true - /@typescript-eslint/type-utils/5.45.0_hsf322ms6xhhd4b5ne6lb74y4a: + /@typescript-eslint/type-utils/5.45.0_wy4udjehnvkneqnogzx5kughki: resolution: {integrity: sha512-DY7BXVFSIGRGFZ574hTEyLPRiQIvI/9oGcN8t1A7f6zIs6ftbrU0nhyV26ZW//6f85avkwrLag424n+fkuoJ1Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3287,12 +3288,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.3 - '@typescript-eslint/utils': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.4 + '@typescript-eslint/utils': 5.45.0_wy4udjehnvkneqnogzx5kughki debug: 4.3.4 eslint: 8.28.0 - tsutils: 3.21.0_typescript@4.9.3 - typescript: 4.9.3 + tsutils: 3.21.0_typescript@4.9.4 + typescript: 4.9.4 transitivePeerDependencies: - supports-color dev: true @@ -3302,7 +3303,7 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/5.45.0_typescript@4.9.3: + /@typescript-eslint/typescript-estree/5.45.0_typescript@4.9.4: resolution: {integrity: sha512-maRhLGSzqUpFcZgXxg1qc/+H0bT36lHK4APhp0AEUVrpSwXiRAomm/JGjSG+kNUio5kAa3uekCYu/47cnGn5EQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3317,13 +3318,13 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.3.8 - tsutils: 3.21.0_typescript@4.9.3 - typescript: 4.9.3 + tsutils: 3.21.0_typescript@4.9.4 + typescript: 4.9.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/utils/5.45.0_hsf322ms6xhhd4b5ne6lb74y4a: + /@typescript-eslint/utils/5.45.0_wy4udjehnvkneqnogzx5kughki: resolution: {integrity: sha512-OUg2JvsVI1oIee/SwiejTot2OxwU8a7UfTFMOdlhD2y+Hl6memUSL4s98bpUTo8EpVEr0lmwlU7JSu/p2QpSvA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -3333,7 +3334,7 @@ packages: '@types/semver': 7.3.13 '@typescript-eslint/scope-manager': 5.45.0 '@typescript-eslint/types': 5.45.0 - '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.3 + '@typescript-eslint/typescript-estree': 5.45.0_typescript@4.9.4 eslint: 8.28.0 eslint-scope: 5.1.1 eslint-utils: 3.0.0_eslint@8.28.0 @@ -4976,7 +4977,7 @@ packages: eslint-import-resolver-webpack: optional: true dependencies: - '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/parser': 5.45.0_wy4udjehnvkneqnogzx5kughki debug: 3.2.7 eslint: 8.28.0 eslint-import-resolver-node: 0.3.6 @@ -5006,7 +5007,7 @@ packages: '@typescript-eslint/parser': optional: true dependencies: - '@typescript-eslint/parser': 5.45.0_hsf322ms6xhhd4b5ne6lb74y4a + '@typescript-eslint/parser': 5.45.0_wy4udjehnvkneqnogzx5kughki array-includes: 3.1.6 array.prototype.flat: 1.3.1 debug: 2.6.9 @@ -5197,7 +5198,7 @@ packages: resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} engines: {node: '>= 0.8'} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 require-like: 0.1.2 dev: false @@ -5454,7 +5455,7 @@ packages: optional: true dev: false - /fork-ts-checker-webpack-plugin/6.5.2_vfotqvx6lgcbf3upbs6hgaza4q: + /fork-ts-checker-webpack-plugin/6.5.2_3fkjkrd3audxnith3e7fo4fnxi: resolution: {integrity: sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==} engines: {node: '>=10', yarn: '>=1.0.0'} peerDependencies: @@ -5481,7 +5482,7 @@ packages: schema-utils: 2.7.0 semver: 7.3.8 tapable: 1.1.3 - typescript: 4.9.3 + typescript: 4.9.4 webpack: 5.75.0 dev: false @@ -6391,7 +6392,7 @@ packages: engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: '@jest/types': 29.3.1 - '@types/node': 18.11.9 + '@types/node': 18.11.12 chalk: 4.1.2 ci-info: 3.7.0 graceful-fs: 4.2.10 @@ -6402,7 +6403,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -6410,7 +6411,7 @@ packages: resolution: {integrity: sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.11.12 jest-util: 29.3.1 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -7708,17 +7709,17 @@ packages: engines: {node: '>=4'} dev: false - /prettier-plugin-tailwindcss/0.1.13_prettier@2.8.0: + /prettier-plugin-tailwindcss/0.1.13_prettier@2.8.1: resolution: {integrity: sha512-/EKQURUrxLu66CMUg4+1LwGdxnz8of7IDvrSLqEtDqhLH61SAlNNUSr90UTvZaemujgl3OH/VHg+fyGltrNixw==} engines: {node: '>=12.17.0'} peerDependencies: prettier: '>=2.2.0' dependencies: - prettier: 2.8.0 + prettier: 2.8.1 dev: true - /prettier/2.8.0: - resolution: {integrity: sha512-9Lmg8hTFZKG0Asr/kW9Bp8tJjRVluO8EJQVfY2T7FMw9T5jy4I/Uvx0Rca/XWf50QQ1/SS48+6IJWnrb+2yemA==} + /prettier/2.8.1: + resolution: {integrity: sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==} engines: {node: '>=10.13.0'} hasBin: true dev: true @@ -7877,7 +7878,7 @@ packages: pure-color: 1.3.0 dev: false - /react-dev-utils/12.0.1_vfotqvx6lgcbf3upbs6hgaza4q: + /react-dev-utils/12.0.1_3fkjkrd3audxnith3e7fo4fnxi: resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==} engines: {node: '>=14'} peerDependencies: @@ -7896,7 +7897,7 @@ packages: escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.2_vfotqvx6lgcbf3upbs6hgaza4q + fork-ts-checker-webpack-plugin: 6.5.2_3fkjkrd3audxnith3e7fo4fnxi global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -7911,7 +7912,7 @@ packages: shell-quote: 1.7.4 strip-ansi: 6.0.1 text-table: 0.2.0 - typescript: 4.9.3 + typescript: 4.9.4 webpack: 5.75.0 transitivePeerDependencies: - eslint @@ -7968,7 +7969,7 @@ packages: /react-is/16.13.1: resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - /react-json-view/1.21.3_7lpwapvzekzihmf4mk5gspfxj4: + /react-json-view/1.21.3_yqqarjzm4nnoetch7z7xn2dea4: resolution: {integrity: sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==} peerDependencies: react: ^17.0.0 || ^16.3.0 || ^15.5.4 @@ -7979,7 +7980,7 @@ packages: react-base16-styling: 0.6.0 react-dom: 17.0.2_react@17.0.2 react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 8.4.0_qnxonbsml5syl42mqdnwkqq4yu + react-textarea-autosize: 8.4.0_odph5zpxnhqxi2epe2unwomxxu transitivePeerDependencies: - '@types/react' - encoding @@ -8052,7 +8053,7 @@ packages: tiny-warning: 1.0.3 dev: false - /react-textarea-autosize/8.4.0_qnxonbsml5syl42mqdnwkqq4yu: + /react-textarea-autosize/8.4.0_odph5zpxnhqxi2epe2unwomxxu: resolution: {integrity: sha512-YrTFaEHLgJsi8sJVYHBzYn+mkP3prGkmP2DKb/tm0t7CLJY5t1Rxix8070LAKb0wby7bl/lf2EeHkuMihMZMwQ==} engines: {node: '>=10'} peerDependencies: @@ -8061,7 +8062,7 @@ packages: '@babel/runtime': 7.20.6 react: 17.0.2 use-composed-ref: 1.3.0_react@17.0.2 - use-latest: 1.2.1_qnxonbsml5syl42mqdnwkqq4yu + use-latest: 1.2.1_odph5zpxnhqxi2epe2unwomxxu transitivePeerDependencies: - '@types/react' dev: false @@ -8878,12 +8879,14 @@ packages: stable: 0.1.8 dev: false - /swr/1.3.0_react@17.0.2: - resolution: {integrity: sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==} + /swr/2.0.0_react@17.0.2: + resolution: {integrity: sha512-IhUx5yPkX+Fut3h0SqZycnaNLXLXsb2ECFq0Y29cxnK7d8r7auY2JWNbCW3IX+EqXUg3rwNJFlhrw5Ye/b6k7w==} + engines: {pnpm: '7'} peerDependencies: react: ^16.11.0 || ^17.0.0 || ^18.0.0 dependencies: react: 17.0.2 + use-sync-external-store: 1.2.0_react@17.0.2 dev: false /tailwindcss/3.2.4_postcss@8.4.19: @@ -9035,14 +9038,19 @@ packages: resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==} dev: false - /tsutils/3.21.0_typescript@4.9.3: + /tslog/4.4.4: + resolution: {integrity: sha512-+IJBVcB6h4BhMH3+IvB69lDZ/5ClHX40I66bGTKPAx+/S9nDqJCYN323MxR/gch3Agvrwif4HQorI/YLqAeoNA==} + engines: {node: '>=16'} + dev: false + + /tsutils/3.21.0_typescript@4.9.4: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 - typescript: 4.9.3 + typescript: 4.9.4 dev: true /type-check/0.4.0: @@ -9075,8 +9083,8 @@ packages: is-typedarray: 1.0.0 dev: false - /typescript/4.9.3: - resolution: {integrity: sha512-CIfGzTelbKNEnLpLdGFgdyKhG23CKdKgQPOBc+OUNrkJ2vr+KSzsSV5kq5iWhEQbok+quxgGzrAtGWCyU7tHnA==} + /typescript/4.9.4: + resolution: {integrity: sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==} engines: {node: '>=4.2.0'} hasBin: true @@ -9276,8 +9284,8 @@ packages: resolution: {integrity: sha512-KmkCs6SjE6t4ihrfW9JelAPQIIIFbJweaaSLTh/4AO+c58JlDcb+GbdPt8yr5lRcFg4rPswRFRRhBGpWwh0K/Q==} dev: false - /use-breakpoint/3.0.4_sfoxds7t5ydpegc3knd667wn6m: - resolution: {integrity: sha512-/EYaLgXUXgOBCri6M0vh4bpRIyjdUEies0Nikvg5f5QnkejKnWZDmlsRK7Oa2BfoLQSBh2XKLza3rOcB1R9Kcw==} + /use-breakpoint/3.0.6_sfoxds7t5ydpegc3knd667wn6m: + resolution: {integrity: sha512-0tjU8455QQTvoaZPuIwr92yOAFqgQkYof0t4RD71sEc9dcpgCG0OeeFXnvYAvA99OA8LhfkX/frJ14SrScueSw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} peerDependencies: react: '>=16.8' @@ -9295,7 +9303,7 @@ packages: react: 17.0.2 dev: false - /use-isomorphic-layout-effect/1.1.2_qnxonbsml5syl42mqdnwkqq4yu: + /use-isomorphic-layout-effect/1.1.2_odph5zpxnhqxi2epe2unwomxxu: resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} peerDependencies: '@types/react': '*' @@ -9304,11 +9312,11 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.0.25 + '@types/react': 18.0.26 react: 17.0.2 dev: false - /use-latest/1.2.1_qnxonbsml5syl42mqdnwkqq4yu: + /use-latest/1.2.1_odph5zpxnhqxi2epe2unwomxxu: resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} peerDependencies: '@types/react': '*' @@ -9317,9 +9325,17 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 18.0.25 + '@types/react': 18.0.26 + react: 17.0.2 + use-isomorphic-layout-effect: 1.1.2_odph5zpxnhqxi2epe2unwomxxu + dev: false + + /use-sync-external-store/1.2.0_react@17.0.2: + resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + dependencies: react: 17.0.2 - use-isomorphic-layout-effect: 1.1.2_qnxonbsml5syl42mqdnwkqq4yu dev: false /util-deprecate/1.0.2: diff --git a/protobufs b/protobufs index c82c15aa..b4677e35 160000 --- a/protobufs +++ b/protobufs @@ -1 +1 @@ -Subproject commit c82c15aac71b9134d96c03dbe319916739cc8314 +Subproject commit b4677e35ca44ed80394f90c2e60703add8ff4f5b diff --git a/src/pages/downloads/_components/FirmwareCard.tsx b/src/pages/downloads/_components/FirmwareCard.tsx index 18212699..501312cf 100644 --- a/src/pages/downloads/_components/FirmwareCard.tsx +++ b/src/pages/downloads/_components/FirmwareCard.tsx @@ -1,11 +1,11 @@ import React from 'react'; -import { Release } from '@site/src/utils/github'; +import { DeviceFirmwareResource } from '../../../utils/apiTypes.js'; export interface releaseCardProps { variant: string; description: string; - release?: Release[]; + release?: DeviceFirmwareResource[]; } export const FirmwareCard = ({ @@ -21,33 +21,29 @@ export const FirmwareCard = ({ >

{variant}

{release?.length && ( -
{release[0].tag_name} + {release[0].title} )}

{description}

-
-
- - Older Versions - - {release.slice(1, 6).map((release) => { - return ( - - ); - })} -
-
+
+
+ Older Versions + {release.slice(1, 6).map((release) => { + return ( + + ); + })} +
+
{release?.length ? ( <> Download {variant} diff --git a/src/pages/downloads/index.tsx b/src/pages/downloads/index.tsx index e765e70b..9cd32e27 100644 --- a/src/pages/downloads/index.tsx +++ b/src/pages/downloads/index.tsx @@ -12,7 +12,7 @@ import { } from '@heroicons/react/24/solid'; import Layout from '@theme/Layout'; -import { Release } from '../../utils/github'; +import { FirmwareReleases } from '../../utils/apiTypes.js'; import { fetcher } from '../../utils/swr'; import { FirmwareCard, @@ -20,14 +20,11 @@ import { } from './_components/FirmwareCard'; const Firmware = (): JSX.Element => { - const { data, error } = useSWR( - 'https://api.github.com/repos/meshtastic/firmware/releases', + const { data, error } = useSWR( + 'http://localhost:4000/github/firmware/list', fetcher, ); - const beta = data?.filter((release) => release.prerelease === false); - - const alpha = data?.filter((release) => release.prerelease === true); return ( {
-
+

Apple

@@ -138,9 +135,7 @@ const Firmware = (): JSX.Element => {
-
- Sideloading also available. -
+
Sideloading also available.
{ {data && !error ? ( <>
diff --git a/src/utils/apiTypes.ts b/src/utils/apiTypes.ts index 46efef9f..01698a9b 100644 --- a/src/utils/apiTypes.ts +++ b/src/utils/apiTypes.ts @@ -48,3 +48,18 @@ export interface Author { showcase?: Showcase[]; } + +export interface DeviceFirmwareResource { + id: string; + title: string; + page_url?: string; + zip_url?: string; +} + +export interface FirmwareReleases { + releases: { + stable: DeviceFirmwareResource[]; + alpha: DeviceFirmwareResource[]; + }; + pullRequests: DeviceFirmwareResource[]; +} diff --git a/src/utils/github.ts b/src/utils/github.ts deleted file mode 100644 index fc267b2a..00000000 --- a/src/utils/github.ts +++ /dev/null @@ -1,128 +0,0 @@ -export interface User { - login: string; - id: number; - node_id: string; - avatar_url: string; - gravatar_id: string; - url: string; - html_url: string; - followers_url: string; - following_url: string; - gists_url: string; - starred_url: string; - subscriptions_url: string; - organizations_url: string; - repos_url: string; - events_url: string; - received_events_url: string; - type: string; - site_admin: boolean; - name: string; - company: string | null; - blog: string; - location: string; - email: string | null; - hireable: string | null; - bio: string | null; - twitter_username: string | null; - public_repos: number; - public_gists: number; - followers: number; - following: number; - created_at: string; - updated_at: string; -} - -export interface Author { - login: string; - id: number; - node_id: string; - avatar_url: string; - gravatar_id: string; - url: string; - html_url: string; - followers_url: string; - following_url: string; - gists_url: string; - starred_url: string; - subscriptions_url: string; - organizations_url: string; - repos_url: string; - events_url: string; - received_events_url: string; - type: string; - site_admin: boolean; -} - -export interface Uploader { - login: string; - id: number; - node_id: string; - avatar_url: string; - gravatar_id: string; - url: string; - html_url: string; - followers_url: string; - following_url: string; - gists_url: string; - starred_url: string; - subscriptions_url: string; - organizations_url: string; - repos_url: string; - events_url: string; - received_events_url: string; - type: string; - site_admin: boolean; -} - -export interface Asset { - url: string; - id: number; - node_id: string; - name: string; - label: string; - uploader: Uploader; - content_type: string; - state: string; - size: number; - download_count: number; - created_at: Date; - updated_at: Date; - browser_download_url: string; -} - -export interface Reactions { - url: string; - total_count: number; - '+1': number; - '-1': number; - laugh: number; - hooray: number; - confused: number; - heart: number; - rocket: number; - eyes: number; -} - -export interface Release { - url: string; - assets_url: string; - upload_url: string; - html_url: string; - id: number; - author: Author; - node_id: string; - tag_name: string; - target_commitish: string; - name: string; - draft: boolean; - prerelease: boolean; - created_at: Date; - published_at: Date; - assets: Asset[]; - tarball_url: string; - zipball_url: string; - body: string; - reactions: Reactions; - mentions_count: number; -} From 75ed09afadeab3b20090a1cc71d808a375d807b1 Mon Sep 17 00:00:00 2001 From: Sacha Weatherstone Date: Sun, 11 Dec 2022 15:21:39 +1000 Subject: [PATCH 26/41] Update endpoint --- src/pages/downloads/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/downloads/index.tsx b/src/pages/downloads/index.tsx index 9cd32e27..e7c1c551 100644 --- a/src/pages/downloads/index.tsx +++ b/src/pages/downloads/index.tsx @@ -21,7 +21,7 @@ import { const Firmware = (): JSX.Element => { const { data, error } = useSWR( - 'http://localhost:4000/github/firmware/list', + 'https://api.meshtastic.org/github/firmware/list', fetcher, ); From 9c61d587659be1146e0b5b303c3a2e9ae8cc8a52 Mon Sep 17 00:00:00 2001 From: Sacha Weatherstone Date: Sun, 11 Dec 2022 15:53:49 +1000 Subject: [PATCH 27/41] Remove 1.2 Docs --- docs/1.2-End-of-life/channel-advanced.mdx | 307 ---------- docs/1.2-End-of-life/channel.mdx | 322 ---------- docs/1.2-End-of-life/gps.mdx | 565 ------------------ docs/1.2-End-of-life/ham.mdx | 124 ---- docs/1.2-End-of-life/hardware/gpsmodule.mdx | 78 --- docs/1.2-End-of-life/hardware/heltec.mdx | 36 -- docs/1.2-End-of-life/index.mdx | 13 - docs/1.2-End-of-life/misc.mdx | 315 ---------- docs/1.2-End-of-life/mqtt.mdx | 468 --------------- docs/1.2-End-of-life/power.mdx | 498 --------------- docs/1.2-End-of-life/router.mdx | 82 --- .../settings/canned-message-module.mdx | 274 --------- .../settings/external-notification-module.mdx | 337 ----------- docs/1.2-End-of-life/settings/index.mdx | 25 - .../settings/input-broker-module.mdx | 464 -------------- .../settings/range-test-module.mdx | 283 --------- .../settings/serial-module.mdx | 321 ---------- .../settings/store-and-forward-module.mdx | 336 ----------- .../settings/telemetry-module.mdx | 499 ---------------- .../software/community/atak.mdx | 23 - .../1.2-End-of-life/software/community/go.mdx | 49 -- .../software/community/index.mdx | 16 - .../software/community/pygui.mdx | 37 -- docs/1.2-End-of-life/software/mqtt.mdx | 382 ------------ docs/1.2-End-of-life/wifi.mdx | 387 ------------ 25 files changed, 6241 deletions(-) delete mode 100644 docs/1.2-End-of-life/channel-advanced.mdx delete mode 100644 docs/1.2-End-of-life/channel.mdx delete mode 100644 docs/1.2-End-of-life/gps.mdx delete mode 100644 docs/1.2-End-of-life/ham.mdx delete mode 100644 docs/1.2-End-of-life/hardware/gpsmodule.mdx delete mode 100644 docs/1.2-End-of-life/hardware/heltec.mdx delete mode 100644 docs/1.2-End-of-life/index.mdx delete mode 100644 docs/1.2-End-of-life/misc.mdx delete mode 100644 docs/1.2-End-of-life/mqtt.mdx delete mode 100644 docs/1.2-End-of-life/power.mdx delete mode 100644 docs/1.2-End-of-life/router.mdx delete mode 100644 docs/1.2-End-of-life/settings/canned-message-module.mdx delete mode 100644 docs/1.2-End-of-life/settings/external-notification-module.mdx delete mode 100644 docs/1.2-End-of-life/settings/index.mdx delete mode 100644 docs/1.2-End-of-life/settings/input-broker-module.mdx delete mode 100644 docs/1.2-End-of-life/settings/range-test-module.mdx delete mode 100644 docs/1.2-End-of-life/settings/serial-module.mdx delete mode 100644 docs/1.2-End-of-life/settings/store-and-forward-module.mdx delete mode 100644 docs/1.2-End-of-life/settings/telemetry-module.mdx delete mode 100644 docs/1.2-End-of-life/software/community/atak.mdx delete mode 100644 docs/1.2-End-of-life/software/community/go.mdx delete mode 100644 docs/1.2-End-of-life/software/community/index.mdx delete mode 100644 docs/1.2-End-of-life/software/community/pygui.mdx delete mode 100644 docs/1.2-End-of-life/software/mqtt.mdx delete mode 100644 docs/1.2-End-of-life/wifi.mdx diff --git a/docs/1.2-End-of-life/channel-advanced.mdx b/docs/1.2-End-of-life/channel-advanced.mdx deleted file mode 100644 index a6aabbb2..00000000 --- a/docs/1.2-End-of-life/channel-advanced.mdx +++ /dev/null @@ -1,307 +0,0 @@ ---- -id: channel-advanced -title: 1.2 Channel Settings - Advanced -sidebar_label: 1.2 Channel - Advanced ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -These settings are for advanced users only. If you don't know what you are doing you could damage your radio or break local radio laws. Proceed with caution. -::: - -## Overview - -Most users should not need to change these settings. The default [modem_config](channel#modem_config) settings should work just fine. - -## Settings - -| Setting | Acceptable Values | Default | -| :--------------: | :------------------------------------------------------------------------------------------------: | :---------------------------: | -| bandwidth | `10.4`, `15.6`, `20.8`, `31.25`, `41.7`, `62.5`, `125`, `250`, `500` | `125` | -| channel_num | Depends on Region | Region Channel Number Default | -| coding_rate | `5`, `6`, `7`, `8` | `5` | -| frequency_offset | real numbers | `0` | -| spread_factor | `7`, `8`, `9`, `10`, `11`, `12` | `7` | -| tx_power | `0`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `10`, `11`, `12`, `13`, `14`, `15`, `16`, `17`, (dBm) | `0` | - -### bandwidth - -Total amount of spectrum used for the transmission. - -#### Set Bandwidth - - - - -```shell -meshtastic --ch-set bandwidth 125 --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### channel_num - -An abstraction that maps to a specific center frequency used for transmission. - -#### Set Channel Number - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### coding_rate - -The amount of forward error correction applied to allow for us to automatically repair errors in the data transmission. - -#### Set Coding Rate - - - - -```shell -meshtastic --ch-set coding_rate 8 --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### frequency_offset - -This parameter is for advanced users with advanced test equipment, we do not recommend most users use it. A frequency offset that is added to to the calculated band center frequency. Used to correct for crystal calibration errors. - -#### Configure frequency_offset - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### spread_factor - -LoRa is a spread spectrum technology. spread_factor is how much the signal is spread over the spectrum. SF8 = 2^8 or spread 256 times. SF12 = 2^12 or spread 4096 times. - -#### Set Spread Factor - - - - -```shell -meshtastic --ch-set spread_factor 12 --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### tx_power - -Configured transmit power out of the LoRa radio, measured in dBM. Setting this to `0` will use the device default which is the max legal continuous power for your region. - -:::caution -Ensure that you are not exceeding your country's regulations. - -`Country regulation - antenna gain = tx_power max setting` -::: - -#### Set TX Power - - - - -```shell title="Set Default" -meshtastic --ch-set tx_power 0 --ch-index 0 -``` - -```shell title="Set to 2dBM" -meshtastic --ch-set tx_power 2 --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/channel.mdx b/docs/1.2-End-of-life/channel.mdx deleted file mode 100644 index 3479cbed..00000000 --- a/docs/1.2-End-of-life/channel.mdx +++ /dev/null @@ -1,322 +0,0 @@ ---- -id: channel -title: 1.2 Channel Settings -sidebar_label: 1.2 Channel ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -## Overview - -Channel settings are an integral part of the way your devices communicate across the mesh. If you have mismatched channel settings, your radios will be unable to communicate with one another. - -## Settings - - - -| Setting | Acceptable Values | Default | -| :----------: | :---------------------------------------------------------------------------: | :---------------: | -| id | `integer` | `0` | -| modem_config | `Bw125Cr45Sf128`, `Bw500Cr45Sf128`, `Bw31_25Cr48Sf512`, `Bw125Cr48Sf4096` | `Bw125Cr48Sf4096` | -| name | `string` | `""` | -| psk | `0`, `1`, `2`, `3`, `4`, `5`, `6`, `7`, `8`, `9`, `none`, `default`, `random` | `1` | -| region | `Unset`, `US`, `EU433`, `EU865`, `CN`, `JP`, `ANZ`, `KR`, `TW`, `RU` | `Unset` | - -### id - - - -#### Set Channel ID - - - - -```shell title="Set the PRIMARY channel ID" -meshtastic --ch-set id 1234 --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::note -The channel `id` must be an integer. -::: - -### modem_config - -| Setting | Name (Range/Speed) | Bandwidth | Coding Rate | Spread Factor | Speed | -| :----------------: | :----------------: | :-------: | :---------: | :-------------------: | :--------: | -| `Bw500Cr45Sf128` | Short/Fast | 500 kHz | 4/5 | 7 = 128chips/symbol | 18.89 kbps | -| `Bw125Cr45Sf128` | Short/Slow | 125 kHz | 4/5 | 7 = 128chips/symbol | 4.69 kbps | -| `Bw250Cr47Sf1024` | Medium/Fast | 250 kHz | 4/7 | 10 = 1024chips/symbol | 1.2 kbps | -| `Bw250Cr46Sf2048` | Medium/Slow | 250 kHz | 4/6 | 11 = 2048chips/symbol | 0.75 kbps | -| `Bw31_25Cr48Sf512` | Long/Fast | 31.25 kHz | 4/8 | 9 = 512chips/symbol | 0.19 kbps | -| `Bw125Cr48Sf4096` | Long/Slow | 125 kHz | 4/8 | 12 = 4096chips/symbol | 0.13 kbps | - -#### Set Modem - - - - -```shell title="Set Modem - LongSlow" -meshtastic --ch-set modem_config Bw125Cr48Sf4096 --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::tip -For advanced modem configuration, see [Channel Settings - Advanced](channel-advanced). -::: - -### name - -The name of the channel. If this is left an empty string it is assumed that this channel is the special (minimally secure) "Default" channel. Channel Names should be short (less than 12 bytes). - -#### Set Channel Name - - - - -```shell title="Set channel name for the PRIMARY channel" -meshtastic --ch-set name MyChannel --ch-index 0 -``` - -```shell title="Set channel name for the PRIMARY channel with spaces" -meshtastic --ch-set name "My Channel" --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::note -A channel `id` must be set in order to name a channel. -::: - -### psk - -:::note -Selecting a `default` or any of the `simple` values from the following table will use publicly known encryption keys. They're shipped with Meshtastic source code and thus, anyone can listen to messages encrypted by them. They're great for testing and public channels. -::: - -| Setting | Behavior | -| :--------------------: | :-----------------------------------------------------------------------------------: | -| `none` | Disable Encryption | -| `default` | Default Encryption (use the weak encryption key) | -| `random` | Generate a secure 256-bit encryption key. Use this setting for private communication. | -| `simple0`- `simple254` | Uses a single byte encoding for encryption | - -:::tip -If you use Meshtastic for exchanging messages you don't want other people to see, `random` is the setting you should use. -::: - -#### Set/Disable Encryption - - - - -```shell title="Set encryption to default on PRIMARY channel" -meshtastic --ch-set psk default --ch-index 0 -``` - -```shell title="Set encryption to random on PRIMARY channel" -meshtastic --ch-set psk random --ch-index 0 -``` - -```shell title="Set encryption to single byte on PRIMARY channel" -meshtastic --ch-set psk simple15 --ch-index 0 -``` - -```shell title="Set encryption to your own key on PRIMARY channel" -meshtastic --ch-set psk 0x1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b --ch-index 0 -``` - -```shell title="Disable encryption on PRIMARY channel" -meshtastic --ch-set psk none --ch-index 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### region - -The `region` variable sets which region your radio is configured to work in. It is important to ensure that you've set it to the correct region. If left `Unset`, it will default to `US` settings. - -| Name | Center Frequency | Spacing | Number of Channels | Power Limit | -| :---: | :--------------: | :-----: | :----------------: | :---------: | -| US | 903.08 | 2.16 | 13 | 0 | -| EU433 | 433.175 | 0.2 | 8 | 0 | -| EU868 | 865.2 | 0.3 | 10 | 0 | -| CN | 470.0 | 2.0 | 20 | 0 | -| JP | 920.0 | 0.5 | 10 | 13 | -| ANZ | 916.0 | 0.5 | 20 | 0 | -| KR | 921.9 | 0.2 | 8 | 0 | -| TW | 923.0 | 0.2 | 10 | 0 | -| RU | 868.9 | 0.2 | 2 | 20 | -| Unset | 903.08 | 2.16 | 13 | 0 | - -:::note -For more details about `region` settings, you can see the source code [here](https://github.com/meshtastic/firmware/blob/master/src/mesh/RadioInterface.cpp) -::: - -#### Set Region - - - - -```shell title="Unset Region" -meshtastic --set region Unset -``` - -```shell title="Set Region" -meshtastic --set region US -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/gps.mdx b/docs/1.2-End-of-life/gps.mdx deleted file mode 100644 index a4ffa059..00000000 --- a/docs/1.2-End-of-life/gps.mdx +++ /dev/null @@ -1,565 +0,0 @@ ---- -id: gps -title: 1.2 GPS Settings -sidebar_label: 1.2 GPS ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::caution -Altering/disabling the GPS functionality does not mean that you will be unable to be found. Via triangulation of your radio, location may be given up to someone if they are determined enough. -::: - -## Overview - -GPS is provided by either the device or your paired phone. More than likely, you will want to keep GPS functionality operational. It is not required, but does assist in some of the time calculations at a bare minimum. - -## Settings - -| Setting | Acceptable Values | Default | -| :----------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------: | -| fixed_position | `true`, `false` | `false` | -| gps_accept_2d | `true`, `false` | `false` | -| gps_attempt_time | `integer` (seconds) | `0` (see note) | -| gps_format | `GpsFormatDec`, `GpsFormatDMS`, `GpsFormatUTM`, `GpsFormatMGRS`, `GpsFormatOLC`, `GpsFormatOSGR` | `GpsFormatDec` | -| gps_max_dop | `integer` | `0` | -| gps_operation | `GpsOpUnset`, ~~`GpsOpStationary`~~, `GpsOpMobile`, `GpsOpTimeOnly`, `GpsOpDisabled` | `GpsOpUnset` | -| gps_update_interval | `integer` (seconds) | `0` (see note) | -| location_share | `LocUnset`, `LocEnabled`, `LocDisabled` | `LocUnset` | -| position_broadcast_secs | `integer` (seconds) | `0` (see note) | -| position_broadcast_smart | `true`, `false` | `false` | -| position_flags | `POS_UNDEFINED`, `POS_ALTITUDE`, `POS_ALT_MSL`, `POS_GEO_SEP`, `POS_DOP`, `POS_HVDOP`, `PDOP`, `POS_BATTERY`, `POS_SATINVIEW`, `POS_SEQ_NOS`, `POS_TIMESTAMP` | `POS_UNDEFINED` | - -:::note -On `gps_attempt_time`, `gps_update_interval`, & `position_broadcast_secs` when you set these to `0` you are not disabling these features. - -On `gps_attempt_time` and `gps_update_interval`, the value `0` will be interpreted by the device as the default of **30 seconds**. On `position_broadcast_secs` the value `0` will be interpreted as the default of **15 minutes**. - -If you wish to disable any GPS features, see below for more information. -::: - -### fixed_position - -If set, this node is at a fixed position. The device will generate GPS updates at the regular `gps_update_interval`, but use whatever the last lat/lon/alt it saved for the node. The lat/lon/alt can be set by an internal GPS or with the help of the mobile device's GPS. - -#### Set/Unset Fixed Position - - - - -```shell title="Set Fixed Position - Current Location" -meshtastic --set fixed_position true -``` - -:::note -The device will continue to acquire GPS coordinates according to the `gps_update_interval`, but will use the last saved coordinates as its fixed point. -::: - -```shell title="Set Fixed Position - User Defined" -meshtastic --setlat 37.8651 --setlon -119.5383 -``` - -```shell title="Unset Fixed Position" -meshtastic --set fixed_position false -``` - -:::note -It may take some time to see that the change has taken effect. The GPS location is updated according to the value specified on `gps_update_interval` and the mesh will be notified of the new position in relation to the `position_broadcast_secs` value. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### gps_attempt_time - -Determines the amount of time that a GPS fix should be allowed to take. The default is every 30 seconds. If you increase this value, it will allow the device that amount of time in seconds to acquire coordinates. If the device is unable to get a fix, it will turn off until the next interval. GPS coordinates are updated every [`gps_update_interval`](#gps_update_interval) seconds. - -#### Change GPS attempt time frequency - - - - -```shell title="Set GPS attempt time to default (30 seconds)" -meshtastic --set gps_attempt_time 0 -``` - -```shell title="Set GPS attempt time to 45 seconds" -meshtastic --set gps_attempt_time 45 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### gps_format - -Determines how the GPS coordinates are displayed on the OLED screen. - -| Value | Description | -| :-----------: | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| GpsFormatDec | GPS coordinates are displayed in the normal decimal degrees format: DD.DDDDDD DDD.DDDDDD | -| GpsFormatDMS | GPS coordinates are displayed in the degrees minutes seconds format: DD°MM'SS"C DDD°MM'SS"C, where C is the compass point representing the locations quadrant | -| GpsFormatUTM | GPS coordinates are displayed in Universal Transverse Mercator format: ZZB EEEEEE NNNNNNN, where Z is zone, B is band, E is easting, N is northing | -| GpsFormatMGRS | GPS coordinates are displayed in Military Grid Reference System format: ZZB CD EEEEE NNNNN, where Z is zone, B is band, C is the east 100k square, D is the north 100k square, E is easting, N is northing | -| GpsFormatOLC | GPS coordinates are displayed in Open Location Code (aka Plus Codes) | -| GpsFormatOSGR | GPS coordinates are displayed in Ordnance Survey Grid Reference (the National Grid System of the UK). Format: AB EEEEE NNNNN, where A is the east 100k square, B is the north 100k square, E is the easting, N is the northing | - -#### Specify GPS Screen Display - - - - -```shell title="Specify GPS format on device screen" -meshtastic --set gps_format GpsFormatUTM -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - - -### gps_operation - -How the GPS hardware in the device is operated. - -:::note -This is independent of how our location is shared with other devices. For that see [`location_share`](#location_share). -::: - -| Value | Description | -| :-----------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| GpsOpUnset | **Default**: operates the same as `GpsOpMobile`. | -| ~~GpsOpStationary~~ | Note: This mode was removed, because it is identical go `GpsOpMobile` with a `gps_update_interval` of once per day This node is mostly stationary, we should try to get location only once per day, Once we have that position we should turn the GPS to sleep mode This is the recommended configuration for stationary 'router' nodes | -| GpsOpMobile | This node is mobile and we should get GPS position at a rate governed by `gps_update_interval` | -| GpsOpTimeOnly | We should only use the GPS to get time (no location data should be acquired/stored) Once we have the time we treat `gps_update_interval` as MAXINT (i.e. sleep forever) | -| GpsOpDisabled | GPS is always turned off - this mode is not recommended - use `GpsOpTimeOnly` instead. | - -#### Enable/Disable GPS - - - - -```shell title="Set GPS to default settings" -meshtastic --set gps_operation GpsOpUnset -``` - -```shell title="Set GPS to only be used for time" -meshtastic --set gps_operation GpsOpTimeOnly -``` - -```shell title="Disable GPS Completely" -meshtastic --set gps_operation GpsOpDisabled -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::note -`gps_operation GpsOpTimeOnly` is preferred to `gps_operation GpsOPDisabled` because it allows the device to get a hi-res time. -::: - -### gps_update_interval - -Determines how often should the device should attempt to acquire a GPS position (in seconds). The length of time the device is allowed to attempt to acquire GPS coordinates each interval is set using [`gps_attempt_time`](#gps_attempt_time). The default is every 30 seconds. - -#### Specify GPS update interval - - - - -```shell title="Set GPS update interval to default settings (every 30 seconds)" -meshtastic --set gps_update_interval 0 -``` - -```shell title="Set GPS update interval to every 45 seconds" -meshtastic --set gps_update_interval 45 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### location_share - -Determines whether location is shared with other nodes. See more details. - -| Value | Description | -| :---------: | :--------------------------------------------------------------------------------------------------------------------------------------: | -| LocUnset | **Default**: operates the same as `LocEnabled` | -| LocEnabled | The device is sharing its location (or the paired phone's location) | -| LocDisabled | The device is not sharing its location (if the unit has a GPS it will default to only get time - i.e. [`GpsOpTimeOnly`](#gps_operation)) | - -#### Disable Location Sharing - - - - -```shell title="Disable Location Sharing" -meshtastic --set location_share LocDisabled -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::note -Disabling location sharing does not disable the GPS functionality, only the location sharing via the mesh. -::: - -### position_broadcast_secs - -How often our position is sent to the mesh (but only if it has changed significantly). - -The GPS updates will be sent out every `position_broadcast_secs`, with either the actual GPS location, or an empty location if no GPS fix was achieved. This defaults to broadcast every 15 minutes. - -#### Specify GPS position broadcast frequency - - - - -```shell title="Set GPS update interval to default settings (every 15 minutes)" -meshtastic --set position_broadcast_secs 0 -``` - -```shell title="Set GPS update interval to every 60 seconds" -meshtastic --set position_broadcast_secs 60 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### position_broadcast_smart - -`position_broadcast_smart` will send out your position at an increased frequency only if your location has changed enough for a position update to be useful. - -Complements `position_broadcast_secs` (doesn't override that setting) but will apply an algorithm to more frequently update your mesh network if you are in motion and then throttle it down when you are standing still. If you use this feature, it's best to leave `position_broadcast_secs` at the default. - -`position_broadcast_smart` will calculate an ideal position update interval based on the data rate of your selected channel configuration. - -As an example, if you configure your radio to use **Long Range / Fast**, if you have traveled at least 144 meters and it's been at least 61 seconds since the last position update, a new position broadcast will be sent out. If you've moved less than 144 meters, we will broadcast the position based on the value of `position_broadcast_secs`. - -The table below is a summary computed values from the algorithm. - -| Long Name | Update every x-seconds | Update distance traveled (meters) | -| :-----------------: | :--------------------: | :-------------------------------: | -| Long Range / Slow | 88 | 150 | -| Long Range / Fast | 61 | 144 | -| Medium Range / Slow | 30 | 41 | -| Medium Range / Fast | 30 | 30 | -| Short Range / Slow | 30 | 30 | -| Short Range / Fast | 30 | 30 | - -:::tip -A person walking in a straight line will take about 90 seconds to travel 150 meters. That walking speed estimate was used as the baseline for the formula used. -::: - -#### Enable/Disable Smart Position Broadcast - - - - -```shell title="Enable smart position broadcast" -meshtastic --set position_broadcast_smart true -``` - -```shell title="Disable smart position broadcast" -meshtastic --set position_broadcast_smart false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### position_flags - -Bit field of boolean configuration options for POSITION messages (bitwise OR of PositionFlags) - -| Value | Description | -| :-----------: | :---------------------------------------------------------: | ---- | -| POS_UNDEFINED | Required for compilation | -| POS_ALTITUDE | Include an altitude value (if available) | -| POS_ALT_MSL | Altitude value is MSL | -| POS_GEO_SEP | Include geoidal separation | -| POS_DOP | Include the DOP value ; PDOP used by default, see below | -| POS_HVDOP | If POS_DOP set, send separate HDOP / VDOP values instead of | PDOP | -| POS_BATTERY | Include battery level | -| POS_SATINVIEW | Include number of "satellites in view" | -| POS_SEQ_NOS | Include a sequence number incremented per packet | -| POS_TIMESTAMP | Include positional timestamp (from GPS solution) | - -#### Set/Unset Position Flags - - - - -:::tip -Include each flag desired from the table above separated by a single space. -::: - -```shell title="Set Position Flags" -meshtastic --pos-fields POS_ALTITUDE POS_ALT_MSL -``` - -```shell title="Unset Position Flags" -meshtastic --pos-fields POS_UNDEFINED -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/ham.mdx b/docs/1.2-End-of-life/ham.mdx deleted file mode 100644 index 7b673cf7..00000000 --- a/docs/1.2-End-of-life/ham.mdx +++ /dev/null @@ -1,124 +0,0 @@ ---- -id: ham -title: 1.2 Licensed (HAM) Operation -sidebar_label: 1.2 Licensed (HAM) Operation ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -By changing these settings, you are self certifying that you are licensed to operate in the mode you have chosen. Failure to comply with your local regulations may result in fines. -::: - -## Overview - -:::note -This written US only, may or may not be applicable elsewhere. -::: - -Meshtastic can be used by both unlicensed people and licensed operators. If you use Meshtastic with your ham radio license, there are additional privileges and restrictions to consider. - -| Privileges | Restrictions | -| :-------------------------------------------------------------: | :-----------------------------------------------------------: | -|
  • Additional Power
  • Higher gain antennas
|
  • Unencrypted
  • Identified with your ID
| - -## Settings - -| Setting | Acceptable Values | Default | -| :-----: | :---------------: | :-----: | -| set-ham | `string` | `""` | - -### set-ham - -If you are a licensed HAM operator, you can set this variable to be your ID. - -:::warning -By changing these settings, you are self certifying that you are licensed to operate in the mode you have chosen. Failure to comply with your local regulations may result in fines. -::: - -#### Set HAM ID - - - - -```shell title="Set HAM ID" -meshtastic --set-ham KI1345 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -Toggling `set-ham` changes your device settings in the following ways. - -| Setting | `set-ham` Default | Normal Default | -| :----------------------: | :---------------: | :---------------------------------------: | -| `is_licensed` (Protobuf) | `true` | `false` | -| `long_name` (Protobuf) | `id` | User Defined | -| `psk` (Protobuf) | `""` | See [Channel Settings - psk](channel#psk) | -| `short_name` (Protobuf) | TODO | User Defined | - -# Ham Operators - -(This written US only, may be applicable elsewhere) - -Meshtastic can be used by both unlicensed people and licensed operators. - -Having a ham radio license grants you addition privilages and restrictions. - -# Additional privilages - -- Additional power -- Higher gain antennas - -# Restrictions - -- Unencrypted -- Identified with your ID - -# Let's do it! - -Remember, by doing this you are self certifying that you are licensed operate in the mode you have chosen. Failure to comply with your local regulations may result in fines. - -## Use the Python CLI - -Meshtastic is designed to be used without a radio operator license. If you do have a license you can set your operator ID and turn off encryption with the [Python CLI](/docs/software/python/cli/usage#ham-radio-support): - -```shell title="Expected Output" -# You should see a result similar to this: -mydir$ meshtastic --port /dev/ttyUSB1 --set-ham KI1345 -Connected to radio -Setting Ham ID to KI1345 and turning off encryption -Writing modified channels to device -``` diff --git a/docs/1.2-End-of-life/hardware/gpsmodule.mdx b/docs/1.2-End-of-life/hardware/gpsmodule.mdx deleted file mode 100644 index bec46a4d..00000000 --- a/docs/1.2-End-of-life/hardware/gpsmodule.mdx +++ /dev/null @@ -1,78 +0,0 @@ ---- -id: gps-modules -title: External GPS Modules -sidebar_label: GPS Modules -sidebar_position: 3 ---- - -:::warning -GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. -::: - -External GPS modules can be installed to extend the capabilities of simple boards. - -## GY-GPS6MV2 GPS module - -- Based on the ublox/u-blox NEO-6M module -- Input: 3 to 5V -- Interface: RS232 TTL -- Default baud rate: 9600 bps -- Output: NMEA sentences - -[GY-GPS6MV2](/img/hardware/gy-gps6mv2.jpg) - -### LILYGO TTGO Lora32 v2.1-1.6 - -- Wiring instructions: - -| GPS Module Pin | TTGO Lora32 v2.1-1.6 Pin | -| :------------: | :----------------------: | -| VCC | 3.3V | -| RX | IO13 | -| TX | IO15 | -| GND | GND | - -- Once the module is connected, it should be detected automatically by the firmware. - -### LILYGO TTGO Lora32 v2.0 - -- Wiring instructions: - -| GPS Module Pin | TTGO Lora32 v2.0 Pin | -| :------------: | :------------------: | -| VCC | 3.3V | -| RX | 13 | -| TX | 36 | -| GND | GND | - -- Once the module is connected, it should be detected automatically by the firmware. - -### LILYGO TTGO Lora32 v1.3 - -- Wiring instructions: - -| GPS Module Pin | TTGO Lora32 v1.3 Pin | -| :------------: | :------------------: | -| VCC | 3.3V | -| RX | 13 | -| TX | 36 | -| GND | GND | - -- Once the module is connected, it should be detected automatically by the firmware. - -### LILYGO TTGO Lora32 V1.0 - -- This board does not support external GPS Modules. - -### Heltec Lora32 v1.0, v2.0 and v2.1 - -- Wiring instructions: - -| GPS Module Pin | Heltec Lora32 Pin | -| :------------: | :---------------: | -| VCC | 3.3V | -| RX | 33 | -| TX | 36 | -| GND | GND | - -- Once the module is connected, it should be detected automatically by the firmware. diff --git a/docs/1.2-End-of-life/hardware/heltec.mdx b/docs/1.2-End-of-life/hardware/heltec.mdx deleted file mode 100644 index 16f223fe..00000000 --- a/docs/1.2-End-of-life/hardware/heltec.mdx +++ /dev/null @@ -1,36 +0,0 @@ ---- -id: heltec -title: Heltec device -sidebar_label: Heltec -sidebar_position: 6 ---- - -## WiFi LoRa 32 (V2) * Not Recommended - Support may be dropped - -It continues to be a struggle to support this very old ESP32 chip, not officially supported in 1.3 / 2.0 and support may be dropped completely. - -Using this device with a battery is not recommended. - -- ESP32 - Wifi & Bluetooth -- SX127x - LoRa Transceiver -- Frequency options: - - 433 MHz - - 470-510 MHz - - 863-870 MHz - - 902-928 MHz -- Built in 0.96 inch OLED display -- U.FL antenna connector -- Reset and Program switches -- No GPS - -- Firmware file: `firmware-heltec-1.x.x.bin` - -[](/img/hardware/heltec-v2.png) - -[](/img/hardware/heltec_v2_pinmap.png) - -There are two versions of the Heltec (V2). Below is a picture highlighting the visual differences: - -[](/img/hardware/heltec_v2_vs_v21.png) - -- See [hardware update log](https://docs.heltec.org/en/node/esp32/dev-board/hardware_update_log.html) for more details diff --git a/docs/1.2-End-of-life/index.mdx b/docs/1.2-End-of-life/index.mdx deleted file mode 100644 index f8495081..00000000 --- a/docs/1.2-End-of-life/index.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -id: 1.2_EOL -title: Version 1.2 End of life (EOL) -sidebar_label: 1.2 End of life (EOL) -sidebar_position: 20 ---- - -Meshtastic 1.2 was a beta version that has been superceded by 1.3. Version 1.2 is fundamentally incompatible with any 1.3 versions of device firmware, flashing utilities, or client applications. - -- Last 1.2 Python api version install: pip install meshtastic==1.2.95 -- Final 1.2 Meshtastic Flasher install: pip install meshtastic-flasher==1.0.106 (Do not attempt to install 1.3.x firmware with this release) -- [Final 1.2 Device Firmware](https://github.com/meshtastic/firmware/releases/tag/v1.2.65.0adc5ce) -- [Final 1.2 Android App](https://github.com/meshtastic/Meshtastic-Android/releases/tag/1.2.67) diff --git a/docs/1.2-End-of-life/misc.mdx b/docs/1.2-End-of-life/misc.mdx deleted file mode 100644 index 0c4f51f4..00000000 --- a/docs/1.2-End-of-life/misc.mdx +++ /dev/null @@ -1,315 +0,0 @@ ---- -id: misc -title: 1.2 Miscellaneous Settings -sidebar_label: 1.2 Miscellaneous ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -## Overview - -## Settings - -| Setting | Acceptable Values | Default | -| :-----------------------: | :------------------------------------: | :-----: | -| auto_screen_carousel_secs | `integer` (seconds) | `0` | -| debug_log_enabled | `true`, `false` | `false` | -| factory_reset | `true`, `false` | `false` | -| ignore_incoming | `string` – list of node nums to ignore | `0` | -| hop_limit | `0`-`7` | `0` | -| serial_disabled | `true`, `false` | `false` | - -### auto_screen_carousel_secs - -Automatically toggles to the next page on the screen like a carousel, based the specified interval in seconds. Potentially useful for devices without user buttons. - -#### Configure auto_screen_carousel_secs - - - - -```shell title="Set auto_screen_carousel_secs to default" -meshtastic --set auto_screen_carousel_secs 0 -``` - -```shell title="Set auto_screen_carousel_secs to 120 seconds" -meshtastic --set auto_screen_carousel_secs 120 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### debug_log_enabled - -By default we turn off logging as soon as an API client connects (to keep shared serial link quiet and save bandwidth). Set this to true to leave the debug log outputting even when API is active. - -#### Enable/Disable Debug Log - - - - -```shell title="Enable debug log" -meshtastic --set debug_log_enabled true -``` - -```shell title="Disable debug log" -meshtastic --set debug_log_enabled false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### factory_reset - -This setting is never saved to disk, but if set, all device settings will be returned to factory defaults. (Region, serial number etc... will be preserved) - -#### Factory reset - - - - -```shell title="Example - Factory reset" -meshtastic --set factory_reset true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### ignore_incoming - -If true, radio should not try to be smart about what packets to queue to the phone bool keep_all_packets = 101; If true, we will try to capture all the packets sent on the mesh, not just the ones destined to our node. bool promiscuous_mode = 102; For testing it is useful sometimes to force a node to never listen to particular other nodes (simulating radio out of range). All nodenums listed in ignore_incoming will have packets they send dropped on receive (by router.cpp) - -#### Enable/Disable ignore_incoming - - - - -```shell title="Enable ignore_incoming" -meshtastic --set ignore_incoming true -``` - -```shell title="Disable ignore_incoming" -meshtastic --set ignore_incoming false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### serial_disabled - -If set, this will disable the SerialConsole by not initializing the StreamAPI. - -#### Enable/Disable Serial - - - - -```shell title="Enable serial" -meshtastic --set serial_disabled false -``` - -```shell title="Disable serial" -meshtastic --set serial_disabled true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### hop_limit - -Overrides the default number of hops a message will be passed. If not set, will default to 3 hops. - -:::note -Meshtastic allows a maximum of 7 hops (this is a limit of the protocol). Setting a hop_limit of greater than 7 will be replaced with 7 on the device. -::: - -#### Configure hop_limit - - - - -```shell title="Set hop_limit to default (3 hops)" -meshtastic --set hop_limit 0 -``` - -```shell title="Set hop_limit to max (7 hops)" -meshtastic --set hop_limit 7 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/mqtt.mdx b/docs/1.2-End-of-life/mqtt.mdx deleted file mode 100644 index 52162857..00000000 --- a/docs/1.2-End-of-life/mqtt.mdx +++ /dev/null @@ -1,468 +0,0 @@ ---- -id: mqtt -title: 1.2 MQTT Settings -sidebar_label: 1.2 MQTT ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::note -This is still under development, use at your own risk. Report any bugs you see by creating an issue on the [meshtastic/firmware](https://github.com/meshtastic/firmware) repository or comment on our forum. -::: - -:::caution -You may want to change your [GPS location sharing settings](gps#location_share) if you are enabling this. It will broadcast your location over the internet. -::: - -## Overview - -If your device is connected to WiFi you can enable it to forward messages along to an MQTT server. This allows users on the local mesh to communicate with users on the internet. - -## Settings - -| Setting | Acceptable Values | Default | -| :---------------------: | :---------------: | :-----: | -| downlink_enabled | `true`, `false` | `false` | -| mqtt_disabled | `true`, `false` | `false` | -| mqtt_encryption_enabled | `true`, `false` | `false` | -| mqtt_password | `string` | `""` | -| mqtt_server | `string` | `""` | -| mqtt_username | `string` | `""` | -| uplink_enabled | `true`, `false` | `false` | - -### downlink_enabled - -This is a channel specific setting. If your channel has this set to `true` and you are connected to WiFi, the device will forward along messages from the MQTT server specified [here](#mqtt_server) to the mesh from this device. - -#### Enable/Disable downlink_enabled - - - - -```shell title="Enable downlink_enabled on PRIMARY channel" -meshtastic --ch-set downlink_enabled true --ch-index 0 -``` - -```shell title="Disable downlink_enabled on PRIMARY channel" -meshtastic --ch-set downlink_enabled false --ch-index 0 -``` - -```shell title="Enable downlink_enabled on OTHER channel" -meshtastic --ch-set downlink_enabled true --ch-index 1 -``` - -```shell title="Disable downlink_enabled on OTHER channel" -meshtastic --ch-set downlink_enabled false --ch-index 1 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### mqtt_disabled - -If a meshtastic node is able to reach the internet it will normally attempt to gateway any channels that are marked as `uplink_enabled` or `downlink_enabled`. But if this flag is set, all MQTT features will be disabled and no servers will be contacted. - -#### Enable/Disable MQTT - - - - -```shell title="Enable MQTT (Default)" -meshtastic --set mqtt_disabled false -``` - -```shell title="Disable MQTT" -meshtastic --set mqtt_disabled true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### mqtt_encryption_enabled - -Determines whether or not the device sends the packets encrypted to/from your MQTT server. - -:::tip -If you are using the default Meshtastic MQTT server, this setting will take no effect. All packets will continue to be encrypted regardless of this setting. Only custom servers will honor this setting. -::: - -#### Enable/Disable MQTT Encryption - - - - -```shell title="Publish decrypted packets to MQTT (Default)" -meshtastic --set mqtt_encryption_enabled false -``` - -```shell title="Publish encrypted packets to MQTT" -meshtastic --set mqtt_encryption_enabled true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### mqtt_password - -MQTT password to use (most useful for a custom MQTT server). If using a custom server, this will be honoured even if empty. If using the default server, this will only be honoured if set, otherwise the device will use the default password `large4cats`. - -#### Configure mqtt_password - - - - -```shell title="Set mqtt_password" -meshtastic --set mqtt_password mypassword -``` - -```shell title="Set mqtt_password (with spaces)" -meshtastic --set mqtt_password "my password" -``` - -```shell title="Unset mqtt_password (Default)" -meshtastic --set mqtt_password "" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### mqtt_server - -The server to use for our MQTT global message gateway feature. If not set, the default server will be used - -#### Enable/Disable MQTT Server - - - - -:::tip -When the mqtt_server is set to `""`, it will default to `mqtt.meshtastic.org` -::: - -```shell title="Enable MQTT Server - Public Meshtastic MQTT Server (Default)" -meshtastic --set mqtt_server "" -``` - -```shell title="Enable MQTT Server - Personal MQTT Server (by IP)" -meshtastic --set mqtt_server 198.168.0.2 -``` - -```shell title="Enable MQTT Server - Personal MQTT Server (by URL)" -meshtastic --set mqtt_server mqtt.mydomain.com -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### mqtt_username - -MQTT username to use (most useful for a custom MQTT server). If using a custom server, this will be honoured even if empty. If using the default server, this will only be honoured if set, otherwise the device will use the default username `meshdev`. - -#### Configure mqtt_username - - - - -```shell title="Set mqtt_username" -meshtastic --set mqtt_username myusername -``` - -```shell title="Set mqtt_username (with spaces)" -meshtastic --set mqtt_username "my username" -``` - -```shell title="Unset mqtt_username (Default)" -meshtastic --set mqtt_username "" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### uplink_enabled - -This is a channel specific setting. If your channel has this set to `true` and you are connected to WiFi, the device will forward along messages to whatever MQTT server is specified in [mqtt_server](#mqtt_server). - -#### Enable/Disable uplink_enabled - - - - -```shell title="Enable uplink_enabled on PRIMARY channel" -meshtastic --ch-set uplink_enabled true --ch-index 0 -``` - -```shell title="Disable uplink_enabled on PRIMARY channel" -meshtastic --ch-set uplink_enabled false --ch-index 0 -``` - -```shell title="Enable uplink_enabled on OTHER channel" -meshtastic --ch-set uplink_enabled true --ch-index 1 -``` - -```shell title="Disable uplink_enabled on OTHER channel" -meshtastic --ch-set uplink_enabled false --ch-index 1 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - - - -## Examples - - - - -```shell title="Set server" -meshtastic --set mqtt_server 192.168.123.234 -``` - -```shell title="Enable MQTT server to mesh" -meshtastic --ch-set uplink_enabled true --ch-set downlink_enabled true --ch-index 0 -``` - -```shell title="View raw encoded messages using mosquitto" -mosquitto_sub -h 192.168.123.234 -v -t msh/# -``` - -:::note -FIXME some documentation says msh/# , some says mesh/# . As of 1.2.39 the messages are on msh/# -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/power.mdx b/docs/1.2-End-of-life/power.mdx deleted file mode 100644 index 92205f8d..00000000 --- a/docs/1.2-End-of-life/power.mdx +++ /dev/null @@ -1,498 +0,0 @@ ---- -id: power -title: 1.2 Power Settings -sidebar_label: 1.2 Power ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -## Overview - -Power settings on a Meshtastic device can be set like other user-define settings with the `--set` command see ([see Meshtastic-python](/docs/software/python/cli)). Some of these options are implicit in other commands. For example, when you set the device to router mode using `is_router true`, it is implied that deep sleep is disabled and we want to constantly listen for messages. Below is a list of all user-definable settings and the acceptable values that these settings can use. - -## Settings - -| Setting | Acceptable Values | Default | -| :----------------------------: | :-------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------: | -| charge_current | `MAUnset`, `MA100`, `MA190`, `MA280`, `MA360`, `MA450`, `MA550`, `MA630`, `MA700`, `MA780`, `MA880`, `MA960`, `MA1000`, `MA1080`, `MA1160`, `MA1240`, `MA1320`: | `MAUnset` | -| is_always_powered | `true`, `false` | `false` | -| is_low_power | `true`, `false` | `false` | -| is_router | `true`, `false` | `false` | -| ls_secs | `integer` (seconds) | `0` | -| mesh_sds_timeout_secs | `integer` (seconds) | `0` | -| min_wake_secs | `integer` (seconds) | `0` | -| on_battery_shutdown_after_secs | `integer` (seconds) | `0` | -| phone_timeout_secs | `integer` (seconds) | `0` | -| screen_on_secs | `integer` (seconds) | `0` | -| sds_secs | `integer` (seconds) | `0` | -| wait_bluetooth_secs | `integer` (seconds) | `0` | - -:::note - -When you change the following settings to `0` they assume the following defaults: - -- `ls_secs`: 1 hour -- `mesh_sds_timeout_secs`: 2 hours -- `min_wake_secs`: 10 seconds -- `phone_timeout_secs`: 15 minutes -- `screen_on_secs`: 1 minute -- `sds_secs`: 1 year -- `wait_bluetooth_secs`: 1 minute - -::: - -### charge_current - -Sets the current of the battery charger. - -#### Specify charge_current - - - - -```shell title="Unset charge current" -meshtastic --set charge_current MAUnset -``` - -```shell title="Set charge current" -meshtastic --set charge_current MA100 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### is_always_powered - -Circumvents the logic block for determining whether the device is powered or not. Useful for devices with finicky ADC issues on the battery sense pins. - -#### Enable/Disable is_always_powered - - - - -```shell title="Enable is_always_powered" -meshtastic --set is_always_powered true -``` - -```shell title="Disable is_always_powered" -meshtastic --set is_always_powered false -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### is_low_power - -If set, we are powered from a low-current source (i.e. solar), so even if it looks like we have power flowing in we should try to minimize power consumption as much as possible. - -:::note - -You do **not** need to set this if you've set `is_router` (it is implied in that case). - -::: - -#### Enable/Disable is_low_power - - - - -```shell title="Enable is_low_power" -meshtastic --set is_low_power true -``` - -```shell title="Disable is_low_power" -meshtastic --set is_low_power false -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### is_router - -Are we operating as a router. Changes behavior in the following ways: The device will only sleep for critically low battery level (i.e. always tries to stay alive for the mesh) In the future routing decisions will preferentially route packets through nodes with this attribute (because assumed good line of sight). - -#### Enable/Disable is_router - - - - -```shell title="Enable is_router" -meshtastic --set is_router true -``` - -```shell title="Disable is_router" -meshtastic --set is_router false -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### ls_secs - -0 for default of 3600. - -#### Configure ls_secs - - - - -```shell title="Set ls_secs to default (1 hour/3600 seconds)" -meshtastic --set ls_secs 0 -``` - -```shell title="Set ls_secs to 120 seconds" -meshtastic --set ls_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### mesh_sds_timeout_secs - -0 for default of two hours, use the MAXUINT or 4294967295 to disable. - -#### Configure mesh_sds_timeout_secs - - - - -```shell title="Set mesh_sds_timeout_secs to default (2 hour/7200 seconds)" -meshtastic --set mesh_sds_timeout_secs 0 -``` - -```shell title="Set mesh_sds_timeout_secs to 120 seconds" -meshtastic --set mesh_sds_timeout_secs 120 -``` - -```shell title="Disable mesh_sds_timeout_secs (using MAXUINT)" -meshtastic --set mesh_sds_timeout_secs 4294967295 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### min_wake_secs - -0 for default of 10 seconds. - -#### Configure min_wake_secs - - - - -```shell title="Set min_wake_secs to default (10 seconds)" -meshtastic --set min_wake_secs 0 -``` - -```shell title="Set min_wake_secs to 120 seconds" -meshtastic --set min_wake_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### on_battery_shutdown_after_secs - -If non-zero, the device will fully power off this many seconds after external power is removed. - -#### Enable/Disable on_battery_shutdown_after_secs - - - - -```shell title="Disable on_battery_shutdown_after_secs" -meshtastic --set on_battery_shutdown_after_secs 0 -``` - -```shell title="Set device to shutdown after 120 seconds on battery" -meshtastic --set on_battery_shutdown_after_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### phone_timeout_secs - -0 for default of 15 minutes. - -#### Configure phone_timeout_secs - - - - -```shell title="Set phone_timeout_secs to default (15 minutes)" -meshtastic --set phone_timeout_secs 0 -``` - -```shell title="Set phone_timeout_secs to 120 seconds" -meshtastic --set phone_timeout_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### screen_on_secs - -- Greater than Meshtastic 1.3 - 0 for default of 10 minutes -- Less than Meshtastic v1.3 - 0 for default of 1 minute - -#### Configure screen_on_secs - - - - -```shell title="Set screen_on_secs to default (1 minute)" -meshtastic --set screen_on_secs 0 -``` - -```shell title="Set screen_on_secs to 120 seconds" -meshtastic --set screen_on_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### sds_secs - -0 for default of one year. - -#### Configure sds_secs - - - - -```shell title="Set sds_secs to default (1 year)" -meshtastic --set sds_secs 0 -``` - -```shell title="Set sds_secs to 120 seconds" -meshtastic --set sds_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - - -### wait_bluetooth_secs - -0 for default of 1 minute. - -#### Configure wait_bluetooth_secs - - - - -```shell title="Set wait_bluetooth_secs to default (60 seconds)" -meshtastic --set wait_bluetooth_secs 0 -``` - -```shell title="Set wait_bluetooth_secs to 120 seconds" -meshtastic --set wait_bluetooth_secs 120 -``` - - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. - - diff --git a/docs/1.2-End-of-life/router.mdx b/docs/1.2-End-of-life/router.mdx deleted file mode 100644 index 3413f619..00000000 --- a/docs/1.2-End-of-life/router.mdx +++ /dev/null @@ -1,82 +0,0 @@ ---- -id: router -title: 1.2 Router Settings -sidebar_label: 1.2 Router ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -## Overview - -## Settings - -| Setting | Acceptable Values | Default | -| :-------: | :---------------: | :-----: | -| is_router | `true`, `false` | `false` | - -### is_router - -Are we operating as a router. Changes behavior in the following ways: The device will only sleep for critically low battery level (i.e. always tries to stay alive for the mesh) In the future routing decisions will preferentially route packets through nodes with this attribute (because assumed good line of sight) - -#### Enable/Disable router mode - - - - -```shell title="Enable router mode" -meshtastic --set is_router true -``` - -```shell title="Disable router mode" -meshtastic --set is_router false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -Toggling `is_router` changes your device settings in the following ways. - -| Setting | `is_router` Default | Normal Default | -| :-----------------------: | :-----------------: | :------------: | -| `position_broadcast_secs` | 12 hours | 15 minutes | -| `wait_bluetooth_secs` | 1 | 60 | -| `mesh_sds_timeout_secs` | NODE_DELAY_FOREVER | 2 hours | -| `ls_secs` | 1 day | 1 hour | - -### Altered Behaviors - -#### Screen Wake - -#### Bluetooth diff --git a/docs/1.2-End-of-life/settings/canned-message-module.mdx b/docs/1.2-End-of-life/settings/canned-message-module.mdx deleted file mode 100644 index 2de89d7d..00000000 --- a/docs/1.2-End-of-life/settings/canned-message-module.mdx +++ /dev/null @@ -1,274 +0,0 @@ ---- -id: canned-message-module -title: Canned Message Plugin Settings -sidebar_label: Canned Message Plugin ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. -::: - -:::note -This plugin requires attaching a peripheral accessory to your device. It will not work without one. It also requires use of the [Rotary Encoder](input-broker-module) to configure the input source. -::: - -## Overview - -The CannedMessage Plugin will allow you to send messages to the mesh network from the device without using the phone app. You can predefine text messages to choose from. - -:::tip -Once plugin settings are changed, a **reset** is required for them to take effect. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :--------------------------------------: | :---------------: | :-----: | -| canned_message_plugin_allow_input_source | `rotEnc1`, `_any` | `_any` | -| canned_message_plugin_enabled | `true`, `false` | `false` | -| canned_message_plugin_messages | `string` | `""` | -| canned_message_plugin_send_bell | `true`, `false` | `false` | -| (Messages)\* | `string` | `""` | - -- Messages can be set with a dedicated option: - -`--set-canned-message ""` - -### canned_message_plugin_allow_input_source - -Input event source accepted by the canned message plugin. - -| Value | Description | -| :-------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: | -| `_any` | Default. Allows any peripheral input device connected to the device. | -| `rotEnc1` | Hardcoded value naming the input device that this plugin listens to. This could allow multiple input devices to be named with future software development. At present, this doesn't do anything differently than the default setting. | - -#### Set input source - - - - -```shell title="Set Allowed Input Source" -meshtastic --set canned_message_plugin_allow_input_source "_any" -``` - -```shell title="Specify Allowed Input Source" -meshtastic --set canned_message_plugin_allow_input_source "rotEnc1" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### canned_message_plugin_enabled - -Enables the plugin. - -:::tip -Using the canned message plugin requires you set up the [Rotary Encoder](input-broker-module). See [prerequisites](#prerequisites) below. -::: - -#### Enable/Disable the plugin - - - - -```shell title="Enable Canned Message Plugin" -meshtastic --set canned_message_plugin_enabled true -``` - -```shell title="Disable Canned Message Plugin" -meshtastic --set canned_message_plugin_enabled false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### canned_message_plugin_send_bell - -CannedMessagePlugin also sends a "bell character" with the messages. -The [External Notification Plugin](external-notification-module) can benefit from this feature as it utilizes the bell character. - -_We have an "External Notification Plugin", that can be set up to beep, when new message arrives. -This plugin can also be configured to beep only when message contains the "bell character". -See plugin documentation (link above) for details._ - -#### Enable/Disable bell character - - - - -```shell title="Enable Bell Character" -meshtastic --set canned_message_plugin_send_bell true -``` - -```shell title="Disable Bell Character" -meshtastic --set canned_message_plugin_send_bell false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### Messages - -CLI has a dedicated option for canned message plugin to set predefines messages: `--set-canned-message ` -Predefined messages separated by `|` characters. - -You can define up to 50 messages with a total length 800 bytes. - -Existing configuration can be queried with CLI option: `--get-canned-message` - -#### Set canned messages - - - - -```shell title="Set Canned Messages" -meshtastic --set canned_message_plugin_messages "I'm fine|I'm out|I'm back|Need helping hand|Help me with saw|I need an alpinist|I need ambulance|Keep Calm|On my way|I will be late|I'm already waiting|We have company|Beer is cold|Roger" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -### Prerequisites - - - -- Attach a compatible peripheral device. Take note of the GPIO numbers you use, as they will be used in the following step. -- Once attached, configure peripheral device with [Rotary Encoder](input-broker-module) Settings. - -:::note -Replace each `GPIO` (x3) below with the GPIO numbers from hardware setup. - -```shell title="Canned Message Plugin - Required Rotary Encoder Settings" -meshtastic --set rotary1_pin_a GPIO -meshtastic --set rotary1_pin_b GPIO -meshtastic --set rotary1_pin_press GPIO -meshtastic --set rotary1_event_cw KEY_UP -meshtastic --set rotary1_event_ccw KEY_DOWN -meshtastic --set rotary1_event_press KEY_SELECT -meshtastic --set rotary1_enabled True -``` - -::: -That's it! With a functioning and enabled rotary encoder, you're ready to begin configuring the Canned Message Plugin. diff --git a/docs/1.2-End-of-life/settings/external-notification-module.mdx b/docs/1.2-End-of-life/settings/external-notification-module.mdx deleted file mode 100644 index 9f56cb71..00000000 --- a/docs/1.2-End-of-life/settings/external-notification-module.mdx +++ /dev/null @@ -1,337 +0,0 @@ ---- -id: external-notification-module -title: External Notification Plugin Settings -sidebar_label: External Notification Plugin ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. -::: - - -:::note -This plugin requires attaching a peripheral accessory to your device. It will not work without one. -::: - -## Overview - -The External Notification Plugin will allow you to connect a speaker, LED, or other device to notify you when a message has been received from the mesh network. - -:::tip -Once plugin settings are changed, a **reset** is required for them to take effect. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :-----------------------------------: | :----------------------: | :-----: | -| ext_notification_plugin_active | `true`, `false` | `false` | -| ext_notification_plugin_alert_bell | `true`, `false` | `false` | -| ext_notification_plugin_alert_message | `true`, `false` | `false` | -| ext_notification_plugin_enabled | `true`, `false` | `false` | -| ext_notification_plugin_output | `integer` | `0` | -| ext_notification_plugin_output_ms | `integer` (milliseconds) | `0` | - -### ext_notification_plugin_active - -Specifies whether the external circuit is triggered when the device's GPIO is low or high. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - -#### Specify High/Low GPIO triggers circuit - - - - -```shell title="GPIO active high" -meshtastic --set ext_notification_plugin_active true -``` - -```shell title="GPIO active low (default)" -meshtastic --set ext_notification_plugin_active false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### ext_notification_plugin_alert_bell - -Specifies if an alert should be sent when receiving an incoming bell. - -#### Enable/Disable alert on incoming bell - - - - -```shell title="Enable alert on incoming bell" -meshtastic --set ext_notification_plugin_alert_bell true -``` - -```shell title="Disable alert on incoming bell" -meshtastic --set ext_notification_plugin_alert_bell false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### ext_notification_plugin_alert_message - -Specifies if an alert should be sent when receiving an incoming message. - -#### Enable/Disable Alert on incoming message - - - - -```shell title="Enable alert on incoming message" -meshtastic --set ext_notification_plugin_alert_message true -``` - -```shell title="Disable alert on incoming message" -meshtastic --set ext_notification_plugin_alert_message false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### ext_notification_plugin_enabled - -Enables the plugin. - -#### Enable/Disable the plugin - - - - -```shell title="Enable / Disable Plugin" -meshtastic --set ext_notification_plugin_enabled true -meshtastic --set ext_notification_plugin_enabled false -``` - - - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### ext_notification_plugin_output - -Specifies the GPIO that your external circuit is attached to on the device. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - -#### Specify GPIO for circuit to monitor - - - - -:::note -Replace `GPIO` in the below command with the GPIO number your circuit is attached to. -::: - -```shell title="Specify GPIO that circuit is connected to" -meshtastic --set ext_notification_plugin_output GPIO -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### ext_notification_plugin_output_ms - -Specifies how long in milliseconds you would like your external circuit triggered. Default is `1000`. (Because of the way that defaults are handled in the protobufs `0` is interpreted as `1000`) - -#### Specify how many milliseconds to trigger circuit - - - - -```shell title="Set to default (1000ms)" -meshtastic --set ext_notification_plugin_output_ms 0 -``` - -```shell title="Set to other value" -meshtastic --set ext_notification_plugin_output_ms 1500 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/settings/index.mdx b/docs/1.2-End-of-life/settings/index.mdx deleted file mode 100644 index ee24a8d7..00000000 --- a/docs/1.2-End-of-life/settings/index.mdx +++ /dev/null @@ -1,25 +0,0 @@ ---- -id: 1.2_EOL -title: 1.2 Module Config -sidebar_label: 1.2 Module Config -sidebar_position: 2 ---- - -Modules are included in the firmware and allow users to extend the functionality of their mesh or device. -Plugins are included in the firmware and allow users to extend the functionality of their mesh or device. - -The list of current modules is as follows: - -| Name | Description | -|:----:|:-----------:| -| Canned Message Plugin | Set a number of predefined messages to send out directly from the device with the use of an input device like a rotary encoder. | -| External Notification Plugin | Incoming messages are able to alert you using circuits you attach to the device (LEDs, Buzzers, etc) | -| Rotary Encoder Plugin | Attach and define input devices such as external keyboards and rotary encoders. | -| Range Test Plugin | Send messages with GPS location at an interval to test the distance your devices can communicate. Requires (at least) one device set up as a sender and one as a receiver. The receiver(s) will log all incoming messages to a CSV. | -| Serial Plugin | Send messages across the mesh by sending strings over a serial port. | -| Store and Forward Plugin | Set a designated node to store messages and resend them to nodes with intermittent connection to a mesh. | -| Telemetry Plugin | Attach sensors to the device and transmit readings on a regular interval to the mesh. | - -:::tip -Once Plugin settings are changed, a **reset** is required for them to take effect. -::: \ No newline at end of file diff --git a/docs/1.2-End-of-life/settings/input-broker-module.mdx b/docs/1.2-End-of-life/settings/input-broker-module.mdx deleted file mode 100644 index b909fc8d..00000000 --- a/docs/1.2-End-of-life/settings/input-broker-module.mdx +++ /dev/null @@ -1,464 +0,0 @@ ---- -id: input-broker-module -title: Rotary Encoder -sidebar_label: Rotary Encoder ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. -::: - -:::note -This module requires attaching a peripheral accessory to your device. It will not work without one. -::: - -## Overview - -Meshtastic supports hardwired rotary encoders as input devices. -Currently, one rotary encoder (`rotary1`) is defined, but later more rotary encoders -can be added (if needed) the same way. - -:::tip -Once module settings are changed, a **reset** is required for them to take effect. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :-----------------: | :---------------: | :-----------: | -| rotary1_enabled | `true`, `false` | `false` | -| rotary1_event_cw | `InputEventChar` | (not defined) | -| rotary1_event_ccw | `InputEventChar` | (not defined) | -| rotary1_event_press | `InputEventChar` | (not defined) | -| rotary1_pin_a | `integer` | (not defined) | -| rotary1_pin_b | `integer` | (not defined) | -| rotary1_pin_press | `integer` | (not defined) | - -### rotary1_enabled - -Enable the rotary encoder #1 - -#### Enable/Disable rotary1 - - - - -```shell title="Enable rotary1" -meshtastic --set rotary1_enabled true -``` - -```shell title="Disable rotary1" -meshtastic --set rotary1_enabled true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### rotary1_event_cw - -Generate input event on CW of this kind. - -:::tip -For using with CannedMessageModule you must choose value `KEY_UP` here. -::: - -#### Specify rotary1 event cw - - - - -```shell title="Set rotary1 event cw to 'KEY_UP'" -meshtastic --set rotary1_event_press KEY_UP -``` - -```shell title="Unset rotary1 event cw" -meshtastic --set rotary1_event_press "" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### rotary1_event_ccw - -Generate input event on CCW of this kind. - -:::tip -For using with CannedMessageModule you must choose value `KEY_DOWN` here. -::: - -#### Specify rotary1 event ccw - - - - -```shell title="Set rotary1 event ccw to 'KEY_DOWN'" -meshtastic --set rotary1_event_ccw KEY_DOWN -``` - -```shell title="Unset rotary1 event ccw" -meshtastic --set rotary1_event_ccw "" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### rotary1_event_press - -Generate input event on Press of this kind. - -:::tip -For using with CannedMessageModule you must choose value `KEY_SELECT` here. -::: - -#### Specify rotary1 event press - - - - -```shell title="Set rotary1 event press to 'KEY_SELECT'" -meshtastic --set rotary1_event_press KEY_SELECT -``` - -```shell title="Unset rotary1 event press" -meshtastic --set rotary1_event_press "" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### rotary1_pin_a - -GPIO pin for rotary encoder A port. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - -#### Specify rotary1 pin a - - - - -:::note -Replace `GPIO` below with the GPIO number from hardware setup. -::: - -```shell title="Specify rotary1 pin a" -meshtastic --set rotary1_pin_a GPIO -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### rotary1_pin_b - -GPIO pin for rotary encoder B port. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - -#### Specify rotary1 pin b - - - - -:::note -Replace `GPIO` below with the GPIO number from hardware setup. -::: - -```shell title="Specify rotary1 pin b" -meshtastic --set rotary1_pin_b GPIO -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### rotary1_pin_press - -GPIO pin for rotary encoder Press port. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - -#### Specify rotary1 pin press - - - - -:::note -Replace `GPIO` below with the GPIO number from hardware setup. -::: - -```shell title="Specify rotary1 pin press" -meshtastic --set rotary1_pin_press GPIO -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - - - -Configuring the rotary encoder module require attaching the compatible hardware. - -## Examples - -### Configure rotary encoder for Canned Message Module - - - - -:::note -Replace each `GPIO` (x3) below with the GPIO numbers from hardware setup. -::: - -```shell title="Canned Message Module - Required Rotary Encoder Module Settings" -meshtastic --set rotary1_pin_a GPIO -meshtastic --set rotary1_pin_b GPIO -meshtastic --set rotary1_pin_press GPIO -meshtastic --set rotary1_event_cw KEY_UP -meshtastic --set rotary1_event_ccw KEY_DOWN -meshtastic --set rotary1_event_press KEY_SELECT -meshtastic --set rotary1_enabled True -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/settings/range-test-module.mdx b/docs/1.2-End-of-life/settings/range-test-module.mdx deleted file mode 100644 index 5a0a24e0..00000000 --- a/docs/1.2-End-of-life/settings/range-test-module.mdx +++ /dev/null @@ -1,283 +0,0 @@ ---- -id: range-test-module -title: Range Test Plugin Settings -sidebar_label: Range Test Plugin ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -## Overview - -This module allows you to test the range of your Meshtastic nodes. It requires at least two nodes, a sender and a receiver. The receiving node then saves the messages along with the GPS coordinates at which they were received into a .csv file. This .csv file can then be integrated into [Google Earth](https://earth.google.com), [Google Maps - My Maps](https://mymaps.google.com), or any other program capable of processing .csv files. This can enable you to visualize your mesh. - -:::tip -Once module settings are changed, a **reset** is required for them to take effect. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :-----------------------: | :-----------------: | :-----: | -| range_test_plugin_enabled | `true`, `false` | `false` | -| range_test_plugin_save | `true`, `false` | `false` | -| range_test_plugin_sender | `integer` (Seconds) | `0` | - -### range_test_pluigin_enabled - -Enables the plugin. - -#### Enable/Disable the plugin - - - - -```shell title="Enable the module" -meshtastic --set range_test_plugin_enabled true -``` - -```shell title="Disable the module" -meshtastic --set range_test_plugin_enabled true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### range_test_plugin_save - -If enabled, we will save a log of all received messages to a file named `rangetest.csv` which you can access from the web server `Extensions > File Browser > rangetest.csv`. The file will be created after receiving messages. The device will abort writing if there is less than 50k of space on the filesystem to prevent filling up the storage. - -#### Enable/Disable range test save `csv` - - - - -```shell title="Enable range test save" -meshtastic --set range_test_plugin_save true -``` - -```shell title="Disable range test save" -meshtastic --set range_test_plugin_save false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### range_test_plugin_sender - -Number of seconds to wait between sending packets. Using the long_slow channel configuration, it's best not to go more frequent than once every 60 seconds. You can be more aggressive with faster settings. `0` is default which disables sending messages. - -#### Enable/Disable range test sender - - - - -```shell title="Enable range test sender (send every 60 seconds)" -meshtastic --set range_test_plugin_sender 60 -``` - -```shell title="Disable range test sender" -meshtastic --set range_test_plugin_sender 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -While a minimum of two radios is required, more can be used. You can have any number of receivers and senders that your mesh is able to handle. You can test having a single sender with multiple receivers or a single receiver with multiple senders. Let us know on the [forum thread](https://meshtastic.discourse.group/t/new-plugin-rangetestplugin/2591) the results of your configuration. - -Be sure to turn off either the plugin configured as a sender or the device where the plugin setup as sender when not in use. This will use a lot of time on air and will spam your channel. - -Also be mindful of your space usage on the file system. It has protections from filling up the space but it's best to delete old range test results. - -:::note -Leaving this plugin on can slow down your mesh. Currently, the messages are sent using the same `TEXT_MESSAGE_APP` [port that all other messages](/docs/development/firmware/portnum) are sent on. -::: - -```plaintext title="Example URLs" -http://meshtastic.local -http://198.168.0.15 -``` - -### Recommended Sender Settings - -| Radio Setting | `range_test_plugin_sender` | -| :-----------: | :------------------------: | -| Long Slow | 60 | -| Long Alt | 30 | -| Medium | 15 | -| Short Fast | 15 | - -## Examples - -### Sender Node - - - - -```shell title="Example - Sender Node" -meshtastic --set range_test_plugin_enabled true -meshtastic --set range_test_plugin_sender 60 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### Receiver Node - - - - -```shell title="Example - Receiver Node" -meshtastic --set range_test_plugin_enabled true -meshtastic --set range_test_plugin_save true -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/settings/serial-module.mdx b/docs/1.2-End-of-life/settings/serial-module.mdx deleted file mode 100644 index bb7e8ca4..00000000 --- a/docs/1.2-End-of-life/settings/serial-module.mdx +++ /dev/null @@ -1,321 +0,0 @@ ---- -id: serial-module -title: Serial Plugin Settings -sidebar_label: Serial Plugin ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. -::: - -:::note -This plugin requires attaching a peripheral accessory to your device. It will not work without one. -::: - -## Overview - -This is a simple interface to send messages over the mesh network by sending strings over a serial port. Anything you send the node will be turned into a message sent out over the mesh, and anything received from the mesh will be sent to the serial port. Note that this plugin does not (yet) allow arbitrary protobuf commands to be sent over the serial connection. - -:::tip -Once plugin settings are changed, a **reset** is required for them to take effect. -::: - -:::tip -Connect the TX pin to the other device's RX pin, and vice versa. Connect their grounds to each other (not necessary if they're both plugged into the same USB power source.) -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :-------------------: | :-----------------: | :-----: | -| serial_plugin_enabled | `true`, `false` | `false` | -| serial_plugin_echo | `true`, `false` | `false` | -| serial_plugin_mode | `integer` | `0` | -| serial_plugin_rxd | `integer` (GPIO) | `0` | -| serial_plugin_timeout | `integer` (seconds) | `0` | -| serial_plugin_txd | `integer` (GPIO) | `0` | - -### serial_plugin_enabled - -Enables the plugin. - - - - -```shell title="Enable plugin" -meshtastic --set serial_plugin_enabled true -``` - -```shell title="Disable plugin" -meshtastic --set serial_plugin_enabled false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### serial_plugin_echo - -If set, any packets you send will be echoed back to your device. - - - - -```shell title="Enable serial_plugin_echo" -meshtastic --set serial_plugin_echo true -``` - -```shell title="Disable serial_plugin_echo" -meshtastic --set serial_plugin_echo false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### serial_plugin_mode - - - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### serial_plugin_rxd - -Set the GPIO pin to the RXD pin you have set up. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - - - - -:::note -Replace `GPIO` in the below command with the GPIO number your circuit is attached to. -::: - -```shell title="Set RXD to GPIO pin number" -meshtastic --set serial_plugin_rxd GPIO -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### serial_plugin_timeout - -The amount of time to wait before we consider your packet as "done". - - - - -```shell title="Set serial_plugin_timeout to 15 seconds" -meshtastic --set serial_plugin_timeout 15 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### serial_plugin_txd - -Set the GPIO pin to the TXD pin you have set up. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - - - - -:::note -Replace `GPIO` in the below command with the GPIO number your circuit is attached to. -::: - -```shell title="Set TXD to GPIO pin number" -meshtastic --set serial_plugin_txd GPIO -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - diff --git a/docs/1.2-End-of-life/settings/store-and-forward-module.mdx b/docs/1.2-End-of-life/settings/store-and-forward-module.mdx deleted file mode 100644 index c30cebe3..00000000 --- a/docs/1.2-End-of-life/settings/store-and-forward-module.mdx +++ /dev/null @@ -1,336 +0,0 @@ ---- -id: store-and-forward-module -title: Store & Forward Plugin Settings -sidebar_label: Store & Forward Plugin ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::info -Currently only available for ESP32 based devices with external PSRAM. Requires the device to be set as a router. - -**Don't enable Store and Forward Plugin on multiple nodes.** -::: - -## Overview - -:::caution -This is a work in progress and is partially available. Stability is not guaranteed. -::: - -The Store Forward Plugin is an implementation of a Store and Forward system to enable resilient messaging in the event that a client device is disconnected from the main network. - -Because of the increased network traffic for this overhead, it's not advised to use this if you are duty cycle limited for your airtime usage nor is it advised to use this for SF12 (Long Range / Slow). - -:::tip -Once plugin settings are changed, a **reset** is required for them to take effect. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :----------------------------------------: | :---------------: | :-----: | -| store_forward_plugin_enabled | `true`, `false` | `false` | -| store_forward_plugin_heartbeat | `true`, `false` | `false` | -| store_forward_plugin_history_return_max | `integer` | `0` | -| store_forward_plugin_history_return_window | `integer` | `0` | -| store_forward_plugin_records | `integer` | `0` | - -### store_forward_plugin_enabled - -Enables the plugin. - - - - -```shell title="Enable the plugin" -meshtastic --set store_forward_plugin_enabled true -``` - -```shell title="Disable the plugin" -meshtastic --set store_forward_plugin_enabled false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### store_forward_plugin_heartbeat - -The Store & Forward Router sends a periodic message onto the network. This allows connected devices to know that a router is in range and listening to received messages. A client like Android, iOS, or Web can (if supported) indicate to the user whether a store and forward router is available. - - - - -```shell title="Set store_forward_plugin_heartbeat to default" -meshtastic --set store_forward_plugin_heartbeat 0 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### store_forward_plugin_history_return_max - -Sets the maximum number of messages to return to a client device. - - - - -```shell title="Set store_forward_plugin_history_return_max to default" -meshtastic --set store_forward_plugin_history_return_max 0 -``` - -```shell title="Set store_forward_plugin_history_return_max to 100 messages" -meshtastic --set store_forward_plugin_history_return_max 100 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### store_forward_plugin_history_return_window - -Limits the time period (in minutes) a client device can request. - - - - -```shell title="Set store_forward_plugin_history_return_window to default" -meshtastic --set store_forward_plugin_history_return_window 0 -``` - -```shell title="Set store_forward_plugin_history_return_window to 1 day (1440 minutes)" -meshtastic --set store_forward_plugin_history_return_window 1440 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### store_forward_plugin_records - -Set this to the maximum number of records to save. Best to leave this at the default (`0`) where the plugin will use 2/3 of your device's available PSRAM. This is about 11,000 records. - - - - -```shell title="Set store_forward_plugin_records to default (≈11,000 records)" -meshtastic --set store_forward_plugin_records 0 -``` - -```shell title="Set store_forward_plugin_records to 100 records" -meshtastic --set store_forward_plugin_records 100 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -### How it works - -![Store & Forward - Overview](/img/modules/store_and_forward/store_and_forward-overview.png) - -### Requirements - -Initial Requirements: - -- Must be installed on a router node. - - This is an artificial limitation, but is in place to enforce best practices. - - Router nodes are intended to be always online. If this plugin misses any messages, the reliability of the stored messages will be reduced. -- Esp32 Processor based device with external PSRAM. (tbeam v1.0 and tbeamv1.1, and maybe others) - -### Usage Overview - -- To use / test this you will want at least 3 devices - - One device will (currently) need be a tbeam v1.0 and tbeamv1.1 configured as a Meshtastic router. Other devices with built in PSRAM will be supported at some point. - - Two others will be regular clients. Nothing special required. - -### Meshtastic channel configuration - -Don't use this on the "Long Range / Slow" or "Long Range / Fast" channel settings. You're welcome to try and report back, but those channels have a [very low bitrate](/docs/overview/radio-settings#pre-defined). - -Either use a custom channel configuration with at an at least 1kbit data rate or use "Medium Range / Fast". - -Recommended channel setting is for 1.343kbps: - -```shell title="Recommended channel setting for S&F plugin" -meshtastic --setchan spread_factor 11 --setchan coding_rate 5 --setchan bandwidth 500 -``` - -With an aftermarket coaxial antenna or moxon antenna, that will give you roughly the same range as "Long Range / Slow" and 5x the bitrate. - -### Router setup - -:::warning -Don't enable the Store and Forward plugin on multiple nodes! -::: - -- Configure your device as a router. -- Name your router node something that makes it easily identifiable, aka "Router". -- Configure the Store and Forward plugin - ```shell title="Required - Enable the plugin" - meshtastic --set plugin true - ``` - ```shell title="Optional - Set maximum number of records to save to device" - meshtastic --set store_forward_plugin_records 100 - ``` - :::tip - Best to leave `store_forward_plugin_records` at the default (`0`) where the plugin will use 2/3 of your device's available PSRAM. This is about 11,000 records. - ::: - -### Client Usage - -Currently, no special configuration is required. To request your history sent to you, send the command into the message field "SF". That's it. This will eventually change to make it easier. At the moment, that message will be sent to everyone on the mesh but we'll (eventually) make it easier to use where there'll be a button (or maybe it'll be transparent) and the command isn't sent as a text message to the mesh. - -Available Commands: - -| Command | Definition | -| :-----: | :------------------------------------------: | -| SF | Send the last few messages I may have missed | -| SFm | Send a 240 byte payload (Used for testing) | - -The Store and Forward plugin will only service one client at a time. If a second client requests messages while the S&F is busy, the S&F will send a private message to the second client that they will need to wait. diff --git a/docs/1.2-End-of-life/settings/telemetry-module.mdx b/docs/1.2-End-of-life/settings/telemetry-module.mdx deleted file mode 100644 index bf49274a..00000000 --- a/docs/1.2-End-of-life/settings/telemetry-module.mdx +++ /dev/null @@ -1,499 +0,0 @@ ---- -id: telemetry-module -title: Environmental Measurement Plugin Settings -sidebar_label: Environmental Measurement Plugin ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::warning -GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. -::: - - -:::note -The environment metrics feature of this plugin requires attaching a peripheral accessory to your device. It will not work without one. -::: - -## Overview - -In addition to key device metrics such as battery level, the Environment Monitoring Plugin will also allow nodes to send environmental metrics from externally connected sensors. Currently supported sensors are BME280, BME680, DHT11, DHT12, DHT21, DHT22, Dallas 1-wire DS18B20 and MCP9808. - -:::tip -Once plugin settings are changed, a **reset** is required for them to take effect. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :-----------------------------------------------------: | :-----------------: | :-----: | -| environmental_measurement_plugin_device_update_interval | `integer` (seconds) | `0` | -| environmental_measurement_plugin_display_fahrenheit | `true`, `false` | `false` | -| environmental_measurement_plugin_measurement_enabled | `true`, `false` | `false` | -| environmental_measurement_plugin_read_error_count_threshold | `integer` | `0` | -| environmental_measurement_plugin_recovery_interval | `integer` (seconds) | `0` | -| environmental_measurement_plugin_screen_enabled | `true`, `false` | `0` | -| environmental_measurement_plugin_sensor_pin | `integer` | `0` | -| environmental_measurement_plugin_sensor_type | `0-6` | `0` | -| environmental_measurement_plugin_update_interval | `integer` (seconds) | `0` | - -### environmental_measurement_plugin_device_update_interval - -Interval in seconds of how often we should try to send our measurements to the mesh. - - - - -```shell title="Set plugin update interval to default" -meshtastic --set environmental_measurement_plugin_device_update_interval 0 -``` - -```shell title="Set plugin update interval to 120 seconds" -meshtastic --set environmental_measurement_plugin_device_update_interval 120 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_display_fahrenheit - -The sensor is always read in Celsius, but the user can opt to view the temperature display in Fahrenheit using this setting. - -#### Display Farenheit/Celsius - - - - -```shell title="Display Farenheit" -meshtastic --set environmental_measurement_plugin_display_fahrenheit true -```` - -```shell title="Display Celsius" -meshtastic --set environmental_measurement_plugin_display_fahrenheit false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_measurement_enabled - -Enables the plugin to utilize environmental metrics. - -#### Enable/Disable the plugin - - - - -```shell title="Enable Plugin" -meshtastic --set environmental_measurement_plugin_measurement_enabled true -```` - -```shell title="Disable Plugin" -meshtastic --set environmental_measurement_plugin_measurement_enabled false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_read_error_count_threshold - -Sometimes sensor reads can fail. If this happens, we will retry a configurable number of attempts. Each attempt will be delayed by the minimum required refresh rate for that sensor - -#### Configure environmental_measurement_plugin_read_error_count_threshold - - - - -```shell title="Configure environmental_measurement_plugin_read_error_count_threshold to 3 tries" -meshtastic --set environmental_measurement_plugin_read_error_count_threshold 3 -```` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_recovery_interval - -Sometimes we can end up with more than read_error_count_threshold failures. In this case, we will stop trying to read from the sensor for a while. Wait this long until trying to read from the sensor again. - -#### Configure environmental_measurement_plugin_recovery_interval - - - - -```shell title="Configure environmental_measurement_plugin_recovery_interval to 120 seconds" -meshtastic --set environmental_measurement_plugin_recovery_interval 120 -```` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_screen_enabled - -Enable/Disable the Environmental Measurement Plugin on-device display. - -#### Enable/Disable the plugin on device screen - - - - -```shell title="Enable on device screen" -meshtastic --set environmental_measurement_plugin_screen_enabled true -```` - -```shell title="Disable on device screen" -meshtastic --set environmental_measurement_plugin_screen_enabled false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_sensor_pin - -:::note -The preferred setup is using I2C, so the `environmental_measurement_plugin_sensor_pin` may not be needed. -::: - -Specify the preferred GPIO Pin for sensor readings. May not be needed if using I2C. - -:::caution -To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value. -::: - -#### Set plugin sensor pin - - - - -```shell title="Set plugin sensor pin" -meshtastic --set environmental_measurement_plugin_sensor_pin PINNUMBER -```` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### environmental_measurement_plugin_sensor_type - -Specify the sensor type. - -:::important -The sensor values changed between 1.2 and 1.3. The docs represent the 1.3 values. When configuring devices on 1.2, please subtract 1 from the numbers below for the appropriate sensor. -::: - -| Value | Description | Sensor Features | -| :---: | :---------------------: | :--------------------------------------: | -| `1` | DHT11 | Temperature, Humidity | -| `2` | DS18B20 (Dallas 1-wire) | Temperature | -| `3` | DHT12 | Temperature, Humidity | -| `4` | DHT21 | Temperature, Humidity | -| `5` | DHT22 | Temperature, Humidity | -| `6` | BME280 | Temperature, Humidity, Pressure | -| `7` | BME680 | Temperature, Humidity, Pressure, VOC Gas | -| `8` | MCP9808 | Precision Temperature | - -#### Set sensor type - -:::important -The sensor values changed between 1.2 and 1.3. The docs represent the 1.3 values. When configuring devices on 1.2, please subtract 1 from the numbers on the table above for the appropriate sensor. -::: - - - - -:::note -The CLI is able to take the `value` or the `name` of the sensor from the table above. -::: - -```shell title="Set sensor type to DS18B20" -meshtastic --set environmental_measurement_plugin_sensor_type 2 -```` - -```shell title="Set sensor type to DS18B20" -meshtastic --set environmental_measurement_plugin_sensor_type DS18B20 -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -#### Set plugin update interval - - - - -```shell title="Set plugin update interval to 120 seconds" -meshtastic --set environmental_measurement_plugin_update_interval 120 -```` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -### Hardware - -The sensors can be wired differently, here's [one example](https://randomnerdtutorials.com/esp32-ds18b20-temperature-arduino-ide) for sensor DS18B20. - -### Known Problems - -- No default configuration values are currently set, so this must be done when enabling the plugin. diff --git a/docs/1.2-End-of-life/software/community/atak.mdx b/docs/1.2-End-of-life/software/community/atak.mdx deleted file mode 100644 index 69a7120c..00000000 --- a/docs/1.2-End-of-life/software/community/atak.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -id: community-atak -title: ATAK module -sidebar_label: 1.2 ATAK module ---- - -:::note -This is a community project maintained by @paulmandal. -Development can be followed on [GitHub](https://github.com/paulmandal/atak-forwarder). -Support should be sought from the respective authors. -::: - -This is a module for ATAK (Android Team Awareness Kit) that uses Meshtastic to provide off-grid communications. This includes plotting the position of others on the map, transmission of markers and routes, and chat messages. It has been signed by the TAK Product Center for use with the Play Store version of ATAK. He is currently distributing development builds via [Google Drive](https://drive.google.com/drive/folders/1xeKJnn9tmzkkmuDbMp0LCLOV9OzHU-Ex), aiming to publish it to the Play Store in the future. - -![ATAK Module](/img/atak-animation.gif) - -The builds of the module on the Google Drive are now signed for the Play Store version of ATAK, as of 6/3/2021. - -The ATAK module requires the Meshtastic Android app to be installed. - -- A walk-through on how to [set up ATAK](https://paul-mandal.medium.com/atak-for-hikers-d96d5246193e). -- The module source is available on [GitHub](https://github.com/paulmandal/atak-forwarder), along with instructions for setting it up. -- Development builds are available on [Google Drive](https://drive.google.com/drive/folders/1xeKJnn9tmzkkmuDbMp0LCLOV9OzHU-Ex). diff --git a/docs/1.2-End-of-life/software/community/go.mdx b/docs/1.2-End-of-life/software/community/go.mdx deleted file mode 100644 index 38fe4e1e..00000000 --- a/docs/1.2-End-of-life/software/community/go.mdx +++ /dev/null @@ -1,49 +0,0 @@ ---- -id: community-go -title: Go command line interface -sidebar_label: 1.2 Go CLI ---- - -:::note -This is a community project maintained by @lmatte7. -Development can be followed on [GitHub](https://github.com/lmatte7/meshtastic-go). -Support should be sought from the respective authors. -::: - -This is a command line interface for Meshtastic devices that has been built using the Go programming language developed by Google. This allows for an executable file to be downloaded for your operating system and run without installing other pre-requisites. The only requirement is for the [CP210x USB to UART bridge drivers](https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers) to be installed. A selection of executables for different operating systems are available, and further operating systems can be supported as required. - -### Command syntax - -A full list of commands can be viewed by running `--help`. Each command also has its own `--help` flag that provides more information on its subcommands and flags. - -Every command requires the `--port` flag to be set to the port the radio is attached to. This can be set to a serial port (like `/dev/cu.SLAB_USBtoUART`) or an IP address depending on which communication method should be used to communicate with the radio. The CLI will automatically determine if TCP or serial communications should be used depending on what value is provided to `--port`. - -``` -NAME: - meshtastic-go - Interface with meshtastic radios - -USAGE: - meshtastic-go [global options] command [command options] [arguments...] - -VERSION: - v0.2 - -AUTHOR: - Lucas Matte - -COMMANDS: - info Show radio information - message Interact with radio messaging functionality - channel Update channel information - prefs Update user preferences - location Set location - help, h Shows a list of commands or help for one command - -GLOBAL OPTIONS: - --port value, -p value specify a port - --help, -h show help (default: false) - --version, -v print the version (default: false) -``` - -Further information is available on the project's GitHub [Readme.md](https://github.com/lmatte7/meshtastic-go/blob/main/README.md). -The latest executables can be downloaded from [GitHub](https://github.com/lmatte7/meshtastic-go/releases/latest). diff --git a/docs/1.2-End-of-life/software/community/index.mdx b/docs/1.2-End-of-life/software/community/index.mdx deleted file mode 100644 index 7d616c67..00000000 --- a/docs/1.2-End-of-life/software/community/index.mdx +++ /dev/null @@ -1,16 +0,0 @@ ---- -id: community-overview -title: Community applications -sidebar_label: Community apps -sidebar_position: 8 ---- - -The Meshtastic ecosystem is highly extensible, and a number of community projects have been made to fit different people's needs. If you wish to create your own application or module, please read the information in the developers section, and tell us about your project on the forum. - -Current community projects: - -- [1.2 Meshtastic module for ATAK](/docs/1.2-End-of-life/software/community/community-atak) (Android Team Awareness Kit) -- [1.2 PyGUI](/docs/1.2-End-of-life/software/community/community-pygui) - Platform independent graphical user interface for Meshtastic devices -- [1.2 Go CLI](/docs/1.2-End-of-life/software/community/community-go) - A command line interface using Go that requires no pre-requisites to be installed - -Support for these projects should be sought from their respective authors. diff --git a/docs/1.2-End-of-life/software/community/pygui.mdx b/docs/1.2-End-of-life/software/community/pygui.mdx deleted file mode 100644 index 3b309224..00000000 --- a/docs/1.2-End-of-life/software/community/pygui.mdx +++ /dev/null @@ -1,37 +0,0 @@ ---- -id: community-pygui -title: PyGUI application -sidebar_label: 1.2 PyGUI app ---- - -:::note -This is a community project maintained by @ZebusJesus. -Development can be followed on [GitHub](https://github.com/ZebusJesus/Meshtastic-PyGUI). -Support should be sought from the respective authors. -::: - -PyGUI is a platform independent graphical user interface for meshtastic devices. It allows the sending of messages, changing of a lot of settings, monitoring of packets, and uploading firmware. - -![Python GUI](/img/pygui.jpg) - -This can be installed using pip. - -```powershell title="Windows" -python -m pip install --upgrade meshtastic-pygui -``` - -```shell title="macOS/Linux" -pip3 install --upgrade meshtastic-pygui -``` - -And launched using python. - -```powershell title="Windows" -python -m meshtastic_pygui -``` - -```shell title="MacOS/Linux" -python3 -m meshtastic_pygui -``` - -The project can be found on [GitHub](https://github.com/ZebusJesus/Meshtastic-PyGUI). diff --git a/docs/1.2-End-of-life/software/mqtt.mdx b/docs/1.2-End-of-life/software/mqtt.mdx deleted file mode 100644 index 0cba7c7f..00000000 --- a/docs/1.2-End-of-life/software/mqtt.mdx +++ /dev/null @@ -1,382 +0,0 @@ ---- -id: mqtt -title: MQTT -sidebar_label: 1.2 MQTT ---- - -## MQTT - -Meshtastic devices with wifi hardware (ESP32) are able to connect to an MQTT broker to uplink and downlink mesh packets. This is useful for a number of purposes: - -- Connecting your mesh to the official Meshtastic MQTT broker. This makes your devices appear on the world map, and provides a limited copy of your mesh traffic, translated into JSON. -- Using a custom MQTT broker to bridge several mesh networks together, via the internet (or just a local IP network) -- Using a custom MQTT broker and a translator program to decode the raw protobuf packets and translate them into a plain text form for use in other systems. eg plotting temperature readings in Grafana, or device positions in Traccar. -- Using or emitting packets directly in/from smart home control software such as Home Assistant or other consumers that can work with JSON messages. - -When MQTT enabled, the Meshtastic device simply uplinks and/or downlinks every raw protobuf packet that it sees to the MQTT broker. In addition, some packet types are serialized or deserialized from/to JSON messages for easier use in consumers. All packets are sent to the broker, whether they originate from another device on the mesh, or the gateway node itself. - -Packets may be encrypted. If you use the default meshtastic MQTT server, packets are always encrypted. If you use a custom MQTT broker (ie set `mqtt_server`), the `mqtt_encryption_enabled` setting applies, which by default is false. - -IMPORTANT: When MQTT is turned on, you are potentially broadcasting your entire mesh traffic onto the public internet. This includes messages and position information. - -### MQTT Topics - -The device will uplink and downlink raw ([protobuf](https://developers.google.com/protocol-buffers)) packets to the `msh/` prefix: - -`msh/1/c/ShortFast/!12345678` where - -- `!12345678` is the address of the gateway device. -- `ShortFast` is the channel name. - -The payload is a raw protobuf. Looking at the MQTT traffic with a program like `mosquitto_sub` will tell you it's working, but you won't get much useful information out of it. For example: - -``` -苓????"! - !937bed1cTanksTnk"D???05??=???aP` - ShortFast !937bed1c -``` - -Packets from the following [port numbers](/docs/development/firmware/portnum) are serialized to JSON and then forwarded to the `msh/1/json/CHANNELID/DEVICEID` topic: `TEXT_MESSAGE_APP`, `ENVIRONMENTAL_MEASUREMENT_APP`, `NODEINFO_APP` and `POSITION_APP`. - -An example of a received `NODEINFO_APP` message: - -```json -{ - "id": 452664778, - "channel": 0, - "from": 2130636288, - "payload": { - "hardware": 10, - "id": "!7efeee00", - "longname": "base0", - "shortname": "BA0" - }, - "sender": "!7efeee00", - "timestamp": 1646832724, - "to": -1, - "type": "nodeinfo" -} -``` - -If the message received contains valid JSON in the payload, the JSON is deserialized and added as a JSON object rather than a string containing the serialized JSON. - -**Sent messages** will be checked if the MQTT payload contains a valid JSON-encoded envelope: - -```json -{ - "sender": "SENDER", - "payload": { - "key":"value" - ... - } -} -``` - -`sender` and `payload` fields are required for a valid envelope. If a valid MQTT message is found, the message is sent over the radio as a message of type `TEXT_MESSAGE_APP` with the serialized `payload` value in the message payload. - -### Basic Configuration - -Check out [MQTT Settings](/docs/settings/moduleconfig/mqtt) for full information. For quick start instructions, read on. - -- Connect your gateway node to wifi, by setting the `wifi_ssid` and `wifi_password` preferences. -- Configure your broker settings: `mqtt_server`, `mqtt_username`, and `mqtt_password`. If all are left blank, the device will connect to the Meshtastic broker. -- Set `uplink_enabled` and `downlink_enabled` as appropriate for each channel. Most users will just have a single channel (at channel index 0). `meshtastic --ch-index 0 --ch-set uplink_enabled true` - -`uplink_enabled` will tell the device to publish mesh packets to MQTT. -`downlink_enabled` will tell the device to subscribe to MQTT, and forward any packets from there onto the mesh. - -### Getting plain data out of the mesh - -As of firmware 1.2.53, it is possible for the device to decrypt the protobufs before publishing to MQTT. To translate this into a plain format: - -- Set up a gateway node to uplink packets to your MQTT broker: - - `meshtastic --set wifi_ssid XXXX` - - `meshtastic --set wifi_password XXXX` - - `meshtastic --set mqtt_server 192.168.1.1` - - `meshtastic --set mqtt_username XXXX` - - `meshtastic --set mqtt_password XXXX` - - `meshtastic --set mqtt_encryption_enabled false` - - `meshtastic --ch-index 0 --ch-set uplink_enabled true` -- Grab the meshtastic-mqtt script from [here](https://github.com/joshpirihi/meshtastic-mqtt) - - `git clone https://github.com/joshpirihi/meshtastic-mqtt && cd meshtastic-mqtt` - - Edit `meshtastic_mqtt/meshtastic_mqtt.py` and enter your mqtt broker details - - Install the script with `pip install .` - - Run `meshtastic-mqtt`. It will print some debug output by default, and publish the plain values to the `meshtastic/` prefix. - - View the plain data with `mosquitto_sub -h YOUR_MQTT_SERVER -t meshtastic/# -v` - - You can then consume the data easily in other systems. For example, nodered->influx db->grafana. - -#Original brainstorming for MQTT: - -## Abstract - -:::note - -This is a mini-doc/RFC sketching out a development plan to satisfy a number of 1.1 goals. - -::: - -- [MQTT](https://opensource.com/article/18/6/mqtt) internet accessible API. Issue #[369](https://github.com/meshtastic/firmware/issues/169) -- An open API to easily run custom mini-apps on the devices -- A text messaging bridge when a node in the mesh can gateway to the internet. Issue #[353](https://github.com/meshtastic/firmware/issues/353) and this nicely documented [android issue](https://github.com/meshtastic/Meshtastic-Android/issues/2). -- An easy way to let desktop app developers remotely control GPIOs. Issue #[182](https://github.com/meshtastic/firmware/issues/182) -- Remote attribute access (to change settings of distant nodes). Issue #182 - -## Short term goals - -- We want a clean API for novice developers to write mini "apps" that run **on the device** with the existing messaging/location "apps". -- We want the ability to have a gateway web service, so that if any node in the mesh can connect to the internet (via its connected phone app or directly) then that node will provide bidirectional messaging between nodes and the internet. -- We want an easy way for novice developers to remotely read and control GPIOs (because this is an often requested use case), without those developers having to write any device code. -- We want a way to gateway text messaging between our current private meshes and the broader internet (when that mesh is able to connect to the internet) -- We want a way to remotely set any device/channel parameter on a node. This is particularly important for administering physically inaccessible router nodes. Ideally this mechanism would also be used for administering the local node (so one common mechanism for both cases). -- This work should be independent of our current (semi-custom) LoRa transport, so that in the future we can swap out that transport if we wish (to QMesh or Reticulum?) -- Our networks are (usually) very slow and low bandwidth, so the messaging must be very airtime efficient. - -## Long term goals - -- Store and forward messaging should be supported, so apps can send messages that might be delivered to their destination in **hours** or **days** if a node/mesh was partitioned. - -## Multiple Channel support / Security - -Mini-apps API can bind to particular channels. They will only see messages sent on that channel. - -During the 1.0 timeframe only one channel was supported per node. Starting in the 1.1 tree we will do things like "remote admin operations / channel settings etc..." are on the "Control" channel and only especially trusted users should have the keys to access that channel. - -FIXME - explain this more, talk about how useful for users and security domains. - -- add channels as security - -## On device API - -For information on the related on-device API see [here](/docs/developers/protobufs/api). - -## MQTT transport - -Any gateway-device will contact the MQTT broker. - -### Topics - -The "mesh/crypt/CHANNELID/NODEID/PORTID" [topic](https://www.hivemq.com/blog/mqtt-essentials-part-5-mqtt-topics-best-practices) will be used for messages sent from/to a mesh. - -Gateway nodes will forward any MeshPacket from a local mesh channel with uplink_enabled. The packet (encapsulated in a ServiceEnvelope) will remain encrypted with the key for the specified channel. - -For any channels in the local node with downlink_enabled, the gateway node will forward packets from MQTT to the local mesh. It will do this by subscribing to mesh/crypt/CHANNELID/# and forwarding relevant packets. - -If the channelid 'well known'/public it could be decrypted by a web service (if the web service was provided with the associated channel key), in which case it will be decrypted by a web service and appear at "mesh/clear/CHANNELID/NODEID/PORTID". Note: This is not in the initial deliverable. - -FIXME, discuss how text message global mirroring could scale (or not) -FIXME, possibly don't global mirror text messages - instead rely on matrix/riot? -FIXME, discuss possible attacks by griefers and how they can be prevented - -#### Service Envelope - -The payload published on mesh/... will always be wrapped in a [ServiceEnvelope protobuf](/docs/developers/protobufs/api#serviceenvelope). - -ServiceEnvelope will include the message, and full information about arrival time, who forwarded it, source channel, source mesh id, etc... - -#### NODEID - -The unique ID for a node. A hex string that starts with an ! symbol. - -#### USERID - -A user ID string. This string is either a user ID if known or a nodeid to simply deliver the message to whoever the local user is of a particular device (i.e. person who might see the screen). FIXME, see what riot.im uses and perhaps use that convention? Or use the signal +phone number convention? Or the email addr? - -#### CHANNELID - -FIXME, figure out how channelids work - -### Gateway nodes - -Any meshtastic node that has a direct connection to the internet (either via a helper app or installed Wifi/4G/satellite hardware) can function as a "Gateway node". - -Gateway nodes (via code running in the phone) will contain two tables to whitelist particular traffic to either be delivered toward the internet, or down toward the mesh. Users that are developing custom apps will be able to customize these filters/subscriptions. - -Since multiple gateway nodes might be connected to a single mesh, it is possible that duplicate messages will be published on any particular topic. Therefore, subscribers to these topics should -deduplicate if needed by using the packet ID of each message. - -### Optional web services - -#### Public MQTT broker service - -An existing public [MQTT broker](https://mosquitto.org) will be the default for this service, but clients can use any MQTT broker they choose. - -FIXME - figure out how to avoid impersonation (because we are initially using a public MQTT server with no special security options). FIXME, include some ideas on this in the ServiceEnvelope documentation. - -#### Riot.im messaging bridge - -@Geeksville will run a riot.im bridge that talks to the public MQTT broker and sends/receives into the riot.im network. - -There is apparently [already](https://github.com/derEisele/tuple) a riot.im [bridge](https://matrix.org/bridges) for MQTT. That will possibly need to be customized a bit. But by doing this, we should be able to let random riot.im users send/receive messages to/from any meshtastic device. (FIXME ponder security). See this [issue](https://github.com/meshtastic/Meshtastic-Android/issues/2#issuecomment-645660990) with discussion with the dev. - -### Deprecated concepts - -:::caution - -All of the following concepts have been deprecated - -::: - -You can ignore these for now... - -#### MESHID (deprecated) - -Earlier drafts of this document included the concept of a MESHID. That concept has been removed for now, but might be useful in the future. The old idea is listed below: - -A unique ID for this mesh. There will be some sort of key exchange process so that the mesh ID can not be impersonated by other meshes. - -#### DESTCLASS (deprecated) - -Earlier drafts of this document included the concept of a DESTCLASS. That concept has been removed for now, but might be useful in the future. The old idea is listed below: - -The type of DESTID this message should be delivered to. A short one letter sequence: - -| Symbol | Description | -| ------ | ------------------------------------------------------------- | -| R | riot.im | -| L | local mesh node ID or ^all | -| A | an application specific message, ID will be an APP ID | -| S | SMS gateway, DESTID is a phone number to reach via Twilio.com | -| E | Emergency message, see bug #FIXME for more context | - -#### DESTID (deprecated) - -Earlier drafts of this document included the concept of a DESTCLASS. That concept has been removed for now, but might be useful in the future. The old idea is listed below: - -Can be... - -- an internet username: kevinh@geeksville.com -- ^ALL for anyone -- An app ID (to allow apps out on the web to receive arbitrary binary data from nodes or simply other apps using meshtastic as a transport). They would connect to the MQTT broker and subscribe to their topic - -## Rejected idea: RAW UDP - -:::warning - -This idea has been rejected - -::: - -A number of commenters have requested/proposed using UDP for the transport. We've considered this option and decided to use MQTT instead for the following reasons: - -- Most UDP uses cases would need to have a server anyways so that nodes can reach each other from anywhere (i.e. if most gateways will be behind some form of NAT which would need to be tunneled) -- Raw UDP is dropped **very** aggressively by many cellular providers. MQTT from the gateway to a broker can be done over a TCP connection for this reason. -- MQTT provides a nice/documented/standard security model to build upon -- MQTT is fairly wire efficient with multiple broker implementations/providers and numerous client libraries for any language. The actual implementation of MQTT is quite simple. - -## Development plan - -Given the previous problem/goals statement, here's the initial thoughts on the work items required. As this idea becomes a bit more fully baked we should add details -on how this will be implemented and guesses at approximate work items. - -### Work items - -- Change nodeIDs to be base64 instead of eight hex digits. -- DONE Refactor the position features into a position "mini-app". Use only the new public on-device API to implement this app. -- DONE Refactor the on device texting features into a messaging "mini-app". (Similar to the position mini-app) -- Add new multi channel concept -- Send new channels to python client -- Let python client add channels -- Add portion of channelid to the raw LoRa packet header -- Confirm that we can now forward encrypted packets without decrypting at each node -- Use a channel named "remotehw" to secure the GPIO service. If that channel is not found, don't even start the service. Document this as the standard method for securing services. -- Add first cut of the "gateway node" code (i.e. MQTT broker client) to the python API (very little code needed for this component) -- Confirm that texting works to/from the internet -- Confirm that positions are optionally sent to the internet -- Add the first cut of the "gateway node" code to the android app (very little code needed for this component) - -### Enhancements in following releases - -The initial gateway will be added to the python tool. But the gateway implementation is designed to be fairly trivial/dumb. After the initial release, the actual gateway code can be ported to also run inside the android app. In fact, we could have ESP32 based nodes include a built-in "gateway node" implementation. - -Store and forward could be added so that nodes on the mesh could deliver messages (i.e. text messages) on an "as possible" basis. This would allow things like "hiker sends a message to friend - mesh can not currently reach friend - eventually (days later) mesh can somehow reach friend, message gets delivered" - -### Mini tutorial on how to get up and running with mosquitto on a mac - -1. install mqtt server - -``` -brew install mosquitto -``` - -2. start the mqtt server - -``` -brew services restart mosquitto -``` - -3. Do a quick test of server, start a subscriber on a topic: - -Note: this will wait until you press control-c (publish a message, see below) - -``` -mosquitto_sub -t test/hello -``` - -4. In another window, publish a message to that topic: - -``` -mosquitto_pub -h localhost -q 0 -t test/hello -m 'yo!' -``` - -5. For Meshtastic to be able to access that server, two settings need to be changed in the - `/usr/local/etc/mosquitto/mosquitto.conf` file: - -``` -listener 1883 0.0.0.0 -allow_anonymous true -``` - -6. Restart the service: - -``` -brew services restart mosquitto -``` - -7. If you are using the mac firewall, you will need to go into: System Preferences > Security & Privacy > Firewall > Firewall Options and add it. - -### Sending/receiving messages on mosquitto server using python - -Here is an example publish message in python: - -``` -#!/usr/bin/env python3 -import paho.mqtt.client as mqtt -from random import randrange, uniform -import time - -client = mqtt.Client("some_client_id") -client.connect('localhost') - -while True: - randNumber = uniform(20.0, 21.0) - client.publish("env/test/TEMPERATURE", randNumber) - print("Just published " + str(randNumber) + " to topic TEMPERATURE") - time.sleep(1) -``` - -Here is example subscribe in python: - -``` -#!/usr/bin/env python3 - -import paho.mqtt.client as paho - -def on_message(mosq, obj, msg): - print("%-20s %d %s" % (msg.topic, msg.qos, msg.payload)) - mosq.publish('pong', 'ack', 0) - -def on_publish(mosq, obj, mid): - pass - -if __name__ == '__main__': - client = paho.Client() - client.on_message = on_message - client.on_publish = on_publish - - client.connect("localhost", 1883, 60) - - client.subscribe("env/test/TEMPERATURE", 0) - - while client.loop() == 0: - pass -``` diff --git a/docs/1.2-End-of-life/wifi.mdx b/docs/1.2-End-of-life/wifi.mdx deleted file mode 100644 index 2cd31734..00000000 --- a/docs/1.2-End-of-life/wifi.mdx +++ /dev/null @@ -1,387 +0,0 @@ ---- -id: wifi -title: 1.2 WiFi Settings -sidebar_label: 1.2 WiFi ---- - -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::info -Enabling WiFi will disable bluetooth. Only one method will work at a time. -::: - -## Overview - -The ESP32 based devices have the ability to connect to WiFi as a client and also are able to create a software based access point (SoftAP). WiFi can be configured in either mode with the settings below. You can [force the device to boot into SoftAP mode](#software-access-point) by rebooting the device with the program switch depressed. If forced into AP mode, it will revert to previous settings after a reboot. - -:::note -The device can be either a WiFi client or a software access point. It **cannot** operate as both at the same time. -::: - -:::tip -The first time your device restarts after enabling the WiFi access point, it will take an additional 20-30 seconds to boot. This is to generate self-signed SSL keys. The keys will be saved for future reuse. -::: - -## Settings - -| Setting | Acceptable Values | Default | -| :-----------: | :---------------: | :-----: | -| wifi_ap_mode | `true`, `false` | `false` | -| wifi_password | string | `""` | -| wifi_ssid | string | `""` | - -:::note -`wifi_ssid` & `wifi_password` are both **case sensitive** values. -::: - -### wifi_ap_mode - -A boolean value that toggles the [Software Access Point](#software-access-point) - -#### Enable/Disable Software Access Point - - - - -```shell title="Enable SoftAP" -meshtastic --set wifi_ap_mode true -``` - -```shell title="Disable SoftAP" -meshtastic --set wifi_ap_mode false -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### wifi_password - -In [SoftAP](#software-access-point) mode, this is the password to access your device's WiFi. In [Client](#wifi-client) mode, this is your WiFi Networks password. This string is case sensitive. - - - - -```shell title="Set WiFi password" -meshtastic --set wifi_password mypassword -``` - -```shell title="Set WiFi password (with spaces)" -meshtastic --set wifi_password "my password" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -### wifi_ssid - -In [SoftAP](#software-access-point) mode, this is the SSID broadcast to access your device's WiFi. In [Client](#wifi-client) mode, this is your WiFi Networks SSID. This string is case sensitive. - - - - -```shell title="Set WiFi network" -meshtastic --set wifi_ssid mynetwork -``` - -```shell title="Set WiFi network (with spaces)" -meshtastic --set wifi_ssid "my network" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -## Details - -### Software Access Point - -With the SoftAP enabled, a DNS server will run on the device. The DNS server will respond to all DNS requests with the IP address of your device. This will simplify device discovery because you will not have to remember the device's IP – any unencrypted HTTP request will direct you to the right location. - -If you set your SoftAP up using a client like the CLI and have a screen attached to your device, the final page will display something similar to the following: - -``` -WiFi: Software AP -IP: 192.168.42.1 (0/4) -SSID: myNetwork / PWD: myPassword (alternating) -http://meshtastic.local - * * * * * -``` - -You should then be able to connect to the node using either the displayed IP address or the HTTP link. - -#### Force SoftAP - -You can also enable the SoftAP by following these directions: - -- Hold down the user button -- Press and release the reset button -- Count to two -- Let go of the user button - -This will reboot the device with the SSID set to `meshtasticAdmin` and the password set to `12345678`. Using the Force SoftAP method, once you reboot, the SoftAP will be turned off. - -If you have a screen attached to your device, the final page will display something similar to the following: - -``` -WiFi: Software AP (Admin) -IP: 192.168.42.1 (0/4) -SSID: meshtasticAdmin / PWD: 12345678 (alternating) -http://meshtastic.local - * * * * * -``` - -You should then be able to connect to the node using either the displayed IP address or the HTTP link. - -### WiFi Client - -With `wifi_ssid` & `wifi_password` populated, the device will now to connect to your network. Make sure you are in range of your WiFi. If you have a single device on your local network it's easy to connect to your device `http://meshtastic.local`. If you have multiple devices you will need to connect using their respective IP addresses. - -If you have a screen attached to your device, the final page will display something similar to the following: - -``` -WiFi: Software AP (Admin) -IP: 192.168.42.1 (0/4) -SSID: myNetwork -http://meshtastic.local - * * * * * -``` - -You should then be able to connect to the node using either the displayed IP address or the HTTP link. - -### Disable WiFi - -To disable WiFi completely, set `wifi_ap_mode` to `false`, and both `wifi_ssid` & `wifi_password` to an empty string `""`. - -## Examples - -### Enable WiFi (as client) - - - - -```shell title="Enabling WiFi Client" -meshtastic --set wifi_ap_mode false --set wifi_ssid mywifissid --set wifi_password mywifipassword -``` - -:::note -If your `wifi_ssid` or `wifi_password` contain spaces, be sure to put quotation marks around the whole thing: - -```shell title="Example with spaces" -meshtastic --set wifi_ssid "my wifi ssid" --set wifi_password "my wifi password" -``` - -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -In the above example, the device will join a network with the SSID `mywifissid` and the password `mywifipassword`. - -### Enable WiFi (as SoftAP) - - - - -```shell title="Software Access Point Example" -meshtastic --set wifi_ap_mode true --set wifi_ssid mywifissid --set wifi_password mywifipassword -``` - -:::note -If your `wifi_ssid` or `wifi_password` contain spaces, be sure to put quotation marks around the whole thing: - -```shell title="Example with spaces" -meshtastic --set wifi_ssid "my wifi ssid" --set wifi_password "my wifi password" -``` - -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -In the above example, the device will broadcast a network with the SSID `mywifissid` and the password `mywifipassword`. - -### Disable WiFi Completely - - - - -```shell title="Example - Disabling WiFi" -meshtastic --set wifi_ap_mode false --set wifi_ssid "" --set wifi_password "" -``` - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - - -:::info -Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. -::: - - - From 8c841a077536a86c7adeadb5b15b4b78a35d0f7d Mon Sep 17 00:00:00 2001 From: Sacha Weatherstone Date: Sun, 11 Dec 2022 17:12:02 +1000 Subject: [PATCH 28/41] WebUI overview update --- docs/software/web-client.mdx | 52 +++++++---------------------------- static/img/webUI.png | Bin 0 -> 420678 bytes 2 files changed, 10 insertions(+), 42 deletions(-) create mode 100644 static/img/webUI.png diff --git a/docs/software/web-client.mdx b/docs/software/web-client.mdx index 48b7caca..a7fccd3e 100644 --- a/docs/software/web-client.mdx +++ b/docs/software/web-client.mdx @@ -5,14 +5,14 @@ sidebar_label: Web Client sidebar_position: 3 --- - - -Meshtastic Web is a [Progressive Web App](https://web.dev/progressive-web-apps) that runs directly in your browser. +Meshtastic Web is a Meshtastic client that runs directly in your browser. There are three ways of accessing the app: 1. Served directly from an ESP32 based node via [meshtastic.local](http://meshtastic.local) or the device's IP Address. 2. A hosted version located at [client.meshtastic.org](https://client.meshtastic.org). -3. Running it yourself. +3. Hosting it yourself. + +![WebUI](/img/webUI.png) ## Compatibility @@ -20,7 +20,7 @@ The application will work in all major browsers, but specific functionality is l ### HTTP -This method of connecting has the best support, and has no incompatibilities. +This method of connecting is limited to esp32 devices. :::caution @@ -31,7 +31,7 @@ This can be found on the screen of the device, via your router's DHCP lease page ::: -You can accessing your device over HTTP after you set up and enabled the [Client](/docs/settings/config/network#wifi-client) +You can accessing your device over HTTP after you set up your [Network Connection](/docs/settings/config/network) ### Bluetooth @@ -47,42 +47,10 @@ The method with the least platform support, uses the [Web Serial API](https://we ## Updating -The web interface is now included in firmware releases. There is active development ongoing to fix some issues with updating the web interface from the web interface directly. Please be patient with us as we work on this. Use [Meshtastic-flasher](/docs/software/python/flasher) to update your device to the current stable build which includes the web interface. +The web interface is included in firmware releases. When a new firmware version is released, the latest WebUI will be automatically bundled. -:::warning +## Self Hosting -Old documentation below. +The source code for the WebUI can be found on out [GitHub](https://github.com/meshtastic/web) -::: - -If you have just one Meshtastic device on your network, the easiest thing to do is to go to http://meshtastic.local printed on your device screen. That URL should work provided that mDNS (aka ZeroConf) is not blocked on your local network. If you have more than one device or there's a problem with mDNS name resolution, you will have to refer to the device's IP address. The IP address will also be available on the screen. It can also be found by reading the serial logs when the device boots up. - -:::note -The first time your device restarts after enabling WiFi, it will take an additional 20-30 seconds to boot. This is to generate self-signed SSL keys. The keys will be saved for future reuse. -::: - -## Common Problems - -### Problem: File not found: /static/index.html - -:::note -This issue is likely found on old versions of the web interface. Device firmware now includes the web interface and the file system has been changed. Flashing the device with [Meshtastic-flasher](/docs/software/python/flasher) will update you to the current web interface. Access to the files in the filesystem is actively being developed, but is not currently available. -::: - -Cause: This most likely means that the file system for the web server has not been loaded. You probably used esphome-flasher or some other GUI tool to flash the firmware. - -Solutions: - -Option 1) Flash the device with the `device-install.sh` script that comes packaged with the firmware zip file (you'll lose previous settings). Then follow the instructions under configuration to upload the web interface. - -Option 2) Flash the device with the OTA update from within the Android application. - -Option 3) Flash the device with the SPIFFS instructions in platform.io. - -### Insufficient space to upload new files - -:::note -This issue is likely found on old versions of the web interface. Device firmware now includes the web interface and the file system has been changed. Flashing the device with [Meshtastic-flasher](/docs/software/python/flasher) will update you to the current web interface. Access to the files in the filesystem is actively being developed, but is not currently available. -::: - -Cause: Typically a small partition has been set aside from previous firmware installed on the module. Instructions for how to fix this can be found on the [ESP32-Partitions](/docs/development/web/esp32-partitions) page. +Instructions for building and running the project can be found in the repo's readme. diff --git a/static/img/webUI.png b/static/img/webUI.png new file mode 100644 index 0000000000000000000000000000000000000000..dc398f4d8bcbeb24303576899b4cbc4d170936cf GIT binary patch literal 420678 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

?8<_`(m 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 z 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 mp@i;k7of4UHT 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

x~o9(Lj8+1JIhq?rpD$_AgTF&E&1Wl&Ov};uF z(j&M{5eq)zVGXbL*kJGSIbJnja@en(C<1-*Q}!OySEtx9VBj&aPV5UqHs= z(zi|=`<|vKqMRqoY^I{1fj4`(#YMJ+A(n98l26nU{KH2cNfiYM^K`?6%1({Q36iqO zYOPHw09wbIq$V*^Li#sPSQT{|7JwE@jjF6gOB#-ir8l``SNXFhHQPYAGp0QlZPCJStR0);Xp3d&Wy4tAzwm zva&!GkzOe~dDsSg^{bJ{1wtfm)|jUnmVu{Cy^Xk$pBiP-kRzW@j4~~T2?2ye9&AR2 zCu)u6^!62i#p`#V88;o-{JN7?+#iHC8KRWP_I|U7-R~r)obb(pmV%oubs~mt$=V%> z`obHzC2NfC+wWRukoF-?;4f6O^3y5)&%bBis(&6V^D0rx8gGt~03Zhg*KAxhmNOv6 zr}|i7ps9}~eN}2~kZ^0uy09V!1v}t10EbpgWT70Nibq|+yt?)1N61m8RJO+(q5E62 zq&IHnE!-~O{obq3NkLe}w{W{q{x=vTLjAI4)W4z!=n>n~U*?X#_^ub;Wo*-fVABv4 z7v``8LRsK;Ve6r~aHv#c24>b9xYUp;(JQ0=BX4Y`iu;@k1TDNj6h3-X94g=YxtQSV zpuG6)u@f=U$XTyAGqc{pZ|2hI%qM=G?&12m$6K>7c(1;mq##lI$?Sr#&M|>gYK|=` zv^b~y`XeH|QX*0XA0BV6V7|1RMdx7nLI0el+E8Jeh$Gthps#UvG{oQTG57ZTPz6Fa z6%U2<`HaRpflzouKrRlwYD(TLC}Zo1~47Y+GzAQ}ShAJ!L_zVmL#m6bAe( z8>LI)oJt1+ojZ{?Q!Ym`mtFzq7ei64o+wsp#*}NKQqJg{ZH$4Gh?-Gx9KDjacBFe%Y96-l8^shoA;nq85!Mjd#DJOO70^B;AG14 zJDpB-Ip#>`ShuE*l$e`dE9i+cwx(e2goazRjdWfmzjo4j7h~Y>T>SZ^b&=;>xLur0 znK3fv{CVy0xXvU`o2oYkx3s*H?Bc@$26_ zFw}xz6~IDucYV8}r+?r)YWvasFWKcuuOCasoG?5=?6wT|{18T!&$*s5sZ|U*esE9_ z>4;%p-|p{avkg+_>W8owz0U%(0HWj0Na9`-=fV;CB&-7v+>@w33<_hef z+4a596tx?ThY~jMPn?QBaraTYTf;F@SoFseH;gC^!Q2M5@wP=MXM4F=(WytfbGx)R z7x#6P%RvjuTSsHI?{$=Cia3q*O7KD*aUs%?qWp1b&oO%a~19W7a#D z4sz2RwTiP7c8WuHZ2l`S{P@X3`C;x81HUKwo3wRP`?i;~$pS|@ZoPk%A?V~JMUGhd zwyZHUUPqa9M&V$2?LLQ61Np*o%|XNC8OhIs4V7B`WArxN2CCqAoTp6AeA4tqm{gW+zBhHMCrutc{b93L z_uZf#fY|Ifpn;TECrUoIGzl-#7?mnc4sK5GR1H&Od6y_XJHOwg=Mt*=Fe=P%zEzXD zI27KOh02|%N^smZHC51}+EoE{fl7mc%1pJ>K%nOYWWk9SK~n3njiXK`JI^zpV=>FKjWUPD z+X1}!?9ZHp^l3@u412vfX&I;!I@%Td1?z6b z_QBANP4fMX*{L;dIsi;RNJ?R20|xftphxfG#X ztcxeM6sYpNky9`x(@nEozdr@Y!W3`c7qc*7BlkEeueXUW9#~trMZrk@5F1~GR&(0^ z=WvjYTY*|hj0L=D#Lu$KCby(E+NEfzDJ;LYCb}fhly|%%SaP8+{%%pM=qap|36nV4 z(nNsw#;EyvvM{A%x+r6-C&uhc**@Rdr{iKUd}hJ|N8lFULguA}uUz6VR0xqFB)>k!L9!faB`E&Xot zGR$BwlwaputBR&aWr71huGvX8L5AY3T9?(9TEk6r_^Va24D{#yS_|GzzsVdOFm=HY z6Y5RkwM=0Ti8 zkvuU}{n%Xr$Uyt|0Ov_0#6-4s9*;lf%b2D|VTv`sUlN*`Cum9&Wht%nz~mq_Rpo zEvc$~j^CcsA4XJmS}09a6Ds0tINMIMusrx8$ToTlA_pY^!!RCqcvh&SD+V zPCR{A0C`ZL=miLdk>KCISmtM(tiYUfIwM(1`^e>mfh8$ufW&M`*dxiMNp?z@Qp3Cn zH<#j>7q7FIUZlMi6FnApN1GZho{_8`V5o8v)@CSk6#8md=cvP_^*)DDb%#frf6qu> z_rg%xhm$%z;lJ^Y%^YBBZ*M*#dWsW4@-t$B_Fd%sA)i-ra5FdCpnP1y%feI$1-nMRtKrdQz%hp1OX7UuzNE&oLA%|tA>w$xd>)U-1t!MrBu&ikW0}-~Q6xfj0nIGfD_)Z;7m^r!1P1NCyIJ_e9rd6OFNb{#%O4sVv<{cl z23Qm&;RNj(k+)T+-*3d*Z#5wuaB4)}_ow#Q;Je$>uKER76=pTOyIXA*Uxc$z=4tM5 zU)++F@c^9%z1=hs8zU!oo17<=J(K6o!Y5Qc&Y``4zLCb%Za{CIIGWMsz!-S#bh69d z-o7cJtbQL^CDS~;3qI*9y<>XpmaY{U*X1@U)HT19lPRaXEvrLDxov{4^oyhJ4DO&n z!a26m)Er;-c#A|uq>W^e0m!Nf4Nx0Y7CQ8(eFLm6z;q3EUHghjxzoGr+VR$r{Fg8T zRK^$qC;2ss`h>XY-q8H1PcRz}Uk z${ES>BiO(Z(5ll@>gi$7-1cZja;L()BsbS~XDrjp6u!_IV&S%{s@r=gl!JZEzZLDM z`6w*;ZKzYN{;=I(@PSLR@9u2oI{hPvW7$>k*?I}GftpJdJq<=`8?KMQ6G%D7UtZF^ zgr>Bj{O2Xbd<1WVrJL)t0hpQW2hG`&gdkyJB-B2=64O7n-^Ij71AVF0;g9)kNp6q@ zJ#Q7lBgvnc1#~EnnzJ-X87LH{O@#HTD3- zuIaQ6kyU2DE-R3xQTe-;`$I{^sqGRvJ$WFheH*ty3Zz@7R7}&azxiGjNA1lXwvZexd1@5-K0lA_vXod2M&;&;V@=(3yiD;U<`?=!I6T8#N$$Uc9?k+=n|o;C66) zH0AH7LUeQ0{cnr2%~UT)W?j=w?N6BEuH)Aq=Z^m@zG`3T9J)I=^PY0RmaL=KUB^?S zdjYhYWaXQqvK-5ZQRIDKLmt)$Zc-Si9NV^T>us3S`ojaj58gVitLM1xa74RJyl0fk z-1VjV2)8hh-R)|*CzUu1(Sfah)4b`)%Q=tT`mNqDkTv#uUpqqf>~B`4OjV^#>+O0a zIbt@&sCpzBg|!DHOV_!<;|~7B%eYDltp8_w!@bU3C+ghz%xptjEV_E9fTh>dg3X6E z3?MiZ5}nd1QNCNBzP!=lEW&^BpwlFoTeCcZEQa^3W?-NvqJdJ1ei{7yCIb(-B?oV=Bb;Qp4^G45A;S&}q0K-UG|oxs z9=3GUh`g06EhGTwXL6^g1kx{`(Podzu{L!oirg-y+HYuLCtec#B~jz?)XQr!t|(F9 zj-CN;+-Yi?6cEfy(AsS9lH2wcvx-43Xq2hQ)_$$|FmkR%4XY5%b0u7%4`M% zVc$ei=`MHqoTx>PeA?yRHyG~#Wmy0?%lyo?DH5KtDjvJV=FJ{`8>t--8Y^#v{z46T?)ru03aT?dXS=4b|hn$_qtEI37peo>cT6t z|2_yD8xw0F;kF3q-wfIPdn=?6u{=}fHB%$lcd~B3B_Mf<CBsiqZU$stpJY~+2X3ST<@b(|AtjMy2h znL4q7R3rB8+>b9i?Y9T)Fo9o2pI@pLV}09j%f#p2r$2W(2LuqKAywJJZ8o~8O%4uK z@perm$a|jEP&uFm5KUsftVjV(3m$v*6+J3@VoY!6mbFgRPv*>gU{AaZpd~g$v5}pQ z?yro|s@4ePz3qtZ%xk0@yjiC13aGw2Vg;R=F`cvoHc^L=A1Fn$=U*Dv+Bu*hP;`Ufr&bg2*83&w7b-G$npE9rzCEJv>WmEFj7%81_T~2kn{J7 z!lqgeS^%*?nFa&}2NEVY?Y8#?E~V2#v1}YO0R8I9zMfXd92PJN#bEn(rz8D)GaVYS z56lOEdNg5}Rz@zLbOcO^>HE~Aqz^fz$@Sw}xf!!#DdD}G7-unl=I+N$eRm#jSDHE$ zaPdcu2dJw1>2YqsrZ**g``Fm+CcSPDzx&!aG3PQNm%_3*;FvJf%5Ho4eU^rL4qX98 zV}}F$HXBUf@GbVV*uO@IK-9+U;%ihgscd#?LPPR>)coPniD4ZtL73-N8?rvwlqE}bWA07dzsWPG5No)gJPM@%o8fgR9m?Q} z>A%S_k;hexwiwE}>X`H}$``AWo;s*55H5-dngpxj`F++++EFmp9)~#Zd-bFn%89s# z3b&iyiHx96MdY8?&b$OxWq0kZvm_2Szgr#Hvp6$^M|~(Hs_`qiqtnbC#$acR1&(Z0 z8riI~tuJ<<3$pxO(2GutF7d$w;{BH9X~y5;tA{3FiScZ+>Be^PBCY@uq-A+_N#ROOm*?wMqx#_w+xH?{|-M{=h=8O!z;ywz4k$Mp%(-kOtgGLqfven0ed&J3Bqx5JKKpN>1@usn2^CwnS+}yy-}1At6)xD&CeAf5-o06oY|%NVfo{vp$ua-7Z?q}ahNJQERAiTa56&6jgNIKDSon6n zNx16U%x2NBB|xumen_1(aRFo=6v4Om#Cyz$10cQ~3&b=c^8@8K|9#i+b9T+!Lycv> zJ(47jxgKBLH4&U$gAur(dnqD*+pRI#{s?KOO9F5m{xHD#C-EfNw)+Ft_U*B^Ns-DP zGC9r3orY-uG#-(b(VW{N~tsG+vQZ*lzZXqrz!hgLJPZ z?doKWAf(^8P*A@f!F+BAX+2Ek0FO>1ND-2~JetG*z2=Aq&*PIyxSg8&2YcUMonD@N z9=k+dnnXjesFkzUsl??lDfWD_xh z$8r7l<(Ps6y>jw$rXvy@xz4%4yz4B>$jQEQC7r@N`fOtIMK$i8G@9Tb7sCAPIC!wj zo56Nx2=X9@k%gxjR07SUV8KgX@9TL_?BZuP$~ik}B(uqWX}+Mh6AWy3p@4!d8gZ2{ znS=3}py9cNF-X!~`BAAx4DBUR^|fP}kNYTOw72iIwDK1Ys%poY3~6hoayx4Y$r^JR zyoBkl|B=7id;+#*gYjK(YkH#!FUN!G12XbFoP@XB7GmeQ6ECI|ZIMGoL6{93m}+ z>H+IR%GHRqP)HZB-e%-0Ni~y7MfM2(JBhaLp}hd80n1T|zFV<1>;9khnJXdWfIZl# zcPk_U6N5Jqd`3l-ho4{QN7)q?3F^1f&M0PKSvUu)Gh6!zX-))+p1kSZuP^F8%Q_Ew)@! z3`Mc8%`oGbXXSkn{qgHepj-4btFiq!$*dj}0V4Jkpt_++QDO2bF1y!#fxI~y2-81U zc{Sol*>pXJCSq)p;1EA!E%x_1y(~_BogB^LvXex{%bkbQSL?{e zenjnLfInj#D}l!`fvoSisVlxS7StvjdpGm>PZh@6w)101^&4Qm9u+ISDoCO~XU+DCoSs2&U~ATdAY?zIa?=#etBk58|P<&xD-C zV_*~vj#Ic|lQMbBiOb3h2)14j@lw--WNwX5T4@*#`v05x-iI zL9cQB#o-{SV|D|c)Vy*e#i96%3BVZ%5L2maKefIoq>E{LJEAZON_Mr$6;bM+kXQa_ zZ%Fv;`0cy(0>%`5T47SJpyY`0TmdevYEMQ-UJ|olTh^H~XSyfRShC@HACTm71P%ub zcK2u9MJ){#%&b<+!@@h4{TU1PVmTL6BSSp~Cg~{xhF#`R^OAj$hDTd{wn2Dyx2t5? zM3Y^)W?woyuc;Mwajcli52*;eFPB3{TRmN^1pol&zxnxHi@R)Xzw}gy zoiVZ0Yc{GEy_s%=-e>AWx9CcTYKNB+oMA6Qo4OVWf>E*UU!7!6ehyg3DzK1}c9z?? zwCR}6%}wPg>dkKQIpc>IS@cG-x6g;%tH|$ajQ#$%tqE>ol_s*4=oAu)?3-95d zzG!jRYq^S==CUOz#!~Dah&b$G{H4uZy<3B1>@RS4F8n!3$`yPQyMSq`8s6%_x^D=@ zd^&(LsCWPoelUCm1$p{(;DCsFtMjq1_oTfhr__2;b7>xplRTa`_~6{PW;XN|q*9PVhi!mpqC3`Hr}1^zn=UYELcB}jvNKE(u#{;Ax! zA~+Z;Qb=Tzf#gtw@lN$b8_ppjV`jW>(Lc-l?S4LS?hnqPr^pvaGHwYO4cGuhO2`$w zb|q%3m;x7WwFLBJD>FqY4S@km@US@-*NKCFs6#=qcbf>T=#v8|`22lu#p;o)PQaFK z?eqKrcSY7izzs+q0##S1a;sWEVehH$Kd%c`%(<6&wVyXY<+^<{^;F8^pI@_K%lvV0 zJt`=y9y;ou$Jw-hKJ#swb7<^T8>oCeBPZ9hS+I?(-^W~9aL8!|94>v=ctTWaf>1ddkUMR@Y@(YYV*-Wlcjb|-d@!l#VG$2$ zNfBc&))jv}&r>$~s!AS8HZ#&|;dW9gX-=Bs6+Ksq_tH;hcd(2LtlzMpfTqmBMGp9@ z)XisSM}>lk_RV?)YL_7hk}9RpF5AJ;z|Fzd_C)7YdwMu3a(REEYYuu+F%b=&H-^+x zQ{zorB85&{mm)%r=l=<6GCPW}CJI6bpy{Wzh^o}hA|uQ(fVwr0oLnsJek3{I&&YvU zjH!0Dlq|*FkY_&2Ml1=X#i#~Jw!3qRi0^?jQ@iwBHrexNM5<4}y0k*MQ^0Pij3_yF zWp#pV6Cw1M*m`nzi00s+I@ zAGFU4_K_>+Zooj9uVamXQQ=13vx!ZzH9X;Ppq5Of#X7rT536wqnENGWQ%U3yGRVHIm>QaedV`?jYS zhc_nWH_ABQYs7Uq>!#**O&}^Wj4AV5{UM}~svCMCa)_lO;)r~)oxS*D$p{IZVostS zO5)H0t~h=LE*a+vl01w-Dsci=_oEa!;PROyCI4k_21f?y$hb+JL$WLJC&J0&oFZYc z{&&jR#r3jhEj_Qf6L$x5+!X^riT0y_+J%Q?3 z@6FmevwL=>tmnundmbbZkMicMh#)e#jl`PkwYd6y`RMlW$W_>{)Wjc-8%abu@5S6p zd@gOye*vMb1H~zwUq;Y?%Ppq>x6B4m%V;c32pJ?ndw<_D0{5kj@1|sw<)fj)aJG!9 zZu)?kabq{gw0Rh zn!3*o!znGPwhi0Uvwa^hbY}yu{E+(}&{7|4)xZKl=*z5!)m0lq!ZwA(PID&SS7Oc(kv!Vy5hI{S^A6>jk`oT{># z5tVyIIX!HU@9ZygdYsDJbCj#wL95J81`1gGIQ-20BMVoh%~ul0b9m)^j-LSbCm>5c z>HW`ninK>tKOIiHnUqquKhsjOxQ8?e9!TdM3)S5d2E!PL?|ZFg>sb*QQm3C5UQsuG zG5V+yk%0@7x@z)aT@%epFc=Bq^ft9+yx0!7`dkjs>bfbrQZEx-nfPV9E6_*uXd0Bf zjixKH{W08XiZ8|l0%x@}ElWdRRO$NY-xJWfe0?k6Rocq09?_V|2e$%jN0SYLIgQ%n z%z4T+3wTq|IFvONkf6*VxrQj+s+%7C8TP>eT{i+L?<12i<^RTLj#SBDJG+!zO8NF| zt`~wk6}j-t{`jC=2xp8)XBeJ?#*LH9kyXw>MGepu0u&Uo*lj=%ksx^@lW;VpL!o24&GWf-`kwi<9N1Im zzpSO~fzj?3KllK~fHni|K;`u-Q?qL&Z_(b28>|7auO7SPo$$Q~+ATK)Qosvui%Vpw z1Q^n&$K3ch@ zuK#{teSRnC?XxF8G63aTl-F^s+#M=mGx0l&xeR(-*)@bd`RhmZPxM+->^z|&;PAty zDo>5fWooPON{R~X)+*I>^|Oy8o5I%S13VKYUsp-8HnU~}c-a;Ga zd*dz}`eT}BbDm4LJ~6)2gDOw)jOJaOrbMd>`Dwtu`v!~+9Y2cl4WP~4&9c|OTFa~u zq-<^U_q)4QUoi`UnMO`z$3Ev0sjfg<*_rl|Ht`@8mp6-{Yb9Bo-kFW>8fErQa91jV zDT)g`Ar8F>st&QTr?D5etNoCmZ~7yOEh?aST%{5|>X$RIvu^tR;(es`1zxt1_iS+@ z;*JEDJN-r`=!Sv9)=bAF3bxm;#wAKD4#dZrOSX%nO3Wx^ANhcmV0Z7jb;?5BvBuL4 zdeQaMmApFUOpFqqxn-|X>p;`p{G%QjciaHFA<+YGQrcX?`(eraT#zm@(2ftFfZwT<&rah0yZsS+V(sZx>_d>zMeiMQuz zIad!(L>0O>s#TE96$(=O%#ZiVhFp3s3O1E9NVDY%6DXw8h_9oIfkE$fEWRL4aLMmq zg_1Q6V6NMb1pXu5-OH;614!hrnG(h@`bs%bLq=RJp7MM^;pZv{`*V5R=Zi zHDsc|EM${>>J0I@(&y_J@PX&3W_OhLf9|T*dN6n&3}8Gf$H}!Eu8j+>P;RZCSdOo_ z0+T@ZFIXD%EPhzTNTiu8@NBBCgP=Lz=5Del~fCtf1v899zbD0Q8?z7#~m9x+%mdEjBks%lxM*pzk0KD71 zp{#I9zbjB1bvb)p_rvP>(?`fEgfc{@*bzs1ZA=6Q!b04d;ycnSW7mxu4`{!4vNbxX zOIxdP{q?h_y6{X8>NW#6QxVPjK0Yg=!epXEXd^{nT?gnFYYC!$3Ew&&{?2Ya^YlqK ztp`*leRrw*v-JdsB!1QwV(1M{A$3@@C4wM^E|_}I6I3s83#Q-vJaK83{lln(FOFRMbY4 z3f=3T67U0WPQQ%JSrs&QvCIrd@0;tCZ$tJ4#s#`SCkCd6R7qmSgUY78h|e*HzeWpS zu2H%YswC2*{Aw2Wy}rgybOsSfvKDj*G_K=}7`Fy@77rZwH6F@cNpS_nkTaz5) zXP8r(D78J)S=mR~6|$I|ff~=jefPDjNu4 z*RJzFFRvYU&E%pQJ!vzN;36>{g_lb5yU(q`F(jxDL`$|g9@cGEd~UR;U58^e8*zK- z6+y(*CvttHx3nht8!}W5Sm5&40*^uX)H%U6`&eG{>jP1YzdK?WVu7=h-jRC8@=ulx zd|d{VOokNl%y#hrsMd@4l2iMK5IcJ!g@CbQGonrMv6KTyJ3TFiF3IXpNQD1FnVFG2 zk?nxs1To={62 zGjkFMgAJNytM5eTCsqtFLvD#0)Jq-WvSupMjy4qnBRH}T7l~UvZq*S_K13 zb}M@H%T2SwufULAy|NbM32VS%Y3sA`kSJEqxHIK=zLaOf=#Yylv zMuBq3V%GNpck+F7%=9%Cu2VtcN)plTim4;hqKBWwvPK;k;X}@Cg4nQ2Y|>b{ikM5U z75SxjjwIG-AU_^KSWVoUODY4DpC}TyrBKX)DS1cG!d7w1ZqD)3&(#dBl1d+)cvT|_ zX&EAjz^3GI=Zi}-4LGvixCSSl^{Y}ejV(xJ^FQB&81)!V6rGt)6ex>8jO^o@N@Yk7 z-wu{bzsB1ahQt;Rcpt5wS+Ldd5_6o4Hv+ZrYg64 zv=*2kjl~xma3DNgDXce1Lq?x{t`Id8l_mD-;nWaoO^e$xCeqQ8+RW@K?|R*pu)z$o zI}FZ%tw>ga`O}l8Uf!Y{A1Nad?h zQ9|C?_pi5%z#WN%hWDkB5$%RziZJQWIf3ZIfKC6QYI(TUF{7dA!v!4LTz#|kllSLo zS$xIHFCEXt4az0Y6CUd-OnC-pd@2~rm##tSmpa?aL(Oa)KW{6#)qw6tj z@V94Wmjgf!r6(ngiYChqdG$bPQZT{DQ5oNR3pm$rr=c~h+i(RrtQ{o4-wchMGz3aC- z&vR6W?NUe@K?02$-gmM^GYzC}SU-K1W45XRE?0ms+M+3Q89&=4&j7*pXQ__{S_(@i zs4>Y@Zb%SC3iq&l5vw1m`bb`R5EhQD%~J(rJgXkb(8#kWH15X2IBflLqpTtQJv;o1 z{10~QB3alRp~7*yxgh0g=ful)vpHl4y)RGcq?hhTAN=I@ro zz7KkYlgJG0kugVS+&O9MV0mTnmYCjIsb9}#pg@b@`|@yRlhUr1Xk}I>(ukpgokTsd zA?8Ocpk-RVQe5W|@t2gM(S6m_)0|S!e-{4b{B5D+L)OoS+@kuZH7We%D$U8k&Y9v;Z zfyX@UA9gdjD1jOIf!LUq>J83IyEGf)HUA+PIu$=K1{Yap22z#mc?A#)Jt?2fYW4=C z;0q}I#_Vu&;cnhi4a;@1S~+AB!osn!TSsn5;KYmFD?O>}ga5s8c#0(K`#lMtxT;FY z>cjo;3}xlm$AQG5t?t`vbR%#(kmtH7)E>OAV2D6qV0@}!f#FE-KqdBut8->_+r0a) zt;iAuNcQ(*a0AQ+Q5o!Nie^i3{evV1gzrPIQ7{FtHJI=B-L5b7+T7R!JwH@ZW zqde(?3whW2K;*i1neze2xqoq)vIc~LrS*&Y;215)hsXePxra6=QqD)v( zT&3QaC4(e)`;uL_DCbL=muj? z0(0ff5&7JfO67+TZlJY?0zF0|{sObln-BGb-&O;JuU7pMrAo(k+7G)~QZGvkyKP)` zuVX``*DGUyp<<2MGkcprQy5MUd0Fgt+G1*!KPC>{wi_`r7lIhAw6@Cw{}q5$^bYq4 z73DaGu{s@|ylZ{>HiJdEUVcu$N~V;GJu(hGCGMrItDrYx222nw`G$auHG(e0y@b-s5)MTp_tWa!XQPWOieW zKOgKpM6*Y9wX0VG1$5 z%6$?i%SIK0BW&BWxvyaH$n4P*xwB2l!8s_;TD8e_g7T6am@P)P7`4u@$mr#%xb~W^ zOi4QoFG@Aa>D&2Fs#D$X|0~wAl~-{>qH)J z#$^EU1x>|Orks?|yZw@ZvhHi(uB*UaP+llba~w;1pQSPeCB5}GmK%5<^jW>bHdtK% z+eTk@MlX>E67EH-3sBOkMt{Qca6?G1&EBI{h6(gWR_VjOZ7{HLplSj6X7{wonFE0! z0u7QFv6qZG@#-nhMwmaEKFBg#wEh5Eur)pa3b2OMh=s9Q3A`;*ZfoDsHOGx-h&USE zU^@wrsq`Z~9g3hdx@RVn(B7lImAjkY`b^Icat!jtKr{$D`Ayv#oFG=|F`;z+A0%{I zwB^a!*i7Yhar8RF0j2&6W_RpE$(nK0;3IxzV4*JpZ}Z092`H!6?Y)XT&@jIX5m@Ib z1OQMDJloVVtA`iEUx1?s`$Kz`_S1~3^LMSM>Rc5zYV7k930VNO|a|G;V!V&nV|wbm316D`PMQE zTzv<=dd<%)xgotMVb(0|w9&*QDh8$l5fV|D7kCxdO1sqePMfYWn}z*cnN|BF=smWy*%Kqby`JH$ zPAuCn@-BU4wY54$`wExe0vUb1R0mh`s{God%lS{*Fef+X?u1TN!NJp5eYs6Mu2EAZjgNye90=#d-@vp1MJ~r;2 zwa63MPDUP|Gw*!$K?}TBAyI+ZZY3j=U{1Ab7;2w*hBIv+eQQx%FbhY91IwFFG(J1UJvBNj-bx63*@{muT93mdjkhcCtT>YOCTq-YA31R z_lKjY$bQmiXl&~K()uwrTFFjQ2eg1+3^%50$DhJI5MN(Rt93UD^h57lNJ7`H5Zjj( zXHPSf&XaeLw)7VkQ+-Lx(9Tg&jY2wF8z>d62e$&Hc_63O_ZvAuoW|th>JhC(R(Uk- z`rSo4uI1v8s#p%#%CGiQM^9yofDjFA0N$DK~1cl zNvOM)mu=B4ug15Py&tAUu=YLg23({_)|w**&X_lUF?90PYrvnVY`!r!K3ww#?LbJ? zD+S#9FR9a2%91YVZJ1oN)N%tFSRazcc* z`}?g$IwB5+QD!2jhGLZ#qU$mIxoHCtm!r@8Xbmo3(&@fm_`SP+{U7C znXwJia$1YDK08r8FlWGl-`rf~8OJD*pSE9Qr-cto8M7IibuTa@_|b($gek6nlb>5~ zM+iqg|8in4t&5PD3C6P9@gEfHjw+HZir5ixrZ?@M zUVx(xr%K+-0N3h}Q7lVFkW2uO7n-dJDC9`q(~ zJvXrj16gQ8;k~a39J&R9IKPL^-#6^ZOuQSqYdfq(9WPSX z@cdhYSSjR=gM5f{+0}@2va6%iCB%B`3%uT;F{RLWT=LP=hB+|BFlIeU*Mjs<5{l(i zXX4j`0A`R{u`Gx9Z8!fgB|E_GFZtF-0Fbx3mOLs=O7~NyP-y=?5!Iasbg(w}?vpCHj0%`8MXIc()SK15lWr)5Nw%TU-RgYtK_f(KQV;D5y739O z{7}@Ox8l%zvS#LJPPL2FQz(vPHMY+C13QVIrhxc&oo5M68DF=`E` z)si7?nJHL$-^zW|&ep9vUm1B)>U6nec-VTm*@_SgTPwXh4ItwC^}@O5XFmtWVY&+~ng z!6S(HPqEXr^(#%?uPCkAX_KL>yI72h@Oc;6_{gGm$ziQ7zo0<|u}_nATJ(0pcshJa zM1(s}-`!|ugZAQ|4Y~CBkBX{c^6aPP%GL|-h%hTsE(}u^;EM$tzFLyu4LKuoXFBM@ zVrxB6ZABMbYv>;0Q+ycn_V${uu!X8MO(j1S_GWf)tdbuMCbXZYZCx{$KTYdV5&7Xl zz01|J>GeFTpFkcQq&5pLBVV@F;oUe_gOb#N>lK)$lXC+|v@E|nq(`@QW0yF$xRkrn zc}k^Cvua<@<#s`&F1^HxaY4AYB#WxC@yVzSnqQ`W8L!X6+5UO6lVP%l{h7c0+_aUV z69q;IZ>#9j5Ttco{2AuNwLtP4!Mt-KU|3&$$&QbM`ubWtQ&L`kOKD=sVAEi4qJ$%dMZsS`?iT~ z&nq6571HmOxq7}Vk$~)6BJ>i`pcsy|5896QruUfbJX&%h(O`%u(O+ z+)4UeTlxbJ<3cPmXCK;Kbl&5U_dLDpO%XUHJ1ofUi`nglXg)DVFY%$OHN38#3sCWI zY^Az50asmG<6Xr|oe(3FM!rW4N{MBxLC-?XjxorOMYoa`Wt2>^K#R*O z_#2#(A(=iKM)a~Zf*gz2gB1G<#`8S>*hIV|ShOADBd_q2vH%NWhju#z6~kaWmy0}& zgY?^#hwB2TOH!8>NSkQ0vs$xMcHnJE(iNaOqq_=2!CxXi`9Yr$j+@tz(8pY6r~WeRVzqIRr(nSUElE-P3*vhV$@lGu(np|Fx6ks0 zkc@~M=U+wkc`L~ov+tcBKA7&!HR!soTc0$f+;dcQOFSrIClEQYl2#b0qwu(210qU~ zy|=cOY2)*aSry14L0V2nl4hbu1wlQ-L7UHq>or)SF407KD>HYn;3hGVtMW?xNFid3 z@Xgq3*fFb%`!{4HXG;hCVvur!hQvQRukk?RQsLO+3f(orXq3|fYj=$w8>@16yHlV8 zPItgbE9SsW9;MGkXG^g=o&8dpEod}Ds~7|qjq>6%k$$o@v$wO+>e6AtH;)9x_9ht- zJ`Oh~c&5Jz2=ek0PAkN|+)VUgG^a+qHTA0>AJB4cBG;lv6ax>|psh3=fvdA15dv#7 zRt-t4H>GHMV>?I-F5!W*!EbGs`c|yYh~f(nF)oOkd(j1dJ%lxo9IVmbX!P9X2;m0T|rproJc}Yhnk z%}}0-fU{2l(|$ixDME&^`zu4%39>DEMRJZymy5D+Xq8xHG17mcTdW!6L&PlBoXtaU z#9Y>z;BQ>S5ZKrhZ1LB1CtoNUnSVYWN!_{t7peFS-FcS7I`m;M>8CFtENN!$xJx+W z#;vA}eGI8|7ii5@m(%&H)BppUfTO?^UY!%vB||Mb@IDv1&uuTN%Ux)%GXpny`Wgti z7?Zv8<>ucEByQuzOPI>>}182&uzIQY)9e8Lc+>#9E>FkU=)F7Y$@sjLrxbiJ@IU zmI4_}4ym*bV1s4DIFOiVlry&}umfA23m(1R40c?eTTjc`Pt~$MwtudOMFHZ-+t5gU zDcU}$(QtA9X+Iyiai8%V)Ra&5RyHm|BV?sNMIb9e^zvo&UH=?;odvp%J!r`;`BJ2> zG@EdGTSxT%;v}y&E|P{0(ispkmYk$+JucJD07vhJQWVJ+=8(V4=_-qN=e>^uN8h|t zCCBj6TPr~9&Hx{)1OFj2x4aU=)!;XNU`Dp+NPW|a1hgi}&_o_rx6~(s4jF0DctnF@e!)PU)h4ZD^Z|)A`RUiltplk?~ zrjwfCYG|oHYOwwo6;j`y(%`c6>a!Kr_o26gt)tHgG(+D~QbdLD;sriVwD|dp_{>%k zIE%8>GqOz8;{_u&^k6iIGHg;f=I~<_vpJw3p+MV%aPJUs1GpZHSM)uyp*0KxP|Sf*he8*-5luP zY?;apb)Fil)q?QMlLzMbgJu_lL+Vv#UmG ztyeI(Rpk@^L?+(n_Zd5k%q{W2MSv$2}Y&m^aC%ue|S9iV?d#`RK z*0uI)p_0co$@Vge=kvNWfArHSa}tV{n!@;3TTiD?&@%m$i9qCVIkX_JlpKDqjT~{# z!Vx2wBjmtOi`^X)j{RT?O}Cx%$oEo2nl$JUjnm*`Sr+J}^DXBng8r=iu>JT!(m^?~ zppKWE=oD*{*}>s2Z_>salS7?H7J9tY!|-U8jhR~axLOx0a0kCi9S2J}=SB|+O;jM+ zamE$u1GjQ>lkv?i(}%StCB>uyPLcvne(-#Za)pw((YiE6~o1fCMO=_J$1YhShTL_Uz)TaSRaPW z`^*xnx4&mB$zdYum9DCsLgMP_M}`%{n&_((;rFk!h{aY!*(Mdygl9@coQkmT5F;|7 zO)jnT{$E>1ZM*$qqlKfRY^Aa@m$GmKb8a2IKVzhgoN;Stb!}akS*{#26z-mqFCqj? zyh?_yi^!19ei9ACu5~eWmb%l_ei82WN|P2zH7KQszDTDe5;RXPLt5cDDA=wwW8ql| zZ(2Fe8BIRBkx7UZ>)c#L-&Xazj4>Y;2c{GzWShVml_8*X*m1u zW%R-wCH41B2IjhH|RID<;-9uI>GmUIHYh>hLHe|0Vq_@=J7yLGZ?x=-V^NtFYO^`x^@ zY8Jvlq!T&xh{OKJyJ!?+bLx?dc>x@^yhF9reT5NqpZ97O^U$5R&&y0c+^Xz>ock z+)o>16w5yD(-JH9(!o9>SixdIrHo1-4SFnn95F~F=CCfF-H~V?W*=%FGN>tLT5sj4 zrfHxVs?Jy;BNn-iw~_`>jH`OGwVM3g@XgTHFL0i%AFseV-(PA{=aN=Mg~+UVu6VET zG&I~?H((U$GBYI}y5H^L60pGYah+yA=&`Zf_lV5|+i{qnqR9`Z3a$!2v5qz82Z)CS zOK+l`#p;VN0u~?-pc{k-S+CF?>&=E`VD`|s_cp3Ea$z9sazn?NZvVi<-F|_nskLWp z7&2EZybr&5)-T$2R4tx9e7+zDHJFKkK=89qmW_RR%EQ!eS(U30=2d$cui_cs1ke$>8nufwa#d zN@{rwgLf+&XW^8jf%N+{U)+_f1@?!$AXPz|p=U(f(=+5=uqC>#L&tHV^i`-Du}H4t z4Xxc)^ryf#CGif3IvnYY%M3;MVAD<+EA`dGEYWua3m?6S7HTPiSBltX@>Hyo+Tari*Xy?_hjJl9xmGhGi5n$)@F%wBKnigJ`Ba zre2z~F32t2EhL(@9UCg^dQSN>M4kQyCV}|8FF&DZWXIQo5VyoZ`axVVfq^+gDcX4G z&C%U8cW#$~VZPo5C7aMz?g9xhKak_>CvSeGZhO5Mgij|{x0YNGoE%_%CK9twP~bP{ zwjCDjC|2I^BKj)b{iEOaK)3WOfQTgno&-cyzaG4M6u-5vXuC6&(~-Qz^sVjUMSCpy*va*$%Ga8~=_uef49ErOVt zK3=$bgt^bB6flI{(=tTX{nm$8hE^79R^rWJwMitE%yc)Lu@-J@3B?+`lNhr{`Q)XP z_%ZFd>e)0**P^XmBk2mWDKUUa<&fV@2wyXlP(dVYy)%D5(JkIS!v_b>IPosrbeZ(s zOUwzPTw%TeuTHNvv3j`k&r!pEuU;>wRa9DLGENRZ4FrpEsa30lB!|K61noaoB*<^Rxr1iFRh$Q@ z5%l4E7!@@`ED~*sSE=#?4H6>R>S8uO`Ej;rc*eW7+otKP&<5O8;s&W!?PG5_kN;-o z>9;yz@eaT1R*Ca17sQTXx_z?6FQh|{HFky9AU~SbxwHD-Y=_scbm|%UdNb$et{M9+ zT`_^Co>x!krWP+Er7J`;;`ifW7fo=t=9DwR35*Gei5uGwy6E7%+rh>j=$iFJxNz#UxDG&35Zni5oAtjv;YuDOaGu!mXD@O6t746 zFCg%!0ECfHO!@x-2VfQvm1A(G=b^xXVrn+CE+ zs3OnJB49rZmKpSSir);BPOzB*hnBa8H0C$3Viyp+x+CIEg9dkR--(=;eG)hP^!()> z)Q52smC?Nc&o8iK)^-S!P9XW3WcycD0Azbla)9Z0Uo^uOiT%fTe7UW|LF(wc#ic-k zJD!)~%DPoEh2L_bjvF@6=C);4F?HN}8Dm+N*_YPiUp%aYa|{}hXfPRQnrnN4JTV)XextyBo@u6Zlpwgy1{}K@&T$}T+2xzi%K4{9u4;)^)l`Z&o~`@$ z=nfE)6EccmCT2;$;`Yd9sC2?XP14E_-FX2`%NIWBzAzvL6?{zhhk6E> zLOhqTW4b3>kc-4cj-ctr4ZDxjf*fBFWLQ0GB}VYaK)8A$Tcs05-G9!^bY@Fe3OXY1lO8;ot>q-861dP zveO!(k7_Ixp6Ug6VFWq|JurH>f|9BVfXCjS=m_}k708)_4kYleLe!TgRE6s2Te70K zip!7pFj(_}QapPHUPe~LSLkM`+y}6TvZDT&*c^)PR_7Rij9g45zVHWgZBf+1GfWB; zkQH!ijl5*0hL!YcmL50>-dr%ttA=>oWo%Kd6DxQ3rKQbC0q3Pvvh(e#WQ!UKa~Y%u-`a@Joxc{x-aJ3QoBQa;AihwTV%*20CJUs zWA^6)Cak)Ak2y5_-^dZ517$u&33Kjdo;@iz|00S}y0wF!zysna1O8$aMv0m?KG4sa z#g9OHzHoCgXj+mf2|mk2F9{)0`;q@QVDm7LzZ7L%!qoq@E@1=LFSoB=yjJXc|E{N@ z>e0O)$1ztek@*-t_f8*_rbF=`*j)ZNqxdCYRr{v+ppSD!^Rz+uNu~ay4?MZrPsm7} z=jXSn0>U3RQ&&$me?RT);Pr1he&i{58$5ZyTr(3+bdqIm*AQkiXHTev~a5p|$-RUHV5f{yEAYNFOCMfwr1J z+yx?KdmRC5_O5+v`XlbVd?@TyZ6o^?`d_;FU;p_3cu^n&gnpD4hvO3nP5M*fP*RD)wciFlJ25BSIY~RcLJx@pfx~$;`yfq5&Vd+j9n1wC9Mst$9h7+ zF^{t~r3*)0x#!GU zP&wh&&AeVSEM)s&_SBNU;REFHw14aE%Oy{?_eV$k$`5A!(^yg)j0b;86+tFz)~zR9 zwf6c}JuOJ(_myp_lV~O7_Ak3zqEvhwqkF0IS{Qz>i9XDqI?x#B+CR|kb9cSQfzCEF zWN@^k+|m%?L3<<`UGpi^OTBa)8|d`) z^)*6u(MuvPB79%qfc!W8gO0`@QU;Fxc8+*_r##D;7Q)L%Thq^f*iTd}fZ>ei-WC>2 zI#U$4AKz2CWDv>}_gZXGD@Yd^F-R|4C;)F{Oc46h%5ZzlLVe4x6iDblKXz3ywOkkG|tM(1IkW1Z36 z9s23#;QSqzhyiNm=9-#iyPn4LKigrQV1?sO3vz;mIGtioo4m-#$$vH{I_?%kL0Vh8 z-Tky*1RX>ny%4zl)E-j@)kfuwFvpsBsF-7_?=0N!^+n`^=BlcBeE`A6t6Y}FqWMtMq<+OL@Bd)@bI+3jfe|Y1?#zD2R zl4Pq?mGO+NMYRrR!w%yXbGjt15VqF-gS)j9!dqL`$zsR3!k6DdjyejW2C7zamSdjA zzwmNe^my#Av2%u{vzuV$e+i-y|1Kj55Iq03N4(p=gXNnP7iN6n=fl-St zFl_VlAYU~}Ha}{2X+=m__-B%DlO(s_?xF%JsvP*k&nY2nqFn{CP;X5cpJ`@w;=tw7E>LInYF+@f{cd<3o&MYi%Ly9|Ys```IU+l`QEQ zf~g_4SOGhtGpRxs2WLJ+6R;8pngBZAF)i=IsRMqLUZ)ABg1#Y>)C>AVR%y9!!CpuYFY~PKeciy_<9JD64mWyMR=S<)_EtBXfX$>EH!Z-T7ne)ud7362S=x zF&Z#pp1Gy+*A<#9*|4LMv3TQaI5ZWqRE!BtP}|K$4?kekWD$#9Bwq*b9$@ix%TNY# zqUkP1tUVnslumHgGCyZ*rjW>$55mTcO=GcPc9?5A>D~f=8YZ+vFF_B}43d9NSj4Eg z;(3t79vg0$skH$dhIme-bV59#nfjZxoY$P|Eiswin;_%%fBjwhPpZwp3L@4{=H=uu zEFIJnETJLEOV?tgNl_aZM7YRB09rpm{e@+NPu>cj#bqXzv4p0W3ml-gj82#t{Ki3w z(CI#tlz9@*?uA~0dJfUA*V*+ssq8tu>tDiuoaNAQF>6}(ldtb6L|cHYDi z9X0;7%ap<(hVO+x93*|d#c&y^#Ck_+p*D|Rf~Q$Iv4HWo|MWH5XP~R)Lhc6|J4IZm zKcN;}#0>4kh$4B@mYdya31p*jd#P}?5i}{%GYV?{Ny1($13vO$i&_c(^MChoBvFEq z&`GNB^>NJbQB9+VhsW^N3zM^s5p#2Vsh1W`PJ7)udFGD@b#vtYT}}e0`xmxWbT{_n z7urHgRm4Z0G#3004eTedxPhvy*ML=D@C8wH2xX`yZ+}k`yX3JP^&>2YCY-qLmtk#j zZUFS)HoStdB=UsO_-hacNY;|ods+TaGR+ULGVj5wfA$Gj<_V2YPxs6Q%#07SK%Lt5 z)3kw!iF<%;fYDSLjKM2+Ra9IYec^T`#O-eQl1r02RjTsz`*#r93patBh$0|1zkd|U zNc{EG9|1=*q-4(FaZ>mqidhjT2CTQJX5s?5T78;4ru;{)uAx%DLNG@27b|`Xg%GFe zY#wt9PgN;O z;Au_CA!CYTg4MhOpqAkWS#DYYNMdS;k=GPaQG8b8i zRTHRVF6>sCo2N3I3^a2;oL%z52@Ue;zgKx%^^CUK!a-5uRiOcQ<5BQ;;v|S9|C!&^ zPsuX9LU`WgxY4bL5FmZU$~+zaW`-f8n(_(Qxc>cV|3zGMq3}2*z>$P3Ew%G&amunx zwqN*ACrx{yb2}!~PAIjI4sNlRT$_WEqnPN+;bEzWqWk_Nq)zB$C?-+7t4&r5i>+C#rLrJy)Era_@f%jn`5-3E8S1 z)M%*@Bm0?>D6yaiEfF|2XY#AQYt7A>UO>9B_cBdChq*0fsQXPHvp|wEE5(9Ezw-!DSRKj?S*vp%RDqGh9VpzP+~?*-A%5wkQ#{BS}M32;N~REbcRL<_8;j;Y=+ z!LI_1ud-aK5>*FwiJt3uFbT z8$r0YU z#h^&?QjSn}&|f}5tu934`PP%ljBazTnDVWgz4v+B1G53~vs~$fBByEVtS0FMN(y=Rf4i!&@_+(K-)Biw{zqL<_Tzu5 z5b8Z;ES(<`@|*G9>^q^SI-Sy^+->%m{er%JuJTl_J8(l~prIhkdtKpDQ?X2nK} z>b%|=5=9eFR`l_t{#C#kbJ({36AR>%`Lm3r8SR^9Ub!(m%~M~$MlEz-d*7}VeTc2C zr*zdx-LS%~sPn_ODF*4Zx&zy`tg7AIJ)lo*Q^lq9JvqGIvgeISKEd_PN&}4tO&59q zLm=*{HU}X}xonm(4UFjMOn$5WX!ImD_+sZkMKP24)NPu@$5&PsK369e ztgo6U3`|^ijy7-jF1T4f<5#L8y@TnWd?a>0AhQ+UmX_wqme z-7|Dkp)Yq;A0oPhA+tIeYLwiW>Bnf!*3UN>w1)W1A-Gv`Uuj z9D`K}xizHu9FT0?R!#LM>UwfOyb2MM*cPHBwF(HB8xu|9n(v^-Jcc739G+vm|0L9M z*`aWblrmK;w!zj3KmF)O){Cq29-Nr|UsQkr2TKP#N89!9IP`Bb$4;OU`|)4e{XV~^ zOv36<$K}i2>%Wk69k$TSv-Y)Xyw5p&KD?g2Z6=T0!Zq++I3Gf(5Wu?8L8s|@z-6f% zP#pa8pkVbY)lI`?H)r_0^!0OIN6A@xCSZ{nWi?!Hv@OJUPNY#r>D8EavX0Q{hRe5m#(SoJgo;llbL z*8f&gBsKHR?6VK`>6!M^AqJRRZ_U`#-B=D<{7J_$o1!bW(nM}PL^%lMmz>*vb_-W0 zn>Xu@6t5Zsmh<#({^jIe>jthUP)l7{Se}Pvas!U&{@^!y4_afyobBrV1P260U`N?3 zZ)#uuSG0m53$*G#H5)io`l9>C#~f2vCw|WmWAiU}ADv6dqa|DHbW!zQt-o2z;K9)` zH12#7OOy6-t#~dn5@|HD&LBkF?GmGe?OLW0E8ewQ)r5&DXz(8A@}wE>aw9XUC1~$z&k|~CNCfQm|6=SdpsHTl_F)=nC8b+Z zN<_M(q`^%$NGaVRU4oR-(jXzyozfv4(jg%w-O~Trc+_*g=Xu`qE!L9dX6?OyGjq=! z*LB@9h*2;q-7$>cG0>{EM|WN5BCxEcTy}qyQM(U&;M{PaAfnByP#D1r?YC21oun3_ zLWaJ;0LBmhPpCV9O8p!pHUBBN?p z51DtHZuXH-sh}&OEdR&PTCw5`Y~gS*Z^OJ!Myak=QwxFcL$XPO2~^T!5|GO`e*rEO zh!-F@zulg>{cn*A9AkCW(`k0OELnV(Lw;_5k(eFRm*(XPdpS^$VRs4VCgaLk>Ot|M zP9rMtY5fr(;kMV(DQsl1)1>R*%iZz#rz&@^=;UTR&6egLU_Q?$Ag^IoWSJ_q>uTgc^K9JyX?~fQRBXFyfP6wu899<_GupwpyC1_W-A*kqP+FNF z+u>1YNZ#_kVTmVCn=29VdPqJRfUwXB$r;TyHnw#x3*$=^W@^fWJDC`0)NJxP+hMGB z5d`+Qne&m5kzUa_5b3GTAG?$XG_`asj@Um|2Mu%YW9Q8J+sdVauLIe_F?$pwtind+ zM}AN1$6H${J;BhczoRJ+&{(2E%qdwECDOWwdId1*0oAT?iw?!R^|T+p{CeZW!15uL zSAqiveiGB`fsA~II6E^F5N>sz9NwiE*)2ZvM-&IiSi}rA9%OP_$lF-0qyg)tOPPEiP`m8w+FiUT{*MW_3AN(`pfx&6eHg0FGM&G1947a)i)1D|NLa$>o71 z5bVKyElyx^m(H?0Oj&ZGRK#-5!{yb9P=)PINto3Dc}uqmbABrEJX#U2%eu5dF20Cm zcxJlZ^`!-NH-%!qUF&dwXfq-tp3Y)w0v(EzYg9cE4iiG(Js#0s^7=q}Z8eO=wee#P zqbJO2bSs6+dI8Qy=)3~^(~lZoEswhCpwaJ19MjZ7p1Ho}!05ZnBO<2&8~hhx+6JXr ztD{MZ$o>(D%)Q%Y(%)861F*{gB79ADuA5DuX&H`|hbyB(^2JB%Ye(UPnR(nK{bK<(EJu1Dgx(5 znskBFt7JbC!B2_J4Sg){9#cVZ_id<^>YXqqxW`4Z_(`VN(P)?w=kW{rSswqRM^!_OWjJf+=`npx>0dtx!63m#7=51VsxJ?@ zda*jFaX;;Bk=JdR8FRXC0$Lw0HFJriB>*q1u9!6oyKOxNZY6CiILH6wRpxhj_U5tu z7rIpYV(q^9ix9uCQNcnT#+vY}6Cq23RSG}(PTNe#w^IClSF~09^B)%8`7jZx6N;y*zNlxvM*9&kNuu$A3J_o6%b!{UlKksLIKT6nfI1$Ju#^Yn;EdJOs= zM~7=1pgQ%YGw3;+#LeZH25%`G-XhrD4hnLqZ+#_vG5(m{Idx77`e)%kau%SYz1R(j=|93`(W4^&)XIe%|(c3QX0n}X)IE5jV3^*Ml^BfB#ko;r`QKt7h3R8qG_kmE)TrURV%q$Xj2Qqg!NNS!qLcewOSgQhk) zzJE^*0f@~H$g-hz2krUAd42w38cVZhGfqKUWx_GkF86M2Vsrjg_O$rWnvjRs(I`Zg z+D@RL8UBDJxy*4azq&Z@`gDS8b|n8YxI9)ynEka#QG_gIkjR{bSA*|xBEb-o$>7w- z%<6GOGP1OjYNW(Yq!Kdn`DK5f{IKR2aon$-u(K6Z@9@xM)W(Kd^_c+*(0wQY;o;7O zO+d8RfhGU?e1628(85Z?tU^-qn}I{HozESJHv!9vjcuO@!&iw4H-wzqwGYxlo)A+6 zj0a_1X1s~#!KKv%5JV{tNpu38V!N0cWjTkuCMZg|+jeqEGA#!)9qek>EEC@M6-!=& z-pntpiQCRtHb=@sh-sICz%V`3gz!KQw`@CG?w#L$pa}sAjljN9V5j_hwt9oMBH7(w z$wPb>;d3ZYA&hG$=kv7>*N-y=zL7ujp$odZNz#(X-rc=> z>wfDeX^w8`>ruRD-Nv;ki`$x$>f%M?Xy^s;Zmr*OxH5ttHU5g-E5)xEm+kP7gPIE5 z9WAU@_x3E&A}Y^()U&nmbECbFM$uUcVOQho)b*H7TNrfB0*LkquHaOp@8T1-_of#s z%0*uofM|?@S#Z}fQ%nj)YiuB!3RG!#K-S53`k|6V(Ks(iGVD)UW(Wa+Kh!W>DdwM+ zc2fvO?FPH%qY~k@lRV{=_Y{W&BYko)xIskMcEjOfU3%ooI0ERB!jrQnHR?%qmj?78JtPE`7eHi823#^l~eZ*ti|_j&Zwg zL7JBbVS|hcbA7$foE=$^ALa#BHb7~}fveJaT&LE&@^rpIL9@EdJag{urDsd2w;`E& z-juo!vbOe?fg>SBx!r|2xezyiL46-H8KmFwVKl`dB0Ql_rx;S{CE-m`gMy^()}7-+ zLYX@O51{p1FIEZfpZe_r%Dk=1BmURnzV(*4_>P-9ELt|nf8;_2hqUyKed_yKDk1lo zsqLN1M836)N#tVdt>jRRj?l?(eR9EPlg$5$K!@Hm@=TDGlm&ct8X<8%yN+C)2pJ`Ukk=ep83n!Z8b-C$jr@Z_=o{9|q8} zz}jNI{~;d8J|$0O7fO}){`~6Yc0RyC>L}HMehEf;3vL$N?Z3_dLSBBgWOgWgP*Mdw z%a#*yC~u1smQ0WUSLe$_6lf;+WHPihTu><=7a}|&KmVHIwrJG(n2^-U3p}G!` zS<}%Kc4t@>Wx7lXI9pgKqcS+s&<4dk8`(F5(4Wz)M57QgYsTQbO>St<7ZkBG;j&vD zr0c!VyUYv$S=mR-LY@Al;dg$bm0@;S=s1M!fPn=Fg)Oz;k7nGZF#_7*uKEeU%&ftH zX><5$-s9#AcES@yZI%0fc0$a}#9;o9iMa(~ACy-2rooIi(zNUtsw$>Hvec}=-2dv~ z-`mLF;%(ElH=ul{p-5YJy$?X!XP*H~3Zv0I376FQ(81cGdG1BcmOUn)u-EO)9*h2t z`F*Moy-&V#r`YfCi2Du6x+XqJ!k@0==NR#_UA03yCIPT6Xkyc2cRFP}C z>_lNYVZxX?z~Fte7p_1DCvGe*zVjPx#~kbTK+17R#|4OX#6AkKPP-W~lt(kLoT?04 zQsVdZrV`2U>_y{zDA)p<=}s>eQW|OT9%g)pdKJ2_)J_0qq8esNib#otzst0u5=)r%O&3 z!lY%YEx!Cp`{y9_yP=M|rWY?vKs0PLDoXjKaF2fk^5pk?i~q&%{Ti?_s&LFK`~BW3&}y)5W};`>tVb@T`dtlWCU0l-)|`JdHf%D=5J?dlK0OF9HxGmp=UB< z>z4LbB;|}RThP`J^SR{FlPEJZ*z0yZWV4}u0LX6_NfLp{JfoAQ7O>B)1iKcmjL?oc z*18^5VnC$1@R=~jV$Z8R3tq*Dr;Q&40Vhw(!`)7d(Vjm*e@D3`7UKnAkU4y)yP=yt z2p1Lcn;qQ-`_$Q`K=4LXdBVV|(#O%11~C(_-iKFl*8`0a(kFGu)ovfw$Y2=&g5|vb z)DkL7z=|OHv-WLJV(M-?Nhag}+yfwta^w!LXPh=aes+DvwK;uG*Enfxd8nr?u`a16 zYRyh?T20Q{#DSkX{9FLucuD~rBKEx171FAIej7hC-{H)sF`1W%7F}0EWY3;pQ0sn% zMrCoeXTQMM8h1Hhl<8n&{WM9787JnD1#3s!I;-yU&y@_Vhm!&7N3>?GTCsan##LLJ zI4#oB$iU#o9Y9msy*F3irIx-b9(-jij%?Nf6d+WJS-M4aY5uTM_fTwlUxOMebH}{< z4pi!Fi2GFK4;}cl0Geb5L5m{bga4}~yhqDBe1tW4RYYEWMEso&jMHLN36jtGx&)p#O z;N!wPF33GF{Sjc*L6`>x-#yN^pAoE`Cycy7)YFxhycUbt=6FH@c!JuUfz^H>RHz}g zb5#E&VxIvrY}(m$g1>`qzib?u=Ro6+598~u*3&w^wW}q|v^kzV#32x_PaYEt)s=g9 ziyFI$#CTq7ypL=4MB5@(h@5^7=YF5tUsY60qhy?Mt+CYZ%WB;CkRHpt&ETEf(&|^L z)6JKXj+^5$)wW-ogC4n06d}78DR#m4s1UzkY6=)7E7WC7k9QulK;l~j)MmH?CR}`5 zjAUB(H`s8_v^Si9R|YB!=T$T3^J2|p-KN$H-&ybI4GVz3E?b1fY5r;c4=n;~xL5Hy z^Zox^L*VLBK#CExcv7i#5I*gS-`)lvbl53NoH$3% zWSiAf1D8bS=pg73vgt{j>p1^q>K5*?A4ZRHq=)NhfGXgRAbK;xMQ_^;>IjK6*)Kz} zV`wcVxh(}}3o~aw&Nt&A?|2M%G)Qt`CT4y`o!|o4V{R;IegV48r6%kuKIx(R{U1Jb z21SXg{`WgCE;xxWs_wTAdp31yz;F-0vU(c`WEMCi+3W{g7LaKA)61Lr01})-0S7C4 zKsrpPt9AYk=|7J@u=^hte3Sgb9NA+EvIeNZ~%`bf(v8N}nb@9tpD=sdhtrXVw9H z^gbywbEsEa1P}^^nQ0Fx`+l*<_a=cpdNmzB)Qw5*2K|(dIVSR+(d{nza&)AF73PLO zNdMF}8bD?*U7HD282zuUdk;MiLck7K1K#Upc=Z!Z`Iijkc7%s|x+2#F52INNIy`40 z2q+S8bN72qwr-Ef;~ZZSmDYup4hKGc0ed;L8!)Z<+`cAck$^R`QAwiA;>LMfR%0qR z=F%ypze%$R8NaIL>RDzy-oV@zRBs3+j-=7zHGD0)A z5CcW(U#Ys34+>B(7{gJe8vX-B{w-Yix&E^F5RF{ECcQbaomsiGX|F5dM8s!$x{ps@ zZ>+Jb;sBSWqL?-6HuhCnXh}k2eQs7_B@KSFYN5PNSlA>$Ni|8WKYe!!$?XL#XHU~` z2jiJvGm4q9wi(T)t&oy%jHN;fe`@8^` zL}{=0GbtmSzH!f-uYJWtgPCp$^Pr$0DY)>T4-8z@x11@crizU0q5N-}>Xj16(Ah(H zBvd4>E7~vaW<`X&{IL+U?FBA`cLdtYTj5LIyN~0`*~y?Oj_pLf%>o>mkmu$xkTy^7 zr<{C_qPvTZWJPM5)4;VFy5Mkj+w68p-!_Ecx?}zU5_O=YD1ImKh;#XALLFUrI^Y?(C8> zpwFGF%l*u4E+}b3ZlIAp4PxxoHqNuFEtDj;^R|=XIc2h%qK44z06W9ZOIfts#jsLk zUJ{s-<01E#-kS#G399647``3~eWq;H+U@gaJh*zi5&g>ejvrqK#L%A91)R`_+|c{k zdzsx^n-2%=@%LP&JI+%pZB0i+8w|oW`Ru^ad@?ZS{feT&rVtH2 z2g;5K$Z(w+zGcl`_r?VJ)*Gz6?0J;DEAQGZbOa#Bz0u8Tlt1APxXyh8{*R42@3QMQ zyslC8`O@!T8v0FB?>I>hXGRhp6$1W3&BODE#=unZ1?9o49CLkDkVS+0BAq2g<$bD2S=m!bV=wOuRkVI9_{mnX&20*s zXuKq*blaNHl~aB@)}+Td@0tx7G1MjJB`Y)?Q%lxugi^8t>xK5uiVs^_e9vd2Tz%im z30>|_O)?&TC!FydZ1>B-OW2bi9B))bPCES1$_YyjIJv+X1aVvWlJ0aW>a0YkLoDCFHf zfsR%!_Bpj&?vqqjS%M`e(D@s9ova+m1O=%6`j&g7=?*Mq_cMW}K64-G!$4vumIXW4 z5}cmzm#FeSa55fiJvJ>Vf*t!M`rAi^{NQVll3W&WtZ%-*@yu74rDH_{UIpKd_Su}f zZ?DkIW2++j#l)DWy&0F^IW$>Sl{9r63{d+`tq-GUhO;R>9VKCvFS>~mb4L59-_%B6 zDNb%v)lGNk7om_i!AWWmKD*DYhCfuVEMZTJY+8VBN*VFJCX=2i2bRGzO*(Qzm%jaQ z#Jxbfa4}7=siE&N|0L7G_7XOkHGIP-f&FD+7E^Usksk1W4@aqbV_;5c<% zdUxWut#?PLb{2%+Fsb>x?t0Y%0%)TSacw2|JFtJJ_`@W*`MMZZ;>!YNfZk0 ztM*1SdQf=g`vnk{NcZ-@U*3kVVRx9^zC|lVW(1Vs2Cf#Ids96%Vf|CNuA7M9^+P%K2t%gR@h}p)@kG7@b-cu0`ce}R?7!Ynr)+c!?R&rF zvZ2s&kNPml$s)2Op{+#JARK7SJtI9iN-@2H`zz6*;7Hd`mdw2L^DQ2S_oYIu!(~9b z7A=Ut@S-EimGCm~cAy?_A+-+}^G~*LSVPpbd_21bfBcS+=h0mttKAz*eJ|Iz^b&k! z#5oUICx&eww!fiPP*yA1fYHwc;Rbr)+0L<5lw22qKh~QQ-5ERnyrauQ><1$D^@=OE zOhDU0^as8(Q-nxx21&ZTDcU5RoO<1T^kX6$O@YvG0Xv!s`$GR_nV!3#FzIF@USq|x z;a=0XHQ$>Y63z@?rA#8^iXb$L-Ebh~cY!=E(CFAgZaRO&J2455)W4>?OP~52aYDUs zad8Ufg^WOc$~n3`p(DD&Z8KVFaD=YycYTfRC(L}zTgdiz6GikRK+8_{a`>pNfGf@I zRIL_KVyKw&hAZCTay`U4dH9`+nG|uKZR!T(0VLy^|JR24OV05hdf(fBSFH4k%ip5n z3td1@PsZtg>&moA4+9s%*9glFn?IO>PUTJogW_`VITi1%A9k7m9`iWiW|63;EPen$ z_3nQAPK;!vHXsbM7fCKo3!OX1v@y2cBm(cQI{J7oY!F%TC&6=}(CwJH` z^LX%7T%S%Fym<&!0HX`MX1l6+Td`x)S!DlgnLSPVV5GC_a!Y3-b+c*R6N$f$%L2`h z>Gj>0r*KFgB_)Gs?(nn&7dcR-UzWt$GRZ4;-tqLAvlbxO?|zvoc7vt%UwLrDsrB@% z72+w@RECSt2Dz=SnK62*-9?t#W0J9)CQaj0Z(4bZyyG?1Qhb zf1j_qdaM&IPP)q!+3Fjv5Pe(dD)->4;BM?n3*1CzCdFl%3tQEU>f501w8KrOy+v;{ zCJhaPdu3pv*3?srg+m`T4sl77iu8cC>yyjV84bXIIX^DM{0)|9-Nf8OXo(E%S3u-; zNxGxA{Z8Sg=i@C9Y=PPGXcKf5huNPonm` z_^v93Ck{a&rlhs-gw`w>WS@;z6u%gG_>y2jE4ps;JBn-NtL)?=`|++HUono{QOc^( zdc1dDR}2V#zs`!NNNI-G&55f@7yD>dG+5ykr~YscTYO17_Xk4cB%CZP$_) zPs%Z0cfwV;2^Ui^+4SQLHCFl$Z^RAiv8F2_;ExX&z^p>dvLJNOZmmdu4e`R7SLq z;+^C^w&H;NSBuDBqbDw)ff_@Uj|3*>+cMDB1NvF01=|jp24}P#SPZgd+#%C+-1fq9^Fh^Vg{hi{3T$Y&buTU?rhe1 zWLX%Lz~$e^+Wr1oJRgF*cA_ci-4|~YLX}6K0sbM$P-mu!;z=Boig)T99kAfq5OvPC zR3s(4)!}_0iOd68b5uF#_gVDQ$5mQ3TLBK60P^9uwCU@N=*hHm zg!e0>)Mib>cCQmgw+-5pYI5r@fF`@dd50i?^qBy13VY!*2Q#LNcA9e^kaK>d00MxU zg;_m-vDw!s*PUt_QDa@qR_O@KakT&{t_hOR3+2=j*Ltkt>iPNaS^S0heDuqFxe)1+ zrkkAr1(z0)i{mlA|M-fS_f1=oj`{XdpAfWVr@Kq5fTQi_5y%joKaPR(#xV^2+CDeH z>rKo+1D|CV8@{lB_M#H_wpK^{&Yx{mT*0-__>o@bL{EqI^ zCeJAUnYEtSdY{ai7UniTNqS-A@_&0&Ni93v zT^b9}6+~_A*KMN;7ST>sQhqD;w{W2a3by7O?g6>`??wY~h#@p6LI()2>9CQEYWfW6 zm%^b?#1dR1J?nRG>T7LquaJOug$K5B2|nstV@crE5ni-fTp%3LN(v#~)LqBJer5?< z6vVuEYNvg1ZaxeLD@)3{Svbro8_ajY&hx(X=Lv9R#soHH#lFM=Dx1%w*R;mESeH*p z6brc30cD&_KA**8jJuEduFu3m^5O?6-ZLVCaV1fa@4<#q#x+*vrs}m2#^zFaU;3X- zsVs@DJ`~fH&87*(lEW?s#FjVR9`(}@sQcclOQ@*xP%n^Yoq%=njuD?I z=O3VJ0{V=mfZEoshI+p3Wkxw4w4L_LkdTj6Yd3Bj@MVk2%13_$xFdy7UnU9FL;ofa zQ2sGI5Z)fsi%<~wFp@svcuXXD&1~W5bA58pja&c;sngRhsf4Y%)_+l<-gnM$yUi9P zAZIzxu{mpHA&Tvvqf2IsZI=wN9;H6BZH$#{u#UKBv1%1D9&A@`3_zRZEldy0q9vZ7 zhh1d?ZcI^E%Qvb7z$Q{+gsAzi7%`HTyVyf=-=dHxnY^37D-KZ-!)qi?0!@PTM+2VV z1n4rMj_>Ke<=8gRwh9N+e<*IS@%d2__5MD(CukJGa0T(_!8 z>s2-%v|2~|$@2XA?U#0#@!8ai(rg^@{9@pyT+_<61B@uy&DuFBy50zY&Uiy0Ct4rU z53PJcVvI{bLJcekmHHjnNe;Wq<*!)4NVm@qYRZ7bV>?ir^p_Q~Re{L-#CZ+sL4IxI zm}1cLbMY%I-%y14U>hd$@_HRHYD*Ht>sNI6OAAnu+%6g6UGSK=q1jBB)|yYfyjIIFVdqVw+(5nDcRJDGC;&@5E2g2sI3zI{SM_|I@jUrnrfnv{25({LR zm_EC=5@qkXcxGBcVIGAjIVcqr8^4F{{%nvN1dIRQEI%!?3pQ8dA3Fsq)z@j=hK1;> z(obm666mbhJfD2@)M~F^Oyd&7I@C-$j?oSg?$J*Epw2RdjC{6)A>9 zQyyzMK$>|_8rKZ;T1`e+8EOorCluQNu|ksE&&0BkFE#v%@KToTfCnM3_u}?Pzdw-! z>xP_${DYkSn`8Zp3n)X%<2>1*pXK*Hs&XD|Y;@k2(V_Hf{`i9aYWLxxbS1GkIMZxd zLo9)29$Zrpv*m|>{Em=+VqkI1>W;H>S*{2EMEi+M4I*+(MnIM*`6@we^`|$@$|VsZ zMPY`8FkhzD_@^XI8ZkDC;d6#yYyI@~_U#ELHqh=`Kn8Uf(j06N{S1)`JP8b_-?;#n zAB_3D&5=f)Xi$m>lu0+;e1PQ`Y9;^#&*t$5Z5-%{K?q{8D1TA|#+z}n{jpczTmDK7 z{=62W0jE;Ch53%0U+ma=yXjLy5Y7TO2Uk*D?9llIZ?~GNBpJ}+slSEcUU`_&ZIBr( zlI^?2ySt8qoNBeaYa`^R3NGoROxjxu*|^Z@R@oOf#wG`fNZow2^u zPox;{BSC!|_q)}`_*<9?VL$XJ)c!G-4;6ow^at3SgnD({(onwdcf9=1!6v||kZq

vlGF|3-Om{ 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