Direkt zum Inhalt
PekawayPekaway
Sonoff NS Panel WIFI TOUCHSCREEN V1.0

Sonoff NS Panel WIFI TOUCHSCREEN V1.0

 

1. Einleitung

Das Sonoff Panel ist ein Nextion Touchscreen mit einem ESP32 auf der Rückseite, was es zu einem interessanten Tool für Entwickler macht. Wir haben uns das Panel vorgenommen und es so vorbereitet, dass es mit VANPI funktioniert.

2. Hardware anpassen 12V-5V (Optional)

Das Touchpanel wurde für die Haustechnik entwickelt und arbeitet mit 230V. Das muss zuerst geändert werden.

Zuerst löst ihr die Montageplatte mit einem Schlitzschraubendreher und entfernt dann die Abdeckkappe wie abgebildet.

Darunter befinden sich der Spannungswandler und die Relais. Nach dem Lösen der vier Befestigungsschrauben und der Schrauben des Anschlussterminals kann die Platine herausgenommen werden.

Von der Platine entfernen wir alles, was sich auf der Seite der Klemmen befindet. Dann können wir einen DC/DC-Wandler unserer Wahl dazwischenlöten. Die beiden unteren Pins verwenden wir als Spannungseingang für unser 12V System und verbinden sie mit dem VIN des Converters. Den 5V-Ausgang und die Masse löten wir oben wie abgebildet an die Kondensatorpunkte. Links (schraffiert) ist Masse und rechts ist Plus. Somit können wir 12V direkt an die Schraubklemmen anschließen und das Panel damit betreiben. Der Zusammenbau erfolgt in umgekehrter Reihenfolge. Den Buck-Wandler haben wir noch in einen Schrumpfschlauch verpackt, durch das Entfernen der 230V-Relais ist genügend Platz vorhanden.

3. Tasmota flashen

Um die offene Firmware Tasmota zu flashen, müssen wir das eigentliche Display von der Platine trennen. Dazu werden die beiden Deckelschrauben gelöst und der Flachbandkabelverbinder zum Display geöffnet.

Nach dem Freilegen der ESP32-Platine kann ein USB-UART-Adapter angeschlossen und mit der Programmierung begonnen werden.

Oben befindet sich der Programmieranschluss. Ihr verbindet wie gewohnt 3,3V (WICHTIG! Kein 5V-Pegel) TX mit RX, RX mit TX und GND. Den Pin GPIO0 müsst ihr beim Booten auf GND legen. Das könnt ihr einfach mit den Pins auf der unteren Stiftleiste machen.

Die beiden Pins unten links sind Masse und die beiden Pins unten rechts sind 5V. Mit diesen Pins kann man das Board nach dem Flashen direkt betreiben, wenn man keinen Buckconverter wie oben beschrieben eingebaut hat. Das Display braucht die 5V unbedingt. Mit 3,3V funktioniert das System nicht.

Zum Flashen am besten den Chrome-Browser verwenden: https://tasmota.github.io/install/

Dort "Tasmota32 Sonoff-NSPanel(englisch)" auswählen. Nun muss nur noch der richtige Port angegeben werden und der Chip wird geflasht.

4. Konfiguration

Nachdem das System geflasht wurde, kann es gestartet werden.

Es wird ein offenes WLAN "Tasmota-xxxxx" angezeigt, mit diesem verbindet ihr euch und geht mit einem Explorer auf die IP Adresse 192.168.4.1. Dort findet ihr die WLAN Einstellungen von Tasmota. Wichtig ist nun, dass ihr den Touchscreen mit dem WLAN des VANPI (also dem AccessPoint) verbindet. Alle notwendigen Dateien sind ab Version 1.1.0 onboard und werden direkt vom System gezogen.

Nach dem Start habt ihr euch sicher gefragt, warum der Bildschirm schwarz bleibt. Das liegt daran, dass wir zuerst das richtige Template einstellen müssen. Dazu gehen wir in die Config von Tasmota.

Das Display sollte eine IP vom VAN PI System 192.168.4.x erhalten haben, im VAN PI Webinterface in der Config sind die DHCP Leases zu finden, dort kann man nachschauen oder einen Netzwerkscanner verwenden.

Nachdem man den Wifi Touchscreen gefunden und die Tasmota-Seite aufgerufen hat, muss man folgende Einstellungen vornehmen:

