NEWS
Test Adapter nanoleaf-lightpanels v1.3.x GitHub/latest
-
@ofbeqnpolkkl6mby5e13
Also mein Update ist jetzt durch (hat ewig gedauert).
Bei mir haben die tatächlich eine neue IP bekommen, stehen in der FritzBox jetzt als OpenWRT.
Interessant.
Also schau mal im Router und hinterlege die neue IP, besser noch vergebe ein DNS und trage den Namen ein, dann hast du solche Probleme nicht.
Du kannst auch via Geräte erkennen im Adapter das Gerät suchen. -
@ofbeqnpolkkl6mby5e13 sagte in Test Adapter nanoleaf-lightpanels v1.2.x GitHub/latest:
Ich habe allerdings schon dutzende Firmware-Updates bei den Canvas gemacht und noch nie ist das die Folge gewesen.
Dann hat sich jetzt mal die MAC-Adresse geändert. Oder woraufhin dein Router IPs basiert vergibt.
Kommt schon mal vor. -
@daniel_2k
Das hatte ich auch beobachtet, dass die jetzt unter OpenWRT gemeldet werden. Da scheint es einen größeren Umbau bei der Firmware gegeben zu haben. -
@daniel_2k sagte in Test Adapter nanoleaf-lightpanels v1.2.x GitHub/latest:
Du kannst auch via Geräte erkennen im Adapter das Gerät suchen.
Das hat bei mir nicht funktioniert.
-
@ofbeqnpolkkl6mby5e13
Ja, bei mir findet er die jetzt nach dem Update auch net mehr und der Adapter verliert auch die Verbindung, weil kein ssdp:alive mehr ankommt.
Muss ich mal debuggen und schauen, ob die sich jetzt etwas anders melden. -
@daniel_2k
6.2.1 (2021-10-08)Added support for Nanoleaf Canvas Control Squares to becomes Cloud Gateways for Nanoleaf Essentials
https://helpdesk.nanoleaf.me/hc/en-us/articles/360014639693-Canvas-Firmware-Release-Notes
-
@daniel_2k sagte in Test Adapter nanoleaf-lightpanels v1.2.x GitHub/latest:
Ja, bei mir findet er die jetzt nach dem Update auch net mehr und der Adapter verliert auch die Verbindung, weil kein ssdp:alive mehr ankommt.
Kann ich bestätigen.
-
@ofbeqnpolkkl6mby5e13
Also das mit dem keep alive über SSDP ist offenbar ein Bug in der Firmware.
Das Problem ist, dass die Location, die im ssdp:alive vom Gerät gesendet wird, leer ist:2021-11-13 15:05:05.719 - debug: nanoleaf-lightpanels.2 (8320) ssdp:alive NOTIFY received { "host": "239.255.255.250:1900", "nt": "nanoleaf:nl29", "nts": "ssdp:alive", "usn": "uuid:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "location": "http://:16021", "cache-control": "max-age = 60", "nl-deviceid": "XX:XX:XX:XX:XX:XX", "nl-devicename": "Canvas 22D6" } 2021-11-13 15:05:05.720 - debug: nanoleaf-lightpanels.2 (8320) Invalid location 'http://:16021' received from device.
Da fehlt die Adresse bei location.
Kann das jemand mal bei sich nachschauen, ob da auch die IP fehlt?
Einfach den Adapter auf debug stellen, dann sieht man die ssdp-Infos im Protokoll inkl. Fehlermeldung. -
@ofbeqnpolkkl6mby5e13
Beim M-SEARCH zum Suchen der Geräte ist die Location ebenfalls falsch, daher werden die auch nicht gefunden.
Ich reporte das mal bei nanoleaf.Edit:
Das Problem ist bekannt und tritt auch bei den Shapes auf. Da kann ich erstmal nix machen, da muss eine neue FW released werden.
Also bis auf weiteres im Adapter "Polling anstatt SSDP Notify Messages für Keep-Alive verwenden" aktivieren. -
@daniel_2k sagte in Test Adapter nanoleaf-lightpanels v1.2.x GitHub/latest:
Kann das jemand mal bei sich nachschauen, ob da auch die IP fehlt?
nanoleaf-lightpanels.0 2021-11-13 15:16:32.571 debug Invalid location 'http://:16021' received from device. nanoleaf-lightpanels.0 2021-11-13 15:16:32.569 debug ssdp:alive NOTIFY received: {"host":"239.255.255.250:1900","nt":"nanoleaf:nl29","nts":"ssdp:alive","usn":"uuid:***","location":"http://:16021","cache-control":"max-age = 60","nl-deviceid":"***","nl-devicename":"Canvas ***"}
-
@ofbeqnpolkkl6mby5e13
OK Danke, passt. Betätigt das und passt mit dem was im nanoleaf-Forum für die Shapes gemeldet ist. -
@daniel_2k
Danke für deine Arbeit! -
@daniel_2k
Ich glaube davon, dass du jemals das Polling aus dem Adapter entfernen kannst, kannst du dich endgültig verabschieden... -
@daniel_2k
Hi! Könnte man diese fehlerhafte (Location-) Meldung nicht abfangen und bevor sie im Adapter weiterverarbeitet wird die IP einsetzen, die im Adapter hinterlegt ist? -
@badsnoopy667
Nein, geht leider nicht, weil ich ja wissen muss, von welchem Gerät das ssdp:alive kommt, falls man mehrere hat. Und die UUID habe ich zu der Zeit noch nicht. Die wird erst beim ersten Paket gemerkt und alle künftigen Pakete werden dann nur gegen die UUID geprüft.
Ich bekomme ja die reinen Nutzdaten der SSDP-Pakete von der Library. Den Absender sehe ich da nur in der Location. Zumindest war mir so, müsste ich noch mal reinschauen, ob da neben der Location noch ein IP-Feld im Objekt ist. Aber wenn nicht, keine Chance. -
@daniel_2k
Ja, an den Fall, dass man mehrere Nanoleafs haben könnte habe ich natürlich nicht gedacht!
Habe heute die Elements (Holz) bekommen. Die werden vom Adapter noch nicht als solche erkannt, sondern als fallback auf Canvas gestellt.
Wenn ich Dir irgendwie helfen kann um die Elements in den Adapter zu integrieren sag mal Bescheid! -
@badsnoopy667
Ja, gerne.
Du könntest mal ein GET auf folgenden Endpoint machen und mir die Response schicken, dann kann ich die Elements hinzufügen:http://<IP-des-Geräts>:16021/api/v1/<Auth-Token>
-
@daniel_2k Hab ich das so korrekt gemacht?
{"name":"Elements 19B3","serialNo":"S21240E7241","manufacturer":"Nanoleaf","firmwareVersion":"6.1.2","hardwareVersion":"1.1-0","model":"NL52","discovery":{},"effects":{"effectsList":["Bloom","Calming Waterfall","Clouds","Ember","Fireflies","Glimmer","Sahara Night","Splash","Sunbeam","Test Highlight 1","Test Organic 1","Warm Waves","Warm Waves Slow"],"select":"Ember"},"firmwareUpgrade":{},"panelLayout":{"globalOrientation":{"value":242,"max":360,"min":0},"layout":{"numPanels":79,"sideLength":67,"positionData":[{"panelId":57920,"x":207,"y":398,"o":360,"shapeType":15},{"panelId":53250,"x":181,"y":355,"o":300,"shapeType":15},{"panelId":16579,"x":131,"y":355,"o":240,"shapeType":15},{"panelId":45443,"x":106,"y":398,"o":180,"shapeType":15},{"panelId":8514,"x":131,"y":442,"o":120,"shapeType":15},{"panelId":54535,"x":181,"y":442,"o":60,"shapeType":15},{"panelId":63893,"x":207,"y":456,"o":540,"shapeType":15},{"panelId":26964,"x":232,"y":500,"o":480,"shapeType":15},{"panelId":38932,"x":282,"y":500,"o":420,"shapeType":15},{"panelId":2261,"x":307,"y":456,"o":360,"shapeType":15},{"panelId":6325,"x":282,"y":413,"o":300,"shapeType":15},{"panelId":34932,"x":232,"y":413,"o":240,"shapeType":15},{"panelId":2490,"x":332,"y":471,"o":600,"shapeType":15},{"panelId":39291,"x":307,"y":514,"o":540,"shapeType":15},{"panelId":27966,"x":332,"y":558,"o":480,"shapeType":15},{"panelId":65023,"x":382,"y":558,"o":420,"shapeType":15},{"panelId":3263,"x":408,"y":514,"o":360,"shapeType":15},{"panelId":40062,"x":382,"y":471,"o":300,"shapeType":15},{"panelId":32437,"x":483,"y":616,"o":780,"shapeType":15},{"panelId":61044,"x":508,"y":572,"o":720,"shapeType":15},{"panelId":7988,"x":483,"y":529,"o":660,"shapeType":15},{"panelId":36853,"x":433,"y":529,"o":600,"shapeType":15},{"panelId":48567,"x":408,"y":572,"o":540,"shapeType":15},{"panelId":11638,"x":433,"y":616,"o":480,"shapeType":15},{"panelId":57030,"x":483,"y":413,"o":660,"shapeType":15},{"panelId":60548,"x":433,"y":413,"o":600,"shapeType":15},{"panelId":31813,"x":408,"y":456,"o":540,"shapeType":15},{"panelId":36101,"x":433,"y":500,"o":480,"shapeType":15},{"panelId":7620,"x":483,"y":500,"o":420,"shapeType":15},{"panelId":64917,"x":508,"y":456,"o":360,"shapeType":15},{"panelId":65381,"x":307,"y":340,"o":720,"shapeType":15},{"panelId":28580,"x":282,"y":297,"o":660,"shapeType":15},{"panelId":32708,"x":232,"y":297,"o":600,"shapeType":15},{"panelId":61189,"x":207,"y":340,"o":540,"shapeType":15},{"panelId":7749,"x":232,"y":384,"o":480,"shapeType":15},{"panelId":36484,"x":282,"y":384,"o":420,"shapeType":15},{"panelId":21311,"x":382,"y":239,"o":1020,"shapeType":15},{"panelId":50174,"x":332,"y":239,"o":960,"shapeType":15},{"panelId":12990,"x":307,"y":282,"o":900,"shapeType":15},{"panelId":41599,"x":332,"y":326,"o":840,"shapeType":15},{"panelId":36925,"x":382,"y":326,"o":780,"shapeType":15},{"panelId":252,"x":408,"y":282,"o":720,"shapeType":15},{"panelId":643,"x":483,"y":268,"o":1140,"shapeType":15},{"panelId":62403,"x":508,"y":224,"o":1080,"shapeType":15},{"panelId":25346,"x":483,"y":181,"o":1020,"shapeType":15},{"panelId":29538,"x":433,"y":181,"o":960,"shapeType":15},{"panelId":58275,"x":408,"y":224,"o":900,"shapeType":15},{"panelId":4835,"x":433,"y":268,"o":840,"shapeType":15},{"panelId":63429,"x":382,"y":123,"o":1020,"shapeType":15},{"panelId":1669,"x":332,"y":123,"o":960,"shapeType":15},{"panelId":38468,"x":307,"y":166,"o":900,"shapeType":15},{"panelId":41990,"x":332,"y":210,"o":840,"shapeType":15},{"panelId":13511,"x":382,"y":210,"o":780,"shapeType":15},{"panelId":50567,"x":408,"y":166,"o":720,"shapeType":15},{"panelId":41500,"x":332,"y":94,"o":1200,"shapeType":15},{"panelId":22105,"x":382,"y":94,"o":1140,"shapeType":15},{"panelId":50840,"x":408,"y":50,"o":1080,"shapeType":15},{"panelId":14296,"x":382,"y":7,"o":1020,"shapeType":15},{"panelId":42777,"x":332,"y":7,"o":960,"shapeType":15},{"panelId":38235,"x":307,"y":50,"o":900,"shapeType":15},{"panelId":28003,"x":282,"y":181,"o":1020,"shapeType":15},{"panelId":39971,"x":232,"y":181,"o":960,"shapeType":15},{"panelId":3298,"x":207,"y":224,"o":900,"shapeType":15},{"panelId":13482,"x":232,"y":268,"o":840,"shapeType":15},{"panelId":42091,"x":282,"y":268,"o":780,"shapeType":15},{"panelId":21803,"x":307,"y":224,"o":720,"shapeType":15},{"panelId":45996,"x":282,"y":65,"o":1020,"shapeType":15},{"panelId":17132,"x":232,"y":65,"o":960,"shapeType":15},{"panelId":53805,"x":207,"y":108,"o":900,"shapeType":15},{"panelId":9832,"x":232,"y":152,"o":840,"shapeType":15},{"panelId":46761,"x":282,"y":152,"o":780,"shapeType":15},{"panelId":18409,"x":307,"y":108,"o":720,"shapeType":15},{"panelId":24169,"x":181,"y":7,"o":1020,"shapeType":15},{"panelId":52904,"x":131,"y":7,"o":960,"shapeType":15},{"panelId":64746,"x":106,"y":50,"o":900,"shapeType":15},{"panelId":27691,"x":131,"y":94,"o":840,"shapeType":15},{"panelId":40299,"x":181,"y":94,"o":780,"shapeType":15},{"panelId":3498,"x":207,"y":50,"o":720,"shapeType":15},{"panelId":0,"x":97,"y":432,"o":60,"shapeType":12}]}},"qkihnokomhartlnp":{},"schedules":{},"state":{"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":2500,"max":4000,"min":1500},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}}
-
@badsnoopy667 sagte in Test Adapter nanoleaf-lightpanels v1.2.x GitHub/latest:
Hab ich das so korrekt gemacht?
-
@daniel_2k said in Test Adapter nanoleaf-lightpanels v1.2.x GitHub/latest:
http://<IP-des-Geräts>:16021/api/v1/<Auth-Token>
Hab' auch gerade vor ein Paar Minuten festgestellt, dass die Elements offensichtlich nicht zu 100% unterstützt werden. Hier die Antwort:
{"name":"Elements 1692","serialNo":"S21240E6358","manufacturer":"Nanoleaf","firmwareVersion":"5.2.4","hardwareVersion":"1.1-0","model":"NL52","discovery":{},"effects":{"effectsList":["Bloom","Calming Waterfall","Clouds","Ember","Fireflies","Glimmer","Sahara Night","Splash","Sunbeam","Warm Waves"],"select":"Sahara Night"},"firmwareUpgrade":{},"panelLayout":{"globalOrientation":{"value":0,"max":360,"min":0},"layout":{"numPanels":7,"sideLength":0,"positionData":[{"panelId":4765,"x":182,"y":84,"o":360,"shapeType":15},{"panelId":8415,"x":156,"y":41,"o":300,"shapeType":15},{"panelId":45086,"x":106,"y":41,"o":240,"shapeType":15},{"panelId":16734,"x":81,"y":84,"o":180,"shapeType":15},{"panelId":53663,"x":106,"y":128,"o":120,"shapeType":15},{"panelId":59863,"x":156,"y":128,"o":60,"shapeType":15},{"panelId":0,"x":190,"y":50,"o":240,"shapeType":12}]}},"schedules":{},"state":{"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":4000,"max":4000,"min":1500},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}}