Sonoff NSPanel – zmiana oprogramowania – Tasmota

Urządzenie NSPanel od Sonoff, jest stosunkowo tanim rozwiązaniem. Jego koszt nie przekracza 300 zł - a zmieniając jego standardowe oprogramowanie możesz zyskać wiele możliwości w związku z integracją w Home Assistant.

w artykule:

W tym pordniku, chciałem Ci pokazać krok po kroku w jaki sposób zmienić oprogramowanie w NSPanel na Tasmotę, w jaki sposób konfigurować ekran główny oraz ekrany dodatkowe.

Wideo-poradnik

Kopia oryginalnego oprogramowania

python -m esptool flash_id

Teraz wpisujemy komendę, która zmieni nam katalog na taki w którym utworzy się kopia zapasowa (u mnie będzie to C:\nspanel):

cd \nspanel
python -m esptool --baud 115200 --port COM3 read_flash 0x0 0x400000 backup.bin

Instalacja Tasmoty

{"NAME":"NSPanel","GPIO":[0,0,0,0,3872,0,0,0,0,0,32,0,0,0,0,225,0,480,224,1,0,0,0,33,0,0,0,0,0,0,0,0,0,0,4736,0],"FLAG":0,"BASE":1,"CMND":"ADCParam 2,11200,10000,3950 | Sleep 0 | BuzzerPWM 1"}
FlashNextion http://nspanel.pky.eu/lui-release.tft

Konfiguracja ekranów

W pliku /config/appdaemon/appdaemon.yaml dodajemy konfigurację mqtt:

MQTT:
  type: mqtt
  namespace: mqtt
  client_id: "appdaemon"
  client_host: xxx.xxx.xxx.xxx
  client_port: 1883
  client_user: "user"
  client_password: "haslo"
  client_topics: NONE

Plik z edycją ekranów nowego oprogramowania w NSPanel wykonujemy w pliku: /config/appdaemon/apps/apps.yaml

Poniżej przesyłam mój kod, który możecie wykorzystać

---
nspanel-1:
  module: nspanel-lovelace-ui
  class: NsPanelLovelaceUIManager
  config:
    panelRecvTopic: "tele/nspanel_1/RESULT"
    panelSendTopic: "cmnd/nspanel_1/CustomSend"
    model: eu
    locale: "pl_PL"
    updateMode: "auto-notify"
    sleepTimeout: 20
    screensaver: 
        entity: weather.dom
        theme:
            autoWeather: true
    cards:
      - type: cardGrid
        title: Przyciski
        entities:
          - entity: sensor.nspanell_analog_temperature1
          - entity: sensor.ikea_air_sensor_vindriktning_pm2_5
            name: PM2,5
          - entity: script.spotify_ladypank
            icon: mdi:spotify
            color: [0, 255, 0]
          - entity: switch.swiatloprzytelewizorze
            name: Swiatlo Telewizor
            color:
                "on": [255,255,0]
                "off": [80,80,80]
            icon: sofa-single
          - entity: switch.swiatlonadstolem
            name: Swiatło nad Stołem
            icon: 
                "on": "ceiling-light-multiple"
                "off": "ceiling-light-multiple"
            color:
                "on": [255,255,0]
                "off": [80,80,80]
          - entity: switch.kuchnia_ledy_local
            name: Kuchnia
            icon: mdi:lightbulb-fluorescent-tube-outline
      - type: cardMedia
        entity: media_player.kuchnia
      - type: cardAlarm
        title: Alarm
        entity: alarm_control_panel.alarm
      - type: cardQR
        title: Zeskanuj do WiFi
        qrCode: "WIFI:S:Home_Wro_Love;T:WPA;P:Wroclaw_123456789;;"
        entities:
          - entity: iText.Home_Wro_Love
            name: Nazwa sieci
            icon: mdi:wifi
          - entity: iText.Wroclaw_123456789
            name: Hasło
            icon: mdi:key
Postaw mi kawę na buycoffee.to
5 1 vote
Article Rating
Subscribe
Powiadom o
guest
21 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
View all comments
Rob
Rob
1 rok temu

Czy Home Assistant musi cały czas być włączony by panel działał?

były użytkownik
były użytkownik
1 rok temu

Chamsko tak kasować pytania!

Dariusz
Dariusz
1 rok temu

Kolego wszystko ładnie pięknie pokazałeś jak zamontować dodatki ale nie pokazałeś i nie powiedziałeś o dodatku moskitto brokier by wystąpiło połączenie miedzy panelem a Home Assistent

zbyszek
zbyszek
1 rok temu

MQTT:
type: mqtt
namespace: mqtt
client_id: „appdaemon”
client_host: xxx.xxx.xxx.xxx
client_port: 1883
client_user: „user” // tu wpisujemy login moskito tak?
client_password: „haslo” // a tu haslo moskito?

config:
panelRecvTopic: „tele/nspanel_1/RESULT”
panelSendTopic: „cmnd/nspanel_1/CustomSend” // a tutaj tematy takie jak na stronie tasmota?

Adam
Adam
1 rok temu

witam,
mam problem, znaczy gdzieś mam błąd ale szukam od 2 dni i nie umiem znaleźć.

nspanel-1:
 module: nspanel-lovelace-ui
 class: NsPanelLovelaceUIManager
 config:
  panelRecvTopic: „tele/nspanel_1/RESULT”
  panelSendTopic: „cmnd/nspanel_1/CustomSend”
  model: eu
  locale: „pl_PL”
  updateMode: „auto-notify”
  sleepTimeout: 20
  screensaver: 
   entity: weather.dom_1