Config -> Other -> Template

{"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"}

-> Die Checkbox "Activate" anklicken.

Das Display startet neu und die normale Bedienoberfläche des NS Panels sollte zu sehen sein.

MQTT

Für die Kommunikation nutzen wir wie gewohnt MQTT.

Stellt also in Tasmota folgende MQTT Settings ein:

Host: pekaway.local (oder die IP-Adresse eures VANPI)

Topic: WifiTouch

Port: 1883 

In Node-RED befindet sich ein Flow "WifiTouch", in dem die Datenübertragung zum Display erfolgt.

5. Upload TFT File und Berry Treiber

Wir haben die nötigen Dateien auf den VANPI Image bereitgestellt und ihr könnt sie über die Konsole laden.

Der Berry Driver sorgt dafür, dass wir das Nextion Display über den ESP32 flashen können diesen müssen wir also zuerst installieren.

a. Berry Driver:

Consoles -> Console

"Backlog UrlFetch http://pekaway.local/autoexec.be; Restart 1"

Jetzt laden wir die eigentliche Displaydatei auf das Gerät:

b. Upload Display File:

Consoles -> Console

"FlashNextion http://pekaway.local/nspaneltft"

FERTIG!

 

Ab VANPI v1.1.2 sind alle benötigten Dateien standardmäßig auf dem Image hinterlegt und können über das Webinterface im Bereich System Update auf das Touchpanel geladen werden. Manuell funktioniert das ganze folgendermaßen:

(Vor VANPI v1.1.2:)

Die Installation funktioniert momentan nur manuell. DH. Ihr müsst die TFT Datei via WinSCP oder ähnlichen Tool auf das VAN PI System kopieren. Mit der neuen Version 1.1.2 wird es dann eine Funktion geben, womit ihr alles über das System machen könnt.

→ WinSCP starten → IP vom System anwählen → pi:raspberry Zugangsdaten → .tft Datei in den home/pi/pekaway kopieren → .tft umbennen in VanPI_NSPANEL.tft → Webinterface (Tasmota) vom NS PANEL aufrufen → Konsole → "FlashNextion http://pekaway.local/nspaneltft"

Der neue WifiTouchFlow ist auch unten angefügt und muss nur in Node-RED getauscht werden.

___________________________________________

Zwei wichtige Funktionen noch.

RecoveryMode deaktivieren:
Da sich das System durch siebenmaliges ein und ausschalten zurücksetzt und dies bei einem Einsatz mit einer Batterie durchaus schnell passieren kann, sollte die Funktion deaktiviert werden. Das geht in der Tasmota Konsole mit

"SetOption65 1"

Internen Temperatursensor nutzen:
Das NS Panel hat einen analogen Temperatursensor, der über MQTT angebunden wird. Jedoch passen die Werte hier nicht. Deshalb sollten die Parameter in der Tasmota Konsole angepasst werden.

"ADCParam1 2,12400,8800,3950"

Der WifiTouch Flow hat unten ein Beispiel zum Empfangen der Temperaturen via MQTT. Dort fehlt nur eine Verbindung und dann würde Temperatur vom Display auf den ersten Temperaturwert gesetzt werden. Denkt daran, den ersten Sensor dann im Temp Flow zu deaktivieren.  Im Menu Logging könnt ihr auch die Telemetry Datenrate von 300s auf 60s oder weniger einstellen. Ansonsten kommen die Sensorupdates nur sehr langsam.

 

VanPI_NSPANEL1.0 .tft – Datei:

https://share.12-s.de/s/zXQAczY3Mj8RwWX

Wifi Touchpanel .json – Datei:

https://share.12-s.de/s/p5BfLKCNszbPkbH

Hinterlasse einen Kommentar

Deine Email-Adresse wird nicht veröffentlicht..

weitere Tutorials

OpenSource needs Support

werde jetzt Patron

Mehr Projekte, mehr Tutroials und mehr unterstütze Geräte. Unsere Community wächst und freut sich auch über deine Unterstützung. Werde also jetzt Patron um immer die neuesten Inhalte zu erhalten und gleichzeitig das VAN PI Projekt zu unterstützen.

Patron werden
Warenkorb 0

Dein Warenkorb ist leer

Beginn mit dem Einkauf