Autor Thema: 39_DLCD.pm - kleines Hilfsmodul um Datenzeilen für serial LCD vorzubereiten v2.0  (Gelesen 20747 mal)

Offline realrob

  • New Member
  • *
  • Beiträge: 11
Sehe ich auch so. Die zentrale Frage ist halt nur wie ich das angeschlossene display in fhem ansprechen kann. Über das design mache ich mir danach sorgen.  Lg und danke

Offline det.

  • Sr. Member
  • ****
  • Beiträge: 967
Sehe ich auch so. Die zentrale Frage ist halt nur wie ich das angeschlossene display in fhem ansprechen kann. Über das design mache ich mir danach sorgen.  Lg und danke
Die zentrale Frage ist die des Anschlusses - in den verlinkten Artikeln und bei vielen hier im Forum ist das Display damit http://www.fuchs-shop.com/de/shop/6/1/13372316/ über 1-wire Interface an FHEM angebunden. Dann kann Dir auch mit Beispielcode geholfen werden.
l.g. det.

Offline realrob

  • New Member
  • *
  • Beiträge: 11
Hi det,
Danke für Deine Antwort! Tja, habe mich auch schon mit dem Gedanken gespielt, da es FHEM offenbar dieses direkte Ansteuern eines HD44780 dzt. nicht unterstützt.
Klar, auf I2C wäre es eine leichte Übung: Das Standarddisplay kann man mit DIESER http://www.banggood.com/LCD1602-Adapter-I2CIICTWI-Serial-Interface-Module-Board-For-Arduino-p-1056942.html?rmmds=search ansprechen. ALLERDINGS braucht man dazwischen DIESEN Pegelwandler http://www.banggood.com/5Pcs-Two-Channel-IIC-I2C-Logic-Level-Converter-Bi-Directional-Module-p-979919.html?rmmds=search beim Chinamann um 2,70 im 5erPack.
und schon würde es laufen..
;-)) Dennoch wurmt es mich und ein paar Leidensgenossen hier im Forum, dass es direkt nicht geht! ;-))

Offline schka17

  • Sr. Member
  • ****
  • Beiträge: 819
Hi det,
Danke für Deine Antwort! Tja, habe mich auch schon mit dem Gedanken gespielt, da es FHEM offenbar dieses direkte Ansteuern eines HD44780 dzt. nicht unterstützt.
Klar, auf I2C wäre es eine leichte Übung: Das Standarddisplay kann man mit DIESER http://www.banggood.com/LCD1602-Adapter-I2CIICTWI-Serial-Interface-Module-Board-For-Arduino-p-1056942.html?rmmds=search ansprechen. ALLERDINGS braucht man dazwischen DIESEN Pegelwandler http://www.banggood.com/5Pcs-Two-Channel-IIC-I2C-Logic-Level-Converter-Bi-Directional-Module-p-979919.html?rmmds=search beim Chinamann um 2,70 im 5erPack.
und schon würde es laufen..
;-)) Dennoch wurmt es mich und ein paar Leidensgenossen hier im Forum, dass es direkt nicht geht! ;-))
Die Pegelwandler benötigst du nicht da das LCD nichts sendet. Ich betreibe mehrere LCD's mit dem I2C Adapter und ESP oder Arduino, funktioniert ohne Probleme


Sent from my iPad using Tapatalk
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Offline realrob

  • New Member
  • *
  • Beiträge: 11
hmmm.. echt? Würde das i2C Modul, welches mit 5V betrieben wird, die GPIOS SDA1 und SCL1 nicht mit 5V Pegel beaufschlagen und damit grillen? Oder sehe ich das nicht richtig?

Offline schka17

  • Sr. Member
  • ****
  • Beiträge: 819
hmmm.. echt? Würde das i2C Modul, welches mit 5V betrieben wird, die GPIOS SDA1 und SCL1 nicht mit 5V Pegel beaufschlagen und damit grillen? Oder sehe ich das nicht richtig?
Grundsätzlich hast du recht, aber da, zumindest die I2C und LCD Module die ich habe, keine Daten senden,  funktioniert das. Wie gesagt, ich habe es so mit einigen ESP's oder Arduinos, zumindest der ESP ist sehr empfindlich bei Überspannung an den Eingängen.


Sent from my iPad using Tapatalk
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Offline Prof. Dr. Peter Henning

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4845
Die Module im Hauptverzeichnis werden nicht nur gepflegt, sondern für die gibt es auch Support. Insofern muss man jedes Verständnis dafür aufbringen, wenn jemand das nicht leisten kann oder will (2 Module von mir stehen auch im contrib).

Also bitte mal langsam mit solchen Forderungen, wenn man selbst noch nicht lange dabei ist.

LG

pah

Offline Marekh

  • Full Member
  • ***
  • Beiträge: 104
Ich habe ein 20X4 LCD Display an ESPEasy am laufen, allerdings gelingt es mir nicht °C darzustellen.

Als Attribut habe ich in dlcdReplaceRegex ein °=\xDF eingefügt, dies führt aber zu einen anderen Zeichen auf dem Display.

Wie kann ich mein Display überreder das ° darzustellen