secrets: /config/secrets.yaml
appdaemon:
 latitude: 52.0
 longitude: 4.0
 elevation: 2
 time_zone: Europe/Berlin
 plugins:
  HASS:
   type: hass
  MQTT:
   type: mqtt
   namespace: mqtt
   client_id: „appdaemon”
   client_host: 192.168.1.77
   client_port: 1883
   client_user: „user”
   client_password: „password”
   client_topics: NONE
http:
 url: http://127.0.0.1:5050
admin:
api:
hadashboard:

nspanel.png
Adam
Adam
1 rok temu

po temacie, wystarczyło zrestartować AppDaemon

Pawel
Pawel
1 rok temu

Dzięki Bartek za tutorial 🙂
mam pewien problem – cały czas wyświetla mi się jedynie karta wygaszacza ekranu (z pogodą) a po kliknięciu na ekran pojawia się zakładka „Setup successful”, której nie idzie wyłączyć w żaden sposób (znika sama po jakimś czasie) – mimo tego, że dodałem kolejną kartę z sześcioma encjami..

Masz może jakiś pomysł jak to rozwiązać?

Pjoter
Pjoter
1 rok temu

Witaj świetna robota.
Wszystko zadziałało jak należy, jednakże interfejs jest powolny i brakuje mi prawdziwego termostatu.
Napotkałem w sieci bardzo fajny projekt oparty na esphome:
https://github.com/Blackymas/NSPanel_HA_Blueprint
Wszystko poinstalowałem jednak mam problem, po zianie oprogramowania wyświetlacza nie chce się potrzebne zainstalować
W logach esphome mam komunikat: Nextion is not connected!
Masz pomysł co można zrobić?
A może byś spróbował i opisał lub zrobił film jak z tasmoty przejść na esphome?
Projekt naprawdę wygląda fajnie i ma wiele funkcji.
pozdrawiam

Darek
Darek
1 rok temu

Dziękuję.
U mnie działa .
Czyżbyś podał hasło do Swojego WiFi ?
Swoją drogą mógłbyś napisać jak zrobić taki QR .
Pozdrawiam
Darek

Last edited 1 rok temu by Darek
Tomek
Tomek
Reply to  Darek
10 miesięcy temu

Cześć, jestem początkujący w temacie HomeAssistant. Posiadam panel nspanel z oprogramowaniem tasmota. Od kilku dni walczę by go uruchomić. Wszystko robię zgodnie z instrukcjami na wielu forach, jednak nie udało mi się poprawnie uruchomić nspanel-a. Na wyświetlaczu głównego ekranu widzę poprawnie godzinę i datę. Pod spodem wyświetlane są same wykrzykniki z podpisem apps.yaml.
W HomeAssistant informacja pogodowa wyświetla się poprawnie. Poniżej dane z apps.yaml

nspanel-1:
  module: nspanel-lovelace-ui
  class: NsPanelLovelaceUIManager
  config:
   panelRecvTopic: „tele/nspanel-1/RESULT”
   panelSendTopic: „cmnd/nspanel-1/CustomSend”
   model: eu
   locale: „pl_PL”
   updateMode: „auto-notify”
   sleepTimeout: 5 #czas powrotu wygaszacza ekranu
   sleepBrightness:
   – time: „07:30:00”
    value: 10
   – time: „23:00:00”
    value: 3
  screensaver:
    entity: weather.forecast_home
    theme:
      autoWeather: true

Próba wgrania kolejnych zakładek i funkcji również nie działa.
Mam wrażenie, że jest problem z komunikacją między serwerem HomeAssistant i nspanel.
W logach AppDeamonmam coś takiego:

2023-10-27 15:42:02.496428 INFO nspanel-1: Sending MQTT Message: weatherUpdate~text~weather.example~���~17299~Not found check~ apps.yaml~text~weather.example~���~17299~Not found check~ apps.yaml~text~weather.example~���~17299~Not found check~ 

Sterowanie przekaźnikami przycisków działa również poprawnie

Może ktoś podpowie co mogę sprawdzić?
Pozdrawiam
Tomasz

Filip
Filip
5 miesięcy temu

Cześć, chcę uruchomić jakiś widget na nspanelu ale niestety mam problem z skonfigurowaniem appdeamon, nie tworzy on w ogóle plików konfiguracyjnych typu app deamon.yaml czy coś. Pomożesz?

Emill
Emill
Reply to  Filip
4 miesięcy temu

masz w dokerze HA postawiony?

Marek
Marek
5 miesięcy temu

Jak oskryptować tasmotę, żeby przełączała nextion na stronę startową po 3 minutach braku poleceń mqtt? są jakieś języki skryptów ale ja tego totalnie nie znam

Andrzej
Andrzej
26 dni temu

Witam

super pokazane jak wgrać i wszystko poustwiać.
Jest jednak mały problem, filmik powstał około 2 lat temu
myślę że do dzisiaj dużo się zmieniło bo nie do końca
wgrywanie i konfiguracja przebiega jak na filmie.
Ja np. utknąłem na wgrywaniu pliku tft czyli komendzie
FlashNextion http://nspanel.pky.eu/lui-release.tft
pojawia się na ekranie pasek postępu ale tak jakby nie ładuje do końca,
no i oczywiście następny ekran już się nie pojawia, w efekcie
Nie pobiera z HA ekranów.
A no i w terminalu nie mam informacji o postępie flashowania.

Pozdrawiam

ladowanie_tft
Andrzej
Andrzej
26 dni temu

Przepraszam rok temu filmik powstał.

Andrzej
Andrzej
26 dni temu

Znalazłem, i poszło.
komenda:
FlashNextionAdv3 http://nspanel.pky.eu/lui-release.tft
trochę wolniej bo 115k ale zakończyło się pomyślnie
Pozdrawiam

21
0
Would love your thoughts, please comment.x