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.4k

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

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

Sonoff NSPanel

Geplant Angeheftet Gesperrt Verschoben Hardware
1.5k Beiträge 78 Kommentatoren 638.8k 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.
  • J joBr99

    @armilar said in Sonoff NSPanel:

    @a200 sagte in Sonoff NSPanel:

    @armilar @Mikewolf

    648b1ac6-62af-4973-b403-b7eff42bcee0-grafik.png

    Klappt leider nicht. Über mqtt-Explorer sehe ich den Datenpunkt aber in IoBroker nicht.

    6068ae70-47a0-46c0-92e9-565e8880b3e7-grafik.png

    Weitere Ideen?

    hmmm - für mich sieht das so aus, als wenn da noch NSPSend mit der Sonoff-Firmware arbeitet. Hast du denn die folgenden Schritte gemacht?

    • Tasmota Konsole/Verwaltung Dateisystem: autoexec.be und autoexec.bec löschen

    • autoexec.be mit Inhalt von https://github.com/joBr99/nspanel-lovelace-ui/blob/main/tasmota/autoexec.be neu anlegen

    • Restart

    • In Tasmota Konsole "FlashNextion http://nspanel.pky.eu/lui-release.tft" ausführen
      13799aaa-3167-4d86-a2c0-af25986c2451-image.png

    • Wenn du das siehst, bist du schon fast am Ziel:
      985c9b0c-4abb-4caa-969b-0a2e9d966d65-image.png

    • Jetzt TypeScript in ioBroker unter "global" anlegen und Inhalt icon_mapping.ts: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/icon_mapping.ts reinkopieren und speichern.

    • TypeScript anlegen und letzte Version Code1/Code2 aus Forum reinkopieren. Alternativ hierzu die letzte Version (ist in der Regel aber nicht so weit wie die hier im Thread) aus der https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts verwenden.

    • Beide TypeScript-Skripte aktivieren nicht vergessen

    • Im TypeScript MQTT-Parameter und ggfs. andere Parameter anpassen, später dann irgendwann ALIASE erzeugen

    • Jetzt den CustomSend time~11:35 absenden

    • Mit der Tasmota Version sollte es laufen. Es wird zwar empfohlen, die tasmota32-nspanel.bin zu verwenden, jedoch habe ich auch die deutsche tasmota32-DE.bin am laufen

    Wenn alles korrekt befolgt, dann sollte der Screensaver (ggfs. noch nicht alle Werte drin, da ja noch Aliase fehlen) erscheinen:
    1a6928ff-3c2e-478d-b57b-43c95ba126da-image.png

    P.S.: Die Anleitung weicht stark von denen im Internet ab - quasi ab anlegen der autoexec.be, welche schon einen komplett anderen Inhalt hat, als die in den Videos.

    Wenn die o.a. Anleitung befolgt wird, kann jederzeit ein Upgrade auf neuere Firmware (Berry-Driver/TFT-Firmware) mit folgenden Befehlen erfolgen:

    Backlog UpdateDriverVersion https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/tasmota/autoexec.be; Restart 1
    
    FlashNextion http://nspanel.pky.eu/lui-release.tft
    

    FYI:
    Tasmota generiert beim ersten ausführen eines Berry Skripts eine .bec datei. Wenn nach dem austauschen von der autoexec.be immernoch der alte code ausgeführt wird, dann liegt es daran, dass tasmota die bec datei nicht aktualisiert und die alte bec lädt, dann hilft es die autoexec.bec zu löschen. Kann vorkommen, wenn man von blakadder oder nxpanel zu lovelace wechselt

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

    @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?

    IoBroker auf QNAP TS-451, Raspi und NUC

    J ArmilarA 2 Antworten Letzte Antwort
    0
    • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          472

                                          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