NEWS
Dlink einbinden
-
Also ich hab gerade den neuesten Adapter v.1.09 installiert.
Nun kommt bei mir in Verbindung mit dem DSP-W115 immer folgende Meldung im Log:
Ich bin mir auch nicht sicher, welche Zugangsdaten ich denn eintragen muss?
Sind das die gleichen wie auf der Weboberfläche? Welche sind es denn dort?
-
@loverz
Da wäre UserName "Admin" oder "admin" und Passwort ist der Pin.Ein Fehler 500 deutet aber auch auf ein anderes Problem als falsches Passwort hin. Das heißt eher, dass er die Anfrage gar nicht versteht / mag. Da muss ich mal suchen.
-
@Garfonso Also ich konnte mich mit einem großen Admin und dem PIN auf der Geräterückseite nun an der Weboberfläche anmelden. Dort sieht man allerdings nur Grunddaten wie IP und MAC.
Den Plug bekomme ich im Adapter leider nicht hin
Übrigens: Der Adapter selbst leuchtet grün, also verbunden mit mydlink, obwohl bzw. auch wenn ich kein Gerät eingetragen hab und auch keine Zugangsdaten eingetragen sind.
-
@loverz said in Dlink einbinden:
@Garfonso Also ich konnte mich mit einem großen Admin und dem PIN auf der Geräterückseite nun an der Weboberfläche anmelden. Dort sieht man allerdings nur Grunddaten wie IP und MAC.
Den Plug bekomme ich im Adapter leider nicht hin
Ok, das mit dem großen Admin ist schonmal eine wichtige Information, danke.
Versuch es bitte nochmal mit der Version 1.0.11 und schick mir ein Log vom Adapterstart.Übrigens: Der Adapter selbst leuchtet grün, also verbunden mit mydlink, obwohl bzw. auch wenn ich kein Gerät eingetragen hab und auch keine Zugangsdaten eingetragen sind.
Ja, das ist so... wenn kein Gerät da ist, wird der Adapter immer grün. Wenn mehrere Geräte da sind, wird er grün, sobald mindestens eins verbunden ist.
-
Geht noch nicht.
Hier das log:
MAC Adresse habe ich übrigens aus der Weboberfläche kopiert.
Mir ist aufgefallen, dass auf der Geräterückseite auch noch eine MAC-ID steht. -
Hmpf.. ich hatte gehofft, dass ich an den Body komme...
500 sagt sonst so gut wie nichts aus. Hab aber gestern nicht aufgepasst... wenn du nochmal von github installieren könntest ( https://github.com/iobroker-community-adapters/ioBroker.mydlink.git ). Allerdings werde ich auch einen Auszug direkt aus der Datei brauchen, nicht über das Webinterface. Da ist leider immer das Interessantes (für den Entwickler) hinten abgeschnitten...
-
2020-05-12 13:19:52.442 - info: mydlink.0 (14964) starting. Version 1.0.11 in /opt/iobroker/node_modules/iobroker.mydlink, node: v10.20.1
2020-05-12 13:19:52.628 - debug: mydlink.0 (14964) Auto detection started
2020-05-12 13:19:52.990 - debug: mydlink.0 (14964) Got existing devices: [
{
"type": "device",
"common": {
"name": "Globus"
},
"native": {
"ip": "192.168.1.190",
"mac": "60:xx:xx:xx:xx:F8",
"pin": "\\u0000\xxxxxx\u0002V",
"pollInterval": "30000",
"enabled": true,
"name": "Globus"
},
"from": "system.adapter.mydlink.0",
"user": "system.user.admin",
"ts": 158xxxxxxxxxx,
"_id": "mydlink.0.60xxxxxxxxx",
"acl": {
"object": 1636,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator"
}
}
]
2020-05-12 13:19:52.994 - debug: mydlink.0 (14964) Got config devices: [
{
"name": "Globus",
"mac": "60:xx:xx:xx:xx:F8",
"ip": "192.168.1.190",
"pin": "\\u0000\xxxxxx\u0002V",
"pollInterval": "30000",
"enabled": true
}
]
2020-05-12 13:19:52.995 - debug: mydlink.0 (14964) Processing Globus
2020-05-12 13:19:53.175 - error: mydlink.0 (14964) Globus returned 500 error on login. Please report this log to developer: undefined
2020-05-12 13:19:53.176 - debug: mydlink.0 (14964) Login error: Error: Request failed with status code 500
at createError (/opt/iobroker/node_modules/iobroker.mydlink/node_modules/axios/lib/core/createError.js:16:15)
at settle (/opt/iobroker/node_modules/iobroker.mydlink/node_modules/axios/lib/core/settle.js:17:12)
at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.mydlink/node_modules/axios/lib/adapters/http.js:236:11)
at IncomingMessage.emit (events.js:203:15)
at endReadableNT (_stream_readable.js:1145:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
2020-05-12 13:19:53.177 - error: mydlink.0 (14964) Globus could not login. Please check credentials and if device is online/connected. Error: Error: Request failed with status code 500
at createError (/opt/iobroker/node_modules/iobroker.mydlink/node_modules/axios/lib/core/createError.js:16:15)
at settle (/opt/iobroker/node_modules/iobroker.mydlink/node_modules/axios/lib/core/settle.js:17:12)
at IncomingMessage.handleStreamEnd (/opt/iobroker/node_modules/iobroker.mydlink/node_modules/axios/lib/adapters/http.js:236:11)
at IncomingMessage.emit (events.js:203:15)
at endReadableNT (_stream_readable.js:1145:12)
at process._tickCallback (internal/process/next_tick.js:63:19)
2020-05-12 13:19:53.232 - debug: mydlink.0 (14964) Start polling for Globus with interval 30000 -
@loverz said in Dlink einbinden:
hab mir jetzt auch ein paar Dlink DSP-W115 Smart Steckdosen im Angebot gekauft.
Leider muss ich feststellen, dass der Adapter für diese Steckdosen ungeeignet ist.
- Scheint er nicht für dieses Modell geeignet zu sein
- Scheint er nur den Schaltstatus lesen zu können, jedoch nicht zu steuern
Da diese Steckdose aber auch mit IFTTT kompatibel ist, hab ich es darüber versucht.
Leider bekomme ich die webhooks von IFTTT nur vom Handy zum ioBroker hin, nicht jedoch vom iobroker zum IFTTT.Hat jemand einen Tipp?
Nochmal dazu:
Hast du mit einer alten Adapter Version tatsächlich den Schaltstatus auslesen können? Oder war das nur eine Vermutung? (komme hier gerade nicht so richtig weiter....) -
@Garfonso also das mit dem Schaltstatus auslesen war anfangs eine Vermutung. Ich habe festgestellt, dass immer ein Objekt angelegt wird, wenn man ein Gerät im Adapter einrichtet. Ob es funktioniert, oder nicht, ist dabei egal.
Der Schaltstatus war bei mir immer statisch und hat sich nicht verändert, wenn ich die Steckdose über die App geschaltet habe.
-
@loverz
Ok. Also ich hab jetzt nochmal einiges über die DSP-W115 recherchiert und mir auch selber günstig eine bei ebay organisiert und heute damit experimentiert.Die DSP-W115 (im Gegensatz zur DSP-W110, die aber in Europa nicht auf den Markt gekommen ist) bietet keine HNAP1 Schnittstelle mehr an -> die Kommunikation mit dem Adapter (in der aktuellen Version) kann nicht funktionieren und daher der 500 Fehler mit der Aussage, dass es die Login Action nicht gibt.
Soweit so blöd.
Jemand hat in viel Kleinarbeit und mit Reverseengineering eine Möglichkeit gefunden die neueren Steckdosen über das lokale Netzwerk zu steuern, bisher noch als python skript. Damit kann man schonmal schalten über die Kommandozeile (i.e. mit exec aus einem Skript) hinkriegen. Ich werde versuchen das in den Adapter zu integrieren, das wird aber sicher etwas dauern (je nach Komplexität, die ich gerade nicht einschätzen kann, da es sehr undursichtig ist, was da so passiert). Achja, wenn die Dose mit der App verbunden ist, dann muss man das device_token extrahieren, was nicht ganz trivial ist (die Anleitung ist aber gut, die er da gepostet hat).
-
Version 1.1.0 funktioniert jetzt mit der DSP-W115.
Die schickt sogar, wenn man schaltet, sofort an den Adapter (also nicht mehr polling). Allerdings muss man die Steckdose vorbereiten, siehe Readme (oder Testthread). -
@Garfonso Coole Neuigkeit!
Habe es direkt mal probiert mit bereits funktionierendem DSP-W115.
Das Gerät wird leider nicht gefunden, auch eine manuell Aufnahme war nicht möglich, Er Löscht die Zeilen automatisch wieder.
Muss ich die Anleitung mit dem Werksreset immer machen, oder nur, wenn ich die App weiterhin nutzen möchte?Ehrlich gesagt ist mir die App egal, wenn ich über iobroker steuern kann.
-
@loverz
Was heißt "Er löscht die Zeilen automatisch wieder"? Aus der Tabelle? Hab dazu mal was gefixt... bei mir ist das nie passiert, aber in manchen Situationen konnte es dazu kommen, dass Zeilen aus der Tabelle wieder gelöscht wurden.@loverz said in Dlink einbinden:
Muss ich die Anleitung mit dem Werksreset immer machen, oder nur, wenn ich die App weiterhin nutzen möchte?
Also "Factoryreset", das mit dem telnet nur, wenn du die App weiter nutzen willst.
Ohne App muss man die Steckdose in der App löschen (was auch einen Werksreset der Steckdose auslöst) und dann mit der App die Steckdose wieder ins eigene WLAN bringen, dann aber, wenn die Steckdose verbunden ist in der App den letzten Schritt nicht durchführen. Dann sollte es normal mit dem Pin gehen und das mit dem Telnet musst du alles nicht machen. -
@Garfonso ich habe das Gerät automatisch gesucht, dann läuft der „Arbeitsbalken“ aber nichts passierte.
Also händisch IP und Mac eingetragen. Speichern und schließen, Instanz geöffnet, Zeile war weg.
Die Steckdose aus der App gelöscht habe ich noch nicht, das sollte das Problem lösen.
Also sollte die automatische Suche funktionieren oder?
-
@loverz
Also bei mir ging bisher ganz gut mit Über IP hinzufügen. Versuch das mal mit der 1.1.2.Die Zeile sollte nicht ganz weggehen... hm. Muss ich nochmal ausprobieren.
-
@Garfonso Hab den Stecker jetzt aus der App gelöscht, vom Strom genommen und wieder eingesteckt. Nun ist er nicht mehr im WLAN verbunden (orangenes Blinken). Ich glaube ich hätte ihn nicht vom Strom nehmen dürfen
Ich probiere es weiter...
Edit: Oh my god, es funktioniert!!!
Ich habe die Verbindung zum Heimnetz nun über WPS eingerichtet (angestoßen über die App, aber nicht in der App vollendet, sondern aufgehört, als das grüne Licht signalisiert hat, dass der Stecker im WLAN ist)
Nun kann ich tatsächlich dieses Teil über iobroker steuern, vielen Dank!!!
-
Ach, einen kleinen Verbesserungsvorschlag noch: In den Objekten wäre es schön, wenn der Name des Gerätes gleich ist, wie der, den man selbst in der Instanz vergeben hat.
Der aktuell vorhandene, kryptische Name lässt eine Zuordnung nicht zu.
-
Übrigens: Nach dem ausstecken des Adapter und wieder einstecken ist die Zeile aus der Geräteliste wieder verschwunden! Beim Gerät stand in den Objekten Ready: False.
Eine Neueinrichtung klappte dann wieder.
-
@loverz said in Dlink einbinden:
Ich habe die Verbindung zum Heimnetz nun über WPS eingerichtet (angestoßen über die App, aber nicht in der App vollendet, sondern aufgehört, als das grüne Licht signalisiert hat, dass der Stecker im WLAN ist)
Ja, genau das ist das, was ich versucht habe in der Anleitung zu schreiben (also WPS oder Daten über die App eingeben ist egal, aber App bis grüne LED und Steckdose im WLAN und dann in der App aufhören und den letzten Schritt nicht machen).
@loverz said in Dlink einbinden:
In den Objekten wäre es schön, wenn der Name des Gerätes gleich ist, wie der, den man selbst in der Instanz vergeben hat.
Name oder ID? Der Name sollte eigentlich der sein, der in der Konfiguration eingegeben wurde (ok, wird aber nicht nochmal überschrieben, falls es das Objekt schon gibt -> kannst du aber auch einfach selber ändern, wenn du willst). Die ID ist die MAC Adresse und das sollte so sein, da die MAC Adresse eine feste Zuordnung zum Gerät erlaubt.
@loverz said in Dlink einbinden:
Übrigens: Nach dem ausstecken des Adapter und wieder einstecken ist die Zeile aus der Geräteliste wieder verschwunden! Beim Gerät stand in den Objekten Ready: False.
Eine Neueinrichtung klappte dann wieder.
What? grübel
Ok, das muss ich mir nochmal angucken. Hatte ich so nicht und sollte nicht so sein (ready kann da eine Zeit stehen bleiben, bis der Timeout kommt, ist 5 Sekunden + Timeout), aber verschwinden sollte das Gerät nicht.Danke für die Rückmeldungen.
-
Edit: Hab es nun doch hinbekommen:
- Firmware auf neuesten Stand updaten
- Gerät zurücksetzen
- Gerät neu verbinden und sobald das Licht des Steckers grün leuchtet die App sofort "Killen"
geht nun habe aber folgenden Fehler im log:
mydlink.0 2020-10-07 15:03:03.358 error (3353) Error while switching device Aquarium: undefined - TypeError: Cannot read property '_getSetting' of undefined at state (/opt/iobroker/node_modules/dlink_websocketclient/index.js:454:37)
Hab nun einen weiteren Stecker (DSP-W115) gekauft, da der andere bis heute Super funktioniert.
Nun habe ich die App von DLINK wieder runtergeladen und bemerkt, dass es wohl eine neue Version dieser gibt.
Nach dem Einrichten finde ich den neuen Stecker sofort im iobroker, auch der State folgt dem in der App festgelegten Zustand. True, oder false.
Leider kann ich den State aber vom iobroker aus nicht steuern.
Ich habe das Gerät ein zweites Mal neu eingerichtet und den letzten Schritt abgebrochen, sobald das Licht des Plugs grün war (mit WLAN verbunden)
Leider kann ich auch dann den State nichts steuern
Jemand eine Idee?
Edit gerade etwas entdeckt:
mydlink.0 2020-10-05 16:36:14.429 error (12872) Aquarium could not login. Please check credentials and if device is online/connected. Error: 403 - Error: API Error 424: invalid device token at WebSocketClient._getSet
Außerdem habe ich gerade festgestellt, dass die App das Gerät fertig eingerichtet hat, obwohl ich den letzten Schritt abgebrochen habe. Vielleicht geht das nicht mehr