NEWS
Test Adapter Midea Dimstal Klimaanlagen v0.0.x
-
So, ich habe das Ganze nach Konfigurationsgebastel am Laufen. Es werden jetzt die benötigten DP angelegt. Allerdings kann man, genau wie beim Midea-Adapter, die Anlage nicht steuern. Am Gerät tut sich nix, nach dem nächsten Poll stehen wieder die alten Werte drin.
Da hilft dieser Umweg über Homebridge ja jetzt nicht wirklichDP:
Konfig:
{ "description": "Add configuration for your accessories or platforms according to the docs of the plugins.", "accessories": [], "platforms": [ { "platform": "midea-air", "user": "xxxxx@x.de", "password": "xxxxxxxxx", "registeredApp": "NetHomePlus", "interval": 30, "devices": [ { "deviceId": "xxxxxxxxx76950", "supportedSwingMode": "Both", "temperatureSteps": 1, "minTemp": 16, "maxTemp": 30, "fanOnlyMode": false, "OutdoorTemperature": false, "useFahrenheit": false, "audibleFeedback": true } ] } ] }
-
@matzebhv Also bei mir sieht das ganze so aus:
Die DeviceID findest du hier in der APP:
Und die Config sieht so aus (Ich habe zwei Geräte)
{ "description": "Add configuration for your accessories or platforms according to the docs of the plugins.", "accessories": [], "platforms": [ { "registeredApp": "NetHomePlus", "interval": 30, "devices": [ { "supportedSwingMode": "None", "temperatureSteps": 1, "minTemp": 17, "maxTemp": 30, "fanOnlyMode": false, "OutdoorTemperature": false, "useFahrenheit": false, "audibleFeedback": false, "deviceId": "GEHEIM" }, { "supportedSwingMode": "None", "temperatureSteps": 1, "minTemp": 17, "maxTemp": 30, "fanOnlyMode": false, "OutdoorTemperature": false, "useFahrenheit": false, "audibleFeedback": false, "deviceId": "GEHEIM" } ], "user": "GEHEIM", "password": "GEHEIM", "platform": "midea-air" }, ] }
Ich musste noch den folgenden Ordner löschen:
-
@tombox ich habe nun auch eine Dimstal-Klimaanlage mit 2 Innengeräten.
Der Adapter kann die Daten abfragen und legt die Datenpunkte an,
wenn man versucht zu steuern kommt immer eine Meldung wie diese:2022-12-24 11:36:18.091 - info: midea.0 (2050642) Command was not accepted by device. Command wrong or device not reachable 145135534971917 The asyn reply does not exist 2022-12-24 11:37:19.017 - info: midea.0 (2050642) Command was not accepted by device. Command wrong or device not reachable 145135534971917 The asyn reply does not exist
Falls du Zugangsdaten zum testen brauchst schreib mich einfach an.
Nachtrag: Die weiter oben erwähne "Lokales Netzwerk" Methode ( https://github.com/mac-zhou/midea-msmart) findet beide Geräte ... nur habe ich gerade keinen Schimmer was ich damit anfangen kann, sprich wie ich das in Steuersignale etc. umwandeln könnte:
root@iobroker:~# midea-discover INFO:msmart.cli:msmart version: 0.2.5 Currently only supports ac devices, only support MSmartHome and 美的美居 APP. INFO:msmart.cloud:Using Midea cloud server: https://mp-prod.appsmb.com/mas/v5/app/proxy?alias= False INFO:msmart.lan:Got TCP key for 192.168.1.8:51796 -> 192.168.1.30:6444 retries: 0 time: 0.16 tcp_key: 561e467...a0c67eb661e INFO:msmart.lan:Got TCP key for 192.168.1.8:39394 -> 192.168.1.29:6444 retries: 0 time: 0.55 tcp_key: 5655b749b22fc7e5ed...6b813b2ceaa INFO:msmart.cli:*** Found a device: {'name': 'net_ac_E5B7', 'ssid': 'net_ac_E5B7', 'ip': '192.168.1.29', 'port': 6444, 'id': 144036023343615, 'version': 3, 'token': '0CFD4E93...C28D01079D4D1F25F952E94BC3A03597E69636DC40A74EBEAF4BD3D949ED931B02A99E6325C9886FFB9943C49', 'key': '37c4b6ef5b...9e124a16', 'type': 'ac', 'sn': '000P0000000Q1A8407DA1E5B70000', 'model': '00Q1A', 'support': True, 'run_test': True} INFO:msmart.cli:*** Found a device: {'name': 'net_ac_8C58', 'ssid': 'net_ac_8C58', 'ip': '192.168.1.30', 'port': 6444, 'id': 145135534971917, 'version': 3, 'token': 'BB2BDD19DB5B25C...3DD6D5F9B11A57C035B2A1520E096E4CD97CDDCE4A0AE', 'key': '65918b1dc16,,,f86b4af457791792864', 'type': 'ac', 'sn': '000P0000000Q1A8407D9C8C580000', 'model': '00Q1A', 'support': True, 'run_test': True}
-
@matzebhv ich habe das auch gerade getestet und das selbst festgestellt. Daten abrufen geht steuern geht nicht.
Hast du schon irgendwelche anderen Erkenntnisse? -
@bananajoe zeig mal deine Config. Instanz etc.
-
Und noch ein Nachtrag: Ich hab die Version direkt von GitHub-Version, ok die ist anders. Aber die gleichen Probleme wie die anderen. Die midea-beautiful-air-cli in der Bash ausprobiert - wirft auch jede Menge Fehler, macht es dann aber doch (Hier "ausschalten" - das klappt also trotz der Fehlermeldungen:)
iobroker@iobroker:~$ midea-beautiful-air-cli set --ip 192.168.1.29 --token 0CFD4E93FDECF6D0EF...99E6325C9886FFB9943C49 --key 37c4b6ef...3059e124a16 --running 0 WARNING:midea_beautiful.lan:Error getting device capabilities for sn=0000000000000001A80000A1******** id=10000000034**** address=192.168***** version=3, cause Unable to send data after 3 retries, last error timed out for 0000000000000001A80000A1******** (10000000034****) Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 809, in identify responses = self._status(cmd, cloud if use_cloud else None) File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 540, in _status responses = self.appliance_send(data) File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 685, in appliance_send return self._appliance_send_8370(data) File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 590, in _appliance_send_8370 if packets := self._retry_send(original_data, response_buf): File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 670, in _retry_send packets = self.appliance_send(data) File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 685, in appliance_send return self._appliance_send_8370(data) File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 590, in _appliance_send_8370 if packets := self._retry_send(original_data, response_buf): File "/usr/local/lib/python3.10/dist-packages/midea_beautiful/lan.py", line 675, in _retry_send raise MideaNetworkError( midea_beautiful.exceptions.MideaNetworkError: Unable to send data after 3 retries, last error timed out for 0000000000000001A80000A1******** (10000000034****) id 0000000000000001A80000A1E5B70000/14000000003615 id = 14000000003615 addr = 192.168.1.29 s/n = 0000000000000001A80000A1 model = Air conditioner ssid = net_ac_E5B7 online = True name = 14000000003615 running = False target = 22.0 indoor = 24.3 outdoor = 10.1 fan = 101 mode = 1 purify = False eco = False sleep = False F = False error = 0 supports= {'eco': 0, 'mode': 1, 'fan_swing': 1, 'electricity': 0, 'strong_fan': 1, 'fan_speed': 1, 'temperature0': 32, 'temperature1': 60, 'temperature2': 32, 'temperature3': 60, 'temperature4': 32, 'temperature5': 60, 'temperature6': 0} version = 3
Da gibt es auch schon ein Ticket:
https://github.com/nbogojevic/midea-beautiful-air/issues/19Ich bin auch der Meinung das es ein Timeout-Problem sein könnte. Ich habe an den Retry und Timeout-Werten in der
./midea_beautiful/lan.py
rumspielt. Wenn man den Timeout erhöht dauert es länger, ändert aber nichts an der Fehlermeldung (und das es trotzdem funktioniert) -
@bananajoe Ich bin zur zeit unsicher wie es weiter gehen soll mit dem Adapter.
https://github.com/nbogojevic/midea-beautiful-air Welches in 0.1.0 via python bridge integriert ist enthält bugs und wird nicht weiter entwickelt.
Man könnte jetzt das Homebridge plugin integrieren was ziemlich einfach ist aber nur begrenzt gerate unterstützt.
https://github.com/georgezhao2010/midea_ac_lan Ist sehr gut und unterstützt alle Geräte aber ist schwer in iobroker zu integrieren.
-
@tombox Also von den gelieferten Daten / Datenpunkten her ist die Version 0.0.7 top. Ich vermute das der Adapter die Daten noch nativ selbst holt?
Das die Gegenrichtung nicht mehr funktioniert ... tja, da hat sich also etwas geändert. Ich vermute du hattest schon versucht das durch mitschneiden der App heraus zu finden?
Heute beim warten auf dem Weihnachtsmann habe ich ein wenig rumgespielt - per
midea-beautiful-air-cli
bekomme ich die Steuerungsbefehle im lokalen LAN hin (ich habe dielan.py
manipuliert so das keine Fehlermeldung mehr ausgeworfen wird),
Die notwendigen Daten (Token + Key) habe ich permidea-discover
herausbekommen.Der Adapter in der 1.0.0 Version der - wenn ich das richtig sehe - die
midea-beautiful-air-cli
unten drunter nutzt kann sich zwar die Daten holen, wirft dabei aber jede menge Python-Fehler aus und kann trotzdem nicht steuern. Der lokale Weg funktioniert nicht weil die lokale IP-Adresse wohl nicht im Adapter ankommt.Im Moment bin ich geneigt mir eine Zwischenlösung "zusammen zu pfuschen" - dein Adapter in der 0.0.7 also als Datenquelle. Und die Steuerung dann entweder über die
midea-beautiful-air-cli
oder per Infrarot-Sender (im Wohnzimmer steht sowieso schon ein Broadlink und durch einen Kauf hier im Marktplatz habe ich auch noch einen für das Schlafzimmer).Ich schaue mir ja auch immer gerne mal den Quellcode von Projekten an, nach einigen Anläufen verstehe ich ich ja auch immer mehr.
Also, dein Adapter in 0.0.7 liefert die Quelldaten schon perfekt. midea-msmart findet im lokalen Netzwerk ohne Probleme die notwendigen Daten für die lokale Steuerung welche man Dank der Seriennummer oder ssid auch zuordnen kann.
Und im midea-beautiful-air Projekt sind zwar Fehler, man kann sich aber abschauen wie man lokal die Steuerbefehle absetzen kann.Irgendwo hatte ich ich gelesen das es scheinbar mindestens eine alternative App zum Steuern der Klimageräte gibt, eventuell wäre auch das ein Ansatz. (AC Freedom?)
Im Prinzip hätte man also alles um das Puzzle zusammen zu setzen. Ich bewundere deine Arbeit (du bist schon eine Adapter-Erstellungs-Maschine), würde aber verstehen wenn du den Aufwand scheust falls du nicht selbst eine solche Anlage besitzt. Mit den zuvor den aufgezählten Punkten wüsste ich mir ja zu helfen. Und ich habe auch erst einen halben Tag nach Lösungen gesucht.,
Die Klimaanlage ist ein geplanter Teil meiner persönlichen Energiewende, die Dimstal hatte ich expliziert gewählt weil diese WLAN bietet und scheinbar in ein Smarthome eingebunden werden kann. Das ich diese per ioBroker steuern kann gehört unbedingt zu meinem Konzept.
Dank deines Updates / Beitrag zum Tuya-Adapter läuft mein Klarstein-Luftentfeuchter nun auch ioBroker gesteuert und verbläst nicht ständig 300W sondern läuft nur wenn es nötig ist. Wenn jemand das Badezimmerfenster öffnet schaltet der sich ab (wie auch die Heizkörper sich schließen wenn das Fenster im Raum geöffnet wird). Für die Kinder habe ich deshalb eine Klarstein mobile Klimaanlage gekauft da ich diese auch perfekt steuern kann - dank dir.
Die erste Frage meiner Frau zur Dimstal-Klimaanlage war: "Schaltet die auch ab wenn ich die Terrassentür öffne oder das Fenster auf mache?"
Ja, ich habe die alle ziemlich verwöhnt hier im Haus ... Anfangs hieß es noch "was soll der Quatsch", inzwischen will niemand mehr missen was alles so im Hintergrund automatisch passiert. -
Nachtrag: Ich habe mir midea-msmart noch mal genauer angesehen - irgendwo muss stehen wie man damit arbeitet ...
Jupp, da gibt es eine
example.py
die zumindest für meinen Anwendungsfalls Klimaanlage alles hat, die restlichen Parameter / möglichen Optionen muss man sich halt aus den Dateien raussuchen (Mögliche Parameter stehen in https://github.com/mac-zhou/midea-msmart/blob/master/msmart/device/AC/appliance.py)Das Beispiel müsste man noch optimieren, es holt sich erst was die Anlage kann (das dauert etwas), dann wie der aktuelle Status ist (geht schnell, funktioniert auch ohne sich vorher die vorherige Abfrage) und setzt dann Werte (Funktioniert auch dirket, spuckt aber Fehler aus wenn man sich nicht vorher die Fähigkeiten geholt hat)
Optimal wäre die Rückgabe von
device.get_capabilities()
zwischenzuspeichern, sollte sich ja eigentlich nie ändern.Ich konnte meine Anlagen damit eben zumindest erfolgreich steuern. Prinzipiell könnte man sich damit ein Befehlszeilen-Tool zum steuern bauen.
So, jetzt gebe ich aber erst einmal Ruhe, erst einmal muss die Solaranlage fertig werden, dann kümmere ich mich um die automatische Steuerung der Klimaanlagen.
-
@tombox sagte in Test Adapter Midea Dimstal Klimaanlagen v0.0.x:
@bananajoe Ich bin zur zeit unsicher wie es weiter gehen soll mit dem Adapter.
https://github.com/nbogojevic/midea-beautiful-air Welches in 0.1.0 via python bridge integriert ist enthält bugs und wird nicht weiter entwickelt.
Man könnte jetzt das Homebridge plugin integrieren was ziemlich einfach ist aber nur begrenzt gerate unterstützt.
https://github.com/georgezhao2010/midea_ac_lan Ist sehr gut und unterstützt alle Geräte aber ist schwer in iobroker zu integrieren.
Das Homebidge Plugin funktioniert mit den neuen Geräten leider auch nicht, hier kannst du genau wie bei dem Adapter nur lesen aber nicht steuern.
-
@bananajoe sagte in Test Adapter Midea Dimstal Klimaanlagen v0.0.x:
Die Klimaanlage ist ein geplanter Teil meiner persönlichen Energiewende, die Dimstal hatte ich expliziert gewählt weil diese WLAN bietet und scheinbar in ein Smarthome eingebunden werden kann. Das ich diese per ioBroker steuern kann gehört unbedingt zu meinem Konzept.
Hier genau so, das funktioniert in unserer ( recht kleinen Hütte ) einwandfrei. Die Heizung ist bis jetzt auch bei -10°C aus geblieben. Das eine installierte Gerät bekommt die Hütte tatsächlich warm. Und das zu moderaten Energiekosten.
-
@matzebhv sagte in Test Adapter Midea Dimstal Klimaanlagen v0.0.x:
@bananajoe sagte in Test Adapter Midea Dimstal Klimaanlagen v0.0.x:
Die Klimaanlage ist ein geplanter Teil meiner persönlichen Energiewende, die Dimstal hatte ich expliziert gewählt weil diese WLAN bietet und scheinbar in ein Smarthome eingebunden werden kann. Das ich diese per ioBroker steuern kann gehört unbedingt zu meinem Konzept.
Hier genau so, das funktioniert in unserer ( recht kleinen Hütte ) einwandfrei. Die Heizung ist bis jetzt auch bei -10°C aus geblieben. Das eine installierte Gerät bekommt die Hütte tatsächlich warm. Und das zu moderaten Energiekosten.
Jepp, das Ding funktioniert wie blöd. Wohnzimmer ist innerhalb von wenigen Minuten angenehm warm. Klar, das Ding geht dann z.B. auf 2 kW - aber ja nur kurz.
Ich habe testweise aber auch mit Lüfter am Heizkörper experimentiert, nicht mit diesen teuren fertigen Dingern sondern Eigenbau mit USB-Lüftern + 3D-Drucker. Und muss sagen, das bring auch schon spürbar was.
-
@bananajoe Das mit der Krücke mache ich derzeit tatsächlich genau so, lesend benutze ich den Adapter und zum steuern den Skill mit dem Alexa-Adapter. Ist blöd, geht ja aber derzeit nicht anders.
@tomtom Könnte man nicht midea-beautifull-air forken und dann fixen? Auf der Shell funktioniert die Steuerung der Anlage ja schon. Es werden zwar Fehler geworfen, das Gerät reagiert aber.
iobroker@iOBroker:~$ midea-beautiful-air-cli set --ip 192.168.178.87 --token --key --running 0 WARNING:midea_beautiful.lan:Error getting device capabilities for sn=000000P0000000Q104D6F458******** id=14293651167**** address=192.168.1***** version=3, cause Unable to send data after 3 retries, last error timed out for 000000P0000000Q104D6F458******** (14293651167****) Traceback (most recent call last): File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 809, in identify responses = self._status(cmd, cloud if use_cloud else None) File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 540, in _status responses = self.appliance_send(data) File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 685, in appliance_send return self._appliance_send_8370(data) File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 590, in _appliance_send_8370 if packets := self._retry_send(original_data, response_buf): File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 670, in _retry_send packets = self.appliance_send(data) File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 685, in appliance_send return self._appliance_send_8370(data) File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 590, in _appliance_send_8370 if packets := self._retry_send(original_data, response_buf): File "/home/iobroker/.local/lib/python3.9/site-packages/midea_beautiful/lan.py", line 675, in _retry_send raise MideaNetworkError( midea_beautiful.exceptions.MideaNetworkError: Unable to send data after 3 retries, last error timed out for 000000P0000000Q104D6F458******** (14293651167****) id 000000P0000000Q104 id = 1429365 addr = 192.168.178.87 s/n = 000000P0000000Q10 model = Air conditioner ssid = net_ac_7F5E online = True name = 14293651 running = False target = 21.0 indoor = 24.4 outdoor = 5.3 fan = 102 mode = 4 purify = False eco = False sleep = False F = False error = 0 supports= {'eco': 1, 'mode': 1, 'fan_swing': 1, 'electricity': 0, 'strong_fan': 1, 'fan_speed': 1, 'temperature0': 32, 'temperature1': 60, 'temperature2': 32, 'temperature3': 60, 'temperature4': 32, 'temperature5': 60, 'temperature6': 0} version = 3 iobroker@iOBroker:~$
-
@matzebhv sagte in Test Adapter Midea Dimstal Klimaanlagen v0.0.x:
Das Homebidge Plugin funktioniert mit den neuen Geräten leider auch nicht, hier kannst du genau wie bei dem Adapter nur lesen aber nicht steuern.
Wie ich oben schon geschrieben habe funktioniert es mit dem MDDF-20DEN7-WF bei mir mit dem HAM Adapter und dem PlugIn wunderbar... Außer die Füllstandanzeige
-
@tombox gibts bezüglich der LAN Integration schon irgendwelche news? Bisher macht Dein Adapter eigentlich keine Probleme, bin auch sehr zufrieden. Aber LAN Steuerung wäre natürlich schon sehr nice
-
-
@toralt hab mittlerweile Homeassistant laufen und die Klima dann über den ioBroker Adapter angebunden. Apollon gibt sich wirklich Mühe, zumindest mein Gerät, vernünftig einzubinden.
-
@draexler
Na, dann bin ich ja genau richtig in dem Thread. Mein (Comfee) MDDF-20DEN7-WF Luftentfeuchter kommt morgen. Helft bitte nochmal einem alten Mann über die Straße: Welche App nehme ich denn am besten als Ausgangsbasis? NetHome? MSmartHome? Merci und Grüße, clfberlin -
@clfberlin NetHome Plus
-
@hc-yami Danke für den Tipp, habe ich installiert. Läuft auch, aber zum Glück muss ich damit nichts machen. Finde HA schrecklich. Ich verstehe gar nichts
Aber wie gesagt, durchreichen in den ioBroker funktioniert, Verbindung scheint auch stabil. Ich werde das mal testen.
Danke!