From 34a944553f1776d2a57a3c8a61cdae05d3d7df02 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Thu, 16 Feb 2023 09:02:32 -0600 Subject: [PATCH 01/23] Add metadata to fromradio --- meshtastic/mesh.proto | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index d4bcd6b..85e02e7 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -14,6 +14,7 @@ import "meshtastic/module_config.proto"; import "meshtastic/portnums.proto"; import "meshtastic/telemetry.proto"; import "meshtastic/xmodem.proto"; +import "meshtastic/device_metadata.proto"; /* * a gps position @@ -1304,6 +1305,11 @@ message FromRadio { * File Transfer Chunk */ XModem xmodemPacket = 12; + + /* + * Device metadata message + */ + DeviceMetadata metadata = 13; } } From 6cbbf01d139054cbf16fdc9d37323a16343f7df7 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Thu, 16 Feb 2023 09:13:48 -0600 Subject: [PATCH 02/23] Move metadata into mesh.proto --- meshtastic/device_metadata.options | 1 - meshtastic/device_metadata.proto | 62 ------------------------------ meshtastic/mesh.options | 4 +- meshtastic/mesh.proto | 52 +++++++++++++++++++++++++ 4 files changed, 55 insertions(+), 64 deletions(-) delete mode 100644 meshtastic/device_metadata.options delete mode 100644 meshtastic/device_metadata.proto diff --git a/meshtastic/device_metadata.options b/meshtastic/device_metadata.options deleted file mode 100644 index d1c7f95..0000000 --- a/meshtastic/device_metadata.options +++ /dev/null @@ -1 +0,0 @@ -*DeviceMetadata.firmware_version max_size:18 diff --git a/meshtastic/device_metadata.proto b/meshtastic/device_metadata.proto deleted file mode 100644 index 59ab00a..0000000 --- a/meshtastic/device_metadata.proto +++ /dev/null @@ -1,62 +0,0 @@ -syntax = "proto3"; - -package meshtastic; - -option java_package = "com.geeksville.mesh"; -option java_outer_classname = "DeviceMetadataProtos"; -option go_package = "github.com/meshtastic/go/generated"; -option csharp_namespace = "Meshtastic.Protobufs"; -option swift_prefix = ""; - -import "meshtastic/config.proto"; -import "meshtastic/mesh.proto"; - -/* - * Device metadata response - */ -message DeviceMetadata { - /* - * Device firmware version string - */ - string firmware_version = 1; - - /* - * Device state version - */ - uint32 device_state_version = 2; - - /* - * Indicates whether the device can shutdown CPU natively or via power management chip - */ - bool canShutdown = 3; - - /* - * Indicates that the device has native wifi capability - */ - bool hasWifi = 4; - - /* - * Indicates that the device has native bluetooth capability - */ - bool hasBluetooth = 5; - - /* - * Indicates that the device has an ethernet peripheral - */ - bool hasEthernet = 6; - - /* - * Indicates that the device's role in the mesh - */ - Config.DeviceConfig.Role role = 7; - - /* - * Indicates the device's current enabled position flags - */ - uint32 position_flags = 8; - - /* - * Device hardware model - */ - HardwareModel hw_model = 9; -} diff --git a/meshtastic/mesh.options b/meshtastic/mesh.options index 35c753b..eb4b02b 100644 --- a/meshtastic/mesh.options +++ b/meshtastic/mesh.options @@ -47,4 +47,6 @@ *Compressed.data max_size:237 *Waypoint.name max_size:30 -*Waypoint.description max_size:100 \ No newline at end of file +*Waypoint.description max_size:100 + +*DeviceMetadata.firmware_version max_size:18 diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 85e02e7..3d35f40 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -15,6 +15,8 @@ import "meshtastic/portnums.proto"; import "meshtastic/telemetry.proto"; import "meshtastic/xmodem.proto"; import "meshtastic/device_metadata.proto"; +import "meshtastic/role.proto"; + /* * a gps position @@ -1372,3 +1374,53 @@ message Compressed { */ bytes data = 2; } + +/* + * Device metadata response + */ + message DeviceMetadata { + /* + * Device firmware version string + */ + string firmware_version = 1; + + /* + * Device state version + */ + uint32 device_state_version = 2; + + /* + * Indicates whether the device can shutdown CPU natively or via power management chip + */ + bool canShutdown = 3; + + /* + * Indicates that the device has native wifi capability + */ + bool hasWifi = 4; + + /* + * Indicates that the device has native bluetooth capability + */ + bool hasBluetooth = 5; + + /* + * Indicates that the device has an ethernet peripheral + */ + bool hasEthernet = 6; + + /* + * Indicates that the device's role in the mesh + */ + Config.DeviceConfig.Role role = 7; + + /* + * Indicates the device's current enabled position flags + */ + uint32 position_flags = 8; + + /* + * Device hardware model + */ + HardwareModel hw_model = 9; +} \ No newline at end of file From cf4466a7d204af35d052b326d1f87fe839f88d25 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Thu, 16 Feb 2023 09:15:23 -0600 Subject: [PATCH 03/23] Forgot to remove references --- meshtastic/mesh.proto | 3 --- 1 file changed, 3 deletions(-) diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 3d35f40..8f93cf3 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -14,9 +14,6 @@ import "meshtastic/module_config.proto"; import "meshtastic/portnums.proto"; import "meshtastic/telemetry.proto"; import "meshtastic/xmodem.proto"; -import "meshtastic/device_metadata.proto"; -import "meshtastic/role.proto"; - /* * a gps position From 8882edf8abf065a037f15cc9fcf82c14456164a2 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Thu, 16 Feb 2023 09:17:40 -0600 Subject: [PATCH 04/23] Remove import --- meshtastic/admin.proto | 1 - 1 file changed, 1 deletion(-) diff --git a/meshtastic/admin.proto b/meshtastic/admin.proto index 05c975a..184700a 100644 --- a/meshtastic/admin.proto +++ b/meshtastic/admin.proto @@ -10,7 +10,6 @@ option swift_prefix = ""; import "meshtastic/channel.proto"; import "meshtastic/config.proto"; -import "meshtastic/device_metadata.proto"; import "meshtastic/mesh.proto"; import "meshtastic/module_config.proto"; import "meshtastic/connection_status.proto"; From f63ae3245eb05950502fbdb1ae49b058e5784f33 Mon Sep 17 00:00:00 2001 From: neil Date: Fri, 17 Feb 2023 07:17:58 +0800 Subject: [PATCH 05/23] 'nano-g1-explorer' --- meshtastic/mesh.proto | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 8f93cf3..edc1503 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -383,6 +383,11 @@ enum HardwareModel { */ BETAFPV_900_NANO_TX = 46; + /* + * B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer + */ + NANO_G1 = 47; + /* * Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits. */ From 789d256edab9eedb3d62b35fab553c5c7ef8f0c9 Mon Sep 17 00:00:00 2001 From: neil Date: Fri, 17 Feb 2023 07:23:10 +0800 Subject: [PATCH 06/23] 'nano-g1-explorer' --- meshtastic/mesh.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index edc1503..7f136ae 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -386,7 +386,7 @@ enum HardwareModel { /* * B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer */ - NANO_G1 = 47; + NANO_G1_EXPLORER = 47; /* * Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits. From 07743fb3a36a1e6d01177e97d5b0fb7b45215740 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=B6ttgens?= Date: Fri, 17 Feb 2023 13:42:24 +0100 Subject: [PATCH 07/23] Move the G1 Explorer up to the 'core' devices --- meshtastic/mesh.proto | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 7f136ae..37002fb 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -302,6 +302,11 @@ enum HardwareModel { * TODO: REPLACE */ TLORA_T3_S3 = 16; + + /* + * B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer + */ + NANO_G1_EXPLORER = 17; /* * B&Q Consulting Station Edition G1: https://uniteng.com/wiki/doku.php?id=meshtastic:station @@ -309,7 +314,9 @@ enum HardwareModel { STATION_G1 = 25; /* + * --------------------------------------------------------------------------- * Less common/prototype boards listed here (needs one more byte over the air) + * --------------------------------------------------------------------------- */ LORA_RELAY_V1 = 32; @@ -381,15 +388,12 @@ enum HardwareModel { /* * BetaFPV ExpressLRS "Nano" TX Module 900MHz with ESP32 CPU */ - BETAFPV_900_NANO_TX = 46; + BETAFPV_900_NANO_TX = 46; /* - * B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer - */ - NANO_G1_EXPLORER = 47; - - /* + * ------------------------------------------------------------------------------------------------------------------------------------------ * Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits. + * ------------------------------------------------------------------------------------------------------------------------------------------ */ PRIVATE_HW = 255; } @@ -1425,4 +1429,4 @@ message Compressed { * Device hardware model */ HardwareModel hw_model = 9; -} \ No newline at end of file +} From e0abfe4890fbd3a93fe0ae7251ee298d1d98dafb Mon Sep 17 00:00:00 2001 From: Sacha Weatherstone Date: Sat, 18 Feb 2023 12:43:42 +1100 Subject: [PATCH 08/23] Update create_tag.yml --- .github/workflows/create_tag.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/.github/workflows/create_tag.yml b/.github/workflows/create_tag.yml index 3305aec..b43dbee 100644 --- a/.github/workflows/create_tag.yml +++ b/.github/workflows/create_tag.yml @@ -19,12 +19,6 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Checkout master - run: git switch master - - id: version name: Get current version run: | @@ -69,4 +63,4 @@ jobs: # buf_token: ${{ secrets.BUF_TOKEN }} run: | export BUF_TOKEN=${{ secrets.BUF_TOKEN }} - buf push --tag ${{ github.ref_name }} + buf push --tag ${{ steps.version.outputs.NEW_VERSION }} From 4ed764066e11417f884b89a66e48b472792aa510 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Wed, 22 Feb 2023 07:07:46 -0600 Subject: [PATCH 09/23] Add air quality specific protos --- meshtastic/module_config.proto | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/meshtastic/module_config.proto b/meshtastic/module_config.proto index 7fcc6a2..205fb89 100644 --- a/meshtastic/module_config.proto +++ b/meshtastic/module_config.proto @@ -373,6 +373,17 @@ message ModuleConfig { * display the results in Fahrenheit as a "user preference". */ bool environment_display_fahrenheit = 5; + + /* + * Enable/Disable the air quality enabled + */ + bool air_quality_enabled = 6; + + /* + * Interval in seconds of how often we should try to send our + * air quality metrics to the mesh + */ + uint32 air_quality_interval = 7; } /* From b3a23a7b8376410354649d86c6f726c2465057dc Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Wed, 22 Feb 2023 07:09:33 -0600 Subject: [PATCH 10/23] Word --- meshtastic/module_config.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meshtastic/module_config.proto b/meshtastic/module_config.proto index 205fb89..7e71469 100644 --- a/meshtastic/module_config.proto +++ b/meshtastic/module_config.proto @@ -375,7 +375,7 @@ message ModuleConfig { bool environment_display_fahrenheit = 5; /* - * Enable/Disable the air quality enabled + * Enable/Disable the air quality metrics */ bool air_quality_enabled = 6; From e8816f2c589c97022a27bda47902295c1821cde0 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Fri, 24 Feb 2023 10:33:53 -0600 Subject: [PATCH 11/23] Add sensor role --- meshtastic/config.proto | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/meshtastic/config.proto b/meshtastic/config.proto index bb6e627..67df8e3 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -55,6 +55,12 @@ message Config { * Position Mesh packets will be prioritized higher and sent more frequently by default. */ TRACKER = 5; + + /* + * Sensor device role + * Telemetry Mesh packets will be prioritized higher and sent more frequently by default. + */ + SENSOR = 6; } /* From b3d05ec995844ae888e1d43d6e5c770b7d654309 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Wed, 1 Mar 2023 12:25:12 -0600 Subject: [PATCH 12/23] Fetch depth for tags --- .github/workflows/create_tag.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/create_tag.yml b/.github/workflows/create_tag.yml index b43dbee..d2302f5 100644 --- a/.github/workflows/create_tag.yml +++ b/.github/workflows/create_tag.yml @@ -19,6 +19,8 @@ jobs: steps: - name: Checkout code uses: actions/checkout@v3 + with: + fetch-depth: 0 - id: version name: Get current version run: | From fbfdcaab4c0ace73666e308e2c98f6b7fbe4f9ff Mon Sep 17 00:00:00 2001 From: Mike Coles Date: Sun, 5 Mar 2023 07:30:24 -0500 Subject: [PATCH 13/23] Minor typo fixes. Some readability changes. --- meshtastic/admin.proto | 2 +- meshtastic/config.proto | 20 ++++++++++---------- meshtastic/connection_status.proto | 10 +++++----- meshtastic/deviceonly.proto | 6 +++--- 4 files changed, 19 insertions(+), 19 deletions(-) diff --git a/meshtastic/admin.proto b/meshtastic/admin.proto index 184700a..bc757d1 100644 --- a/meshtastic/admin.proto +++ b/meshtastic/admin.proto @@ -256,7 +256,7 @@ message AdminMessage { int32 reboot_ota_seconds = 95; /* - * This message is only supported for the simulator porduino build. + * This message is only supported for the simulator Portduino build. * If received the simulator will exit successfully. */ bool exit_simulator = 96; diff --git a/meshtastic/config.proto b/meshtastic/config.proto index 67df8e3..148a2ca 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -585,7 +585,7 @@ message Config { EU_433 = 2; /* - * European Union 433mhz + * European Union 868mhz */ EU_868 = 3; @@ -698,7 +698,7 @@ message Config { } /* - * When enabled, the `modem_preset` fields will be adheared to, else the `bandwidth`/`spread_factor`/`coding_rate` + * When enabled, the `modem_preset` fields will be adhered to, else the `bandwidth`/`spread_factor`/`coding_rate` * will be taked from their respective manually defined fields */ bool use_preset = 1; @@ -756,7 +756,7 @@ message Config { bool tx_enabled = 9; /* - * If zero then, use default max legal continuous power (ie. something that won't + * If zero, then use default max legal continuous power (ie. something that won't * burn out the radio hardware) * In most cases you should use zero here. * Units are in dBm. @@ -764,9 +764,9 @@ message Config { int32 tx_power = 10; /* - * This is controlling the actual hardware frequency the radio is transmitting on. + * This controls the actual hardware frequency the radio transmits on. * Most users should never need to be exposed to this field/concept. - * A channel number between 1 and NUM_CHANNELS (whatever the max is in the current region). + * A channel number is between 1 and NUM_CHANNELS (whatever the max is in the current region). * If ZERO then the rule is "use the old channel name hash based * algorithm to derive the channel number") * If using the hash algorithm the channel number will be: hash(channel_name) % @@ -798,7 +798,7 @@ message Config { /* * 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 droped on receive (by router.cpp) + * in ignore_incoming will have packets they send dropped on receive (by router.cpp) */ repeated uint32 ignore_incoming = 103; @@ -808,17 +808,17 @@ message Config { enum PairingMode { /* - * Device generates a random pin that will be shown on the screen of the device for pairing + * Device generates a random PIN that will be shown on the screen of the device for pairing */ RANDOM_PIN = 0; /* - * Device requires a specified fixed pin for pairing + * Device requires a specified fixed PIN for pairing */ FIXED_PIN = 1; /* - * Device requires no pin for pairing + * Device requires no PIN for pairing */ NO_PIN = 2; } @@ -834,7 +834,7 @@ message Config { PairingMode mode = 2; /* - * Specified pin for PairingMode.FixedPin + * Specified PIN when using FIXED_PIN for PairingMode */ uint32 fixed_pin = 3; diff --git a/meshtastic/connection_status.proto b/meshtastic/connection_status.proto index ee35c9f..76cce6e 100644 --- a/meshtastic/connection_status.proto +++ b/meshtastic/connection_status.proto @@ -39,12 +39,12 @@ message WifiConnectionStatus { NetworkConnectionStatus status = 1; /* - * WiFi access point ssid + * WiFi access point SSID */ string ssid = 2; /* - * Rssi of wireless connection + * RSSI of wireless connection */ int32 rssi = 3; } @@ -89,12 +89,12 @@ message NetworkConnectionStatus { */ message BluetoothConnectionStatus { /* - * The pairing pin for bluetooth + * The pairing PIN for bluetooth */ uint32 pin = 1; /* - * Rssi of bluetooth connection + * RSSI of bluetooth connection */ int32 rssi = 2; @@ -109,7 +109,7 @@ message BluetoothConnectionStatus { */ message SerialConnectionStatus { /* - * The serial baud rate + * Serial baud rate */ uint32 baud = 1; diff --git a/meshtastic/deviceonly.proto b/meshtastic/deviceonly.proto index 3ce9ab3..0b1e6a4 100644 --- a/meshtastic/deviceonly.proto +++ b/meshtastic/deviceonly.proto @@ -62,7 +62,7 @@ message DeviceState { bool no_save = 9; /* - * Some GPSes seem to have bogus settings from the factory, so we always do one factory reset. + * Some GPS receivers seem to have bogus settings from the factory, so we always do one factory reset. */ bool did_gps_reset = 11; @@ -109,7 +109,7 @@ enum ScreenFonts { /* * This can be used for customizing the firmware distribution. If populated, - * show a secondary bootup screen with cuatom logo and text for 2.5 seconds. + * show a secondary bootup screen with custom logo and text for 2.5 seconds. */ message OEMStore { @@ -124,7 +124,7 @@ message OEMStore { uint32 oem_icon_height = 2; /* - * The Logo in xbm bytechar format + * The Logo in XBM bytechar format */ bytes oem_icon_bits = 3; From 19d49ec5280b6904f8c4cd1182ba4250d4122dbe Mon Sep 17 00:00:00 2001 From: Mike Coles Date: Sun, 5 Mar 2023 07:36:34 -0500 Subject: [PATCH 14/23] Minor typo fixes. --- meshtastic/config.proto | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meshtastic/config.proto b/meshtastic/config.proto index 148a2ca..d05cad3 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -766,7 +766,7 @@ message Config { /* * This controls the actual hardware frequency the radio transmits on. * Most users should never need to be exposed to this field/concept. - * A channel number is between 1 and NUM_CHANNELS (whatever the max is in the current region). + * A channel number between 1 and NUM_CHANNELS (whatever the max is in the current region). * If ZERO then the rule is "use the old channel name hash based * algorithm to derive the channel number") * If using the hash algorithm the channel number will be: hash(channel_name) % @@ -834,7 +834,7 @@ message Config { PairingMode mode = 2; /* - * Specified PIN when using FIXED_PIN for PairingMode + * Specified PIN for PairingMode.FixedPin */ uint32 fixed_pin = 3; From b546551e2728d09ae651ce5670ac2360a10ed0ef Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Thu, 9 Mar 2023 12:52:46 -0600 Subject: [PATCH 15/23] Make power level less dumb --- meshtastic/telemetry.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meshtastic/telemetry.proto b/meshtastic/telemetry.proto index e9c0349..740ffde 100644 --- a/meshtastic/telemetry.proto +++ b/meshtastic/telemetry.proto @@ -13,7 +13,7 @@ option swift_prefix = ""; */ message DeviceMetrics { /* - * 1-100 (0 means powered) + * 0-100 (>100 means powered) */ uint32 battery_level = 1; From 72d82eed119013e77bc9cf046e359469c318245b Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Tue, 21 Mar 2023 08:42:05 -0500 Subject: [PATCH 16/23] wake_on_tap_or_motion --- meshtastic/config.proto | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meshtastic/config.proto b/meshtastic/config.proto index d05cad3..cd085f2 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -560,6 +560,11 @@ message Config { * Print first line in pseudo-bold? FALSE is original style, TRUE is bold */ bool heading_bold = 9; + + /* + * Should we wake the screen up on accelerometer detected motion or tap + */ + bool wake_on_tap_or_motion = 10; } /* From 69a79fa5afdc77028ad8aa3c71e3f13f78465269 Mon Sep 17 00:00:00 2001 From: Sascha Bias Date: Sat, 25 Mar 2023 12:03:40 +0100 Subject: [PATCH 17/23] add channel to NodeInfo --- meshtastic/mesh.options | 2 ++ meshtastic/mesh.proto | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/meshtastic/mesh.options b/meshtastic/mesh.options index eb4b02b..bb57f26 100644 --- a/meshtastic/mesh.options +++ b/meshtastic/mesh.options @@ -13,6 +13,8 @@ # outside of this envelope *Data.payload max_size:237 +*NodeInfo.channel int_size:8 + # Big enough for 1.2.28.568032c-d *MyNodeInfo.firmware_version max_size:18 diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 37002fb..664565a 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -975,6 +975,12 @@ message NodeInfo { * The latest device metrics for the node. */ DeviceMetrics device_metrics = 6; + + /* + * local channel we heared that node + */ + uint32 channel = 7; + } /* From a73083db549d7f0a4e47b0ebd5e6d363f130fcf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=B6ttgens?= Date: Sat, 25 Mar 2023 13:16:58 +0100 Subject: [PATCH 18/23] annotate --- meshtastic/mesh.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 664565a..378555e 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -977,7 +977,7 @@ message NodeInfo { DeviceMetrics device_metrics = 6; /* - * local channel we heared that node + * local channel index we heard that node on. Only populated if its not the default channel. */ uint32 channel = 7; From 5ccc757f719c38ab4e6fb189220896077a80038a Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Sun, 26 Mar 2023 14:08:44 -0500 Subject: [PATCH 19/23] Smart broadcast... now dumber but more customizable --- meshtastic/config.proto | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/meshtastic/config.proto b/meshtastic/config.proto index cd085f2..d251a44 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -252,7 +252,15 @@ message Config { */ uint32 tx_gpio = 9; + /* + * The minimum distance in meters traveled (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled + */ + uint32 broadcast_smart_minumum_distance = 10; + /* + * The minumum number of seconds (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled + */ + uint32 broadcast_smart_minumum_interval_secs = 11; } /* From fcc45bee5623f0f03bb7e308c0ff59395e387b2a Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Sun, 26 Mar 2023 15:19:31 -0500 Subject: [PATCH 20/23] Spelling fix --- meshtastic/config.proto | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meshtastic/config.proto b/meshtastic/config.proto index d251a44..c119df3 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -255,12 +255,12 @@ message Config { /* * The minimum distance in meters traveled (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled */ - uint32 broadcast_smart_minumum_distance = 10; + uint32 broadcast_smart_minimum_distance = 10; /* * The minumum number of seconds (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled */ - uint32 broadcast_smart_minumum_interval_secs = 11; + uint32 broadcast_smart_minimum_interval_secs = 11; } /* From 18e4dc224cd16c26d9827a9f919ebe18df48b913 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Tue, 28 Mar 2023 12:22:35 -0500 Subject: [PATCH 21/23] Double tap as button press --- meshtastic/config.proto | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meshtastic/config.proto b/meshtastic/config.proto index c119df3..416be4d 100644 --- a/meshtastic/config.proto +++ b/meshtastic/config.proto @@ -124,6 +124,11 @@ message Config { * Defaults to 900 Seconds (15 minutes) */ uint32 node_info_broadcast_secs = 7; + + /* + * Treat double tap interrupt on supported accelerometers as a button press if set to true + */ + bool double_tap_as_button_press = 8; } /* From 96d0f0e23899c1f68e99ee6fb83ee16d95cf1fcb Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Sun, 2 Apr 2023 20:53:09 -0500 Subject: [PATCH 22/23] Bool to enable tls on mqtt connection --- meshtastic/module_config.proto | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meshtastic/module_config.proto b/meshtastic/module_config.proto index 7e71469..3201d87 100644 --- a/meshtastic/module_config.proto +++ b/meshtastic/module_config.proto @@ -56,6 +56,11 @@ message ModuleConfig { * Whether to send / consume json packets on MQTT */ bool json_enabled = 6; + + /* + * If true, we attempt to establish a secure connection using TLS + */ + bool tls_enabled = 7; } /* From 3e5ab67ff6659476df66bde6bbbae3c520460db9 Mon Sep 17 00:00:00 2001 From: andrekir Date: Mon, 3 Apr 2023 18:23:45 -0300 Subject: [PATCH 23/23] fix: update ChannelSettings field comments --- meshtastic/channel.proto | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/meshtastic/channel.proto b/meshtastic/channel.proto index ab6e988..05d1dd5 100644 --- a/meshtastic/channel.proto +++ b/meshtastic/channel.proto @@ -9,11 +9,9 @@ option csharp_namespace = "Meshtastic.Protobufs"; option swift_prefix = ""; /* - * Full settings (center freq, spread factor, pre-shared secret key etc...) - * needed to configure a radio for speaking on a particular channel This - * information can be encoded as a QRcode/url so that other users can configure + * This information can be encoded as a QRcode/url so that other users can configure * their radio to join the same channel. - * A note about how channel names are shown to users: channelname-Xy + * A note about how channel names are shown to users: channelname-X * poundsymbol is a prefix used to indicate this is a channel name (idea from @professr). * Where X is a letter from A-Z (base 26) representing a hash of the PSK for this * channel - so that if the user changes anything about the channel (which does @@ -23,8 +21,6 @@ option swift_prefix = ""; * The PSK is hashed into this letter by "0x41 + [xor all bytes of the psk ] modulo 26" * This also allows the option of someday if people have the PSK off (zero), the * users COULD type in a channel name and be able to talk. - * Y is a lower case letter from a-z that represents the channel 'speed' settings - * (for some future definition of speed) * FIXME: Add description of multi-channel support and how primary vs secondary channels are used. * FIXME: explain how apps use channels for security. * explain how remote settings and remote gpio are managed as an example @@ -44,7 +40,7 @@ message ChannelSettings { * because they are listed in this source code. * Those bytes are mapped using the following scheme: * `0` = No crypto - * `1` = The special "default" channel key: {0xd4, 0xf1, 0xbb, 0x3a, 0x20, 0x29, 0x07, 0x59, 0xf0, 0xbc, 0xff, 0xab, 0xcf, 0x4e, 0x69, 0xbf} + * `1` = The special "default" channel key: {0xd4, 0xf1, 0xbb, 0x3a, 0x20, 0x29, 0x07, 0x59, 0xf0, 0xbc, 0xff, 0xab, 0xcf, 0x4e, 0x69, 0x01} * `2` through 10 = The default channel key, except with 1 through 9 added to the last byte. * Shown to user as simple1 through 10 */