From 08847342c5148ff68ac7d38f3f1cbd83661b7f8a Mon Sep 17 00:00:00 2001 From: agessaman Date: Sun, 10 May 2026 09:35:13 -0700 Subject: [PATCH] Update MQTT implementation to include ColoradoMesh preset Added ColoradoMesh as a new built-in preset in the MQTT bridge documentation. Updated relevant sections to reflect this addition, including command examples and notes on topic templates. This enhances the flexibility and options available for MQTT connections. --- MQTT_IMPLEMENTATION.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/MQTT_IMPLEMENTATION.md b/MQTT_IMPLEMENTATION.md index 0053223d..c562179d 100644 --- a/MQTT_IMPLEMENTATION.md +++ b/MQTT_IMPLEMENTATION.md @@ -77,7 +77,7 @@ get mqtt.status The MQTT bridge implementation provides: - Up to 6 MQTT connection slots with built-in presets -- Built-in presets for LetsMesh Analyzer (US/EU), MeshMapper, MeshRank, Waev, Meshomatic, CascadiaMesh, EastIdahoMesh, and TennMesh +- Built-in presets for LetsMesh Analyzer (US/EU), MeshMapper, MeshRank, Waev, Meshomatic, CascadiaMesh, EastIdahoMesh, ColoradoMesh, and TennMesh - Custom broker support with username/password authentication - JWT (Ed25519 device signing) authentication for most preset brokers; TennMesh uses a fixed username/password (plain MQTT) - WSS (WebSocket Secure), direct MQTT/TLS, and plain MQTT (TennMesh) transport @@ -108,6 +108,7 @@ The MQTT bridge uses a slot-based architecture with up to 6 concurrent connectio | `chimesh` | wss://mqtt.chimesh.org:443 | JWT (Ed25519) | WSS | | `meshat.se` | mqtts://mqtt.meshat.se:8883 | Username/password (fixed in firmware) | MQTT over TLS | | `eastidahomesh` | wss://broker.eastidahomesh.net:443 | None | WSS | +| `coloradomesh` | wss://mqtt.meshcore.coloradomesh.org:1883 | JWT (Ed25519) | WSS | | `custom` | User-configured | Username/Password | MQTT or WSS | | `none` | (disabled) | — | — | @@ -254,6 +255,7 @@ Each slot (1-6) supports the following commands: - `set mqttN.preset chimesh` - Set slot N to ChicagolandMesh - `set mqttN.preset meshat.se` - Set slot N to Meshat.se - `set mqttN.preset eastidahomesh` - Set slot N to EastIdahoMesh (WSS/TLS, no auth; packets on `meshcore/{IATA}/{PUBLIC_KEY}/packets`) +- `set mqttN.preset coloradomesh` - Set slot N to ColoradoMesh - `set mqttN.preset custom` - Set slot N to custom broker (configure server/port/username/password) - `set mqttN.preset none` - Disable slot N - `set mqttN.server ` - Set custom server hostname for slot N @@ -330,7 +332,7 @@ When a slot's preset is `custom`, you can define a custom topic template using p If no custom topic is set, custom slots default to: `meshcore/{iata}/{device}/{type}` -**Note:** Topic templates only apply to `custom` preset slots. Built-in presets (analyzer-us, analyzer-eu, meshmapper, meshrank, eastidahomesh, tennmesh, etc.) always use their hardcoded topic format. +**Note:** Topic templates only apply to `custom` preset slots. Built-in presets (analyzer-us, analyzer-eu, meshmapper, meshrank, eastidahomesh, coloradomesh, tennmesh, etc.) always use their hardcoded topic format. ### MQTT Shared Commands @@ -524,7 +526,7 @@ Minimal raw packet data for map integration. ### Slot-Based Preset System - Up to 6 concurrent MQTT connections (with PSRAM), 2 without PSRAM -- Built-in presets for LetsMesh Analyzer (US/EU), MeshMapper, MeshRank, Waev, Meshomatic, CascadiaMesh, EastIdahoMesh, and TennMesh +- Built-in presets for LetsMesh Analyzer (US/EU), MeshMapper, MeshRank, Waev, Meshomatic, CascadiaMesh, EastIdahoMesh, ColoradoMesh, and TennMesh - Custom broker support with username/password auth and custom topic templates - JWT (Ed25519) for most preset brokers; MeshRank uses token-in-topic; TennMesh uses fixed username/password over plain MQTT - WSS (WebSocket Secure), direct MQTT over TLS, and plain MQTT (TennMesh) @@ -665,7 +667,7 @@ get mqtt1.diag # Last slot error details (TLS/sock/time) get mqtt2.diag get mqtt3.diag get mqtt1.preset # Verify slots are configured -get mqtt.iata # IATA must be set for MeshCore-topic presets (e.g. Analyzer, TennMesh) +get mqtt.iata # IATA must be set for MeshCore-topic presets (e.g. Analyzer, ColoradoMesh, TennMesh) ``` #### Timezone Issues