NEWS
Sonoff NSPanel
-
@armilar Ich hab's! Du hattest Recht, ich habe es falsch kopiert. Habe es jetzt für beide Dateien korrigiert und werde mit Ihrer Anleitung fortfahren. Danke für deine Hilfe
-
@armilar Ich bin wieder stecken geblieben in der Nähe von Punkt 10 . Nach dem Start der 2 TS-Skripte dreht sich der Bildschirm des NSpanel ständig und es wird kein Datum und keine Uhrzeit angezeigt.
In MQTT sehe ich das Folgende: Also kein CustomSend unter cmd?
Ich denke, die Daten für:
panelRecvTopic: "mqtt.0.SmartHome.NSPanel_1.tele.RESULT", //bitte anpassen
panelSendTopic: "mqtt.0.SmartHome.NSPanel_1.cmnd.CustomSend", //bitte anpassennicht angepasst werden müssen?
Diese orangefarbenen Gegenstände kommen mir auch nicht richtig vor:
Weiß jemand, was ich überprüfen oder ändern muss?
-
@herbiek Es fehlt das CustomSend... Das kann man nicht von IObroker-Seite aus anlegen..
in der Anleitung heist es:
- CustomSend anlegen
Der MQTT Datenpunkt wird benötigt und muss vom MQTT-Adapter angelegt werden. Ein manuelles Anlegen unter „Objekte“ oder „createState“ ist im ioBroker „nicht mehr“ möglich. Um den Datenpunkt zu erzeugen, öffnest du im Tasmota die Konsole und gibst ohne die Anführungszeichen
„CustomSend time~12:00“
ein. Alternativ kann auch der MQTT-Explorer genutzt werden und ein payload unter .../cmnd abgesendet werden. Danach sollte im MQTT-Adapter unter Objekte ein Datenpunkt: „SmartHome/NSPanel_X/cmnd/CustomSend“ erscheinen. Falls nicht, solange wiederholen bis dieser Datenpunkt abonniert wurde, oder ggfs. Nochmals die MQTT-Einstellungen überprüfen. In den Vergangenen Fragen dieses Topics ging es häufiger um diesen Punkt. - CustomSend anlegen
-
@mameier1234 Ich habe diese CustomSend bereits einige Male über das NSpanel gesendet:
Ich sehe nicht, dass hier etwas schief läuft? -
@mameier1234 die Datenpunkte können auch aus ioBroker heraus erzeugt werden, allerdings muss man
sendTo
bemühen:
oder// Beispiel für SendTo von https://github.com/ioBroker/ioBroker.mqtt // Test ob ich das zum Anlegen von neuen MQTT-Topics etc. nutzen kann /* * @param {string} MQTT instance Specify MQTT instance to send message through (may be either server or client) * @param {string} action Action to use (always 'sendMessage2Client' for sending plain messages) * @param {object} payload * @param {string} payload.topic Topic to publish message on * @param {string} payload.message Message to be published on specified topic * */ sendTo('mqtt.0', 'sendMessage2Client', {topic: 'znil/Tests/Testnachricht', message: '42'});
-
Na das ist doch cool.. .Dann könnte @Armilar sein Script doch noch erweitern, um zu prüfen ob der Datenpunkt da ist, und wenn nicht erzeugen ?
Das Customsend scheint ja wohl die größte Hürde zu sein... ? Bei mir hatte es auch einige Zeit gedauert, bis es lief... -
@mameier1234 man könnte auch immer das
sendTo
nutzen, spricht eigentlich nicht dagegen. Ob der MQTT-Adapter nun auf einen geänderten Datenpunkt reagieren muss (triggern) oder ob er die Daten gleich persendTo
bekommt ist doch bestimmt einerlei.Ich hatte das Problem auch bei der Ansteuerung von Displays über Tasmota und habe eine Weile gebraucht bis ich den Weg gefunden habe.
Oder - ähnlich wie Datenpunkte anlegen - einmal beim Start des Skriptes einbauen, dann sollten diese ja sicher vorhanden sein.
-
@bananajoe Ich kann also eine TypeScript-Datei erstellen und diesen Code darin einfügen und ihn ausführen, bis ich eine Zeitanzeige im NSPanel sehe?
-
@herbiek pfft joah ... keine Ahnung. Probiere aus.
Ich habe selbst kein NSPanel zum testen, ich lese hier nur immer aus Neugier mit. Ich habe noch nichts gefunden wo ich gesagt habe "Cool, genau dafür brauche ich ein NSPanel und meine Ehefrau wird es auch mögen" -
@mameier1234 sagte in Sonoff NSPanel:
Na das ist doch cool.. .Dann könnte @Armilar sein Script doch noch erweitern, um zu prüfen ob der Datenpunkt da ist, und wenn nicht erzeugen ?
Das Customsend scheint ja wohl die größte Hürde zu sein... ? Bei mir hatte es auch einige Zeit gedauert, bis es lief...Ich finde die Idee sehr gut! Man könnte etwas in dieser Art einbauen:
var paneltopic, result; paneltopic = 'SmartHome/NSPanel_1/cmnd/CustomSend'; sendTo("mqtt.0", "sendMessage2Client", { "topic": paneltopic, "message": 'time~' + String(formatDate(new Date(), "hh:mm")) }, async function (result) { console.log(result); });
Das Skript sendet den in diesem Fall durch "sendMessage2Client" direkt an den Client (NSPanel). Also exakt das gleiche, als wenn ich die Konsole im Tasmota öffne und "CustomSend time~XX:XX" (XX:XX für aktuelle Uhrzeit) eintippe.
Wenn alles korrekt konfiguriert ist, dann kommt der payload auch im Panel an. Und grundsätzlich kann es beim Startup auch nicht schaden, denn es wird in der Tat nur die Uhrzeit im korrekten Format gesendet.
Es legt aber nicht den Datenpunkt "CustomSend" im "mqtt.0" an, sondern mqtt.0 abonniert den CustomSend nach dem Senden an das NSPanel.
Wenn es also zu Problemen im Tasmota bei der Erstellung des Custom Send durch manuelle Eingabe in der Konsole kommt, dann könnte ich mir vorstellen, dass auch in diesem Fall (Das Skript macht ja exakt das gleiche), der CustomSend ebenfalls nicht erstellt wird.
Ich werde aber dennoch eine initiale Funktion in das TS-Skript einbauen. Für viele wird dann der Schritt mit der Erstellung des Custom Send entfallen. Aber ich denke nicht in allen Fällen... -
@bananajoe Das Skript hat mir keine Lösung geboten. Ich habe schließlich MQTT-Explorer verwendet und konnte den Zeitwert als SendCustom-Wert festlegen. Dann sah ich die Uhrzeit auf dem NSPanel erscheinen... Yes! Kann wieder fortgesetzt werden
-
@armilar Also bei meinen Tasmota-Geräten hat das bisher funktioniert. Mit der
sendTo
Frunktion habe ich die fehlenden Datenpunkte unter /cmnd/xxx/xxx abgelegt und konnte auch im MQTT-Explorer immer sofort die neuen Punkte sehen.Allerdings nutze ich den MQTT-Adapter im Client Modus an einem Mosquitto-Server, eventuell verhält sich das unterschiedlich
-
Hallo, mein NSPanel funktioniert einige Stunden einwandfrei, aber dann
ist endweder das Display Schwarz, oder die Zeit und Wetteranzeige ist da
und wenn ich aufs Display drücke ist alles Schwarz.
Nach einem Reset funktioniert alles wieder ein paar Stunden einwandfrei.
Hat wer eine Idee woran das liegt?
LG wheinz44 -
@armilar Ich habe jetzt eine Reihe von Strings ins Niederländische übersetzt und sehe das auch im NSpanel. Aber wenn Sie eine neue Version erstellen, kann das wieder passieren. Gibt es eine Möglichkeit, diese Zeichenfolge aus der Datei NsPanelTs.ts herauszunehmen und in eine eigene Datei zu stellen?
-
@herbiek sagte in Sonoff NSPanel:
@armilar Ich habe jetzt eine Reihe von Strings ins Niederländische übersetzt und sehe das auch im NSpanel. Aber wenn Sie eine neue Version erstellen, kann das wieder passieren. Gibt es eine Möglichkeit, diese Zeichenfolge aus der Datei NsPanelTs.ts herauszunehmen und in eine eigene Datei zu stellen?
Ja, ich denke das sollte möglich sein. Wird jedoch erst in einer der nächsten Versionen der Fall sein.
-
@wheinz44 sagte in Sonoff NSPanel:
Hallo, mein NSPanel funktioniert einige Stunden einwandfrei, aber dann
ist endweder das Display Schwarz, oder die Zeit und Wetteranzeige ist da
und wenn ich aufs Display drücke ist alles Schwarz.
Nach einem Reset funktioniert alles wieder ein paar Stunden einwandfrei.
Hat wer eine Idee woran das liegt?
LG wheinz44Das ist der neue "active" Parameter im Dimmode. Der soll eigentlich erst mit der nächsten Version des Skript kommen. Ich gehe davon aus, dass du auf 2.9.3 (DEV) geflashed hast. In der 2.9.0 (Stable) ist der meines Erachtens noch nicht drin. Mit dem Parameter "active" in der Config wird künftig die TFT-Standard-Brightness des Screensavers gesteuert.
Also entweder das aktuelle Skript von GitHub nehmen (der "active"-Parameter ist bereits berücksichtigt)
https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts
oder zurückflashen auf die 2.9.0
FlashNextion http://nspanel.pky.eu/lovelace-ui/github/nspanel-v2.9.0.tft
-
@armilar Um das Wetter anzeigen zu können, habe ich den Accu_Weather-Adapter installiert. Mit den Objekten in IObroker kann ich nun die Temperaturwerte für die nächsten Tage ermitteln.
Ich habe auch die var weatherForecast auf true gesetzt, wie in Ihrem Handbuch vorgeschlagen.
Nach der Beschreibung sollten die Prognosen automatisch angezeigt werden. Ich kann sie jedoch nicht sehen. Ist es möglich, dass ich die Sprache auf Deutsch hätte einstellen müssen? Ich habe die Sprache bei AccuWeather auf Niederländisch eingestellt. Ich kann mir vorstellen, dass, wenn Sie die Werte ohne Alias abrufen, dies für NL nicht funktioniert?
-
@armilar Ich habe nochmal eine Frage ob es ein Bug ist oder ich da was einstellen muss.
Und zwar kommt bei mir immer wieder die Anzeige das es eine neue Version
vom Berry Treiber gibt. Die kann ich mit Ja , Nein oder X bestätigen aber anschließend
wird nix geupdatet und die Seite wird immer wieder nach 30min angezeigt.
Eigentlich sollte ich auch die neusten Treiber haben, da ich das Display gestern erst geflasht habe.
Bei Installierte Version steht "null" und bei Verfügbare Version "4"
Kann man die Funktion vielleicht auch komplett abschalten? -
@sfaerber sagte in Sonoff NSPanel:
@armilar Ich habe nochmal eine Frage ob es ein Bug ist oder ich da was einstellen muss.
Und zwar kommt bei mir immer wieder die Anzeige das es eine neue Version
vom Berry Treiber gibt. Die kann ich mit Ja , Nein oder X bestätigen aber anschließend
wird nix geupdatet und die Seite wird immer wieder nach 30min angezeigt.
Eigentlich sollte ich auch die neusten Treiber haben, da ich das Display gestern erst geflasht habe.
Bei Installierte Version steht "null" und bei Verfügbare Version "4"
Kann man die Funktion vielleicht auch komplett abschalten?Trag bei "null" einfach eine 4 ein.
oder
var manually_Update = true; --> auf false
und
0_userdata.0.NSPanel.1.NSPanel_autoUpdate auf "false"
-
@herbiek sagte in Sonoff NSPanel:
@armilar Um das Wetter anzeigen zu können, habe ich den Accu_Weather-Adapter installiert. Mit den Objekten in IObroker kann ich nun die Temperaturwerte für die nächsten Tage ermitteln.
Ich habe auch die var weatherForecast auf true gesetzt, wie in Ihrem Handbuch vorgeschlagen.
Nach der Beschreibung sollten die Prognosen automatisch angezeigt werden. Ich kann sie jedoch nicht sehen. Ist es möglich, dass ich die Sprache auf Deutsch hätte einstellen müssen? Ich habe die Sprache bei AccuWeather auf Niederländisch eingestellt. Ich kann mir vorstellen, dass, wenn Sie die Werte ohne Alias abrufen, dies für NL nicht funktioniert?
Nein, die Datenpunkte sind auch in der deutschen Version genauso wie in der niederländischen Version.
Ich denke es liegt am großen Icon. Hier wird zuvor im Skript abgefragt, ob der Alias für den Weather-Forecast (Aktuelle Temperatur und aktuelles Wetter-Icon) vorhanden ist.
Also würde ich zuvor versuchen mit dem Device-Manager diesen Alias zu erstellen.Der Alias ist in der Variable weatherEntity definiert.
und etwas tiefer ein Datenpunkt mit der aktuellen Temperatur
Wenn also der Alias nicht existiert, werden auch keine kleinen Icons mit eigenen Datenpunkten angezeigt, auch dann nicht wenn weatherForecast auf "false" steht
Du kannst den Alias in der Config natürlich anpassen
Beispiele:
alias.0.het_weer oder alias.0.weatherViele Grüße in die Niederlande