Arduino Uno und i2c LCD-Display - mag nicht so.. warum?

Hallo,
ich probiere seit Stunden ein LCD2004 mittels i2c (PCF8574T) anzusteuern.

leider klappt es irgendwie nicht..

mittels Busscanner wurde die Adresse0x27 erkannt.

ich verwende nachfolgende Standardcode aus der IDE (1.6.7)

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,20,4);  // set the LCD address to 0x27 for a 20 chars and 4 line display

void setup()
{
  lcd.init();                      // initialize the lcd 
 
  // Print a message to the LCD.
  lcd.backlight();
  lcd.print("H e l l o , world!");
  lcd.print("T");
}

void loop()
{
}

auf dem Display wird jedoch nur nachfolgende Text ausgegeben:

HT

Warum????? wieso werden ello, world! irgendwo verschluckt??

hab bereits mehrere LCD's und div. huckepack i2C-adapter getestet, bei jedem das gleiche..

Kann mir bitte jemand helfen????
Danke!

Was wird denn angezeigt, wenn du die Zeilt mi "T" raus nimmst?

Und dann mal eine Startposition für die zweite Zeile mit angeben.
lcd.setcursor(0,1)
Und danach den neuen Text schreiben.

Hallo,

ohne der Zeile mit "T" wird nur ein "H" angezeigt,

mit lcd.setcursor(0,1) wird dann angezeigt:

H
T

bei jedem lcd.print wird immer nur der erste Buchstabe/Zahl angegeben, der Rest wird verschluckt - oder so..
lcd.setCursor und auch Backlight funktionieren einwandfrei..

Hallo,

vielleicht fehlen dir noch paar Parameter ?

[color=#cc6600]LiquidCrystal_I2C[/color] lcd(0x27, ....

http://arduino-info.wikispaces.com/LCD-Blue-I2C?responseToken=4fc6c5965b52673a4fb38d2b14bddc6b

Oder nimm im Setup mal "lcd.begin();" statt "lcd.init();".

Ah, ich sehe gerade, das liegt an der IDE. Nimm die Version 1.6.8 oder 1.6.5, damit funktioniert es.
Die 1.6.6 und 1.6.7 haben diesen Bug.

Doc_Arduino:
Hallo,

vielleicht fehlen dir noch paar Parameter ?

[color=#cc6600]LiquidCrystal_I2C[/color] lcd(0x27, ....

http://arduino-info.wikispaces.com/LCD-Blue-I2C?responseToken=4fc6c5965b52673a4fb38d2b14bddc6b

Das habe ich auch vermutet, aber einige Libs liefern die Parameter für den I2C Baustein schon mit, anders würde auch keine Anzeige kommen. Typischer fehler der Version.

Habe jetzt die aktuelle 1.6.9 installiert,
jedoch gleiches Problem.....

Habe gerade das SerialDisplay aus der IDE übertragen,
da werden die Eingaben von der Tastatur fehlerfrei angezeigt..

Letzte Idee:
Hast du für I2C Pullup-Widerstände eingesetzt?
4,7 k von SDA und SCL gegen 5Volt.

Und du könntest noch eine andere Library testen. I2C Library

StefanB79:
Habe gerade das SerialDisplay aus der IDE übertragen,
da werden die Eingaben von der Tastatur fehlerfrei angezeigt..

Versteh ich nicht.

Hallo! und vielen 1000dank für Deine Hilfe!!!!!!

warum das Serial.Write funktioniert aber lcd.print weiß ich nicht!!!
die Pullups sind 4,7k

jedoch alles ohne Erfolg!

ABER:

ich habe die bei mir installierten (div. heute heruntergeladenen) i2c libs gelöscht und die
die Du mir verlinkt hast heruntergeladen und installiert.

und siehe da, mit dieser funktioniert es!!! EINWANDFREI!!!

es geht auf dem Steckbrett, und auch in der "realen" Anwendung, hier ist der i2c-Bus 5m lang!
(als Treiber verwende ich P82B715)

also nochmals vielen Dank und noch schöne Feiertage!!

... dein Leitspruch stimmt schon , i2c weniger Kabel - mehr Probleme!
... mich hat das Problem den ganzen Vormittag gekostet, naja aber im i2c lag es offensichtlich nicht..
das wird dann wohl ein Problem mit lcd.print sein...

Die Pullups sind nicht so wichtig, bei mir klappts ja auch ohne.
Welches Display ist es genau? Link?

Probier mal dieses aus:
http://forum.arduino.cc/index.php?topic=391303.msg2698119#msg2698119

skorpi08:
Die Pullups sind nicht so wichtig, bei mir klappts ja auch ohne.

Das hängt sehr von der Kabellänge ab.
Die Widerstände sollten schon dran sein, aber mit Glück geht es auch ohne. Aber wer hat das schon ständig? :wink:

Naja, 5m ist schon nen Stück Kabel, I2C ist ja nicht extra für sowas entwickelt worden, schön dass es jetzt auch bei ihm läuft.

Prima, wenn es jetzt geht.
Dann lag es tatsächlich an der Library, die anders initialisiert werden musste.
Man lernt eben nicht aus.
Ebenfalls noch schöne Feiertage.

Hallo,

er hat auch auf dem Steckbrett mit 20cm Kabel und Pullups nicht funktioniert,

der I2c mit 5m Kabel ist mit beidseits Bustreibern P82B715 aufgebaut,
am µC i2c sind beidseits je 2x4,7kOhm, an den 5m Kabel ist je ein 470Ohm PullUp verbaut,
bislang funktioniert es einwandfrei.