Autor Thema: Leerstring bei dpt16.001 senden?  (Gelesen 1712 mal)

Offline NoMercy

  • Jr. Member
  • **
  • Beiträge: 60
Leerstring bei dpt16.001 senden?
« am: 06 Juni 2018, 10:47:31 »
Hallo,

ich nutze in einzelnen Zimmern BJ-PriOn-RTR mit Display, an denen ich z.B. Anzeigen möchte, ob es sinnvoll, ist den Raum zu lüften.

Grundsätzlich habe ich hierzu in FHEM ein KNX-Device vom Typ dpt16.001 definiert und die GA mit dem Infodisplay des RTR verbunden. Das Device sendet auch Texte über die GA (z.B. "ggf. Lüften") an das Display. Funzt auch alles so weit.

Wenn hier im Beispiel allerdings keine Nachricht über die GA am Display angezeigt werden soll, müsste ich einen Leerstring senden. Das habe ich allerdings noch nicht hinbekommen... Geht das irgendwie?

bei set <KNX-Device> string gibt es eine Fehlermeldung (No data or cmd string).
bei set <KNX-Device> string "" werden die Gänsefüßchen am Display angezeigt. Gleiches beim Hochkomma...  :(

Hat jemand eine Idee?

Danke und Gruß,
Michael 

 

Offline Andi291

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1125
Antw:Leerstring bei dpt16.001 senden?
« Antwort #1 am: 06 Juni 2018, 15:07:53 »
Puh, schwierig...Spontan fälllt mir ein, Du könntest alternativ einen anderen dpt verwenden und 0x0 schicken.
Was passiert, wenn Du einen Zeilenumbruch schickst?

Offline NoMercy

  • Jr. Member
  • **
  • Beiträge: 60
Antw:Leerstring bei dpt16.001 senden?
« Antwort #2 am: 06 Juni 2018, 15:32:07 »
Hi,

also Zeilenumbruch schicken, wüßte ich nicht wie... Bin kein Perl-Profi. Alles was ich so kenne (z.B. &#xd;) wird genau so dargestellt :-(

An welchen anderen dpt hattest Du denn gedacht? Das Display benötigt dpt16.001...


Offline Andi291

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1125
Antw:Leerstring bei dpt16.001 senden?
« Antwort #3 am: 06 Juni 2018, 15:51:44 »
1. Schicke mal mit DPT16 nen Zeilenumbruch: \n2. probier mal mit einem dpt5 eine 0 an die GA zu senden...

Offline NoMercy

  • Jr. Member
  • **
  • Beiträge: 60
Antw:Leerstring bei dpt16.001 senden?
« Antwort #4 am: 06 Juni 2018, 15:59:30 »
Hi Andi,

dpt16 mit \n zeigt genau \n an. :'(

Mit dpt5 und einer 0 an die GA ändert sich an der Anzeige nichts (d.h. der bisher vorhandene Wert bleibt weiter bestehen). Ich habe gerade keine ETS hier um zu schauen, was über den Bus geht... dpt5 würde mir ja auch nicht helfen, da ich ja auch Texte (wenn notwendig) oder eben eine leere Anzeige (wenn nichts zu informieren ist) anzeigen möchte.

Gruß,
Michael

Offline Andi291

  • Developer
  • Hero Member
  • ****
  • Beiträge: 1125
Antw:Leerstring bei dpt16.001 senden?
« Antwort #5 am: 06 Juni 2018, 19:07:06 »
Der dpt5 schickt bei 0 aber 0x00, was einem leeren String entspricht. Ist ne Idee...

Offline NoMercy

  • Jr. Member
  • **
  • Beiträge: 60
Antw:Leerstring bei dpt16.001 senden?
« Antwort #6 am: 07 Juni 2018, 09:42:19 »
Hi,

danke nochmal für die dpt5-Info. Da ich aber tatsächlich auch "richtige" Textmeldungen am Display benötige (z.B. "ggf. Lüften", "Fenster offen", etc.) , werde ich wohl bei dpt16 bleiben und statt einem Leerstring, wenn z.B. "Lüften nicht notwendig ist", irgendwelche halbwegs sinnvollen alternativen Texte schicken ;)

Gruß

Offline JoeALLb

  • Hero Member
  • *****
  • Beiträge: 1614
Antw:Leerstring bei dpt16.001 senden?
« Antwort #7 am: 07 Juni 2018, 10:21:24 »
Leg doch einfach, zumindest für den test, ein neues Device mit der selben GAD an, nur als DPT5.
Dann kannst du beides testen und wenns klappt kann man einen schritt weiter denken.

ggf. müsste man dann irgendein schlüsselwort festlegen wie zB "undev" oder "$empty", um einen Leerstring zu senden.
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Offline KuhKai

  • New Member
  • *
  • Beiträge: 3
Antw:Leerstring bei dpt16.001 senden?
« Antwort #8 am: 06 Dezember 2020, 19:29:39 »
Hallo @NoMercy,
hast Du eine Lösung hierzu gefunden? Ich habe einen Taster von mdt und brauche auch den Leerstring zum Zurücknehmen der Meldung.

Beste Grüße...

Offline erwin

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 622
Antw:Leerstring bei dpt16.001 senden?
« Antwort #9 am: 06 Dezember 2020, 21:48:07 »
Hi,
ich hab mir das kurz angesehen, da ist mehr als ein Fehler drin....
ich denke ich kann in absehbarer Zeit eine Lösung liefern, aber ohne "Schlüsselwort" wird's nicht gehen (wie JoeALLB geschrieben hat).

Gibts dazu Wünsche?
es soll etwas sein, was am Anfang nie gebraucht werden sollte! Damit sollten wir zumindest zwei Zeichen nehmen.
Spontan fällt mir z.b: <> oder ### oder auch blank oder ähnliches... es sollte aber auch kein perl-funtionszeichen sein wie $%@ usw...
Was ich bisher versucht hab, (mit modifizierten Code) ist ein einzelnes Leerzeichen an den dpt16 zu schicken und das funktioniert!
Ideen?
l.g. Erwin

update: gelöst! siehe https://forum.fhem.de/index.php/topic,116737.0.html
« Letzte Änderung: 01 Februar 2021, 16:09:54 von erwin »
FHEM aktuell auf RaspberryPI mit Busware ROT / Weinzirl IP731
Maintainer 10_KNX.pm
CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT
1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,...
MQTT2, KNX, SONOFF, mySENSORS,...

 

decade-submarginal