Neues Namensschema für MQTT

Danke!
Eigentlich ist genau das schon der Fall, da der Hostname aus der settings.h nur dann angezogen wird, wenn noch keine client-id gesetz wurde.
Zumindest bei mir löst das genau das Problem.

Oder verstehe ich da noch was falsch?

Ah, jetzt hab ich glaub verstanden was du meinst: es geht dir nur um den Initialen Hostname, bis eine client-id gesetzt wurde. Oder? Den Vorschlag finde ich sehr gut!

Bei dir kann aber folgendes passieren, ich baue 2 ESPs auf und aktiviere MQTT setze aber keine ClientId (warum sollte ich, brauche ich ja sonst auch nicht) → Fehler im Broker, ClientId doppelt

Ich würde ClientId nicht fürs Topic nutzen.

Das sind für mich 2 getrennte Paar Schuhe.

Wenn man schon dabei ist könnte man das komplett konfigurier bar machen.

ClientId → wenn keine gesetzt → nimm Espuino_(%MAC)

Topic → wenn keins gesetzt → nimm Hostname

TopicPrefix → packe vors Topic wenn gesetzt

Siehe dazu auch: MQTT - Tasmota

Client = device's unique identifier. In 99% of cases it's okay to leave it as is, however some Cloud-based MQTT brokers require a ClientID connected to your account. Can not be identical to Topic!

bzw. die Version die da gemacht wird mit dem FullTopic finde ich auch nett