Skip to content

Firmware v3.4.1 — a broker ships, so MQTT works out of the box - #299

Merged
engmung merged 1 commit into
mainfrom
dev
Aug 12, 2026
Merged

Firmware v3.4.1 — a broker ships, so MQTT works out of the box#299
engmung merged 1 commit into
mainfrom
dev

Conversation

@engmung

@engmung engmung commented Aug 12, 2026

Copy link
Copy Markdown
Owner

MQTT shipped in v3.4.0 with nowhere to connect: a broker had to be set in patternflow_secrets.h, which meant standing up a server before the feature did anything. @SimonePDA runs one for exactly this and confirmed the terms today, so it ships.

The host and login move out of the gitignored secrets header into net_config.h as published defaults. That is the honest place for them — they are in every release image either way, and hiding them in the ignored file would only keep them from the people reading the source.

What makes this sound rather than reckless is the scope, and it is his:

the MQTT broker data can be currently shared with other users as the broker is secured and allows just the patternflow topic to be read/written

The account reaches one topic. Publishing it costs its owner a topic, not a broker. That sentence is quoted in net_config.h so the next person to find a password in public source has the answer sitting beside it.

Nothing dials on its own — the role lives in NVS and starts at ROLE_OFF, so this arms the option rather than the radio.

The credential scan still refuses a real leak

Release image Control (build with secrets)
PF_WIFI_SSID / PF_WIFI_PASS clean LEAKED
PF_OSC_REMOTE_HOST clean LEAKED
PF_MQTT_* public public
YOUR_WIFI_* placeholders present missing
verdict PASS DO NOT PUBLISH

The MQTT values read public in both now instead of LEAKED — that is the classification working, not weakening: it asks whether a value also appears in public source, and now they do. Wi-Fi is still caught.

Patch rather than minor: the feature was already in v3.4.0 and this fills in a default. The number moves at all because bin/v3.4.0/ is published and a version-stamped path is never overwritten.

🤖 Generated with Claude Code

MQTT shipped in v3.4.0 with nowhere to connect: a broker had to be set in
patternflow_secrets.h, which meant standing up a server before the
feature did anything. Simone runs one for exactly this and confirmed the
terms today, so it ships.

The host and login move out of the gitignored secrets header and into
net_config.h as published defaults. That is the honest place for them:
they are in every release image either way, and hiding them in the
ignored file would only keep them from the people reading the source.

The reason this is sound rather than reckless is the scope, and it is
his: "the MQTT broker data can be currently shared with other users as
the broker is secured and allows just the patternflow topic to be
read/written". The account reaches one topic. Publishing it costs its
owner a topic, not a broker. That sentence is quoted in net_config.h so
the next person to find a password in public source has the answer
beside it.

Nothing dials on its own. The role lives in NVS and starts at Off, so
this arms the option rather than the radio.

The credential scan still refuses a real leak — the control build, which
does have secrets, comes back with the Wi-Fi SSID, Wi-Fi password and
OSC host all LEAKED and both placeholders missing. The MQTT values now
read `public` there instead of `LEAKED`, which is the classification
working: it asks whether a value also appears in public source, and now
they do.

Patch rather than minor: the feature was already in v3.4.0 and this
fills in a default. The number moves at all because bin/v3.4.0/ is
published and a version-stamped path is never overwritten.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
pattern-flow-open Ready Ready Preview Aug 12, 2026 7:40am
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
pattern-flow_origin Ignored Ignored Aug 12, 2026 7:40am

@engmung
engmung merged commit 51b768e into main Aug 12, 2026
3 checks passed
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