Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Sonoff NSPanel

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Sonoff NSPanel

Geplant Angeheftet Gesperrt Verschoben Hardware
1.5k Beiträge 78 Kommentatoren 637.3k Aufrufe 80 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ArmilarA Armilar

    @jobr99 sagte in Sonoff NSPanel:

    @Armilar fyi, wenn du noch nen esp32 nodemcu development board rumliegen hast kannst du das auch am pc testen / screenshots machen

    Hab ich noch rumliegen. Was bauche ich dafür alles?

    J Offline
    J Offline
    joBr99
    schrieb am zuletzt editiert von
    #451

    @armilar said in Sonoff NSPanel:

    @jobr99 sagte in Sonoff NSPanel:

    @Armilar fyi, wenn du noch nen esp32 nodemcu development board rumliegen hast kannst du das auch am pc testen / screenshots machen

    Hab ich noch rumliegen. Was bauche ich dafür alles?

    1. ESP32 mit Tasmota Flashen
    2. MQTT und apps.yaml konfigurieren
    3. RX und TX auf None setzen (hab vergessen was da default ist, aber damit das berry skript die serial ports benutzen kann dürfen die nicht in tasmota konfiguriert sein)
      d4ffe3c8-0232-4e54-9146-5a2f95e10284-image.png
    4. folgenden Berry Treiber installieren, wichtigste Änderung zur Version im Repo sind die geänderten serial ports

    self.ser = serial(3, 1, 115200, serial.SERIAL_8N1)

    (ansonsten fehlt auch noch der kram fürs flashen der firmware etc. den man hier nicht braucht, aber das wäre vermutlich nicht besonders schlimm wenn's drin wär)

    # Nextion Serial Protocol driver by joBr99 + nextion upload protocol 1.2 (the fast one yay) implementation using http range and tcpclient
    # based on;
    # Sonoff NSPanel Tasmota driver v0.47 | code by blakadder and s-hadinger
    
    class Nextion : Driver
    
        var ser
    	var flash_size
    	var flash_mode
    	var flash_skip
    	var flash_current_byte
    	var tftd
    	var progress_percentage_last
    	static header = bytes('55BB')
    
        def init()
            log("NSP: Initializing Driver")
            self.ser = serial(3, 1, 115200, serial.SERIAL_8N1)
            self.flash_mode = 0
    		self.flash_skip = false
    		tasmota.add_driver(self)
        end
    	
        def crc16(data, poly)
          if !poly  poly = 0xA001 end
          # CRC-16 MODBUS HASHING ALGORITHM
          var crc = 0xFFFF
          for i:0..size(data)-1
            crc = crc ^ data[i]
            for j:0..7
              if crc & 1
                crc = (crc >> 1) ^ poly
              else
                crc = crc >> 1
              end
            end
          end
          return crc
        end
    	
        def split_55(b)
          var ret = []
          var s = size(b)   
          var i = s-2   # start from last
          while i > 0
            if b[i] == 0x55 && b[i+1] == 0xBB           
              ret.push(b[i..s-1]) # push last msg to list
              b = b[(0..i-1)]   # write the rest back to b
            end
            i -= 1
          end
          ret.push(b)
          return ret
        end
    
    	# encode using custom protocol 55 BB [payload length] [payload] [crc] [crc]
        def encode(payload)
          var b = bytes()
          b += self.header
          b.add(size(payload), 2)   # add size as 1 byte
          b += bytes().fromstring(payload)
          var msg_crc = self.crc16(b)
          b.add(msg_crc, 2)       # crc 2 bytes, little endian
          return b
        end
    	
    	# send a nextion payload
    	def encodenx(payload)
    		var b = bytes().fromstring(payload)
    		b += bytes('FFFFFF')
    		return b
    	end
    	
    	def sendnx(payload)
    		var payload_bin = self.encodenx(payload)
    		self.ser.write(payload_bin)
    		 print("NSP: Sent =", payload_bin)
    		log("NSP: Nextion command sent = " + str(payload_bin), 3)
    	end
      
        def send(payload)
            var payload_bin = self.encode(payload)
            if self.flash_mode==1
                log("NSP: skipped command becuase still flashing", 3)
            else 
                self.ser.write(payload_bin)
                log("NSP: payload sent = " + str(payload_bin), 3)
            end
        end
    		
    	def every_100ms()
            import string
            if self.ser.available() > 0
                var msg = self.ser.read()
                if size(msg) > 0
                    print("NSP: Received Raw =", msg)
                    if self.flash_mode==1
                        log("no flashing in this version")
                    else
    					# Recive messages using custom protocol 55 BB [payload length] [payload length] [payload] [crc] [crc]
    					if msg[0..1] == self.header
    						var lst = self.split_55(msg)
    						for i:0..size(lst)-1
    							msg = lst[i]
    							#var j = msg[2]+2
    							var j = size(msg) - 3
    							msg = msg[4..j]
    							if size(msg) > 2
    								var jm = string.format("{\"CustomRecv\":\"%s\"}",msg.asstring())
    								tasmota.publish_result(jm, "RESULT")
    							end
    						end
    					elif msg == bytes('000000FFFFFF88FFFFFF')
    						log("NSP: Screen Initialized")
    					else
                            var jm = string.format("{\"nextion\":\"%s\"}",str(msg[0..-4]))
    						tasmota.publish_result(jm, "RESULT")
    					end       			
                    end
                end
            end
        end
    end
    
    var nextion = Nextion()
    
    def send_cmd(cmd, idx, payload, payload_json)
        nextion.sendnx(payload)
        tasmota.resp_cmnd_done()
    end
    
    tasmota.add_cmd('Nextion', send_cmd)
    
    def send_cmd2(cmd, idx, payload, payload_json)
        nextion.send(payload)
        tasmota.resp_cmnd_done()
    end
    
    tasmota.add_cmd('CustomSend', send_cmd2)
    
    1. HMI Datei aus dem repo runterladen und im nextion editor öffnen und auf debug klicken
      (tft datei aus dem repo geht auch, wenn man auf debug klickt ohne nen projekt offen zu haben)

    2. Unten auf User MCU Input umstellen, COM Port vom ESP32 auswählen und auf start drücken. (und dann nen paar sekunden warten bis die nächste startupEvent Nachricht kommt)

    ede7dea1-582e-4c37-9f58-407a5b6f718a-image.png

    1 Antwort Letzte Antwort
    0
    • a200A a200

      @jobr99

      Jetzt würde ich gerne einen Homematic-Schalter steuern:

      var Buero_Seite_1: PageEntities =
      {
          "type": "cardEntities",
          "heading": "Büro",
          "useColor": true,
          "items": [
              <PageItem>{ id: "alias.0.NSPanel.Buero_Drucker", icon: "switch", name: "Drucker", offColor: MSRed, onColor: MSGreen}
          ]
      };
      

      alias.0.NSPanel.Buero_Drucker = der DP des Schalters (false/true)

      aber die Büroseite bleibt leer. Habt ihr da einen Tipp?

      J Offline
      J Offline
      joBr99
      schrieb am zuletzt editiert von
      #452

      @a200 zu ioBroker und dem TypeScript Backend kann ich dir nix sagen

      1 Antwort Letzte Antwort
      0
      • a200A a200

        @jobr99

        Jetzt würde ich gerne einen Homematic-Schalter steuern:

        var Buero_Seite_1: PageEntities =
        {
            "type": "cardEntities",
            "heading": "Büro",
            "useColor": true,
            "items": [
                <PageItem>{ id: "alias.0.NSPanel.Buero_Drucker", icon: "switch", name: "Drucker", offColor: MSRed, onColor: MSGreen}
            ]
        };
        

        alias.0.NSPanel.Buero_Drucker = der DP des Schalters (false/true)

        aber die Büroseite bleibt leer. Habt ihr da einen Tipp?

        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von Armilar
        #453

        @a200

        Wie sieht dein Alias aus? Switch bekommst du am schnellsten mit Alias "Steckdose" oder "Licht" hin

        0854cf54-29ff-489d-b945-89e29b3a697d-image.png

        Manchmal Haken die Aliase. Dann einfach mal den Homatic Datenpunkt per Hand umschalten, dann zieht der Alias nach

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        a200A 1 Antwort Letzte Antwort
        0
        • ArmilarA Armilar

          @a200

          Wie sieht dein Alias aus? Switch bekommst du am schnellsten mit Alias "Steckdose" oder "Licht" hin

          0854cf54-29ff-489d-b945-89e29b3a697d-image.png

          Manchmal Haken die Aliase. Dann einfach mal den Homatic Datenpunkt per Hand umschalten, dann zieht der Alias nach

          a200A Offline
          a200A Offline
          a200
          schrieb am zuletzt editiert von a200
          #454

          @armilar

          Der Alias an sich funktioniert.

          323e91fb-bcb0-4c85-9683-913c15a451cf-grafik.png

          var Buero_Seite_1: PageEntities =
          {
              "type": "cardEntities",
              "heading": "Büro",
              "useColor": true,
              "items": [
                  <PageItem>{ id: "alias.0.NSPanel.Schalter.Keller_Drucker", icon: "switch", name: "Drucker", offColor: MSRed, onColor: MSGreen}
              ]
          };
          

          Aber die Ansicht Büro bleibt leer. Zum Test habe ich die Ansicht umbenannt und den neuen Namen kann ich auf dem Panel sehen. Ansonsten aber alles leer.

          Ist das: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/README.md hier die einzige Doku dazu?

          OK, Jetzt scheint es zu gehen

          IoBroker auf QNAP TS-451, Raspi und NUC

          ArmilarA 1 Antwort Letzte Antwort
          0
          • a200A a200

            @armilar

            Der Alias an sich funktioniert.

            323e91fb-bcb0-4c85-9683-913c15a451cf-grafik.png

            var Buero_Seite_1: PageEntities =
            {
                "type": "cardEntities",
                "heading": "Büro",
                "useColor": true,
                "items": [
                    <PageItem>{ id: "alias.0.NSPanel.Schalter.Keller_Drucker", icon: "switch", name: "Drucker", offColor: MSRed, onColor: MSGreen}
                ]
            };
            

            Aber die Ansicht Büro bleibt leer. Zum Test habe ich die Ansicht umbenannt und den neuen Namen kann ich auf dem Panel sehen. Ansonsten aber alles leer.

            Ist das: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/README.md hier die einzige Doku dazu?

            OK, Jetzt scheint es zu gehen

            ArmilarA Offline
            ArmilarA Offline
            Armilar
            Most Active Forum Testing
            schrieb am zuletzt editiert von
            #455

            @a200 Ich weiß, die Datenpunkte kann man überall sehen, man denkt der Alias wäre intakt - aber existState kommt mit false zurück....

            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            a200A 1 Antwort Letzte Antwort
            0
            • ArmilarA Armilar

              @a200 Ich weiß, die Datenpunkte kann man überall sehen, man denkt der Alias wäre intakt - aber existState kommt mit false zurück....

              a200A Offline
              a200A Offline
              a200
              schrieb am zuletzt editiert von a200
              #456

              @armilar nur die Steuerung geht nicht. Muss ich im Alias noch die Ausgabe konvertieren? Also aus true -> 1 und aus false -> 0 machen, oder so was? Weil jetzt wird ein Schalter angezeigt, aber die Dose schaltet nicht.

              event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 1 - PageId: 0
              event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 0 - PageId: 0

              Also die Steuerung für Schalter und Rollladen werden angezeigt. Die Rolle muss nur richtig gesetzt werden. Aber aber sie haben keine Auswirkung auf die Geräte.

              IoBroker auf QNAP TS-451, Raspi und NUC

              ArmilarA 1 Antwort Letzte Antwort
              0
              • a200A a200

                @armilar nur die Steuerung geht nicht. Muss ich im Alias noch die Ausgabe konvertieren? Also aus true -> 1 und aus false -> 0 machen, oder so was? Weil jetzt wird ein Schalter angezeigt, aber die Dose schaltet nicht.

                event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 1 - PageId: 0
                event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 0 - PageId: 0

                Also die Steuerung für Schalter und Rollladen werden angezeigt. Die Rolle muss nur richtig gesetzt werden. Aber aber sie haben keine Auswirkung auf die Geräte.

                ArmilarA Offline
                ArmilarA Offline
                Armilar
                Most Active Forum Testing
                schrieb am zuletzt editiert von Armilar
                #457

                @a200 sagte in Sonoff NSPanel:

                @armilar nur die Steuerung geht nicht. Muss ich im Alias noch die Ausgabe konvertieren? Also aus true -> 1 und aus false -> 0 machen, oder so was? Weil jetzt wird ein Schalter angezeigt, aber die Dose schaltet nicht.

                event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 1 - PageId: 0
                event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 0 - PageId: 0

                Also die Steuerung für Schalter und Rollladen werden angezeigt. Die Rolle muss nur richtig gesetzt werden. Aber aber sie haben keine Auswirkung auf die Geräte.

                Bei mir funktioniert ein Schalter so, wie er funktionieren muss (false = aus und true = an) --> und das Gerät macht was es soll 😉
                Oder ist es bei dir eher Toggle? Zustandsänderungen über n-Geräte (Schalter, noch ein Schalter, Alexa ... und jeder Zustand verändert den Schalter? Dann wäre ein Button (Alias Taste) besser geeignet

                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                a200A 1 Antwort Letzte Antwort
                0
                • ArmilarA Armilar

                  @a200 sagte in Sonoff NSPanel:

                  @armilar nur die Steuerung geht nicht. Muss ich im Alias noch die Ausgabe konvertieren? Also aus true -> 1 und aus false -> 0 machen, oder so was? Weil jetzt wird ein Schalter angezeigt, aber die Dose schaltet nicht.

                  event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 1 - PageId: 0
                  event - buttonPress2 - alias.0.NSPanel.Schalter.Keller_Drucker - OnOff - 0 - PageId: 0

                  Also die Steuerung für Schalter und Rollladen werden angezeigt. Die Rolle muss nur richtig gesetzt werden. Aber aber sie haben keine Auswirkung auf die Geräte.

                  Bei mir funktioniert ein Schalter so, wie er funktionieren muss (false = aus und true = an) --> und das Gerät macht was es soll 😉
                  Oder ist es bei dir eher Toggle? Zustandsänderungen über n-Geräte (Schalter, noch ein Schalter, Alexa ... und jeder Zustand verändert den Schalter? Dann wäre ein Button (Alias Taste) besser geeignet

                  a200A Offline
                  a200A Offline
                  a200
                  schrieb am zuletzt editiert von
                  #458

                  @armilar Meine Aliases haben keine .GET bzw. .SET Erweiterung. Deshalb habe ich den Code bisschen angepasst und die Zeilen 1188-1190 hinzugefügt. Damit funktioniert es bei mir auch. Ich muss mal schauen, wie ich das in den Griff bekomme. Ich glaube ich muss meine Aliases anders anlegen.

                  a43617d5-7bb4-428d-bf43-069bebc4cedf-grafik.png

                  IoBroker auf QNAP TS-451, Raspi und NUC

                  ArmilarA 1 Antwort Letzte Antwort
                  0
                  • a200A a200

                    @armilar Meine Aliases haben keine .GET bzw. .SET Erweiterung. Deshalb habe ich den Code bisschen angepasst und die Zeilen 1188-1190 hinzugefügt. Damit funktioniert es bei mir auch. Ich muss mal schauen, wie ich das in den Griff bekomme. Ich glaube ich muss meine Aliases anders anlegen.

                    a43617d5-7bb4-428d-bf43-069bebc4cedf-grafik.png

                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    schrieb am zuletzt editiert von Armilar
                    #459

                    @a200 sagte in Sonoff NSPanel:

                    @armilar Meine Aliases haben keine .GET bzw. .SET Erweiterung. Deshalb habe ich den Code bisschen angepasst und die Zeilen 1188-1190 hinzugefügt. Damit funktioniert es bei mir auch. Ich muss mal schauen, wie ich das in den Griff bekomme. Ich glaube ich muss meine Aliases anders anlegen.

                    a43617d5-7bb4-428d-bf43-069bebc4cedf-grafik.png

                    Muss auch nicht.

                    Switch case läuft ohne "break" durch...

                    Damit macht socket das gleiche wie light (auch ohne Code 😉 )

                    case "socket":
                    case "light":
                          setIfExists(id + ".SET", action);
                          break;
                    

                    Und welche Aliase wären das denn? Sind doch mittlerweile alle drin!

                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    a200A 1 Antwort Letzte Antwort
                    0
                    • ArmilarA Armilar

                      @a200 sagte in Sonoff NSPanel:

                      @armilar Meine Aliases haben keine .GET bzw. .SET Erweiterung. Deshalb habe ich den Code bisschen angepasst und die Zeilen 1188-1190 hinzugefügt. Damit funktioniert es bei mir auch. Ich muss mal schauen, wie ich das in den Griff bekomme. Ich glaube ich muss meine Aliases anders anlegen.

                      a43617d5-7bb4-428d-bf43-069bebc4cedf-grafik.png

                      Muss auch nicht.

                      Switch case läuft ohne "break" durch...

                      Damit macht socket das gleiche wie light (auch ohne Code 😉 )

                      case "socket":
                      case "light":
                            setIfExists(id + ".SET", action);
                            break;
                      

                      Und welche Aliase wären das denn? Sind doch mittlerweile alle drin!

                      a200A Offline
                      a200A Offline
                      a200
                      schrieb am zuletzt editiert von a200
                      #460

                      @armilar sagte in Sonoff NSPanel:

                      @a200 sagte in Sonoff NSPanel:

                      @armilar Meine Aliases haben keine .GET bzw. .SET Erweiterung. Deshalb habe ich den Code bisschen angepasst und die Zeilen 1188-1190 hinzugefügt. Damit funktioniert es bei mir auch. Ich muss mal schauen, wie ich das in den Griff bekomme. Ich glaube ich muss meine Aliases anders anlegen.

                      a43617d5-7bb4-428d-bf43-069bebc4cedf-grafik.png

                      Muss auch nicht.

                      Switch case läuft ohne "break" durch...

                      Damit macht socket das gleiche wie light (auch ohne Code 😉 )

                      case "socket":
                      case "light":
                            setIfExists(id + ".SET", action);
                            break;
                      

                      Ja aber ich will nicht id + ".SET" sondern einfach nur id haben. Denn meine Datenpunkte haben weder GET noch SET.

                      Ich schreibe dann z.B. nach "alias.0.NSPanel.Schalter.Keller_Drucker" = "hm-rpc.0.OEQ2403914.1.STATE" und der Wert soll direkt in STATE geschrieben werden.
                      Alternativ sollte man Abfragen ob es SET/GET gibt. So ähnlich wie in der Zeile: 1352...

                                 if (o.common.role == "light" || o.common.role == "socket") {
                                      if (existsState(id + ".GET")) {
                                          val = getState(id + ".GET").val;
                                          RegisterDetailEntityWatcher(id + ".GET", pageItem, type);
                                      }
                                      else if (existsState(id + ".SET")) {
                                          val = getState(id + ".SET").val;
                                          RegisterDetailEntityWatcher(id + ".SET", pageItem, type);
                                      }
                      

                      Aus meiner Sicht gehört da noch der dritter Fall else mit:

                                      else if (existsState(id)) {
                                          val = getState(id).val;
                                          RegisterDetailEntityWatcher(id, pageItem, type);
                                      }
                      

                      Das funktioniert bei mir.

                      Mich würde interessieren welches Geräte du steuerst und wie die DPe heißen. Ich vermute irgendwas mit .GET oder .SET am Ende.

                      IoBroker auf QNAP TS-451, Raspi und NUC

                      ArmilarA 1 Antwort Letzte Antwort
                      0
                      • a200A a200

                        @armilar sagte in Sonoff NSPanel:

                        @a200 sagte in Sonoff NSPanel:

                        @armilar Meine Aliases haben keine .GET bzw. .SET Erweiterung. Deshalb habe ich den Code bisschen angepasst und die Zeilen 1188-1190 hinzugefügt. Damit funktioniert es bei mir auch. Ich muss mal schauen, wie ich das in den Griff bekomme. Ich glaube ich muss meine Aliases anders anlegen.

                        a43617d5-7bb4-428d-bf43-069bebc4cedf-grafik.png

                        Muss auch nicht.

                        Switch case läuft ohne "break" durch...

                        Damit macht socket das gleiche wie light (auch ohne Code 😉 )

                        case "socket":
                        case "light":
                              setIfExists(id + ".SET", action);
                              break;
                        

                        Ja aber ich will nicht id + ".SET" sondern einfach nur id haben. Denn meine Datenpunkte haben weder GET noch SET.

                        Ich schreibe dann z.B. nach "alias.0.NSPanel.Schalter.Keller_Drucker" = "hm-rpc.0.OEQ2403914.1.STATE" und der Wert soll direkt in STATE geschrieben werden.
                        Alternativ sollte man Abfragen ob es SET/GET gibt. So ähnlich wie in der Zeile: 1352...

                                   if (o.common.role == "light" || o.common.role == "socket") {
                                        if (existsState(id + ".GET")) {
                                            val = getState(id + ".GET").val;
                                            RegisterDetailEntityWatcher(id + ".GET", pageItem, type);
                                        }
                                        else if (existsState(id + ".SET")) {
                                            val = getState(id + ".SET").val;
                                            RegisterDetailEntityWatcher(id + ".SET", pageItem, type);
                                        }
                        

                        Aus meiner Sicht gehört da noch der dritter Fall else mit:

                                        else if (existsState(id)) {
                                            val = getState(id).val;
                                            RegisterDetailEntityWatcher(id, pageItem, type);
                                        }
                        

                        Das funktioniert bei mir.

                        Mich würde interessieren welches Geräte du steuerst und wie die DPe heißen. Ich vermute irgendwas mit .GET oder .SET am Ende.

                        ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        schrieb am zuletzt editiert von
                        #461

                        @a200
                        Also du arbeitest in Wirklichkeit nicht mit einem Alias, denn der hat eigentlich immer ein .SET oder . ACTUAL, oder?

                        Du möchtest für dich lieber mit den Datenpunkten arbeiten. Das macht nur bei der Anzahl an Varianten von Adaptern wenig sinn, denn dadurch wird dein Code schnell innerhalb der nächsten Wochen auf unübersichtliche 5000 Zeilen ansteigen. Ich würde mich an deiner Stelle mit dem Geräte-Manager oder Alias-Manager anfreunden und mir für das Panel Aliase bauen.

                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        a200A 1 Antwort Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @a200
                          Also du arbeitest in Wirklichkeit nicht mit einem Alias, denn der hat eigentlich immer ein .SET oder . ACTUAL, oder?

                          Du möchtest für dich lieber mit den Datenpunkten arbeiten. Das macht nur bei der Anzahl an Varianten von Adaptern wenig sinn, denn dadurch wird dein Code schnell innerhalb der nächsten Wochen auf unübersichtliche 5000 Zeilen ansteigen. Ich würde mich an deiner Stelle mit dem Geräte-Manager oder Alias-Manager anfreunden und mir für das Panel Aliase bauen.

                          a200A Offline
                          a200A Offline
                          a200
                          schrieb am zuletzt editiert von
                          #462

                          @armilar sagte in Sonoff NSPanel:

                          @a200
                          Also du arbeitest in Wirklichkeit nicht mit einem Alias, denn der hat eigentlich immer ein .SET oder . ACTUAL, oder?

                          Du möchtest für dich lieber mit den Datenpunkten arbeiten. Das macht nur bei der Anzahl an Varianten von Adaptern wenig sinn, denn dadurch wird dein Code schnell innerhalb der nächsten Wochen auf unübersichtliche 5000 Zeilen ansteigen. Ich würde mich an deiner Stelle mit dem Geräte-Manager oder Alias-Manager anfreunden und mir für das Panel Aliase bauen.

                          Sagen wir mal so. Ich würde gerne korrekt mit den Aliases arbeiten, aber dass kann ich im Moment noch nicht. deshalb habe ich auch oben geschrieben "Ich glaube ich muss meine Aliases anders anlegen". Ich nutze den Alias Manager in IoB und das wahrscheinlich falsch bzw nicht ganz richtig.

                          So sieht im Moment mein Alias für die Homematic Steckdose:

                          {
                            "type": "state",
                            "common": {
                              "name": "KG. Büro Drucker.STATE",
                              "role": "socket",
                              "type": "boolean",
                              "read": true,
                              "write": true,
                              "alias": {
                                "id": "hm-rpc.0.OEQ2403914.1.STATE"
                              }
                            },
                            "_id": "alias.0.NSPanel.Schalter.Keller_Drucker",
                            "native": {},
                            "acl": {
                              "object": 1636,
                              "state": 1636,
                              "owner": "system.user.admin",
                              "ownerGroup": "system.group.administrator"
                            },
                            "from": "system.adapter.admin.0",
                            "user": "system.user.admin",
                            "ts": 1651854682051
                          }
                          

                          Was muss ich ändern um die zusätzlichen States zu erhalten.

                          IoBroker auf QNAP TS-451, Raspi und NUC

                          Thomas BraunT ArmilarA 2 Antworten Letzte Antwort
                          0
                          • a200A a200

                            @armilar sagte in Sonoff NSPanel:

                            @a200
                            Also du arbeitest in Wirklichkeit nicht mit einem Alias, denn der hat eigentlich immer ein .SET oder . ACTUAL, oder?

                            Du möchtest für dich lieber mit den Datenpunkten arbeiten. Das macht nur bei der Anzahl an Varianten von Adaptern wenig sinn, denn dadurch wird dein Code schnell innerhalb der nächsten Wochen auf unübersichtliche 5000 Zeilen ansteigen. Ich würde mich an deiner Stelle mit dem Geräte-Manager oder Alias-Manager anfreunden und mir für das Panel Aliase bauen.

                            Sagen wir mal so. Ich würde gerne korrekt mit den Aliases arbeiten, aber dass kann ich im Moment noch nicht. deshalb habe ich auch oben geschrieben "Ich glaube ich muss meine Aliases anders anlegen". Ich nutze den Alias Manager in IoB und das wahrscheinlich falsch bzw nicht ganz richtig.

                            So sieht im Moment mein Alias für die Homematic Steckdose:

                            {
                              "type": "state",
                              "common": {
                                "name": "KG. Büro Drucker.STATE",
                                "role": "socket",
                                "type": "boolean",
                                "read": true,
                                "write": true,
                                "alias": {
                                  "id": "hm-rpc.0.OEQ2403914.1.STATE"
                                }
                              },
                              "_id": "alias.0.NSPanel.Schalter.Keller_Drucker",
                              "native": {},
                              "acl": {
                                "object": 1636,
                                "state": 1636,
                                "owner": "system.user.admin",
                                "ownerGroup": "system.group.administrator"
                              },
                              "from": "system.adapter.admin.0",
                              "user": "system.user.admin",
                              "ts": 1651854682051
                            }
                            

                            Was muss ich ändern um die zusätzlichen States zu erhalten.

                            Thomas BraunT Online
                            Thomas BraunT Online
                            Thomas Braun
                            Most Active
                            schrieb am zuletzt editiert von
                            #463

                            @a200 sagte in Sonoff NSPanel:

                            "name": "KG. Büro Drucker.STATE",

                            Keine Ahnung ob es wichtig ist, aber Leerzeichen und Umlaute sollte man tunlichst vermeiden.

                            Linux-Werkzeugkasten:
                            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                            NodeJS Fixer Skript:
                            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                            a200A 1 Antwort Letzte Antwort
                            1
                            • Thomas BraunT Thomas Braun

                              @a200 sagte in Sonoff NSPanel:

                              "name": "KG. Büro Drucker.STATE",

                              Keine Ahnung ob es wichtig ist, aber Leerzeichen und Umlaute sollte man tunlichst vermeiden.

                              a200A Offline
                              a200A Offline
                              a200
                              schrieb am zuletzt editiert von a200
                              #464

                              @thomas-braun Ja, du hast Recht. Das ist nur ein Test. Wobei der Name sollte keine Probleme machen. Habe selbst das Problem gehabt, dass ein zweiter Umlaut in Bindings Probleme macht. Der erster nicht. Danke dir für den Hinweis.

                              IoBroker auf QNAP TS-451, Raspi und NUC

                              1 Antwort Letzte Antwort
                              2
                              • a200A a200

                                @armilar sagte in Sonoff NSPanel:

                                @a200
                                Also du arbeitest in Wirklichkeit nicht mit einem Alias, denn der hat eigentlich immer ein .SET oder . ACTUAL, oder?

                                Du möchtest für dich lieber mit den Datenpunkten arbeiten. Das macht nur bei der Anzahl an Varianten von Adaptern wenig sinn, denn dadurch wird dein Code schnell innerhalb der nächsten Wochen auf unübersichtliche 5000 Zeilen ansteigen. Ich würde mich an deiner Stelle mit dem Geräte-Manager oder Alias-Manager anfreunden und mir für das Panel Aliase bauen.

                                Sagen wir mal so. Ich würde gerne korrekt mit den Aliases arbeiten, aber dass kann ich im Moment noch nicht. deshalb habe ich auch oben geschrieben "Ich glaube ich muss meine Aliases anders anlegen". Ich nutze den Alias Manager in IoB und das wahrscheinlich falsch bzw nicht ganz richtig.

                                So sieht im Moment mein Alias für die Homematic Steckdose:

                                {
                                  "type": "state",
                                  "common": {
                                    "name": "KG. Büro Drucker.STATE",
                                    "role": "socket",
                                    "type": "boolean",
                                    "read": true,
                                    "write": true,
                                    "alias": {
                                      "id": "hm-rpc.0.OEQ2403914.1.STATE"
                                    }
                                  },
                                  "_id": "alias.0.NSPanel.Schalter.Keller_Drucker",
                                  "native": {},
                                  "acl": {
                                    "object": 1636,
                                    "state": 1636,
                                    "owner": "system.user.admin",
                                    "ownerGroup": "system.group.administrator"
                                  },
                                  "from": "system.adapter.admin.0",
                                  "user": "system.user.admin",
                                  "ts": 1651854682051
                                }
                                

                                Was muss ich ändern um die zusätzlichen States zu erhalten.

                                ArmilarA Offline
                                ArmilarA Offline
                                Armilar
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von Armilar
                                #465

                                @a200
                                geht finde ich mit dem Geräte-Manager meistens schneller...

                                b5fef6a8-2211-4c48-8a4d-a8ecd54920f4-image.png

                                "+" drücken
                                75f7e5bc-cb99-4bce-8471-66488751bf8f-image.png

                                In diesem Fall Steckdose auswählen und Namen vergeben
                                8eb2b4e7-d73b-4dcf-a4c8-96f1feb2d7d5-image.png

                                Aktor auswählen (Habe keine Homatic Schalter, daher Alternative aus Sonoff)
                                215678f6-967a-4bc8-9fc6-b84caf4687d2-image.png

                                speichern, Alias fertig...

                                ...mach das nicht so wissenschaftlich - ist nur ein Alias

                                P.S. Device-Manager heißt das Ding

                                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                1 Antwort Letzte Antwort
                                1
                                • J Offline
                                  J Offline
                                  joBr99
                                  schrieb am zuletzt editiert von
                                  #466

                                  https://github.com/joBr99/nspanel-lovelace-ui/commit/922baa41b41a0ba2c3ce2e4aded5810fba901e62

                                  Das aktuelle Release benötigt die Beschriftungen im command, hab die auch mal beim ioBroker Skript hinzugefügt (ungetestet)

                                  1 Antwort Letzte Antwort
                                  0
                                  • W Offline
                                    W Offline
                                    wheinz44
                                    schrieb am zuletzt editiert von
                                    #467

                                    Guten Morgen an alle,
                                    an und für sich habe ich mit Tasmota und IOBroker keine Probleme, aber dieses NSPanel schaft mich.
                                    Außer Uhrzeit und Datum, ein paar Seiten mit Überschrift (die Ich ändern kann) funktioniert bei meinem NSPanel nichts.Mittlerweile kenne ich fast alle 466 Posts auswndig, und habe alle Anleitungen durchgearbeitet.
                                    Ich vermute das es an meine Aliase scheitert. Wenn wer eine Idee hat, Screenshots kann ich bei fragen am Abend schicken. Danke im voraus, wheinz44

                                    D ArmilarA 2 Antworten Letzte Antwort
                                    0
                                    • W wheinz44

                                      Guten Morgen an alle,
                                      an und für sich habe ich mit Tasmota und IOBroker keine Probleme, aber dieses NSPanel schaft mich.
                                      Außer Uhrzeit und Datum, ein paar Seiten mit Überschrift (die Ich ändern kann) funktioniert bei meinem NSPanel nichts.Mittlerweile kenne ich fast alle 466 Posts auswndig, und habe alle Anleitungen durchgearbeitet.
                                      Ich vermute das es an meine Aliase scheitert. Wenn wer eine Idee hat, Screenshots kann ich bei fragen am Abend schicken. Danke im voraus, wheinz44

                                      D Offline
                                      D Offline
                                      DocGame
                                      schrieb am zuletzt editiert von
                                      #468

                                      @wheinz44 Willkommen im Club der schweigenden Masse...
                                      Ich habe vor 3 Monaten meine 2 NSPanels mit Tasmota geflasht und einige Tage versucht die ersten Anleitungen zu befolgen. Ich bin hierzu vermutlich zu b...
                                      Diesen Post verfolge ich zwar mit Interesse, habe mir aber vorgenommen erst wieder einzusteigen wenn es einen Adapter oder eine "Dummy"-Anleitung gibt. Bei den Ergebnissen, die ich hier sehe fällt mir das Warten ganz schön schwer, da diese genau meinen Vorstellungen entsprechen. Bei meinem Programmierkenntnisstand weiß ich aber im Vorfeld, dass es im Moment nur Frust und keine Ergebnisse gibt.
                                      Noch habe ich Hoffnung, dass eure grandiose "Forschungsarbeit" in absehbarer Zeit auch für Normaluser umsetzbar wird.

                                      M 1 Antwort Letzte Antwort
                                      1
                                      • D DocGame

                                        @wheinz44 Willkommen im Club der schweigenden Masse...
                                        Ich habe vor 3 Monaten meine 2 NSPanels mit Tasmota geflasht und einige Tage versucht die ersten Anleitungen zu befolgen. Ich bin hierzu vermutlich zu b...
                                        Diesen Post verfolge ich zwar mit Interesse, habe mir aber vorgenommen erst wieder einzusteigen wenn es einen Adapter oder eine "Dummy"-Anleitung gibt. Bei den Ergebnissen, die ich hier sehe fällt mir das Warten ganz schön schwer, da diese genau meinen Vorstellungen entsprechen. Bei meinem Programmierkenntnisstand weiß ich aber im Vorfeld, dass es im Moment nur Frust und keine Ergebnisse gibt.
                                        Noch habe ich Hoffnung, dass eure grandiose "Forschungsarbeit" in absehbarer Zeit auch für Normaluser umsetzbar wird.

                                        M Offline
                                        M Offline
                                        Muchul
                                        schrieb am zuletzt editiert von Muchul
                                        #469

                                        @docgame sagte in Sonoff NSPanel:

                                        Noch habe ich Hoffnung, dass eure grandiose "Forschungsarbeit" in absehbarer Zeit auch für Normaluser umsetzbar wird.

                                        ++ Ich leider auch

                                        a200A 1 Antwort Letzte Antwort
                                        0
                                        • M Muchul

                                          @docgame sagte in Sonoff NSPanel:

                                          Noch habe ich Hoffnung, dass eure grandiose "Forschungsarbeit" in absehbarer Zeit auch für Normaluser umsetzbar wird.

                                          ++ Ich leider auch

                                          a200A Offline
                                          a200A Offline
                                          a200
                                          schrieb am zuletzt editiert von
                                          #470

                                          @muchul @DocGame @wheinz44 - Mädels. Ich bin zwar ein Anfänger beim Thema NSPanel, allerdings hatte ich die ersten ersten Erfolge. Ich bin gerne bereit detailliert mit euch eure Konfiguration durch zugehen und versuchen ein Gerät einzubinden. Danach läuft es schon. Also wer möchte mitmachen?

                                          IoBroker auf QNAP TS-451, Raspi und NUC

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          744

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe