NEWS
Test Adapter shelly - ALPHA Versionen
-
@mcm1957
Vielen Dank für Deine Arbeit.
Mit der Version 10.4.0-alpha.1 lassen sich sowohl die Höhe des Behangs als auch die Lamellenöffnung (Slat) wunderbar steuern. In den Objekten erscheint nun der Punkt SlatPos/Lamellenposition.
Den Rest habe ich nicht getestet. -
@renes-reinach
Danke fürs Feedback. Welche(n= Shelly/Shellies hast du im Einsatz?
Der Fix sollte bei insgeammt 6 Typen greifen - hoff ich
-
@mcm1957
Ich habe 2PMG4 im Einsatz. -
Es gibt eine neu ALPHA 10.4.0-alpha.2
Diese Release hat eine Minimalimplementierung der Beregnungssteuerung Frankever Smart Sprinkler Controller (irrigation) implementiert. Allfällige User bitte um ein DEBUG LOG mit den MQTT Paketen die das Ding sendet.
-
@mcm1957
Slat Pos funktioniert auch bei Shelly Plus2PM.
Habe 7 Stück im Einsatz, und in Verbindung mit dem shuttercontrol - Adapter funktioniert die Lamellensteuerung endlich automatisiert zielgenau.
Vielen Dank

-
Version 10.4.0 wurde ins LATEST entlassen.
Für diejenigen die auf Frankever Irrigation Control bzw. den LinkedGo Smart Thermostat warten:
Die Umsetzung dieser Geräte erfordert noch mehr Aufwand da diese - anscheinend - die Funktionalität virtueller Devices benutzen. Daher macht es im Momengt keine Sinn da Spezieleinbauten vorzunehmen wenn durch einen generellen Support virtueller Devices diese Geräte ggF mit erledigt werden. Ich bleib jedenfalls mal dran. -
Gibts hier einen User der ein TESTSYSTEM auf dem das Problem
[MQTT] Unable to get mqttprefix of client with id
auftritt hat?
Ich könnte eine pre-alpha absolute TEST / DEBUGGING Version die nur von Github zu installieren ist anbieten. Bei meinem Pi behebt die Änderung das Problem - ich kann aber zru Zeit nicht abschätzen ob es andere negative Auswirkungen gibt. Ich würde also dringen ABRATEN den LABORCODE auf einem produktiven System order generell auf einen anderem als einem Testsystem oder einem System mit Snapshot / Restore Fuktionalität zu testen!
Wer also (wage)mutig ist könnte mal diese Release ausnahmesweise direkt von Github installieren:
https://github.com/iobroker-community-adapters/ioBroker.shelly/tree/mqtt-tests
Aber nochmals:
NICHT AUF PRODUKTIVEN SYSTEMEN - oder nicht heulen. Die Änderung ist 100% LABOR/QUICKHACK !
Edit:
Die Änderung sendet nun das connack viel früher. Dadurch könnte es zu Problemen kommen weil andere Dinge, z.B. ein State nicht initialisiert sind. Da das Timing abhängig ist ist das sichere Testen hier extrem schwer. Es ist daher sowohl das Verhalten bei normaler Last als auch bei Restart der Instanz und Restart des ganzen Hosts von Interesse. -
@mcm1957 ich würde ja sehr gerne da mich das Problem sehr betrifft aber ich habe ein Produktivsytem und ich kann das Risiko echt schlecht einschätzen.
Herzliche Grüße
Fabioshelly.1 2025-11-07 17:22:18.124 error [MQTT] Unable to get mqttprefix of client with id "shellyhtg3-ecda3bc39aa8" shelly.1 2025-11-07 17:22:18.123 error [MQTT] Error in function setMqttPrefixHttp (Gen 1) for client undefined: TypeError: Cannot read properties of undefined (reading 'replace') shelly.1 2025-11-07 17:17:17.242 error [MQTT] Unable to get mqttprefix of client with id "shellyhtg3-543204567964" shelly.1 2025-11-07 17:17:17.240 error [MQTT] Error in function setMqttPrefixHttp (Gen 1) for client undefined: TypeError: Cannot read properties of undefined (reading 'replace') shelly.1 2025-11-07 17:06:14.228 error [MQTT] Unable to get mqttprefix of client with id "shellyhtg3-ecda3bc38e78" shelly.1 2025-11-07 17:06:14.226 error [MQTT] Error in function setMqttPrefixHttp (Gen 1) for client undefined: TypeError: Cannot read properties of undefined (reading 'replace') -
@fabio
Die Meldungen oben stammen von der regulären Shelly Version und NICHT von der Github / Labor. Oder?EDIT: Vielleicht hat ja @haus-automatisierung in den nächsten Tagen mal Zeit einen Blick auf meine Änderungen zu werfen und zu beurteilen ob die Installation halbwegs gefahrarm angeraten werden kann. Generell muss ich derzeit aber wirklich sagen - wenn ihr euch mit reset / restore etc. nicht 1a auskennt, bitte wartet noch bis es (hoffentlich) ein paar Freuwillige gibt die die Änderung mal antesten.
-
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
stammen von der regulären Shelly Version
Ja das ist richtig.
Ich hatte auch mal ein Issues davon auf meine ich müsste ich noch mal nachschauen. Ich konnte es verbesseren in dem alle meine Shellys kein Passwort mehr haben für die Weboberfläche, aber ganz weg habe ich es nicht bekommen.
Herzliche Grüße
Fabio -
@mcm1957 Ich habe die Version mal testweise installiert und hoffe das es besser wird. Ich berichte.
-
@mcm1957 @haus-automatisierung
ich hab mich auch mal dran versucht, die Probleme miterror: shelly.0 (717) [MQTT] Error in function setMqttPrefixHttp (Gen 1) for client undefined: TypeError: Cannot read properties of undefined (reading 'replace') error: shelly.0 (717) [MQTT] Unable to get mqttprefix of client with id...zu analysieren und gegebenenfalls zu beheben.
vorne weg,
hab weder Ahnung von programmieren, noch große Erfahrung mit GitHub und letztendlich alles mit Hilfe von copilot und weitgehendst mit perplexity umgesetzt.Ich weiß auch,
Zeit ist zwar nie, aber eventuell doch mal Lust ein Auge draufzuwerfen, ob was sinnvolles dabei rumgekommen ist, bzw den ein oder anderen Ansatz aus dem Fork in Betracht zu ziehen.Vielleicht war das ganze auch ein "Griff ins Klo", aber egal, waren zwar ein paar nervenaufreibende Tage, dennoch eine interessante Erfahrung für mich.
Diesbezüglich hab ich mir extra einen iobroker zum testen aufgesetzt und Adapter läuft problemlos mit 3 unterschiedlichen shelly`s,
- shelly2.5 gen1
- shellyplus1pm
- shellyplus2pm
mein "Problemkind" mit mqttprefix kam auch nicht mehr vor.
Hier ist eine genaue Gegenüberstellung des Original Shelly Adapters und des Forks (crunchip77/ioBroker.shelly) mit Fokus auf Unterschiede in Funktionalität, Architektur und Konfigurationsdetails.
(hat die KI so zusammengefasst, eventuelle Fehler sind nicht auf meinem Mist gewachsen
)
Ergebnisse:
-
Der Fork ist eine verbesserte, modularisierte, stabilere Version des Originaladapters.
-
Behebt bekannte Fehler (wie undefined ClientId, fehlerhafte mqttPrefix-Setzung).
-
Verbessert deutlich die Geräteerkennung und Protokollverwaltung.
-
Macht den Adapter robuster für viele Shelly-Geräte-Generationen und zukünftige Erweiterungen.
https://github.com/crunchip77/ioBroker.shelly -
@crunchip
Hast du die von mir oben angebotene Version getestet?Macht den Adapter robuster für viele Shelly-Geräte-Generationen und zukünftige Erweiterungen.
Ist das deine Aussage oder ein CoPilot Gerede? Klinkt nach dem CoPiloten ...
Bitte beschränke deine Änderungsvorschläge auf EIN konkretes Problem udn erstell ggF dafür einen PR. Für eine großflächiger Umgestaltung via CoPilot sehe ich derzeit keinen Bedarf. Falls @haus-automatisierung das reviewen mag ok - ich würde mich gerne auf EIN konkretes Problem beschränken.
Dein Code ist (oder war zumindest) FEHLERHAFT. Das Sentry System hat einige Fehler gelogged:
TypeError
MQTTClient.getDeviceGen(iobroker.shelly.lib.protocol:mqtt)Unhandled
utils.detectShellyGenerationByClientId is not a function -
Wenn du eine unkritische Testumgebung hast, teste doch bitte mal die aktuelle Labor Version
(siehe ein paar Postings weiter oben) und lass uns deine Erfahrungen wissen.Ich könnte eine pre-alpha absolute TEST / DEBUGGING Version die nur von Github zu installieren ist anbieten. Bei meinem Pi behebt die Änderung das Problem - ich kann aber zru Zeit nicht abschätzen ob es andere negative Auswirkungen gibt. Ich würde also dringen ABRATEN den LABORCODE auf einem produktiven System order generell auf einen anderem als einem Testsystem oder einem System mit Snapshot / Restore Fuktionalität zu testen!
Wer also (wage)mutig ist könnte mal diese Release ausnahmesweise direkt von Github installieren:
https://github.com/iobroker-community-adapters/ioBroker.shelly/tree/mqtt-tests
DANKE
-
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
Hast du die von mir oben angebotene Version getestet?
nein, noch nicht
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
Ist das deine Aussage oder ein CoPilot Gerede? Klinkt nach dem CoPiloten ...
das war der Sinn hinter dem Fork
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
ich würde mich gerne auf EIN konkretes Problem beschränken.
das habe ich auch, nämlich das prefix Problem
das keiner eine Umgestaltung möchte ist mir schon bekannt (weil Aufwand zu groß), dennoch habe ich mich einfach mal daran versucht und wollte es hiermit mitteilen.sorry, hätte wohl besser einfach nen eigenenThread eröffnen sollen.
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
Wenn du eine unkritische Testumgebung hast, teste doch bitte mal die aktuelle Labor Version
hatte ich bis dato nicht,
wie oben geschrieben, erst eine angelegt, aber kann ich die Tage gerne mal testen.@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
Dein Code ist (oder war zumindest) FEHLERHAFT. Das Sentry System hat einige Fehler gelogged:
da waren zu Beginn einige Fehler
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
MQTTClient.getDeviceGen(iobroker.shelly.lib.protocol:mqtt)
Unhandled
utils.detectShellyGenerationByClientId is not a functionhab ich vorhin behoben, ist ja erst beim testen aufgefallen
-
@crunchip
Dein Fork wechslet das Kommunikationsprotokolla, verwendet nun (auch ?) RPC, greift in die adminUIConfig ein usw. Das hat eigentlich nichts mehr mit einem Fix für MQTT Prefix zu tun.
Sorry.Ich hab in absehbarere Zeit sicher keine Zeit diese Menge an Änderungen zu reviewen sodass man das auf 10000+ User loslassen kann. Bitte kontaktiere @haus-automatisierung was er dazu sagen kann bzw. ob er sich das ansehen will / kann.
Wenn du wirklich helfen willst, dann schau mal ob das Anpassen des mqtt acks bei dir hilft - oder nicht bzw. ob das Nebeneffekte auslöst.
mcm1957
P.S. Copilot ist an sich gut - ich verwende ihn auch intensiv. 90% der Änderungen sind OK. Er hat mir aber auch schon völlig frei erfundene Dinge eingebaut.
-
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
90% der Änderungen sind OK. Er hat mir aber auch schon völlig frei erfundene Dinge eingebaut.
ich weiss, habe ich auch damit Erfahrung gemacht.
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
hat eigentlich nichts mehr mit einem Fix für MQTT Prefix zu tun
sehe ich zwar anders, deshalb ja die Änderungen
aber unterm Strich, wie oben schon
@crunchip sagte in Test Adapter shelly - ALPHA Versionen:
eventuell doch mal Lust ein Auge draufzuwerfen, ob was sinnvolles dabei rumgekommen ist, bzw den ein oder anderen Ansatz aus dem Fork in Betracht zu ziehen.
Vielleicht war das ganze auch ein "Griff ins Klo",nicht mehr und nicht weniger
@mcm1957 sagte in Test Adapter shelly - ALPHA Versionen:
Wenn du wirklich helfen willst
habs verstanden und daher belassen wir es damit, kein Problem und ja, werd ich testen und Rückmeldung geben
-
Ich glaub ich sollte mein Feedback anders formulieren.
Zuerst sollte ich sagen "DANKE dass du mithilfst ioBroker stabiler zu machen". Sowohl als Tester als auch mit Codeänderungsvorschlägen. Das hätte ich unbedingt als erstes loswerden sollen da es am Wichtigsten ist.
Im Prinzip hat mich dein Änderungsvorschlag vom Umfang her überfahren. Und ich hab daher eher unangemessen reagiert. Ich durchschaue den Shelly Code bei weitem nicht komplett. Und du kannst selbst - wie du schreibst die Änderungen codemäßig nicht kommentieren. Es ist mir daher unmöglich die umfangreichen Änderungen die der Copilot da vorgenommen hat mit mäßigem Zeitaufwand auch nur grob zu beurteilen. Und was das konkrete mqtt Problem betrifft kann ich auf Grund des Änderungsumfangs das nicht halbwegs sicher extrahieren.
Den Adapter hat - soweit ich weiß - zu großen Teilen @haus-automatisierung entwickelt. Ich muss daher betreffend deine Änderungsvorschläge auf ihn verweisen. Insbesondere die Verwendung neuer Kommunikationsschnittstellen zu den Shellies muss man evaluieren.
Bitte lösch keinesfalls deinen Fork damit Mathias eine Chance hat sich das anzusehen.
Und nochmals DANKE für deine Mithilfe.
-
@mcm1957 alles gut,
ich beabsichtige nicht einen PR zu erstellen und kann auch anderweitig nicht viel dazu beitragen. Bin ja auch nicht vom Fach. Darum geht's auch gar nicht.Hatte lediglich meine Gedanken in die KI getippt zum Fehlerbild
Error in function setMqttPrefixHttp (Gen 1)Was ja kein Gen1 Gerät ist.
Daraus entstand dann "Mein Projekt" und hab aus Spaß nen Fork erstellt. Das Resultat daraus war eben dieser Umbau.
Letztendlich hab ichs hier gepostet mit den Gedanken
- wenn Lust und Laune besteht, man ja einen Blick drauf werfen kann, also kein Zwang

- als Fachmann den Code weitgehenst versteht
- gerade als eingefleischter Spezialist manchmal "Betriebsblind" ist und ein Aussenstehender ne andere Sicht und Denkweise hat,
aber auch weiss, das ein kompletter Umbau sehr aufwendig wäre und es die Zeit gar nicht zu lässt.
Oder anders Formuliert... Kosten/Nutzenfaktor... Warum sollte man..., läuft doch so
und Matthias auch nicht beabsichtigt den Adapter umzumodeln. - eventuelle interessante codeschnipsel dabei sein könnten, die zur Verbesserung bei tragen
Ps: Texte fasst man meist falsch auf oder kommt falsch rüber

- wenn Lust und Laune besteht, man ja einen Blick drauf werfen kann, also kein Zwang