Skip to content

Add marwoj.net MQTT broker preset 🤖🤖 - #52

Open
MarekWo wants to merge 1 commit into
agessaman:observer-firmware-devfrom
MarekWo:add-marwoj-mqtt-preset
Open

MarekWo wants to merge 1 commit into
agessaman:observer-firmware-devfrom
MarekWo:add-marwoj-mqtt-preset

Conversation

@MarekWo

@MarekWo MarekWo commented Sep 12, 2026

Copy link
Copy Markdown

Summary

Adds a built-in MQTT preset for the Polish MeshCore community broker at
mqtt.marwoj.net.

The broker uses MQTT over TLS on port 8883 with username/password
authentication and the standard MeshCore topic layout, so users can
configure it with a single command:

set mqttN.preset marwoj

Configuration

  • Endpoint: mqtts://mqtt.marwoj.net:8883
  • Authentication: username/password embedded in the preset, following the
    existing tennmesh / nashmesh / ctmesh pattern
  • TLS CA: the existing ISRG_ROOT_X1 constant (the server presents a valid
    Let's Encrypt chain, so no new CA certificate is added)
  • Topic style: MQTT_TOPIC_MESHCORE, retain enabled, keepalive 55

The credentials are a dedicated public firmware account created for this
preset; they are intentionally not a private or admin credential.

Changes

  • src/helpers/MQTTPresets.h — add the marwoj entry and bump
    MQTT_PRESET_COUNT from 36 to 37
  • MQTT_IMPLEMENTATION.md — add the broker to the presets table and to the
    two notes listing presets that ship fixed credentials in firmware

Testing

  • Endpoint and credentials tested on a physical MeshCore Observer device
    using the equivalent custom slot configuration: the slot came up as
    connected over TLS, authenticated successfully, and published without
    publish errors.
  • TLS chain verified independently with openssl s_client -verify_return_error
    (verify return code 0).
  • pio run -e heltec_v4_repeater_observer_mqtt builds clean with this change.
  • The native gtest suite could not be run locally (no host compiler on this
    machine); the preset table was instead compile-checked with static asserts
    confirming MQTT_PRESET_COUNT matches the number of initialisers.

Adds a built-in preset for the Polish MeshCore community broker at
mqtt.marwoj.net: MQTT over TLS on port 8883, username/password auth
with credentials embedded in firmware, and the standard MeshCore topic
layout. The Let's Encrypt chain anchors at the existing ISRG_ROOT_X1
constant, so no new CA certificate is needed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant