Announcement

Collapse
No announcement yet.

Nanoleaf Aurora

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #76
    Originally posted by skosyi View Post

    I've run the script and logs shows nothing - no devices found. That's so weird because plugin used to work for me until I deleted my devices.
    Does plugin has debug logs I can send to you?
    In that case I suspect the plugin is not finding your Nanoleaf unit. Can you double check the process with that, ensure your IP address is correct (it will respond to a ping if you need it to) and then hold the button down on your Nanoleaf panels, wait for 30seconds and then press 'Update Changes' in the plugin. After that then check the HS log to see what entries are being made and whether or not it has negotiated a security token.

    If that does not work then see if at least it has managed to get a authorisation token in the plugin settings page. Then in your web browser copy the following URL;

    http://192.168.1.127:16021/api/v1/cU...N1w9OX/effects

    replace the IP with yours and then between /v1/ and /effects substitute your authorisation token. The return is not important just that it does return some data rather than nothing or coming back unauthorised (error 401).

    If that still does not work I will tell you how to get me some debug logs.

    Comment


      #77
      Originally posted by mrhappy View Post

      In that case I suspect the plugin is not finding your Nanoleaf unit. Can you double check the process with that, ensure your IP address is correct (it will respond to a ping if you need it to) and then hold the button down on your Nanoleaf panels, wait for 30seconds and then press 'Update Changes' in the plugin. After that then check the HS log to see what entries are being made and whether or not it has negotiated a security token.

      If that does not work then see if at least it has managed to get a authorisation token in the plugin settings page. Then in your web browser copy the following URL;

      http://192.168.1.127:16021/api/v1/cU...N1w9OX/effects

      replace the IP with yours and then between /v1/ and /effects substitute your authorisation token. The return is not important just that it does return some data rather than nothing or coming back unauthorised (error 401).

      If that still does not work I will tell you how to get me some debug logs.
      Nanoleaf is accessible:
      - nanoleaf's IP is correct - I can ping it
      - token on plugin's page is correct and I'm getting json effects data in web browser using API call from above + token
      - nanoleaf is blinking when I click 'Flash Panel (Identify)' from plugins settings page

      but no entries has been created in homeseers

      Mrhappy, do you want to try debug logs?

      Comment


        #78
        Originally posted by skosyi View Post

        Nanoleaf is accessible:
        - nanoleaf's IP is correct - I can ping it
        - token on plugin's page is correct and I'm getting json effects data in web browser using API call from above + token
        - nanoleaf is blinking when I click 'Flash Panel (Identify)' from plugins settings page

        but no entries has been created in homeseers

        Mrhappy, do you want to try debug logs?
        Finally, I found the solution for my issue (plugin was not creating corresponding homeseer's device for my nanoleaf). The problem was in plugin's JSON parser which crashes with exception:
        '[8/10/2019 9:47:34 PM] - bGWorkerDoWork Exception: Input string '374.99719785939569' is not a valid integer. Path 'rhythm.rhythmPos.x', line 1, position 1369.'

        when plugin is trying to parse device's information:
        ...
        },
        "rhythm": {
        "auxAvailable": false,
        "firmwareVersion": "2.4.3",
        "hardwareVersion": "1.4",
        "rhythmActive": true,
        "rhythmConnected": true,
        "rhythmId": 12,
        "rhythmMode": 0,
        "rhythmPos": {
        "x": 374.99719785939569,
        "y": 129.901639916392,
        "o": 0.0
        }
        },
        "schedules": {
        ...

        The solution for me was to remove rhythm module temporary while setup the device.

        Mrhappy, could you please update JSON parser, so it doesn't crash with that payload or ignore errors for the properties that are not important?

        Comment


          #79
          Originally posted by skosyi View Post

          Finally, I found the solution for my issue (plugin was not creating corresponding homeseer's device for my nanoleaf). The problem was in plugin's JSON parser which crashes with exception:
          '[8/10/2019 9:47:34 PM] - bGWorkerDoWork Exception: Input string '374.99719785939569' is not a valid integer. Path 'rhythm.rhythmPos.x', line 1, position 1369.'

          when plugin is trying to parse device's information:
          ...
          },
          "rhythm": {
          "auxAvailable": false,
          "firmwareVersion": "2.4.3",
          "hardwareVersion": "1.4",
          "rhythmActive": true,
          "rhythmConnected": true,
          "rhythmId": 12,
          "rhythmMode": 0,
          "rhythmPos": {
          "x": 374.99719785939569,
          "y": 129.901639916392,
          "o": 0.0
          }
          },
          "schedules": {
          ...

          The solution for me was to remove rhythm module temporary while setup the device.

          Mrhappy, could you please update JSON parser, so it doesn't crash with that payload or ignore errors for the properties that are not important?
          Yes I will sort that out and send a new version to the updater, thank you for doing the hard work for me as I don't have a Rhythm module to test with. The Nanoleaf API documentation just implies that it is a whole number (not a decimal) so I set the type of this to integer. Seems a little strange that it needs to be that precise and that issue has not come up before, unless in their last firmware updates they have changed this property.

          Comment


            #80
            i am getting the following, the nanoleaf doesn't show its current status. I can however control it fine, just cannot see the status as it never updates correctly, this is all i can see. I am running latest Nanoleaf firmware. both my panel array with 30 panels and a rhythm controller worked fine in old firmware on 0.0.7 but another issue has arisen since upgrading nanoleaf firmware.

            if you need me to send any commands and get you the json, please just ask.

            Code:
            [08/09/2019 20:19:41] - --> Server Return:
            [08/09/2019 20:19:41] - UpdateAndSync Called
            [08/09/2019 20:19:41] - SendWebCommand Entered - Command: 4 Input JSON? False
            [08/09/2019 20:19:41] - > Input JSON:
            [08/09/2019 20:19:41] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 20:19:41] - > HTTP Response Code: 200
            [08/09/2019 20:19:41] - -> OK Reply From Device
            [08/09/2019 20:19:41] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
            [08/09/2019 20:19:41] - --> Current Brightness: 100
            [08/09/2019 20:19:41] - UpdateAndSync Exception: The given key was not present in the dictionary.
            [08/09/2019 20:21:17] - SetIOMulti Called
            [08/09/2019 20:21:17] - -> Controlled Device Reference: 2526
            [08/09/2019 20:21:17] - -> Device Number: OnOffState
            [08/09/2019 20:21:17] - --> OnOffState Changed - Value: 101
            [08/09/2019 20:21:17] - SendWebCommand Entered - Command: 3 Input JSON? False
            [08/09/2019 20:21:17] - > Input JSON: {"on": {"value":true}}
            [08/09/2019 20:21:17] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 20:21:17] - > HTTP Response Code: 204
            [08/09/2019 20:21:17] - -> OK Reply From Device
            [08/09/2019 20:21:17] - --> Server Return:
            [08/09/2019 20:21:17] - UpdateAndSync Called
            [08/09/2019 20:21:17] - SendWebCommand Entered - Command: 4 Input JSON? False
            [08/09/2019 20:21:17] - > Input JSON:
            [08/09/2019 20:21:17] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 20:21:17] - > HTTP Response Code: 200
            [08/09/2019 20:21:17] - -> OK Reply From Device
            [08/09/2019 20:21:17] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
            [08/09/2019 20:21:17] - --> Current Brightness: 100
            [08/09/2019 20:21:17] - UpdateAndSync Exception: The given key was not present in the dictionary.
            [08/09/2019 20:32:00] - SetIOMulti Called
            [08/09/2019 20:32:00] - -> Controlled Device Reference: 2526
            [08/09/2019 20:32:00] - -> Device Number: OnOffState
            [08/09/2019 20:32:00] - --> OnOffState Changed - Value: 101
            [08/09/2019 20:32:00] - SendWebCommand Entered - Command: 3 Input JSON? False
            [08/09/2019 20:32:00] - > Input JSON: {"on": {"value":true}}
            [08/09/2019 20:32:00] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 20:32:00] - > HTTP Response Code: 204
            [08/09/2019 20:32:00] - -> OK Reply From Device
            [08/09/2019 20:32:00] - --> Server Return:
            [08/09/2019 20:32:00] - UpdateAndSync Called
            [08/09/2019 20:32:00] - SendWebCommand Entered - Command: 4 Input JSON? False
            [08/09/2019 20:32:00] - > Input JSON:
            [08/09/2019 20:32:00] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 20:32:00] - > HTTP Response Code: 200
            [08/09/2019 20:32:00] - -> OK Reply From Device
            [08/09/2019 20:32:00] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
            [08/09/2019 20:32:00] - --> Current Brightness: 100
            [08/09/2019 20:32:00] - UpdateAndSync Exception: The given key was not present in the dictionary.
            [08/09/2019 21:29:02] - SetIOMulti Called
            [08/09/2019 21:29:02] - -> Controlled Device Reference: 2526
            [08/09/2019 21:29:02] - -> Device Number: OnOffState
            [08/09/2019 21:29:02] - --> OnOffState Changed - Value: 101
            [08/09/2019 21:29:02] - SendWebCommand Entered - Command: 3 Input JSON? False
            [08/09/2019 21:29:02] - > Input JSON: {"on": {"value":true}}
            [08/09/2019 21:29:02] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 21:29:02] - > HTTP Response Code: 204
            [08/09/2019 21:29:02] - -> OK Reply From Device
            [08/09/2019 21:29:02] - --> Server Return:
            [08/09/2019 21:29:02] - UpdateAndSync Called
            [08/09/2019 21:29:02] - SendWebCommand Entered - Command: 4 Input JSON? False
            [08/09/2019 21:29:02] - > Input JSON:
            [08/09/2019 21:29:02] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 21:29:03] - > HTTP Response Code: 200
            [08/09/2019 21:29:03] - -> OK Reply From Device
            [08/09/2019 21:29:03] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
            [08/09/2019 21:29:03] - --> Current Brightness: 100
            [08/09/2019 21:29:03] - UpdateAndSync Exception: The given key was not present in the dictionary.
            [08/09/2019 21:29:10] - SetIOMulti Called
            [08/09/2019 21:29:10] - -> Controlled Device Reference: 2526
            [08/09/2019 21:29:10] - -> Device Number: OnOffState
            [08/09/2019 21:29:10] - --> OnOffState Changed - Value: 101
            [08/09/2019 21:29:10] - SendWebCommand Entered - Command: 3 Input JSON? False
            [08/09/2019 21:29:10] - > Input JSON: {"on": {"value":true}}
            [08/09/2019 21:29:10] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 21:29:10] - > HTTP Response Code: 204
            [08/09/2019 21:29:10] - -> OK Reply From Device
            [08/09/2019 21:29:10] - --> Server Return:
            [08/09/2019 21:29:10] - UpdateAndSync Called
            [08/09/2019 21:29:10] - SendWebCommand Entered - Command: 4 Input JSON? False
            [08/09/2019 21:29:10] - > Input JSON:
            [08/09/2019 21:29:10] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
            [08/09/2019 21:29:10] - > HTTP Response Code: 200
            [08/09/2019 21:29:10] - -> OK Reply From Device
            [08/09/2019 21:29:10] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
            [08/09/2019 21:29:10] - --> Current Brightness: 100
            [08/09/2019 21:29:10] - UpdateAndSync Exception: The given key was not present in the dictionary.

            Comment


              #81
              Originally posted by fuzzysb View Post
              i am getting the following, the nanoleaf doesn't show its current status. I can however control it fine, just cannot see the status as it never updates correctly, this is all i can see. I am running latest Nanoleaf firmware. both my panel array with 30 panels and a rhythm controller worked fine in old firmware on 0.0.7 but another issue has arisen since upgrading nanoleaf firmware.

              if you need me to send any commands and get you the json, please just ask.

              Code:
              [08/09/2019 20:19:41] - --> Server Return:
              [08/09/2019 20:19:41] - UpdateAndSync Called
              [08/09/2019 20:19:41] - SendWebCommand Entered - Command: 4 Input JSON? False
              [08/09/2019 20:19:41] - > Input JSON:
              [08/09/2019 20:19:41] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 20:19:41] - > HTTP Response Code: 200
              [08/09/2019 20:19:41] - -> OK Reply From Device
              [08/09/2019 20:19:41] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
              [08/09/2019 20:19:41] - --> Current Brightness: 100
              [08/09/2019 20:19:41] - UpdateAndSync Exception: The given key was not present in the dictionary.
              [08/09/2019 20:21:17] - SetIOMulti Called
              [08/09/2019 20:21:17] - -> Controlled Device Reference: 2526
              [08/09/2019 20:21:17] - -> Device Number: OnOffState
              [08/09/2019 20:21:17] - --> OnOffState Changed - Value: 101
              [08/09/2019 20:21:17] - SendWebCommand Entered - Command: 3 Input JSON? False
              [08/09/2019 20:21:17] - > Input JSON: {"on": {"value":true}}
              [08/09/2019 20:21:17] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 20:21:17] - > HTTP Response Code: 204
              [08/09/2019 20:21:17] - -> OK Reply From Device
              [08/09/2019 20:21:17] - --> Server Return:
              [08/09/2019 20:21:17] - UpdateAndSync Called
              [08/09/2019 20:21:17] - SendWebCommand Entered - Command: 4 Input JSON? False
              [08/09/2019 20:21:17] - > Input JSON:
              [08/09/2019 20:21:17] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 20:21:17] - > HTTP Response Code: 200
              [08/09/2019 20:21:17] - -> OK Reply From Device
              [08/09/2019 20:21:17] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
              [08/09/2019 20:21:17] - --> Current Brightness: 100
              [08/09/2019 20:21:17] - UpdateAndSync Exception: The given key was not present in the dictionary.
              [08/09/2019 20:32:00] - SetIOMulti Called
              [08/09/2019 20:32:00] - -> Controlled Device Reference: 2526
              [08/09/2019 20:32:00] - -> Device Number: OnOffState
              [08/09/2019 20:32:00] - --> OnOffState Changed - Value: 101
              [08/09/2019 20:32:00] - SendWebCommand Entered - Command: 3 Input JSON? False
              [08/09/2019 20:32:00] - > Input JSON: {"on": {"value":true}}
              [08/09/2019 20:32:00] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 20:32:00] - > HTTP Response Code: 204
              [08/09/2019 20:32:00] - -> OK Reply From Device
              [08/09/2019 20:32:00] - --> Server Return:
              [08/09/2019 20:32:00] - UpdateAndSync Called
              [08/09/2019 20:32:00] - SendWebCommand Entered - Command: 4 Input JSON? False
              [08/09/2019 20:32:00] - > Input JSON:
              [08/09/2019 20:32:00] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 20:32:00] - > HTTP Response Code: 200
              [08/09/2019 20:32:00] - -> OK Reply From Device
              [08/09/2019 20:32:00] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
              [08/09/2019 20:32:00] - --> Current Brightness: 100
              [08/09/2019 20:32:00] - UpdateAndSync Exception: The given key was not present in the dictionary.
              [08/09/2019 21:29:02] - SetIOMulti Called
              [08/09/2019 21:29:02] - -> Controlled Device Reference: 2526
              [08/09/2019 21:29:02] - -> Device Number: OnOffState
              [08/09/2019 21:29:02] - --> OnOffState Changed - Value: 101
              [08/09/2019 21:29:02] - SendWebCommand Entered - Command: 3 Input JSON? False
              [08/09/2019 21:29:02] - > Input JSON: {"on": {"value":true}}
              [08/09/2019 21:29:02] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 21:29:02] - > HTTP Response Code: 204
              [08/09/2019 21:29:02] - -> OK Reply From Device
              [08/09/2019 21:29:02] - --> Server Return:
              [08/09/2019 21:29:02] - UpdateAndSync Called
              [08/09/2019 21:29:02] - SendWebCommand Entered - Command: 4 Input JSON? False
              [08/09/2019 21:29:02] - > Input JSON:
              [08/09/2019 21:29:02] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 21:29:03] - > HTTP Response Code: 200
              [08/09/2019 21:29:03] - -> OK Reply From Device
              [08/09/2019 21:29:03] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
              [08/09/2019 21:29:03] - --> Current Brightness: 100
              [08/09/2019 21:29:03] - UpdateAndSync Exception: The given key was not present in the dictionary.
              [08/09/2019 21:29:10] - SetIOMulti Called
              [08/09/2019 21:29:10] - -> Controlled Device Reference: 2526
              [08/09/2019 21:29:10] - -> Device Number: OnOffState
              [08/09/2019 21:29:10] - --> OnOffState Changed - Value: 101
              [08/09/2019 21:29:10] - SendWebCommand Entered - Command: 3 Input JSON? False
              [08/09/2019 21:29:10] - > Input JSON: {"on": {"value":true}}
              [08/09/2019 21:29:10] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 21:29:10] - > HTTP Response Code: 204
              [08/09/2019 21:29:10] - -> OK Reply From Device
              [08/09/2019 21:29:10] - --> Server Return:
              [08/09/2019 21:29:10] - UpdateAndSync Called
              [08/09/2019 21:29:10] - SendWebCommand Entered - Command: 4 Input JSON? False
              [08/09/2019 21:29:10] - > Input JSON:
              [08/09/2019 21:29:10] - > Full Web Address: http://10.10.99.143:16021/api/v1/<APIKEY>/state
              [08/09/2019 21:29:10] - > HTTP Response Code: 200
              [08/09/2019 21:29:10] - -> OK Reply From Device
              [08/09/2019 21:29:10] - --> Server Return: {"brightness":{"value":100,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max":100,"min":0}}
              [08/09/2019 21:29:10] - --> Current Brightness: 100
              [08/09/2019 21:29:10] - UpdateAndSync Exception: The given key was not present in the dictionary.
              It appears it is failing the moment it is trying to update the brightness device and from the message it appears that it is not finding that device in the list that I try and determine when I start the plugin. Have you deleted the brightness/any device at any point? I take it a simple restart of the plugin does not solve anything?

              If you restart the plugin then look in the log for "Device State Worker Thread Started", that is the routine that checks through the devices and tries to find them in HS. That should then call into CheckDevices and it runs through the enumerator to determine whether or not your HS system has devices that I would like to know about. Could you copy those entries please and I will have a look through them.

              Comment


                #82
                mrhappy ive not deleted any devices, and i have tried restarting, there is not anything in the log on startup that points to an issue, below is all i get when restarting the plugin for one of my panels, the others are also the same

                Code:
                 [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]Worker Thread Completed[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]Making Attempt To Obtain Data...[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]IP Address: <IP Hidden>[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]Authorisation Token: <Token Hidden>[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]Obtaining Device State - Starting Thread[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]Nanoleaf Plugin Startup Complete[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                [TABLE="cellspacing: 0"]
                [TR]
                [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                 			[TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                 			[TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                 			[TD="colspan: 8, align: left"][COLOR=#000000]Nanoleaf Plugin Started[/COLOR][/TD]
                 		[/TR]
                [/TABLE]
                and this is what the devices look like for this panel, as you can see from the state device (the device i used every day) it stopped on the 03/07, the other also stopped on the same day. but i'm unsure if that was the day i upgraded the firmware, as the lights can still be controlled but the state is unavailable. so i didn't correlate that some events based on state weren't working. I also upgraded to 0.0.7 around that time though as well as i lost control of the lights after the firmware update. i cannot however remember if with 0.0.7 the state ever worked correctly, but i am presuming it did. I do have a rythm module on both panels.

                Click image for larger version

Name:	Capture.PNG
Views:	265
Size:	221.9 KB
ID:	1325956

                Comment


                  #83
                  Originally posted by fuzzysb View Post
                  mrhappy ive not deleted any devices, and i have tried restarting, there is not anything in the log on startup that points to an issue, below is all i get when restarting the plugin for one of my panels, the others are also the same

                  Code:
                   [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]Worker Thread Completed[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]Making Attempt To Obtain Data...[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]IP Address: <IP Hidden>[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]Authorisation Token: <Token Hidden>[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]Obtaining Device State - Starting Thread[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]Nanoleaf Plugin Startup Complete[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  [TABLE="cellspacing: 0"]
                  [TR]
                  [TD="colspan: 1, align: left"][COLOR=#000000]Sep-12 05:29:42[/COLOR][/TD]
                  [TD="colspan: 1, align: left"][COLOR=#000000] [/COLOR][/TD]
                  [TD="colspan: 3, align: left"][COLOR=#000000]Nanoleaf 3P[/COLOR][/TD]
                  [TD="colspan: 8, align: left"][COLOR=#000000]Nanoleaf Plugin Started[/COLOR][/TD]
                  [/TR]
                  [/TABLE]
                  and this is what the devices look like for this panel, as you can see from the state device (the device i used every day) it stopped on the 03/07, the other also stopped on the same day. but i'm unsure if that was the day i upgraded the firmware, as the lights can still be controlled but the state is unavailable. so i didn't correlate that some events based on state weren't working. I also upgraded to 0.0.7 around that time though as well as i lost control of the lights after the firmware update. i cannot however remember if with 0.0.7 the state ever worked correctly, but i am presuming it did. I do have a rythm module on both panels.

                  Click image for larger version

Name:	Capture.PNG
Views:	265
Size:	221.9 KB
ID:	1325956
                  Sorry I meant in the debug log/console window when you start the plugin, the same type of info you showed in the previous post. Can you copy me the entries when the plugin starts to when it has finished.

                  I don't think it is anything to do with the firmware personally (as it is getting the server response fine) but I may be wrong, I think for some reason it is not finding the device that it needs to control and set the status on. Quite why I'm not sure but should be able to determine if that is the case when the plugin loads as I do check through each device and determine if it is owned by the plugin and what device it actually is.

                  Comment


                    #84
                    Hey All i do not know what happen but my Nano leaf panels just stopped working with homeseer. i have tried everything uninstalling re installing deleting all the files that i thought were with The plug in. right now i have the it installed and i have some of the controls like on of but they do not work. When i go to the plugin and i say flash to identified does flash them. but at alost of how to get it working agiing. how do i delete or what all files do i need to delete to get rid of all of the nano leaf plugin.been working this for months. HELP!!!!

                    Comment


                      #85
                      Originally posted by tfraley1 View Post
                      Hey All i do not know what happen but my Nano leaf panels just stopped working with homeseer. i have tried everything uninstalling re installing deleting all the files that i thought were with The plug in. right now i have the it installed and i have some of the controls like on of but they do not work. When i go to the plugin and i say flash to identified does flash them. but at alost of how to get it working agiing. how do i delete or what all files do i need to delete to get rid of all of the nano leaf plugin.been working this for months. HELP!!!!
                      I'd recommend going into the Nanoleaf app on your phone and upgrading to the latest firmware first, make sure you are running the latest then try again with the plugin. I'm afraid some of their firmware updates have been a little buggy. If that does not work then let me know which firmware you are running and copy the lines from your HD log when it starts and I'll have a look

                      Comment


                        #86
                        mrhappy

                        yes here is the restart of the plugin, i get the issue that was posted in the previous post, the Rhythm module position being a float and you are trying to use it as an integer. so no devices are generated. so if i delete my devices it looks like they wont be recreated unless i remove the rhythm device on startup. you said that you would issue a new version, so is there going to be an update as it looks like this is the change in latest FW for rhythm module, if you do a cast to Int it will probably be enough. i don't think you would need to round it.

                        Code:
                        Connecting to server at 127.0.0.1...
                        Connected, waiting to be initialized...
                        [16/09/2019 18:29:31] - Nanoleaf Plugin Started
                        [16/09/2019 18:29:31] - RegisterWebPage - Link: Nanoleaf 3P Linktext: Page_title: Instance: Conservatory Nano
                        [16/09/2019 18:29:31] - IP Address: <IP Substituted>
                        [16/09/2019 18:29:31] - Authorisation Token: <API Key Substituted>
                        [16/09/2019 18:29:31] - Obtaining Device State - Starting Thread
                        [16/09/2019 18:29:31] - StartThread Entered
                        [16/09/2019 18:29:31] - Timer Interval Found: 60000
                        [16/09/2019 18:29:31] - Nanoleaf Plugin Startup Complete
                        [16/09/2019 18:29:31] - Device State Worker Thread Started
                        [16/09/2019 18:29:31] - Making Attempt To Obtain Data...
                        [16/09/2019 18:29:31] - > Get Device Data
                        [16/09/2019 18:29:31] - SendWebCommand Entered - Command: 2 Input JSON? False
                        [16/09/2019 18:29:31] - > Input JSON:
                        [16/09/2019 18:29:31] - > Full Web Address: http://<IP Substituted>:16021/api/v1/<API Key Substituted>
                        [16/09/2019 18:29:31] - > HTTP Response Code: 200
                        [16/09/2019 18:29:31] - -> OK Reply From Device
                        [16/09/2019 18:29:31] - --> Server Return: {"name":"Nanoleaf Light Panels 51:76:30","serialNo":"S17382A2399","manufacturer":"Nanoleaf" ,"firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{" effectsList":["Conservatory Color Burst","Conservatory Flames","Conservatory Forest","Conservatory Inner Peace","Conservatory Nemo","Conservatory Northern Lights","Conservatory Pumpkin Spice","Conservatory Romantic","Conservatory Snowfall","Conservatory Walking Dead","Conservatory Warm White","Cops","Fireworks","Flow","Meteor Shower","Paint Splatter","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Conservatory Pumpkin Spice"},"firmwareUpgrade":{},"panelLayout":{"globalOrientati on":{"value":330,"max":360,"min":0},"layout":{"numPanels":28 ,"sideLength":150,"positionData":[{"panelId":103,"x":599,"y":43,"o":300,"shapeType":0},{"panel Id":37,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":241 ,"x":674,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":6 74,"y":259,"o":240,"shapeType":0},{"panelId":226,"x":599,"y" :303,"o":300,"shapeType":0},{"panelId":35,"x":599,"y":389,"o ":0,"shapeType":0},{"panelId":61,"x":524,"y":433,"o":180,"sh apeType":0},{"panelId":174,"x":449,"y":389,"o":120,"shapeTyp e":0},{"panelId":31,"x":524,"y":519,"o":0,"shapeType":0},{"p anelId":132,"x":449,"y":562,"o":300,"shapeType":0},{"panelId ":161,"x":374,"y":519,"o":0,"shapeType":0},{"panelId":150,"x ":299,"y":562,"o":60,"shapeType":0},{"panelId":146,"x":224," y":519,"o":0,"shapeType":0},{"panelId":85,"x":149,"y":562,"o ":180,"shapeType":0},{"panelId":27,"x":299,"y":649,"o":0,"sh apeType":0},{"panelId":214,"x":374,"y":692,"o":300,"shapeTyp e":0},{"panelId":39,"x":374,"y":779,"o":0,"shapeType":0},{"p anelId":88,"x":299,"y":822,"o":180,"shapeType":0},{"panelId" :166,"x":224,"y":779,"o":0,"shapeType":0},{"panelId":41,"x": 149,"y":822,"o":180,"shapeType":0},{"panelId":171,"x":74,"y" :779,"o":240,"shapeType":0},{"panelId":25,"x":149,"y":909,"o ":0,"shapeType":0},{"panelId":207,"x":524,"y":0,"o":120,"sha peType":0},{"panelId":111,"x":449,"y":43,"o":300,"shapeType" :0},{"panelId":190,"x":374,"y":0,"o":240,"shapeType":0},{"pa nelId":110,"x":299,"y":43,"o":300,"shapeType":0},{"panelId": 219,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":123,"x": 224,"y":0,"o":120,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3", "hardwareVersion":"1.4","rhythmActive":false,"rhythmConnecte d":true,"rhythmId":51,"rhythmMode":0,"rhythmPos":{"x":0.0,"y ":822.716844126005,"o":180.0}},"schedules":{},"state":{"brig htness":{"value":80,"max":100,"min":0},"colorMode":"effect", "ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0," max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max" :100,"min":0}}}
                        [16/09/2019 18:29:31] - ReturnString: {"name":"Nanoleaf Light Panels 51:76:30","serialNo":"S17382A2399","manufacturer":"Nanoleaf" ,"firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{" effectsList":["Conservatory Color Burst","Conservatory Flames","Conservatory Forest","Conservatory Inner Peace","Conservatory Nemo","Conservatory Northern Lights","Conservatory Pumpkin Spice","Conservatory Romantic","Conservatory Snowfall","Conservatory Walking Dead","Conservatory Warm White","Cops","Fireworks","Flow","Meteor Shower","Paint Splatter","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Conservatory Pumpkin Spice"},"firmwareUpgrade":{},"panelLayout":{"globalOrientati on":{"value":330,"max":360,"min":0},"layout":{"numPanels":28 ,"sideLength":150,"positionData":[{"panelId":103,"x":599,"y":43,"o":300,"shapeType":0},{"panel Id":37,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":241 ,"x":674,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":6 74,"y":259,"o":240,"shapeType":0},{"panelId":226,"x":599,"y" :303,"o":300,"shapeType":0},{"panelId":35,"x":599,"y":389,"o ":0,"shapeType":0},{"panelId":61,"x":524,"y":433,"o":180,"sh apeType":0},{"panelId":174,"x":449,"y":389,"o":120,"shapeTyp e":0},{"panelId":31,"x":524,"y":519,"o":0,"shapeType":0},{"p anelId":132,"x":449,"y":562,"o":300,"shapeType":0},{"panelId ":161,"x":374,"y":519,"o":0,"shapeType":0},{"panelId":150,"x ":299,"y":562,"o":60,"shapeType":0},{"panelId":146,"x":224," y":519,"o":0,"shapeType":0},{"panelId":85,"x":149,"y":562,"o ":180,"shapeType":0},{"panelId":27,"x":299,"y":649,"o":0,"sh apeType":0},{"panelId":214,"x":374,"y":692,"o":300,"shapeTyp e":0},{"panelId":39,"x":374,"y":779,"o":0,"shapeType":0},{"p anelId":88,"x":299,"y":822,"o":180,"shapeType":0},{"panelId" :166,"x":224,"y":779,"o":0,"shapeType":0},{"panelId":41,"x": 149,"y":822,"o":180,"shapeType":0},{"panelId":171,"x":74,"y" :779,"o":240,"shapeType":0},{"panelId":25,"x":149,"y":909,"o ":0,"shapeType":0},{"panelId":207,"x":524,"y":0,"o":120,"sha peType":0},{"panelId":111,"x":449,"y":43,"o":300,"shapeType" :0},{"panelId":190,"x":374,"y":0,"o":240,"shapeType":0},{"pa nelId":110,"x":299,"y":43,"o":300,"shapeType":0},{"panelId": 219,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":123,"x": 224,"y":0,"o":120,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3", "hardwareVersion":"1.4","rhythmActive":false,"rhythmConnecte d":true,"rhythmId":51,"rhythmMode":0,"rhythmPos":{"x":0.0,"y ":822.716844126005,"o":180.0}},"schedules":{},"state":{"brig htness":{"value":80,"max":100,"min":0},"colorMode":"effect", "ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0," max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max" :100,"min":0}}}
                        [16/09/2019 18:29:32] - bGWorkerDoWork Exception: Input string '0.0' is not a valid integer. Path 'rhythm.rhythmPos.x', line 1, position 2474.
                        [16/09/2019 18:29:32] - Worker Thread Completed

                        here is my other panel

                        Code:
                        Connected, waiting to be initialized...
                        [16/09/2019 18:29:17] - Nanoleaf Plugin Started
                        [16/09/2019 18:29:17] - RegisterWebPage - Link: Nanoleaf 3P Linktext:  Page_title:  Instance:
                        [16/09/2019 18:29:17] - IP Address: <IP Substituted>
                        [16/09/2019 18:29:17] - Authorisation Token: <API Key Substituted>
                        [16/09/2019 18:29:17] - Obtaining Device State - Starting Thread
                        [16/09/2019 18:29:17] - StartThread Entered
                        [16/09/2019 18:29:17] - Timer Interval Found: 60000
                        [16/09/2019 18:29:17] - Nanoleaf Plugin Startup Complete
                        [16/09/2019 18:29:17] - Device State Worker Thread Started
                        [16/09/2019 18:29:17] - Making Attempt To Obtain Data...
                        [16/09/2019 18:29:17] - > Get Device Data
                        [16/09/2019 18:29:17] - SendWebCommand Entered - Command: 2 Input JSON? False
                        [16/09/2019 18:29:17] - > Input JSON:
                        [16/09/2019 18:29:17] - > Full Web Address: http://<IP Substituted>:16021/api/v1/<API Key Substituted>
                        [16/09/2019 18:29:17] - > HTTP Response Code: 200
                        [16/09/2019 18:29:17] - -> OK Reply From Device
                        [16/09/2019 18:29:17] - --> Server Return: {"name":"Nanoleaf Light Panels 51:76:4B","serialNo":"S17382A2426","manufacturer":"Nanoleaf","firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{"effectsList":["Cops","Fireworks","Flow","Living Room Black and White","Living Room Color Burst","Living Room Cosmos","Living Room Flames","Living Room Forest","Living Room Inner Peace","Living Room Mint","Living Room Nemo","Living Room Northern Lights","Living Room Pastel Clouds","Living Room Romantic","Living Room Snowfall","Living Room Tron Legacy","Living Room Warm White","Meteor Shower","Paint Splatter","Pulse","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Living Room Warm White"},"firmwareUpgrade":{},"panelLayout":{"globalOrientation":{"value":0,"max":360,"min":0},"layout":{"numPanels":20,"sideLength":150,"positionData":[{"panelId":103,"x":749,"y":43,"o":60,"shapeType":0},{"panelId":37,"x":749,"y":129,"o":120,"shapeType":0},{"panelId":207,"x":674,"y":173,"o":180,"shapeType":0},{"panelId":111,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":226,"x":524,"y":173,"o":180,"shapeType":0},{"panelId":110,"x":449,"y":129,"o":0,"shapeType":0},{"panelId":219,"x":374,"y":173,"o":60,"shapeType":0},{"panelId":61,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":31,"x":224,"y":173,"o":60,"shapeType":0},{"panelId":132,"x":149,"y":129,"o":120,"shapeType":0},{"panelId":161,"x":149,"y":43,"o":60,"shapeType":0},{"panelId":150,"x":75,"y":173,"o":300,"shapeType":0},{"panelId":114,"x":75,"y":259,"o":240,"shapeType":0},{"panelId":142,"x":0,"y":129,"o":0,"shapeType":0},{"panelId":174,"x":374,"y":259,"o":240,"shapeType":0},{"panelId":123,"x":449,"y":43,"o":60,"shapeType":0},{"panelId":35,"x":524,"y":259,"o":0,"shapeType":0},{"panelId":241,"x":824,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":824,"y":259,"o":240,"shapeType":0},{"panelId":190,"x":899,"y":129,"o":0,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3","hardwareVersion":"1.4","rhythmActive":false,"rhythmConnected":true,"rhythmId":14,"rhythmMode":0,"rhythmPos":{"x":74.99882338893201,"y":0.0007960626479857069,"o":240.0}},"schedules":{},"state":{"brightness":{"value":32,"max":100,"min":0},"colorMode":"effect","ct":{"value":2700,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}}
                        [16/09/2019 18:29:17] - ReturnString: {"name":"Nanoleaf Light Panels 51:76:4B","serialNo":"S17382A2426","manufacturer":"Nanoleaf","firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{"effectsList":["Cops","Fireworks","Flow","Living Room Black and White","Living Room Color Burst","Living Room Cosmos","Living Room Flames","Living Room Forest","Living Room Inner Peace","Living Room Mint","Living Room Nemo","Living Room Northern Lights","Living Room Pastel Clouds","Living Room Romantic","Living Room Snowfall","Living Room Tron Legacy","Living Room Warm White","Meteor Shower","Paint Splatter","Pulse","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Living Room Warm White"},"firmwareUpgrade":{},"panelLayout":{"globalOrientation":{"value":0,"max":360,"min":0},"layout":{"numPanels":20,"sideLength":150,"positionData":[{"panelId":103,"x":749,"y":43,"o":60,"shapeType":0},{"panelId":37,"x":749,"y":129,"o":120,"shapeType":0},{"panelId":207,"x":674,"y":173,"o":180,"shapeType":0},{"panelId":111,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":226,"x":524,"y":173,"o":180,"shapeType":0},{"panelId":110,"x":449,"y":129,"o":0,"shapeType":0},{"panelId":219,"x":374,"y":173,"o":60,"shapeType":0},{"panelId":61,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":31,"x":224,"y":173,"o":60,"shapeType":0},{"panelId":132,"x":149,"y":129,"o":120,"shapeType":0},{"panelId":161,"x":149,"y":43,"o":60,"shapeType":0},{"panelId":150,"x":75,"y":173,"o":300,"shapeType":0},{"panelId":114,"x":75,"y":259,"o":240,"shapeType":0},{"panelId":142,"x":0,"y":129,"o":0,"shapeType":0},{"panelId":174,"x":374,"y":259,"o":240,"shapeType":0},{"panelId":123,"x":449,"y":43,"o":60,"shapeType":0},{"panelId":35,"x":524,"y":259,"o":0,"shapeType":0},{"panelId":241,"x":824,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":824,"y":259,"o":240,"shapeType":0},{"panelId":190,"x":899,"y":129,"o":0,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3","hardwareVersion":"1.4","rhythmActive":false,"rhythmConnected":true,"rhythmId":14,"rhythmMode":0,"rhythmPos":{"x":74.99882338893201,"y":0.0007960626479857069,"o":240.0}},"schedules":{},"state":{"brightness":{"value":32,"max":100,"min":0},"colorMode":"effect","ct":{"value":2700,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}}
                        [16/09/2019 18:29:17] - bGWorkerDoWork Exception: Input string '74.99882338893201' is not a valid integer. Path 'rhythm.rhythmPos.x', line 1, position 2129.
                        [16/09/2019 18:29:17] - Worker Thread Completed
                        *edit, just to confirm, i removed one of the Rhythm modules and then everything worked fine and on startup it went through the devices and the device brightness & on/off values were updating, but when re-adding the rhythm module and restarting i now have a device showing a permanent on status, even though i can control it using buttons etc..

                        here is the error again when i send the off command.

                        Code:
                        [16/09/2019 18:58:18] - UpdateAndSync Called
                        [16/09/2019 18:58:18] - SendWebCommand Entered - Command: 4 Input JSON? False
                        [16/09/2019 18:58:18] - > Input JSON:
                        [16/09/2019 18:58:18] - > Full Web Address: http://<IP substituted >:16021/api/v1/<key substituted>/state
                        [16/09/2019 18:58:18] - > HTTP Response Code: 200
                        [16/09/2019 18:58:18] - -> OK Reply From Device
                        [16/09/2019 18:58:18] - --> Server Return: {"brightness":{"value":80,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}
                        [16/09/2019 18:58:18] - --> Device Off: False
                        [16/09/2019 18:58:18] - UpdateAndSync Exception: The given key was not present in the dictionary.
                        if you need me to test a version out just give me a shout

                        Comment


                          #87
                          Originally posted by fuzzysb View Post
                          mrhappy

                          yes here is the restart of the plugin, i get the issue that was posted in the previous post, the Rhythm module position being a float and you are trying to use it as an integer. so no devices are generated. so if i delete my devices it looks like they wont be recreated unless i remove the rhythm device on startup. you said that you would issue a new version, so is there going to be an update as it looks like this is the change in latest FW for rhythm module, if you do a cast to Int it will probably be enough. i don't think you would need to round it.

                          Code:
                          Connecting to server at 127.0.0.1...
                          Connected, waiting to be initialized...
                          [16/09/2019 18:29:31] - Nanoleaf Plugin Started
                          [16/09/2019 18:29:31] - RegisterWebPage - Link: Nanoleaf 3P Linktext: Page_title: Instance: Conservatory Nano
                          [16/09/2019 18:29:31] - IP Address: <IP Substituted>
                          [16/09/2019 18:29:31] - Authorisation Token: <API Key Substituted>
                          [16/09/2019 18:29:31] - Obtaining Device State - Starting Thread
                          [16/09/2019 18:29:31] - StartThread Entered
                          [16/09/2019 18:29:31] - Timer Interval Found: 60000
                          [16/09/2019 18:29:31] - Nanoleaf Plugin Startup Complete
                          [16/09/2019 18:29:31] - Device State Worker Thread Started
                          [16/09/2019 18:29:31] - Making Attempt To Obtain Data...
                          [16/09/2019 18:29:31] - > Get Device Data
                          [16/09/2019 18:29:31] - SendWebCommand Entered - Command: 2 Input JSON? False
                          [16/09/2019 18:29:31] - > Input JSON:
                          [16/09/2019 18:29:31] - > Full Web Address: http://<IP Substituted>:16021/api/v1/<API Key Substituted>
                          [16/09/2019 18:29:31] - > HTTP Response Code: 200
                          [16/09/2019 18:29:31] - -> OK Reply From Device
                          [16/09/2019 18:29:31] - --> Server Return: {"name":"Nanoleaf Light Panels 51:76:30","serialNo":"S17382A2399","manufacturer":"Nanoleaf" ,"firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{" effectsList":["Conservatory Color Burst","Conservatory Flames","Conservatory Forest","Conservatory Inner Peace","Conservatory Nemo","Conservatory Northern Lights","Conservatory Pumpkin Spice","Conservatory Romantic","Conservatory Snowfall","Conservatory Walking Dead","Conservatory Warm White","Cops","Fireworks","Flow","Meteor Shower","Paint Splatter","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Conservatory Pumpkin Spice"},"firmwareUpgrade":{},"panelLayout":{"globalOrientati on":{"value":330,"max":360,"min":0},"layout":{"numPanels":28 ,"sideLength":150,"positionData":[{"panelId":103,"x":599,"y":43,"o":300,"shapeType":0},{"panel Id":37,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":241 ,"x":674,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":6 74,"y":259,"o":240,"shapeType":0},{"panelId":226,"x":599,"y" :303,"o":300,"shapeType":0},{"panelId":35,"x":599,"y":389,"o ":0,"shapeType":0},{"panelId":61,"x":524,"y":433,"o":180,"sh apeType":0},{"panelId":174,"x":449,"y":389,"o":120,"shapeTyp e":0},{"panelId":31,"x":524,"y":519,"o":0,"shapeType":0},{"p anelId":132,"x":449,"y":562,"o":300,"shapeType":0},{"panelId ":161,"x":374,"y":519,"o":0,"shapeType":0},{"panelId":150,"x ":299,"y":562,"o":60,"shapeType":0},{"panelId":146,"x":224," y":519,"o":0,"shapeType":0},{"panelId":85,"x":149,"y":562,"o ":180,"shapeType":0},{"panelId":27,"x":299,"y":649,"o":0,"sh apeType":0},{"panelId":214,"x":374,"y":692,"o":300,"shapeTyp e":0},{"panelId":39,"x":374,"y":779,"o":0,"shapeType":0},{"p anelId":88,"x":299,"y":822,"o":180,"shapeType":0},{"panelId" :166,"x":224,"y":779,"o":0,"shapeType":0},{"panelId":41,"x": 149,"y":822,"o":180,"shapeType":0},{"panelId":171,"x":74,"y" :779,"o":240,"shapeType":0},{"panelId":25,"x":149,"y":909,"o ":0,"shapeType":0},{"panelId":207,"x":524,"y":0,"o":120,"sha peType":0},{"panelId":111,"x":449,"y":43,"o":300,"shapeType" :0},{"panelId":190,"x":374,"y":0,"o":240,"shapeType":0},{"pa nelId":110,"x":299,"y":43,"o":300,"shapeType":0},{"panelId": 219,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":123,"x": 224,"y":0,"o":120,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3", "hardwareVersion":"1.4","rhythmActive":false,"rhythmConnecte d":true,"rhythmId":51,"rhythmMode":0,"rhythmPos":{"x":0.0,"y ":822.716844126005,"o":180.0}},"schedules":{},"state":{"brig htness":{"value":80,"max":100,"min":0},"colorMode":"effect", "ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0," max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max" :100,"min":0}}}
                          [16/09/2019 18:29:31] - ReturnString: {"name":"Nanoleaf Light Panels 51:76:30","serialNo":"S17382A2399","manufacturer":"Nanoleaf" ,"firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{" effectsList":["Conservatory Color Burst","Conservatory Flames","Conservatory Forest","Conservatory Inner Peace","Conservatory Nemo","Conservatory Northern Lights","Conservatory Pumpkin Spice","Conservatory Romantic","Conservatory Snowfall","Conservatory Walking Dead","Conservatory Warm White","Cops","Fireworks","Flow","Meteor Shower","Paint Splatter","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Conservatory Pumpkin Spice"},"firmwareUpgrade":{},"panelLayout":{"globalOrientati on":{"value":330,"max":360,"min":0},"layout":{"numPanels":28 ,"sideLength":150,"positionData":[{"panelId":103,"x":599,"y":43,"o":300,"shapeType":0},{"panel Id":37,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":241 ,"x":674,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":6 74,"y":259,"o":240,"shapeType":0},{"panelId":226,"x":599,"y" :303,"o":300,"shapeType":0},{"panelId":35,"x":599,"y":389,"o ":0,"shapeType":0},{"panelId":61,"x":524,"y":433,"o":180,"sh apeType":0},{"panelId":174,"x":449,"y":389,"o":120,"shapeTyp e":0},{"panelId":31,"x":524,"y":519,"o":0,"shapeType":0},{"p anelId":132,"x":449,"y":562,"o":300,"shapeType":0},{"panelId ":161,"x":374,"y":519,"o":0,"shapeType":0},{"panelId":150,"x ":299,"y":562,"o":60,"shapeType":0},{"panelId":146,"x":224," y":519,"o":0,"shapeType":0},{"panelId":85,"x":149,"y":562,"o ":180,"shapeType":0},{"panelId":27,"x":299,"y":649,"o":0,"sh apeType":0},{"panelId":214,"x":374,"y":692,"o":300,"shapeTyp e":0},{"panelId":39,"x":374,"y":779,"o":0,"shapeType":0},{"p anelId":88,"x":299,"y":822,"o":180,"shapeType":0},{"panelId" :166,"x":224,"y":779,"o":0,"shapeType":0},{"panelId":41,"x": 149,"y":822,"o":180,"shapeType":0},{"panelId":171,"x":74,"y" :779,"o":240,"shapeType":0},{"panelId":25,"x":149,"y":909,"o ":0,"shapeType":0},{"panelId":207,"x":524,"y":0,"o":120,"sha peType":0},{"panelId":111,"x":449,"y":43,"o":300,"shapeType" :0},{"panelId":190,"x":374,"y":0,"o":240,"shapeType":0},{"pa nelId":110,"x":299,"y":43,"o":300,"shapeType":0},{"panelId": 219,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":123,"x": 224,"y":0,"o":120,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3", "hardwareVersion":"1.4","rhythmActive":false,"rhythmConnecte d":true,"rhythmId":51,"rhythmMode":0,"rhythmPos":{"x":0.0,"y ":822.716844126005,"o":180.0}},"schedules":{},"state":{"brig htness":{"value":80,"max":100,"min":0},"colorMode":"effect", "ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0," max":360,"min":0},"on":{"value":true},"sat":{"value":0,"max" :100,"min":0}}}
                          [16/09/2019 18:29:32] - bGWorkerDoWork Exception: Input string '0.0' is not a valid integer. Path 'rhythm.rhythmPos.x', line 1, position 2474.
                          [16/09/2019 18:29:32] - Worker Thread Completed

                          here is my other panel

                          Code:
                          Connected, waiting to be initialized...
                          [16/09/2019 18:29:17] - Nanoleaf Plugin Started
                          [16/09/2019 18:29:17] - RegisterWebPage - Link: Nanoleaf 3P Linktext: Page_title: Instance:
                          [16/09/2019 18:29:17] - IP Address: <IP Substituted>
                          [16/09/2019 18:29:17] - Authorisation Token: <API Key Substituted>
                          [16/09/2019 18:29:17] - Obtaining Device State - Starting Thread
                          [16/09/2019 18:29:17] - StartThread Entered
                          [16/09/2019 18:29:17] - Timer Interval Found: 60000
                          [16/09/2019 18:29:17] - Nanoleaf Plugin Startup Complete
                          [16/09/2019 18:29:17] - Device State Worker Thread Started
                          [16/09/2019 18:29:17] - Making Attempt To Obtain Data...
                          [16/09/2019 18:29:17] - > Get Device Data
                          [16/09/2019 18:29:17] - SendWebCommand Entered - Command: 2 Input JSON? False
                          [16/09/2019 18:29:17] - > Input JSON:
                          [16/09/2019 18:29:17] - > Full Web Address: http://<IP Substituted>:16021/api/v1/<API Key Substituted>
                          [16/09/2019 18:29:17] - > HTTP Response Code: 200
                          [16/09/2019 18:29:17] - -> OK Reply From Device
                          [16/09/2019 18:29:17] - --> Server Return: {"name":"Nanoleaf Light Panels 51:76:4B","serialNo":"S17382A2426","manufacturer":"Nanoleaf","firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{"effectsList":["Cops","Fireworks","Flow","Living Room Black and White","Living Room Color Burst","Living Room Cosmos","Living Room Flames","Living Room Forest","Living Room Inner Peace","Living Room Mint","Living Room Nemo","Living Room Northern Lights","Living Room Pastel Clouds","Living Room Romantic","Living Room Snowfall","Living Room Tron Legacy","Living Room Warm White","Meteor Shower","Paint Splatter","Pulse","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Living Room Warm White"},"firmwareUpgrade":{},"panelLayout":{"globalOrientation":{"value":0,"max":360,"min":0},"layout":{"numPanels":20,"sideLength":150,"positionData":[{"panelId":103,"x":749,"y":43,"o":60,"shapeType":0},{"panelId":37,"x":749,"y":129,"o":120,"shapeType":0},{"panelId":207,"x":674,"y":173,"o":180,"shapeType":0},{"panelId":111,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":226,"x":524,"y":173,"o":180,"shapeType":0},{"panelId":110,"x":449,"y":129,"o":0,"shapeType":0},{"panelId":219,"x":374,"y":173,"o":60,"shapeType":0},{"panelId":61,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":31,"x":224,"y":173,"o":60,"shapeType":0},{"panelId":132,"x":149,"y":129,"o":120,"shapeType":0},{"panelId":161,"x":149,"y":43,"o":60,"shapeType":0},{"panelId":150,"x":75,"y":173,"o":300,"shapeType":0},{"panelId":114,"x":75,"y":259,"o":240,"shapeType":0},{"panelId":142,"x":0,"y":129,"o":0,"shapeType":0},{"panelId":174,"x":374,"y":259,"o":240,"shapeType":0},{"panelId":123,"x":449,"y":43,"o":60,"shapeType":0},{"panelId":35,"x":524,"y":259,"o":0,"shapeType":0},{"panelId":241,"x":824,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":824,"y":259,"o":240,"shapeType":0},{"panelId":190,"x":899,"y":129,"o":0,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3","hardwareVersion":"1.4","rhythmActive":false,"rhythmConnected":true,"rhythmId":14,"rhythmMode":0,"rhythmPos":{"x":74.99882338893201,"y":0.0007960626479857069,"o":240.0}},"schedules":{},"state":{"brightness":{"value":32,"max":100,"min":0},"colorMode":"effect","ct":{"value":2700,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}}
                          [16/09/2019 18:29:17] - ReturnString: {"name":"Nanoleaf Light Panels 51:76:4B","serialNo":"S17382A2426","manufacturer":"Nanoleaf","firmwareVersion":"3.2.0","hardwareVersion":"1.6-2","model":"NL22","cloudHash":{},"discovery":{},"effects":{"effectsList":["Cops","Fireworks","Flow","Living Room Black and White","Living Room Color Burst","Living Room Cosmos","Living Room Flames","Living Room Forest","Living Room Inner Peace","Living Room Mint","Living Room Nemo","Living Room Northern Lights","Living Room Pastel Clouds","Living Room Romantic","Living Room Snowfall","Living Room Tron Legacy","Living Room Warm White","Meteor Shower","Paint Splatter","Pulse","Pulse Pop Beats","Rhythmic Northern Lights","Ripple","Sound Bar","Streaking Notes"],"select":"Living Room Warm White"},"firmwareUpgrade":{},"panelLayout":{"globalOrientation":{"value":0,"max":360,"min":0},"layout":{"numPanels":20,"sideLength":150,"positionData":[{"panelId":103,"x":749,"y":43,"o":60,"shapeType":0},{"panelId":37,"x":749,"y":129,"o":120,"shapeType":0},{"panelId":207,"x":674,"y":173,"o":180,"shapeType":0},{"panelId":111,"x":599,"y":129,"o":120,"shapeType":0},{"panelId":226,"x":524,"y":173,"o":180,"shapeType":0},{"panelId":110,"x":449,"y":129,"o":0,"shapeType":0},{"panelId":219,"x":374,"y":173,"o":60,"shapeType":0},{"panelId":61,"x":299,"y":129,"o":0,"shapeType":0},{"panelId":31,"x":224,"y":173,"o":60,"shapeType":0},{"panelId":132,"x":149,"y":129,"o":120,"shapeType":0},{"panelId":161,"x":149,"y":43,"o":60,"shapeType":0},{"panelId":150,"x":75,"y":173,"o":300,"shapeType":0},{"panelId":114,"x":75,"y":259,"o":240,"shapeType":0},{"panelId":142,"x":0,"y":129,"o":0,"shapeType":0},{"panelId":174,"x":374,"y":259,"o":240,"shapeType":0},{"panelId":123,"x":449,"y":43,"o":60,"shapeType":0},{"panelId":35,"x":524,"y":259,"o":0,"shapeType":0},{"panelId":241,"x":824,"y":173,"o":300,"shapeType":0},{"panelId":211,"x":824,"y":259,"o":240,"shapeType":0},{"panelId":190,"x":899,"y":129,"o":0,"shapeType":0}]}},"rhythm":{"auxAvailable":false,"firmwareVersion":"2.4.3","hardwareVersion":"1.4","rhythmActive":false,"rhythmConnected":true,"rhythmId":14,"rhythmMode":0,"rhythmPos":{"x":74.99882338893201,"y":0.0007960626479857069,"o":240.0}},"schedules":{},"state":{"brightness":{"value":32,"max":100,"min":0},"colorMode":"effect","ct":{"value":2700,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}}
                          [16/09/2019 18:29:17] - bGWorkerDoWork Exception: Input string '74.99882338893201' is not a valid integer. Path 'rhythm.rhythmPos.x', line 1, position 2129.
                          [16/09/2019 18:29:17] - Worker Thread Completed
                          *edit, just to confirm, i removed one of the Rhythm modules and then everything worked fine and on startup it went through the devices and the device brightness & on/off values were updating, but when re-adding the rhythm module and restarting i now have a device showing a permanent on status, even though i can control it using buttons etc..

                          here is the error again when i send the off command.

                          Code:
                          [16/09/2019 18:58:18] - UpdateAndSync Called
                          [16/09/2019 18:58:18] - SendWebCommand Entered - Command: 4 Input JSON? False
                          [16/09/2019 18:58:18] - > Input JSON:
                          [16/09/2019 18:58:18] - > Full Web Address: http://<IP substituted >:16021/api/v1/<key substituted>/state
                          [16/09/2019 18:58:18] - > HTTP Response Code: 200
                          [16/09/2019 18:58:18] - -> OK Reply From Device
                          [16/09/2019 18:58:18] - --> Server Return: {"brightness":{"value":80,"max":100,"min":0},"colorMode":"effect","ct":{"value":3000,"max":6500,"min":1200},"hue":{"value":0,"max":360,"min":0},"on":{"value":false},"sat":{"value":0,"max":100,"min":0}}
                          [16/09/2019 18:58:18] - --> Device Off: False
                          [16/09/2019 18:58:18] - UpdateAndSync Exception: The given key was not present in the dictionary.
                          if you need me to test a version out just give me a shout
                          Can you try this version please - see if that solves it, if it does I will put it in the updater.

                          Comment


                            #88
                            IMPORTANT RE HS4

                            I have tested the HS3 plugin with HS4 version 4.0.0.19 and it appears to work WITH ISSUES (you will also have the HS3 configuration/status pages), the issues I observe seem to be around devices updating their status correctly in the UI when you control them. This may be because of the alpha state of HS4 I don't know and I don't intend on trying to fix it either.

                            At this present time it is unlikely that I will make a specific HS4 version of this plugin, I'm not convinced that I will upgrade to HS4 anytme soon and as such have little incentive to upgrade the plugin to be a native HS4 one with their new SDK. HS have decided to no longer support multi instance plugins in HS4 (which IMHO was a good feature in HS3 as if one plugin crashed then at least your other devices would work) so if I wished to support multiple Nanoleaf devices then I would have to do it in a single plugin, that alone is a reasonable amount of work for me to undertake let alone writing new pages for the UI and the new abstracted SDK.

                            Whilst the plugin sort of works today keep in mind that HST can and probably will kill off parts of HS3 as HS4 develops so whilst it works there is no guarantee it will forever, indeed I would say it was more likely than not that it will suddenly die one day especially as it is a multi instance one that HST may be keen to perhaps remove the code from HS4 going forward.

                            If you are intent on using the plugin with HS4 then please be advised that I can't support it and any help will be on a general best effort basis.

                            Comment


                              #89
                              mrhappy the 0.0.0.8 version you posted works great, i've tested all functions and they all work and the status is being processed and updated correctly. Thanks

                              Comment


                                #90
                                Originally posted by fuzzysb View Post
                                mrhappy the 0.0.0.8 version you posted works great, i've tested all functions and they all work and the status is being processed and updated correctly. Thanks
                                Great thanks, I'll put it in the updater in that case.

                                Comment

                                Working...
                                X