list Garage_Display
Internals:
   NAME       Garage_Display
   NR         240
   NTFY_ORDER 50-Garage_Display
   STATE      So, 29.10.2017 16:03<br>Audibatterie 11.93 V<br><br>Garage T:16.1 °C H:58%
   TYPE       DLCD
   READINGS:
     2017-10-29 01:41:09   Line1           So
     2017-10-23 13:36:45   Line10          attr dlcdLine10 %time1%
     2017-10-29 01:41:09   Line2           29.10.2017
     2017-10-29 16:03:00   Line3           16:03
     2017-10-29 16:03:30   Line4           11.93
     2017-10-29 15:17:31   Line5           16.1 °C
     2017-10-29 15:35:36   Line6           58
     2017-10-29 12:42:06   Line7           timer
     2017-10-23 13:36:45   Line8           attr dlcdLine8 %time1%
     2017-10-23 13:36:45   Line9           attr dlcdLine9 %time1%
     2017-10-29 16:03:30   state           16:03:30
Attributes:
   dlcdClearLineCmd 5
   dlcdCols   20
   dlcdLine1  %date_WD_ger%
   dlcdLine2  %date_dmy%
   dlcdLine3  %time_h%:%time_m%
   dlcdLine4  %1%
   dlcdLine5  %2% °C
   dlcdLine6  %3%
   dlcdLine7  %4%
   dlcdPollInterval 2
   dlcdReplaceRegex °=\xDF
   dlcdRows   10
   dlcdVal1   ESPEasy_Audi_A6_Boardspannung:Analog
   dlcdVal1formatnum 3+2
   dlcdVal2   Garage_Temperatur:temperature
   dlcdVal2formatnum 2+1
   dlcdVal3   Garage_Temperatur:humidity
   dlcdVal3formatnum 2+0
   dlcdVal4   Garage_Tor_runter_Automatisch_DOIF:zeit
   room       Display
   stateFormat Line1, Line2 Line3<br>Audibatterie Line4 V<br><br>Garage T:Line5 H:Line6%

Danke
Marek

Offline schka17

  • Sr. Member
  • ****
  • Beiträge: 819
Mit dlcdReplaceRegex    °=ß funktioniert es bei mir
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Offline Marekh

  • Full Member
  • ***
  • Beiträge: 104
Leider steht mit °=ß  immer noch das gleiche falsche Zeichen auf dem Display, ich definiere in dlcdLine5:  %2% °C, wäre es besser, wenn das °C schon in den ausgelesenen Reading (%2%) stehen würde?

Marek

Offline kpwg

  • Full Member
  • ***
  • Beiträge: 252
Du solltest erst einmal versuchen, den Zeichensatz des Displays zu erkunden. Das hat mit DLCD noch nichts zu tun. Ich habe für solche Fälle das LCD händisch beschrieben und entsprechend Fotos der "Blöcke" gemacht. Nicht immer waren alle gewünschten Zeichen enthalten (Umlaute, etc).
FHEM 5.x auf RasPi3, Debian Stretch, zahlreiche E6-Boards mit LAN/ZBus/RFM12-433/ADC/LCD/DHT22/LTC1257/BMP180/1wire/C6, CUL-HM/FS20, KS200, LGW mit LaCrosse/EC3000, HM-RC-4-2, HM-SCI-3-FM, HM-ES-TX-WM, HM-SEC-SCo, HM-CC-RT-DN, ESPEasy, SonOff, uvm.

Offline fhem-hm-knecht

  • Hero Member
  • *****
  • Beiträge: 1707
  • Fhem User seit 2010
°=\x{DF}
du musst im Zeichensatz von deinem Display schauen, also Doku wälzen
Hary


Banane (CT)   2x HM-Lan + WlanHMUART, Avr-net-io, 1Wire,

Offline schka17

  • Sr. Member
  • ****
  • Beiträge: 819
Doku hatte ich zu meinem Displays auch keine, war recht mühsam, zumal ja auch noch die codepages vom System bzw. Webinterface dazukommen....

Habe das empirisch ermittelt, also einfach nacheinander alle ASCII Codes mit dem webcommand ans Display gesendet.
M: Thinclient x64 Debian | CUL FS20, HMS100WD, HMS100TF, HMS100T, HMS100CO, S300, S555TH | OWServer DS1420, DS18B20, DS2408 | RFXCOM UVN128, THWR800, THGR228N,RTGR328, PCR800 |Jeelink PCA301 EC3000|CUNO+IR|HMLAN|HMUSB|CUL433 Somfy|mySensors|espEasy
S1:Raspberry mit BPM810, Jeelink EC3000

Offline Marekh

  • Full Member
  • ***
  • Beiträge: 104
interessant ist, egal was ich bei dlcdReplaceRegex hinschreibe (°=ß, °=\x{DF}...), das Display zeigt immer die gleichen 2 Zeichen an, so als ob das dlcdReplaceRegex nichts macht.

Marek

Offline rih

  • New Member
  • *
  • Beiträge: 21
Müssten es nicht 2 Backslash in dem ReplaceRegex-Attribut sein (mal abgesehen vom Zeichensatz)?
°=\\x{DF}So klappt es zumindest bei mir mit dem °C.
« Letzte Änderung: 29 Oktober 2017, 23:04:54 von rih »

 

decade-submarginal