Add device metadata setup in MyMesh bridge initialization and restart

- Implemented device metadata configuration in the bridge's start and restart methods.
- Added device ID, firmware version, board model, and build date settings.
- Included MQTT bridge statistics sources setup conditionally based on the WITH_MQTT_BRIDGE flag.
This commit is contained in:
agessaman committed 2026-01-03 11:09:37 -08:00
1 parent d1093b4390
commit 2bd61c1324
1 file changed
+22
+22
View File
@@ -216,6 +216,17 @@ public:
if (enable == bridge.isRunning()) return;
if (enable)
{
// Set device metadata before starting bridge (same as in begin())
char device_id[65];
mesh::LocalIdentity self_id = getSelfId();
mesh::Utils::toHex(device_id, self_id.pub_key, PUB_KEY_SIZE);
bridge.setDeviceID(device_id);
bridge.setFirmwareVersion(getFirmwareVer());
bridge.setBoardModel(_cli.getBoard()->getManufacturerName());
bridge.setBuildDate(getBuildDate());
#ifdef WITH_MQTT_BRIDGE
bridge.setStatsSources(this, _radio, _cli.getBoard(), _ms);
#endif
bridge.begin();
}
else
@@ -227,6 +238,17 @@ public:
void restartBridge() override {
if (!bridge.isRunning()) return;
bridge.end();
// Set device metadata before restarting bridge (same as in begin())
char device_id[65];
mesh::LocalIdentity self_id = getSelfId();
mesh::Utils::toHex(device_id, self_id.pub_key, PUB_KEY_SIZE);
bridge.setDeviceID(device_id);
bridge.setFirmwareVersion(getFirmwareVer());
bridge.setBoardModel(_cli.getBoard()->getManufacturerName());
bridge.setBuildDate(getBuildDate());
#ifdef WITH_MQTT_BRIDGE
bridge.setStatsSources(this, _radio, _cli.getBoard(), _ms);
#endif
bridge.begin();
}