Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

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 mit Lovelace UI

Geplant Angeheftet Gesperrt Verschoben Hardware
lovelace uinspanelsonoff
7.8k Beiträge 272 Kommentatoren 6.7m Aufrufe 254 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.
  • C carlos

    @armilar
    Ich habe eine Frage.
    Wäre es möglich einen check einzubauen, ob ein alias vorhanden ist in den jeweiligen PageEntities?
    Das würde die Fehlersuche erheblich vereinfachen.

    Ich bekomme zur Zeit ein Warning

    javascript.0 (494) script.js.NSPanels.NsPanelTs360: function GeneratePage: Cannot read property 'type' of undefined
    

    und würde den Fehler gerne finden.
    Kann mir vorstellen, dass an einem falschen alias liegt.

    Gruß

    Hubert

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

    @carlos

    Habe den Fehler gefunden und bereits im github ein Bugfix angelegt.

    War ein - "ich sag es mal so" - selten dämlicher Fehler von mir in der bExit... 😰

    Einfach den Code im unteren Teil ab:

    // _________________________________ Ab hier keine Konfiguration mehr ________
    

    komplett austauschen. Dann sollte es wieder laufen.

    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.

    C 1 Antwort Letzte Antwort
    0
    • Markus S.M Markus S.

      @armilar @joBr99

      Noch eine Zusatzinfo: Ich habe es auch lokal probiert. Also die Datei auf einen lokalen web Server gelegt und dann mit einer lokalen Adresse das flashen probiert. Ging aber auch nicht.

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

      @markus-s

      Leg mal das komplette Tasmota-Log (ab Neustart und FlashNextion...) vom in Code-Tags fb0975df-5309-49c2-990b-8c27f66e891d-image.png . Nur der Screenshot hilft hier nicht viel...

      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.

      Markus S.M 1 Antwort Letzte Antwort
      0
      • ArmilarA Armilar

        @markus-s

        Leg mal das komplette Tasmota-Log (ab Neustart und FlashNextion...) vom in Code-Tags fb0975df-5309-49c2-990b-8c27f66e891d-image.png . Nur der Screenshot hilft hier nicht viel...

        Markus S.M Offline
        Markus S.M Offline
        Markus S.
        schrieb am zuletzt editiert von
        #913

        @armilar

        00:00:00.003 HDW: ESP32-D0WD-V3 
        00:00:00.106 UFS: FlashFS mounted with 280 kB free
        00:00:00.189 CFG: Loaded from File, Count 27
        00:00:00.205 QPC: Count 1
        00:00:00.473 BRY: Berry initialized, RAM used=4041 bytes
        00:00:00.504 Project tasmota - Tasmota Version 12.2.0(nspanel)-2_0_5(2022-10-17T08:40:00)
        00:00:00.016 NXP: Initializing Driver
        00:00:00.023 BRY: Successfully loaded 'autoexec.be'
        00:00:01.616 WIF: Connecting to AP1 DeepSpaceNine Channel 1 BSSId B4:FB:E4:11:92:60 in mode 11n as tasmota-D3CE24-3620...
        00:00:06.332 WIF: Connected
        00:00:06.594 HTP: Web server active on tasmota-D3CE24-3620 with IP address 10.1.1.185
        16:51:52.585 RSL: INFO1 = {"Info1":{"Module":"NSPanel","Version":"12.2.0(nspanel)","FallbackTopic":"cmnd/DVES_D3CE24_fb/","GroupTopic":"cmnd/tasmotas/"}}
        16:51:52.600 RSL: INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-D3CE24-3620","IPAddress":"10.1.1.185"}}
        16:51:52.604 RSL: INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":10}}
        16:51:52.618 RSL: RESULT = {"POWER1":"OFF"}
        16:51:52.620 RSL: POWER1 = OFF
        16:51:52.623 RSL: RESULT = {"POWER2":"OFF"}
        16:51:52.625 RSL: POWER2 = OFF
        16:51:52.769 QPC: Reset
        16:51:56.765 RSL: STATE = {"Time":"2022-11-28T16:51:56","Uptime":"0T00:00:12","UptimeSec":12,"Heap":137,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":313,"MqttCount":0,"Berry":{"HeapUsed":14,"Objects":223},"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"DeepSpaceNine","BSSId":"B4:FB:E4:11:92:60","Channel":1,"Mode":"11n","RSSI":82,"Signal":-59,"LinkCount":1,"Downtime":"0T00:00:06"}}
        16:51:56.806 RSL: SENSOR = {"Time":"2022-11-28T16:51:56","ANALOG":{"Temperature1":29.2},"TempUnit":"C"}
        16:53:00.551 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
        16:53:00.562 RSL: RESULT = {"FlashNextion":"Done"}
        16:53:00.603 FLH: host: nspanel.pky.eu, port: 80, get: /lovelace-ui/github/nspanel-v3.6.0.tft
        
        ArmilarA 1 Antwort Letzte Antwort
        0
        • Markus S.M Markus S.

          @armilar

          00:00:00.003 HDW: ESP32-D0WD-V3 
          00:00:00.106 UFS: FlashFS mounted with 280 kB free
          00:00:00.189 CFG: Loaded from File, Count 27
          00:00:00.205 QPC: Count 1
          00:00:00.473 BRY: Berry initialized, RAM used=4041 bytes
          00:00:00.504 Project tasmota - Tasmota Version 12.2.0(nspanel)-2_0_5(2022-10-17T08:40:00)
          00:00:00.016 NXP: Initializing Driver
          00:00:00.023 BRY: Successfully loaded 'autoexec.be'
          00:00:01.616 WIF: Connecting to AP1 DeepSpaceNine Channel 1 BSSId B4:FB:E4:11:92:60 in mode 11n as tasmota-D3CE24-3620...
          00:00:06.332 WIF: Connected
          00:00:06.594 HTP: Web server active on tasmota-D3CE24-3620 with IP address 10.1.1.185
          16:51:52.585 RSL: INFO1 = {"Info1":{"Module":"NSPanel","Version":"12.2.0(nspanel)","FallbackTopic":"cmnd/DVES_D3CE24_fb/","GroupTopic":"cmnd/tasmotas/"}}
          16:51:52.600 RSL: INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-D3CE24-3620","IPAddress":"10.1.1.185"}}
          16:51:52.604 RSL: INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":10}}
          16:51:52.618 RSL: RESULT = {"POWER1":"OFF"}
          16:51:52.620 RSL: POWER1 = OFF
          16:51:52.623 RSL: RESULT = {"POWER2":"OFF"}
          16:51:52.625 RSL: POWER2 = OFF
          16:51:52.769 QPC: Reset
          16:51:56.765 RSL: STATE = {"Time":"2022-11-28T16:51:56","Uptime":"0T00:00:12","UptimeSec":12,"Heap":137,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":313,"MqttCount":0,"Berry":{"HeapUsed":14,"Objects":223},"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"DeepSpaceNine","BSSId":"B4:FB:E4:11:92:60","Channel":1,"Mode":"11n","RSSI":82,"Signal":-59,"LinkCount":1,"Downtime":"0T00:00:06"}}
          16:51:56.806 RSL: SENSOR = {"Time":"2022-11-28T16:51:56","ANALOG":{"Temperature1":29.2},"TempUnit":"C"}
          16:53:00.551 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
          16:53:00.562 RSL: RESULT = {"FlashNextion":"Done"}
          16:53:00.603 FLH: host: nspanel.pky.eu, port: 80, get: /lovelace-ui/github/nspanel-v3.6.0.tft
          
          ArmilarA Offline
          ArmilarA Offline
          Armilar
          Most Active Forum Testing
          schrieb am zuletzt editiert von
          #914

          @markus-s

          bist du sicher, dass das Subnetz 10.1.1. in das Internet darf oder kommt?

          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.

          Markus S.M 1 Antwort Letzte Antwort
          0
          • ArmilarA Armilar

            @markus-s

            bist du sicher, dass das Subnetz 10.1.1. in das Internet darf oder kommt?

            Markus S.M Offline
            Markus S.M Offline
            Markus S.
            schrieb am zuletzt editiert von
            #915

            @armilar

            Ja - sehr sicher!

            ArmilarA J 2 Antworten Letzte Antwort
            0
            • Markus S.M Markus S.

              @armilar

              Ja - sehr sicher!

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

              @markus-s

              Lass uns auf @joBr99 warten. Bei den Unwegsamkeiten beim Flashen kennt er sich besser aus. Ich transportiere nur die Daten zum Tasmota.

              Ist aber dennoch, merkwürdig, dass nicht einmal das Flashen startet. Geht bei korrekter Installation des Berry-Driver eigentlich sehr schnell und kann auch wiederholt werden. Auch wenn es nervt, es ist "keine" Komponente im Router an, die der IP 10.1.1.185 untersagt, sich mit der Außenwelt zu verbinden?

              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
              0
              • Markus S.M Markus S.

                @armilar

                Ja - sehr sicher!

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

                @markus-s

                Mit weblog 3 in der tasmota konsole kannst du etwas mehr log output bekommen.

                17:53:33.461 CMD: weblog 3
                17:53:33.472 MQT: stat/tasmota_nspwohn/RESULT = {"WebLog":3}
                17:53:49.603 CMD: FlashNextion http://nspanel.pky.eu/lui.tft
                17:53:49.606 SRC: WebConsole from 192.168.62.152
                17:53:49.609 CMD: Grp 0, Cmd 'FLASHNEXTION', Idx 1, Len 29, Pld -99, Data 'http://nspanel.pky.eu/lui.tft'
                17:53:49.623 MQT: stat/tasmota_nspwohn/RESULT = {"FlashNextion":"Done"}
                17:53:49.670 FLH: host: nspanel.pky.eu, port: 80, get: /lui.tft
                17:53:49.732 FLH: Connected:true
                17:53:49.840 FLH: Retry 2
                17:53:50.871 FLH: HTTP Respose is 200 OK or 206 Partial Content
                17:53:50.882 FLH: Flash file size: 7957460
                17:53:50.887 NXP: Nextion command sent = bytes('4452414B4A485355594447424E434A48474A4B534842444EFFFFFF')
                17:53:50.892 NXP: Nextion command sent = bytes('7265636D6F643D30FFFFFF')
                17:53:50.897 NXP: Nextion command sent = bytes('7265636D6F643D30FFFFFF')
                17:53:50.904 NXP: Nextion command sent = bytes('636F6E6E656374FFFFFF')
                17:53:50.917 NXP: Received Raw = bytes('23FFFFFF636F6D6F6B20322C33303631342D302C4E5834383332463033355F30...')
                17:53:50.924 FLH: Send (High Speed) flash start
                17:53:50.932 NXP: Nextion command sent = bytes('77686D692D7772697320373935373436302C3932313630302C72657330FFFFFF')
                17:53:51.318 NXP: Received Raw = bytes('05')
                17:53:51.323 FLH: Read block
                17:53:51.326 FLH: Buff size 4990
                17:53:51.333 FLH: Writing 4096
                17:53:51.344 MQT: tele/tasmota_nspwohn/RESULT = {"Flashing":{"complete": 0, "time_elapsed": 0}}
                17:53:51.457 FLH: Total 4096
                17:53:51.614 NXP: Received Raw = bytes('08')
                17:53:51.618 FLH: Waiting offset...
                17:53:54.916 NXP: Received Raw = bytes('00000000')
                17:53:54.920 FLH: Flash offset marker 0
                17:53:54.924 FLH: Read block
                17:53:54.957 FLH: Buff size 6638
                17:53:54.964 FLH: Writing 4096
                17:53:55.074 FLH: Total 8192
                17:53:55.096 NXP: Received Raw = bytes('05')
                17:53:55.101 FLH: Read block
                17:53:55.121 FLH: Buff size 8286
                17:53:55.130 FLH: Writing 4096
                17:53:55.240 FLH: Total 12288
                
                Markus S.M 1 Antwort Letzte Antwort
                0
                • J joBr99

                  @markus-s

                  Mit weblog 3 in der tasmota konsole kannst du etwas mehr log output bekommen.

                  17:53:33.461 CMD: weblog 3
                  17:53:33.472 MQT: stat/tasmota_nspwohn/RESULT = {"WebLog":3}
                  17:53:49.603 CMD: FlashNextion http://nspanel.pky.eu/lui.tft
                  17:53:49.606 SRC: WebConsole from 192.168.62.152
                  17:53:49.609 CMD: Grp 0, Cmd 'FLASHNEXTION', Idx 1, Len 29, Pld -99, Data 'http://nspanel.pky.eu/lui.tft'
                  17:53:49.623 MQT: stat/tasmota_nspwohn/RESULT = {"FlashNextion":"Done"}
                  17:53:49.670 FLH: host: nspanel.pky.eu, port: 80, get: /lui.tft
                  17:53:49.732 FLH: Connected:true
                  17:53:49.840 FLH: Retry 2
                  17:53:50.871 FLH: HTTP Respose is 200 OK or 206 Partial Content
                  17:53:50.882 FLH: Flash file size: 7957460
                  17:53:50.887 NXP: Nextion command sent = bytes('4452414B4A485355594447424E434A48474A4B534842444EFFFFFF')
                  17:53:50.892 NXP: Nextion command sent = bytes('7265636D6F643D30FFFFFF')
                  17:53:50.897 NXP: Nextion command sent = bytes('7265636D6F643D30FFFFFF')
                  17:53:50.904 NXP: Nextion command sent = bytes('636F6E6E656374FFFFFF')
                  17:53:50.917 NXP: Received Raw = bytes('23FFFFFF636F6D6F6B20322C33303631342D302C4E5834383332463033355F30...')
                  17:53:50.924 FLH: Send (High Speed) flash start
                  17:53:50.932 NXP: Nextion command sent = bytes('77686D692D7772697320373935373436302C3932313630302C72657330FFFFFF')
                  17:53:51.318 NXP: Received Raw = bytes('05')
                  17:53:51.323 FLH: Read block
                  17:53:51.326 FLH: Buff size 4990
                  17:53:51.333 FLH: Writing 4096
                  17:53:51.344 MQT: tele/tasmota_nspwohn/RESULT = {"Flashing":{"complete": 0, "time_elapsed": 0}}
                  17:53:51.457 FLH: Total 4096
                  17:53:51.614 NXP: Received Raw = bytes('08')
                  17:53:51.618 FLH: Waiting offset...
                  17:53:54.916 NXP: Received Raw = bytes('00000000')
                  17:53:54.920 FLH: Flash offset marker 0
                  17:53:54.924 FLH: Read block
                  17:53:54.957 FLH: Buff size 6638
                  17:53:54.964 FLH: Writing 4096
                  17:53:55.074 FLH: Total 8192
                  17:53:55.096 NXP: Received Raw = bytes('05')
                  17:53:55.101 FLH: Read block
                  17:53:55.121 FLH: Buff size 8286
                  17:53:55.130 FLH: Writing 4096
                  17:53:55.240 FLH: Total 12288
                  
                  Markus S.M Offline
                  Markus S.M Offline
                  Markus S.
                  schrieb am zuletzt editiert von Markus S.
                  #918

                  @jobr99

                  Bei mir hört der da einfach auf...

                  00:00:00.002 HDW: ESP32-D0WD-V3 
                  00:00:00.003 HDW: FoundPSRAM=0 CanUsePSRAM=0
                  00:00:00.137 UFS: FlashFS mounted with 280 kB free
                  00:00:00.248 CFG: Loaded from File, Count 42
                  00:00:00.263 QPC: Count 1
                  00:00:00.265 CFG: CR 427/699, Busy 0
                  00:00:00.275 CFG: CR 427/699, Busy 0
                  00:00:00.278 ROT: Mode 1
                  00:00:00.597 CFG: No '*.autoconf' file found
                  00:00:00.604 BRY: Berry initialized, RAM used=4041 bytes
                  00:00:00.628 BRY: No 'preinit.be'
                  00:00:00.633 SRC: Restart
                  00:00:00.640 Project tasmota - NSPanel Version 12.2.0(nspanel)-2_0_5(2022-10-17T08:40:00)
                  00:00:00.641 ETH: No ETH MDC and/or ETH MDIO GPIO defined
                  00:00:01.051 NXP: Initializing Driver
                  00:00:01.059 BRY: Successfully loaded 'autoexec.be'
                  00:00:01.447 WIF: Attempting connection...
                  00:00:01.943 WIF: Connecting to AP1 DeepSpaceNine Channel 1 BSSId F0:9F:C2:F1:5F:C2 in mode 11n as tasmota-D3CE24-3620...
                  00:00:01.974 WIF: Attempting connection...
                  00:00:03.638 WIF: Connected
                  00:00:04.240 HTP: Web server active on tasmota-D3CE24-3620 with IP address 10.1.1.185
                  00:00:04.921 RTC: UTC 2022-11-28T16:59:26, DST 2022-03-27T02:00:00, STD 2022-10-30T03:00:00
                  17:59:26.000 RTC: Synced by NTP
                  17:59:27.227 RSL: INFO1 = {"Info1":{"Module":"NSPanel","Version":"12.2.0(nspanel)","FallbackTopic":"cmnd/DVES_D3CE24_fb/","GroupTopic":"cmnd/tasmotas/"}}
                  17:59:27.243 RSL: INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-D3CE24-3620","IPAddress":"10.1.1.185"}}
                  17:59:27.247 RSL: INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":15}}
                  17:59:27.261 RSL: RESULT = {"POWER1":"OFF"}
                  17:59:27.263 RSL: POWER1 = OFF
                  17:59:27.265 RSL: RESULT = {"POWER2":"OFF"}
                  17:59:27.268 RSL: POWER2 = OFF
                  17:59:27.280 TFS: File 'autoexec.bat' not found
                  17:59:29.711 QPC: Reset
                  17:59:30.286 HTP: Main Menu
                  17:59:31.703 APP: Boot Count 15
                  17:59:31.711 RSL: STATE = {"Time":"2022-11-28T17:59:31","Uptime":"0T00:00:10","UptimeSec":10,"Heap":136,"SleepMode":"Dynamic","Sleep":0,"LoadAvg":210,"MqttCount":0,"Berry":{"HeapUsed":14,"Objects":223},"POWER1":"OFF","POWER2":"OFF","Wifi":{"AP":1,"SSId":"DeepSpaceNine","BSSId":"F0:9F:C2:F1:5F:C2","Channel":1,"Mode":"11n","RSSI":58,"Signal":-71,"LinkCount":1,"Downtime":"0T00:00:04"}}
                  17:59:31.753 RSL: SENSOR = {"Time":"2022-11-28T17:59:31","ANALOG":{"Temperature1":28.5},"TempUnit":"C"}
                  17:59:32.021 CFG: Saved, Count 43, Bytes 4096
                  17:59:32.211 HTP: Consoles
                  17:59:34.107 HTP: Console
                  18:00:31.329 CMD: FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
                  18:00:31.332 SRC: WebConsole from 10.1.1.101
                  18:00:31.334 CMD: Grp 0, Cmd 'FLASHNEXTION', Idx 1, Len 59, Pld -99, Data 'http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft'
                  18:00:31.345 RSL: RESULT = {"FlashNextion":"Done"}
                  18:00:31.396 FLH: host: nspanel.pky.eu, port: 80, get: /lovelace-ui/github/nspanel-v3.6.0.tft
                  18:00:31.482 FLH: Connected:true
                  18:00:31.591 FLH: Retry 2
                  18:00:31.792 FLH: Retry 3
                  18:00:32.819 FLH: HTTP Respose is 200 OK or 206 Partial Content
                  18:00:32.830 FLH: Flash file size: 7925436
                  18:00:32.835 NXP: Nextion command sent = bytes('4452414B4A485355594447424E434A48474A4B534842444EFFFFFF')
                  18:00:32.839 NXP: Nextion command sent = bytes('7265636D6F643D30FFFFFF')
                  18:00:32.843 NXP: Nextion command sent = bytes('7265636D6F643D30FFFFFF')
                  18:00:32.847 NXP: Nextion command sent = bytes('636F6E6E656374FFFFFF')
                  1 Antwort Letzte Antwort
                  0
                  • ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    schrieb am zuletzt editiert von Armilar
                    #919

                    @markus-s

                    @joBr99 was ist denn das für eine Datei? Von der habe ich bislang in der NSPanel-Welt noch nichts gehört?

                    17:59:27.280 TFS: File 'autoexec.bat' not found
                    

                    von einer

                    00:00:00.628 BRY: No 'preinit.be'
                    

                    auch noch nicht

                    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
                    0
                    • M Offline
                      M Offline
                      Matze_HH
                      schrieb am zuletzt editiert von
                      #920

                      @Armilar
                      Sorry das ich nochmal hier rein schreibe 🙂
                      Da du ja jetzt die Hintergrundfarben implementiert hast, wollte ich gleich ans Werk gehen, aber das updaten der .ts...
                      Gibt es eine Anleitung fürs Updaten? Habe in der Wiki nichts gefunden...

                      1 Antwort Letzte Antwort
                      0
                      • ArmilarA Offline
                        ArmilarA Offline
                        Armilar
                        Most Active Forum Testing
                        schrieb am zuletzt editiert von
                        #921

                        @matze_hh

                        In diesem Fall ist es leicht...

                        Den unteren Teil ab

                        // _________________________________ Ab hier keine Konfiguration mehr ____________
                        ....
                        

                        einfach ersetzten und die 3 Farbkonstanten (nachfolgend Zeile 3 - 5) hinzufügen.

                        //Screensaver Default Theme Colors
                        const scbackground:     RGB = { red:   0, green:    0, blue:   0};
                        const scbackgroundInd1: RGB = { red: 255, green:   0,  blue:   0};
                        const scbackgroundInd2: RGB = { red: 121, green: 222,  blue: 121};
                        const scbackgroundInd3: RGB = { red: 255, green: 255,  blue:   0};
                        

                        Den Rest macht das TS-Script mit dem ersten Start selbst.

                        Ach ja und

                        FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
                        

                        in der Tasmota-Console ausführen.

                        Das wäre dann schon alles...

                        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.

                        ArmilarA M M 3 Antworten Letzte Antwort
                        0
                        • ArmilarA Armilar

                          @matze_hh

                          In diesem Fall ist es leicht...

                          Den unteren Teil ab

                          // _________________________________ Ab hier keine Konfiguration mehr ____________
                          ....
                          

                          einfach ersetzten und die 3 Farbkonstanten (nachfolgend Zeile 3 - 5) hinzufügen.

                          //Screensaver Default Theme Colors
                          const scbackground:     RGB = { red:   0, green:    0, blue:   0};
                          const scbackgroundInd1: RGB = { red: 255, green:   0,  blue:   0};
                          const scbackgroundInd2: RGB = { red: 121, green: 222,  blue: 121};
                          const scbackgroundInd3: RGB = { red: 255, green: 255,  blue:   0};
                          

                          Den Rest macht das TS-Script mit dem ersten Start selbst.

                          Ach ja und

                          FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
                          

                          in der Tasmota-Console ausführen.

                          Das wäre dann schon alles...

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

                          Link vom TS-Script 3.6.0.1 vergessen. Aber die meisten hätten es auch so gefunden:

                          https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker

                          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
                          0
                          • Markus S.M Markus S.

                            Hallo,

                            ich bin neu in dem Thema und habe bereits gesucht, aber nichts gefunden.
                            Ich habe am Wochenende die Installation durchgeführt.
                            Tasmota für das NSPanel 12.2 drauf, das Berry Script autoexec.be drauf.
                            Dann das FlashNextion durchgeführt - das Display wird blau und zeigt "Write 0% 4096".
                            Blieb doirt hängen und nach knapp 2 Minuten machte das Display ein Reboot.
                            Nun zeigt das Display "System Data ERROR!"

                            Ich versuche es erneut mit Flashen - die Anzeige in der Console ist:

                            15:48:26.855 CMD: FlashNextion http://nspanel.pky.eu/lui-release.tft
                            15:48:26.865 RSL: RESULT = {"FlashNextion":"Done"}
                            15:48:26.899 FLH: host: nspanel.pky.eu, port: 80, get: /lui-release.tft

                            Danach kommt nichts mehr - der Bildschirm auf dem Display wird auch nicht mehr "blau". Der Tasmota Teil läuft weiter - sieht man, denn das Log zeigt weitere Nachrichten an, z.B. wenn man schaltet, oder die Temperatur an dem Teil ändert sich.

                            Sollte ich was übersehen habe - ich bin für jeden Tipp dankbar! Ich hoffe ich habe nun keinen Schalter mit schwarzem Display.

                            Vielen, vielen Dank,
                            Markus

                            W Offline
                            W Offline
                            Wuschl
                            schrieb am zuletzt editiert von Wuschl
                            #923

                            @markus-s said in SONOFF NSPanel mit Lovelace UI:

                            FlashNextion http://nspanel.pky.eu/lui-release.tft

                            Probier mal das
                            FlashNextion http://nspanel.pky.eu/lui.tft

                            Ich hatte letztens auch ein Panel das sich nicht flashen lies, funktionierte aber dann mit nem anderen Link. Weiß nur nicht ob es dieser war. Den hatte @Armilar in seiner Anleitung stehen. Ich finde Ihn aber leider nicht mehr.

                            Oder dieser
                            FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.1.0.tft

                            Markus S.M 1 Antwort Letzte Antwort
                            0
                            • ArmilarA Armilar

                              @matze_hh

                              In diesem Fall ist es leicht...

                              Den unteren Teil ab

                              // _________________________________ Ab hier keine Konfiguration mehr ____________
                              ....
                              

                              einfach ersetzten und die 3 Farbkonstanten (nachfolgend Zeile 3 - 5) hinzufügen.

                              //Screensaver Default Theme Colors
                              const scbackground:     RGB = { red:   0, green:    0, blue:   0};
                              const scbackgroundInd1: RGB = { red: 255, green:   0,  blue:   0};
                              const scbackgroundInd2: RGB = { red: 121, green: 222,  blue: 121};
                              const scbackgroundInd3: RGB = { red: 255, green: 255,  blue:   0};
                              

                              Den Rest macht das TS-Script mit dem ersten Start selbst.

                              Ach ja und

                              FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft
                              

                              in der Tasmota-Console ausführen.

                              Das wäre dann schon alles...

                              M Offline
                              M Offline
                              Matze_HH
                              schrieb am zuletzt editiert von
                              #924

                              @armilar said in SONOFF NSPanel mit Lovelace UI:

                              FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft

                              Ok dann mache ich es schon richtig, bekomme aber einen riesen Haufen Fehler 😞

                              javascript.0 (689) script.js.NSPanel.Panel_1_3_5: TypeScript compilation failed: "yAxis": "Gas [kWh]", ^ ERROR: Type '{ type: "cardChart"; heading: string; useColor: true; subPage: false; parent: undefined; yAxis: string; yAxisTicks: number[]; items: PageItem[]; }' is not assignable to type 'PageChart'. Object literal may only specify known properties, and '"yAxis"' does not exist in type 'PageChart'. await createAliasAsync(config.weatherEntity + '.ICON', 'accuweather.0.Current.WeatherIcon', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ICON' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(config.weatherEntity + '.TEMP', 'accuweather.0.Current.Temperature', true, <iobJS.StateCommon>{ type: 'number', role: 'value.temperature', name: 'TEMP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(config.weatherEntity + '.TEMP_MIN', 'accuweather.0.Daily.Day1.Temperature.Minimum', true, <iobJS.StateCommon>{ type: 'number', role: 'value.temperature.forecast.0', name: 'TEMP_MIN' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(config.weatherEntity + '.TEMP_MAX', 'accuweather.0.Daily.Day1.Temperature.Maximum', true, <iobJS.StateCommon>{ type: 'number', role: 'value.temperature.max.forecast.0', name: 'TEMP_MAX' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessDay.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_brightnessDay', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessDay.SET', NSPanel_Path + 'NSPanel_Dimmode_brightnessDay', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourDay.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_hourDay', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourDay.SET', NSPanel_Path + 'NSPanel_Dimmode_hourDay', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessNight.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_brightnessNight', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessNight.SET', NSPanel_Path + 'NSPanel_Dimmode_brightnessNight', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourNight.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_hourNight', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourNight.SET', NSPanel_Path + 'NSPanel_Dimmode_hourNight', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'autoUpdate.ACTUAL', NSPanel_Path + 'NSPanel_autoUpdate', true, <iobJS.StateCommon>{ type: 'boolean', role: 'switch', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'autoUpdate.SET', NSPanel_Path + 'NSPanel_autoUpdate', true, <iobJS.StateCommon>{ type: 'boolean', role: 'switch', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'ipAddress.ACTUAL', NSPanel_Path + 'NSPanel_ipAddress', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Display.BerryDriver.ACTUAL', NSPanel_Path + 'Berry_Driver.currentVersion', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Uptime.ACTUAL', NSPanel_Path + 'Tasmota.Uptime', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Version.ACTUAL', NSPanel_Path + 'Tasmota.Version', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Hardware.ACTUAL', NSPanel_Path + 'Tasmota.Hardware', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.AP.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.AP', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.SSId.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.SSId', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.BSSId.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.BSSId', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.Channel.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.Channel', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.Mode.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.Mode', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.RSSI.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.RSSI', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.Signal.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.Signal', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Display.TFTVersion.ACTUAL', NSPanel_Path + 'Display_Firmware.currentVersion', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Display.Model.ACTUAL', NSPanel_Path + 'NSPanel_Version', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ACTUAL', dpPath + '.Player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ALBUM', dpPath + '.Player.currentAlbum', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ARTIST', dpPath + '.Player.currentArtist', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.TITLE', dpPath + '.Player.currentTitle', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.NEXT', dpPath + '.Player.controlNext', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PREV', dpPath + '.Player.controlPrevious', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PLAY', dpPath + '.Player.controlPlay', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PAUSE', dpPath + '.Player.controlPause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STOP', dpPath + '.Commands.deviceStop', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STATE', dpPath + '.Player.currentState', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.VOLUME', dpPath + '.Player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ACTUAL', dpPath + 'player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ALBUM', dpPath + 'player.album', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ARTIST', dpPath + 'player.artistName', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.TITLE', dpPath + 'player.trackName', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.CONTEXT_DESCRIPTION', dpPath + 'player.contextDescription', true, <iobJS.StateCommon>{ type: 'string', role: 'media.station', name: 'CONTEXT_DESCRIPTION' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.NEXT', dpPath + 'player.skipPlus', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PREV', dpPath + 'player.skipMinus', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PLAY', dpPath + 'player.play', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PAUSE', dpPath + 'player.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STOP', dpPath + 'player.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STATE', dpPath + 'player.isPlaying', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.VOLUME', dpPath + 'player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ACTUAL', dpPath + '.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ALBUM', dpPath + '.current_album', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ARTIST', dpPath + '.current_artist', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.TITLE', dpPath + '.current_title', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.CONTEXT_DESCRIPTION', dpPath + '.current_station', true, <iobJS.StateCommon>{ type: 'string', role: 'media.station', name: 'CONTEXT_DESCRIPTION' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.NEXT', dpPath + '.next', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PREV', dpPath + '.prev', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PLAY', dpPath + '.play', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PAUSE', dpPath + '.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STOP', dpPath + '.stop', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STATE', dpPath + '.state_simple', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.VOLUME', dpPath + '.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' }); ^ ERROR: Cannot find name 'createAliasAsync'. scrSvrBGCol = rgb_dec565(scbackgroundInd1); ^ ERROR: Cannot find name 'scbackgroundInd1'. scrSvrBGCol = rgb_dec565(scbackgroundInd2); ^ ERROR: Cannot find name 'scbackgroundInd2'. scrSvrBGCol = rgb_dec565(scbackgroundInd3); ^ ERROR: Cannot find name 'scbackgroundInd3'. await createAliasAsync(AliasPath + 'Sensor.ANALOG.Temperature.ACTUAL', NSPanel_Path + 'Sensor.ANALOG.Temperature', true, <iobJS.StateCommon>{ type: 'number', 'unit': '°C' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Sensor.ESP32.Temperature.ACTUAL', NSPanel_Path + 'Sensor.ESP32.Temperature', true, <iobJS.StateCommon>{ type: 'number', 'unit': '°C' }); ^ ERROR: Cannot find name 'createAliasAsync'.
                              
                              
                              ArmilarA 1 Antwort Letzte Antwort
                              0
                              • M Matze_HH

                                @armilar said in SONOFF NSPanel mit Lovelace UI:

                                FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v3.6.0.tft

                                Ok dann mache ich es schon richtig, bekomme aber einen riesen Haufen Fehler 😞

                                javascript.0 (689) script.js.NSPanel.Panel_1_3_5: TypeScript compilation failed: "yAxis": "Gas [kWh]", ^ ERROR: Type '{ type: "cardChart"; heading: string; useColor: true; subPage: false; parent: undefined; yAxis: string; yAxisTicks: number[]; items: PageItem[]; }' is not assignable to type 'PageChart'. Object literal may only specify known properties, and '"yAxis"' does not exist in type 'PageChart'. await createAliasAsync(config.weatherEntity + '.ICON', 'accuweather.0.Current.WeatherIcon', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ICON' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(config.weatherEntity + '.TEMP', 'accuweather.0.Current.Temperature', true, <iobJS.StateCommon>{ type: 'number', role: 'value.temperature', name: 'TEMP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(config.weatherEntity + '.TEMP_MIN', 'accuweather.0.Daily.Day1.Temperature.Minimum', true, <iobJS.StateCommon>{ type: 'number', role: 'value.temperature.forecast.0', name: 'TEMP_MIN' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(config.weatherEntity + '.TEMP_MAX', 'accuweather.0.Daily.Day1.Temperature.Maximum', true, <iobJS.StateCommon>{ type: 'number', role: 'value.temperature.max.forecast.0', name: 'TEMP_MAX' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessDay.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_brightnessDay', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessDay.SET', NSPanel_Path + 'NSPanel_Dimmode_brightnessDay', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourDay.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_hourDay', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourDay.SET', NSPanel_Path + 'NSPanel_Dimmode_hourDay', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessNight.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_brightnessNight', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.brightnessNight.SET', NSPanel_Path + 'NSPanel_Dimmode_brightnessNight', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourNight.ACTUAL', NSPanel_Path + 'NSPanel_Dimmode_hourNight', true, <iobJS.StateCommon>{ type: 'number', role: 'value', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Dimmode.hourNight.SET', NSPanel_Path + 'NSPanel_Dimmode_hourNight', true, <iobJS.StateCommon>{ type: 'number', role: 'level', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'autoUpdate.ACTUAL', NSPanel_Path + 'NSPanel_autoUpdate', true, <iobJS.StateCommon>{ type: 'boolean', role: 'switch', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'autoUpdate.SET', NSPanel_Path + 'NSPanel_autoUpdate', true, <iobJS.StateCommon>{ type: 'boolean', role: 'switch', name: 'SET' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'ipAddress.ACTUAL', NSPanel_Path + 'NSPanel_ipAddress', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Display.BerryDriver.ACTUAL', NSPanel_Path + 'Berry_Driver.currentVersion', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Uptime.ACTUAL', NSPanel_Path + 'Tasmota.Uptime', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Version.ACTUAL', NSPanel_Path + 'Tasmota.Version', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Hardware.ACTUAL', NSPanel_Path + 'Tasmota.Hardware', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.AP.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.AP', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.SSId.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.SSId', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.BSSId.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.BSSId', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.Channel.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.Channel', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.Mode.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.Mode', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.RSSI.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.RSSI', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Tasmota.Wifi.Signal.ACTUAL', NSPanel_Path + 'Tasmota.Wifi.Signal', true, <iobJS.StateCommon>{ type: 'number', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Display.TFTVersion.ACTUAL', NSPanel_Path + 'Display_Firmware.currentVersion', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Display.Model.ACTUAL', NSPanel_Path + 'NSPanel_Version', true, <iobJS.StateCommon>{ type: 'string', role: 'state', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ACTUAL', dpPath + '.Player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ALBUM', dpPath + '.Player.currentAlbum', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ARTIST', dpPath + '.Player.currentArtist', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.TITLE', dpPath + '.Player.currentTitle', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.NEXT', dpPath + '.Player.controlNext', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PREV', dpPath + '.Player.controlPrevious', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PLAY', dpPath + '.Player.controlPlay', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PAUSE', dpPath + '.Player.controlPause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STOP', dpPath + '.Commands.deviceStop', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STATE', dpPath + '.Player.currentState', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.VOLUME', dpPath + '.Player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ACTUAL', dpPath + 'player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ALBUM', dpPath + 'player.album', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ARTIST', dpPath + 'player.artistName', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.TITLE', dpPath + 'player.trackName', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.CONTEXT_DESCRIPTION', dpPath + 'player.contextDescription', true, <iobJS.StateCommon>{ type: 'string', role: 'media.station', name: 'CONTEXT_DESCRIPTION' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.NEXT', dpPath + 'player.skipPlus', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PREV', dpPath + 'player.skipMinus', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PLAY', dpPath + 'player.play', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PAUSE', dpPath + 'player.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STOP', dpPath + 'player.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STATE', dpPath + 'player.isPlaying', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.VOLUME', dpPath + 'player.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ACTUAL', dpPath + '.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'value.volume', name: 'ACTUAL' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ALBUM', dpPath + '.current_album', true, <iobJS.StateCommon>{ type: 'string', role: 'media.album', name: 'ALBUM' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.ARTIST', dpPath + '.current_artist', true, <iobJS.StateCommon>{ type: 'string', role: 'media.artist', name: 'ARTIST' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.TITLE', dpPath + '.current_title', true, <iobJS.StateCommon>{ type: 'string', role: 'media.title', name: 'TITLE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.CONTEXT_DESCRIPTION', dpPath + '.current_station', true, <iobJS.StateCommon>{ type: 'string', role: 'media.station', name: 'CONTEXT_DESCRIPTION' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.NEXT', dpPath + '.next', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.next', name: 'NEXT' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PREV', dpPath + '.prev', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.prev', name: 'PREV' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PLAY', dpPath + '.play', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.play', name: 'PLAY' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.PAUSE', dpPath + '.pause', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.pause', name: 'PAUSE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STOP', dpPath + '.stop', true, <iobJS.StateCommon>{ type: 'boolean', role: 'button.stop', name: 'STOP' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.STATE', dpPath + '.state_simple', true, <iobJS.StateCommon>{ type: 'boolean', role: 'media.state', name: 'STATE' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(id + '.VOLUME', dpPath + '.volume', true, <iobJS.StateCommon>{ type: 'number', role: 'level.volume', name: 'VOLUME' }); ^ ERROR: Cannot find name 'createAliasAsync'. scrSvrBGCol = rgb_dec565(scbackgroundInd1); ^ ERROR: Cannot find name 'scbackgroundInd1'. scrSvrBGCol = rgb_dec565(scbackgroundInd2); ^ ERROR: Cannot find name 'scbackgroundInd2'. scrSvrBGCol = rgb_dec565(scbackgroundInd3); ^ ERROR: Cannot find name 'scbackgroundInd3'. await createAliasAsync(AliasPath + 'Sensor.ANALOG.Temperature.ACTUAL', NSPanel_Path + 'Sensor.ANALOG.Temperature', true, <iobJS.StateCommon>{ type: 'number', 'unit': '°C' }); ^ ERROR: Cannot find name 'createAliasAsync'. await createAliasAsync(AliasPath + 'Sensor.ESP32.Temperature.ACTUAL', NSPanel_Path + 'Sensor.ESP32.Temperature', true, <iobJS.StateCommon>{ type: 'number', 'unit': '°C' }); ^ ERROR: Cannot find name 'createAliasAsync'.
                                
                                
                                ArmilarA Offline
                                ArmilarA Offline
                                Armilar
                                Most Active Forum Testing
                                schrieb am zuletzt editiert von Armilar
                                #925

                                @matze_hh

                                Ja perfekt. Das Beispiel ist zwar schon drin, aber die cardChart ist noch nicht in der TFT-Firmware. Daher mit der cardChart noch ein wenig warten. Das TS-Script kann das schon, aber das NSPanel ist noch nicht so weit.

                                Mit anderen Worten. Die cardChart darf aktuell noch nicht in den Seiten aufgerufen werden.

                                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.

                                M 1 Antwort Letzte Antwort
                                1
                                • ArmilarA Armilar

                                  @matze_hh

                                  Ja perfekt. Das Beispiel ist zwar schon drin, aber die cardChart ist noch nicht in der TFT-Firmware. Daher mit der cardChart noch ein wenig warten. Das TS-Script kann das schon, aber das NSPanel ist noch nicht so weit.

                                  Mit anderen Worten. Die cardChart darf aktuell noch nicht in den Seiten aufgerufen werden.

                                  M Offline
                                  M Offline
                                  Matze_HH
                                  schrieb am zuletzt editiert von
                                  #926

                                  @armilar ah, ok. Es läuft aber so erstmal?! 🙂

                                  ArmilarA 2 Antworten Letzte Antwort
                                  0
                                  • M Matze_HH

                                    @armilar ah, ok. Es läuft aber so erstmal?! 🙂

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

                                    @matze_hh

                                    Ja, sollte alles wie gewohnt, auch erst abwärtskompatibel laufen.

                                    Alle anderen beschriebenen Funktionen kannst du natürlich einbauen oder testen. Nur halt die Charts noch nicht.

                                    In der HMI-DEV ist die schon drin, aber in dem aktuellen TFT-Release noch nicht...

                                    Kann aber nicht mehr lang dauern.

                                    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
                                    0
                                    • M Matze_HH

                                      @armilar ah, ok. Es läuft aber so erstmal?! 🙂

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

                                      @matze_hh

                                      Hast du es auch genauso gemacht?

                                      Den unteren Teil ausgetauscht und nur oben die 3 Screensaver Konstanten hinzugefügt?

                                      Es dürfte am rechten Rand nichts rot sein.

                                      Deine alten Variablen und Config bleiben so wie sie sind. Ist dann höchstens 5 Minuten Umstellung auf die neue Version...

                                      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
                                      0
                                      • ArmilarA Armilar

                                        SONOFF NSPanel Touch Display Switch

                                        mit Lovelace UI und TASMOTA Firmware

                                        60848839-53b0-4e2b-a370-28e02960bfcd-image.png

                                        Das Thema https://forum.iobroker.net/topic/50888/sonoff-nspanel/1542 wird hier jetzt fortgesetzt...

                                        An alle begeisterten NSPanel'er

                                        Dieser Thread soll sich jetzt ausschließlich mit den Fragen und Themen rund um das SONOFF NSPanel mit Lovelace UI beschäftigen.

                                        Wie alles begann:

                                        • 22.10.2021
                                          Blakadder's Dokumentation der Dekodierung des NSPanel-Kommunikationsprotokolls und Einrichtung der Steuerung des Nextion-Bildschirms mit benutzerdefinierter Firmware.
                                          https://blakadder.com/nspanel-hacking/
                                        • 01.01.2022
                                          Erste Gehversuche mit Blockly-Scripts auf der Original-Firmware nach einer ersten coolen Anleitung für den ioBroker von @haus-automatisierung.
                                        • ...
                                          Funkstille auf allen Kanälen, da das Panel in der Originalsoftware einfach zu wenig Funktionalität hat. Ein Vergleich mit "Jugend forscht" wäre maßlos übertrieben...
                                        • 15.01.2022
                                          @jobr99 Erstes POC von Lovelace Konzept mit ESPhome Komponente, da Nextion Upload Protcol unter tasmota nicht umsetzbar ist (berry tcpclient crashed ESP, HTTP Libary ist auf viel zu kleine Dateien limitiert)
                                        • 17.01.2022
                                          peepshow-21 Erste implementierung von Nextion Upload Protocol 1.1 mit Workaround für HTTP Libary über Java Converter um tft files für tasmota vorzubereiten
                                        • 20.01.2022
                                          s-hadinger fixt bug in berry tcpclient
                                        • 31.01.2022
                                          Erste Version für HomeAssistant mit Nodered und Tasmota
                                        • 08.02.2022
                                          @joBr99 Erste Implementierung von Nextion Upload Protokoll 1.2 in Berry basiertend auf HTTP Range Header Requests und lokalem Buffer (funktioniert nur mit -nspanel tasmota build uns PSRAM Support)
                                        • 12.02.2022
                                          peepshow-21 Implementierung von Nextion Upload Protocol 1.2 mit vollständigem Download und "streaming" zum Nextion Screen während dem Download
                                        • 05.03.2022
                                          @joBr99 Portierung von Node-Red Flow zu AppDaemon, da AppDaemon sich besser eignet zur Implementierung vom Backend
                                        • 13.03.2022
                                          @joBr99 Erste Version von Lovelace Berry Driver basierend auf Upload Protocol Implementierung von peepshow-21, da diese etwas stabiler läuft mit zusätzlichem Error Handling
                                        • 30.03.2022
                                          @joBr99 kommt mit der Info um die Ecke, dass es ein erstes Script v1.9.0 für den ioBroker von @Britzelpuf gibt. Zu diesem Zeitpunkt gab es bereits den Screensaver die Seitennavigation und die Möglichkeit eine Lampe, einen Dimmer eine Taste und eine Info, sowie die popUps für Licht (Brightness) und Shutter (Position) und einen Thermostaten zur Steuerung einzubinden.
                                        • 10.04.2022
                                          @joBr99 Firmware got bigger and bigger with >15 Minutes Flashing Time for the tft file
                                          Increased Flashing Speed of Berry Driver from 115200 to 921600 and added skipping to the End with HTTP Range Headers, resulted in faster display flashing
                                        • 11.04.2022
                                          @Armilar macht seine ersten Änderungen auf github und hört seit dem nicht mehr auf, weitere Funktionen in das TSScript hinzuzufügen... 😉
                                          @joBr99 entwickelt die HMI und neue Funktionen für Home Assistant schneller als der Wind - und macht das Panel zur echten Bereicherung für jedes Smart Home 😊 👏

                                        heute

                                        • Eine der besten Community's die ich jemals erlebt habe. Hilfsbereit und kompetent wird jeder mit Hilfestellungen und Problemlösungen in kürzester Zeit versorgt.

                                        Es macht großen Spaß zusammen mit euch...

                                        VG
                                        Armilar


                                        Beispiele:

                                        09ae2c13-c606-4ef5-88dc-26fccd14dd85-image.png

                                        cf500331-70d8-4150-ac59-aabff1a27f7f-image.png

                                        a5dbb6f4-403b-4081-b2e9-a17cbc3af26c-image.png

                                        b41e2fed-abaa-4993-ae6f-2344f4e3afc8-image.png

                                        048fc1af-d72e-45fe-9102-688d40b2df18-image.png

                                        08edcab4-03b7-4c0f-923e-0f5b1c639cca-image.png

                                        ad94cddf-a0d0-40a7-971c-16504e8949fd-image.png

                                        263b23cc-d003-4af6-98b6-ed994c244890-image.png

                                        07373515-a92e-4cc9-b717-716e4fd4413f-image.png

                                        7c4a1f2f-26d7-4aeb-987d-3e30a671378d-image.png


                                        Features:

                                        • cardEntities für die Unterstützung diverser Steuerelemente (siehe Beispiele)
                                        • cardGrid (3x2-Raster) für die Unterstützung diverser Steuerelemente (siehe Beispiele)
                                        • cardGrid2 (4x2) für die Unterstützung diverser Steuerelemente (siehe Beispiele)
                                        • cardGrid3 (2x2) für die Unterstützung diverser Steuerelemente (siehe Beispiele)
                                        • cardPower zur Visualisierung der Energieverteilung
                                        • cardAlarm als Seite für Alarmanlagen
                                        • cardMedia - der Media-Player (Diverse Adapter)
                                        • cardThermo - Seite für Thermostat oder Klimaanlage
                                        • cardQR - Seite mit QRCode zur Anzeige von WLAN-Informationen
                                        • cardChart - Balkendiagramme
                                        • Detailseiten für Leuchtmittel (Helligkeit, Temperatur und Farbe)
                                        • Detailseite für Jalousien/Rollos (Position und Tilt)
                                        • Detailseite für Ventilatoren
                                        • Detailseite für Timer
                                        • Auswahl Detailseite für Werteliste
                                        • Bildschirmschonerseite mit Uhrzeit, Datum und Wetterinformationen oder/und Infos
                                        • Multilingual (unterstützt über 40 Sprachen)
                                        • Unbegrenzte Anzahl an Seiten und Unterseiten
                                        • Abfallkalender
                                        • Favoritenseiten
                                        • etc.

                                          ich glaube da ist eine verbesserte "cardMedia" in der Entwicklung - sieht cool aus...
                                          72571469-4a78-4caf-ba0e-7a67865bb13c-image.png

                                        NsPanel Lovelace UI ist eine Firmware für den Nextion-Bildschirm innerhalb des NSPanel.

                                        Die allgemeine Idee ist, dass das Nextion-Display einen Seitenzähler durchläuft und der ESP32 dem Display sagt, was zu tun ist. Alles ist dynamisch durch Alias-Erstellung konfigurierbar, es ist nicht erforderlich, Nextion Editor zu programmieren. Neben der Seiten-Definition sind im ioBroker keine Programmierkenntnisse erforderlich. Es ist im ioBroker ebenfalls kein Lovelace-Adapter erforderlich.

                                        Das Panel arbeitet mit Tasmota und MQTT. Um das Panel zu steuern und mit Inhalten von ioBroker zu aktualisieren, gibt es ein vordefiniertes TypeScript (TS) für den JavaScript-Adapter.


                                        Aktuelle Wiki (Anleitung) für den ioBroker

                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki by @Kuckuckmann

                                        NsPanelTs.ts (TypeScript) für ioBroker v4.9.3.X

                                        zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar und @TT-Tom
                                        https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker
                                        abgestimmt auf:

                                        • TFT 58 / v4.9.3 ( by @joBr99 / Armilar > 4.4.0)
                                        • BerryDriver 9 ( by peepshow-21 (based on code by blakadder and s-hadinger))
                                        • Tasmota 15.1.0 ( by Theo Arends ) --> Theo-Arends-Sonoff-MQTT-OTA

                                        Projekt:

                                        by @joBr99

                                        • main (Home Assistant - Version und Nextion HMI): https://github.com/joBr99/nspanel-lovelace-ui by @joBr99
                                        • ioBroker: https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker by @Armilar (HA - Adaption)

                                        Icon-Mapper:

                                        • icon_mapping.ts:
                                          https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/icon_mapping.ts
                                          (TypeScript muss in global liegen)

                                        Icons:

                                        unter: https://docs.nspanel.pky.eu/icon-cheatsheet.html

                                        Video-Tutorial:

                                        https://www.youtube.com/watch?v=ZPLJk2ZLo_8 by @haus-automatisierung

                                        berlinchris81B Offline
                                        berlinchris81B Offline
                                        berlinchris81
                                        schrieb am zuletzt editiert von
                                        #929

                                        Hi Leute gute Arbeit die Ihr macht - Respect. Ich hab jetzt alle Einstellungen 3 mal gemacht - aber es funktiert nicht - ich hab folgens im log kann aber damit nichts anfangen - icon mapping habe ich eingebunden es wird auch nicht rot unterschrichen. zum einen habe ich ein "Waiting for content" sceen und ich bekommen folgendes im log angezeigt - ich verzweifle langsam

                                        LG Chris! Ich nutze den IOBroker.2022-11-28 22_39_07-logs - iobroker-iobroker1.png MeineConfig.txt

                                        K ArmilarA 2 Antworten Letzte Antwort
                                        0
                                        • berlinchris81B berlinchris81

                                          Hi Leute gute Arbeit die Ihr macht - Respect. Ich hab jetzt alle Einstellungen 3 mal gemacht - aber es funktiert nicht - ich hab folgens im log kann aber damit nichts anfangen - icon mapping habe ich eingebunden es wird auch nicht rot unterschrichen. zum einen habe ich ein "Waiting for content" sceen und ich bekommen folgendes im log angezeigt - ich verzweifle langsam

                                          LG Chris! Ich nutze den IOBroker.2022-11-28 22_39_07-logs - iobroker-iobroker1.png MeineConfig.txt

                                          K Offline
                                          K Offline
                                          Kuckuckmann
                                          schrieb am zuletzt editiert von
                                          #930

                                          @berlinchris81

                                          Hallo und willkommen hier im Forum 🙂

                                          Du hast in deiner Config eine cardEntities die keinen Inhalt hat, insofern kann auch nichts angezeigt werden.
                                          Da auch dadurch keine Icons definiert sind, kommt es zu Fehlermeldungen. Heißt aber auch im Umkehrschluss, Du hast schon ganz viel richtig gemacht, von Flashen bis hin zu MQTT und so.

                                          Schau dir doch mal im Wiki an, wie man so eine Seite mit einem Alias und Icons, etc. bestückt.

                                          Wenn Du nicht weiter kommt, gerne nochmal melden.

                                          LG

                                          NSPanel Dokumentation im GitHub Wiki:

                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                          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

                                          761

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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