Issue #76 resolved
thomas reisinger
created an issue

Hi I am using the latest library 1.3.4 and using your example hello world on WEMOS D1 R2 board. Compile error is also on Arduino Uno!!

I am confused if I have to use lcd.begin() or lcd.init().

Tried both but failed either way.

had a compile error for

LiquidCrystal_I2C (uint8_t lcd_Addr, uint8_t backlighPin, t_backlighPol pol);

LiquidCrystal_I2C::begin()' lcd.begin(); // initialize the lcd ^

...Arduino/libraries/NewliquidCrystal/LiquidCrystal_I2C.h:110:17: note: virtual void LiquidCrystal_I2C::begin(uint8_t, uint8_t, uint8_t) virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS);
^ ...Arduino/libraries/NewliquidCrystal/LiquidCrystal_I2C.h:110:17: note: candidate expects 3 arguments, 0 provided exit status 1

lcd.ini(): .../Arduino/libraries/NewliquidCrystal/LiquidCrystal_I2C.h:154:9: error: 'int LiquidCrystal_I2C::init()' is private

could you check this?

Comments (18)

  1. thomas reisinger reporter

    I tried both libraries.

    but still compile errors.

    another error is:

    .../Arduino/libraries/LiquidCrystal/LiquidCrystal_I2C.h:110:17: note: candidate expects 3 arguments, 0 provided exit status 1 invalid conversion from 'int' to 't_backlighPol' [-fpermissive]

  2. Francisco Malpartida repo owner

    What version of the arduino IDE are you using. There may have been an upgrade and I haven’t up issued the library. Can you try downloading the integration branch directly instead of the zipped releases?

  3. thomas reisinger reporter

    Hi Francisco,

    do you have an idea, I only see first row highlighted. bot all dots from each figure. No characters at all, no second row.

    maybe you know a root cause

    LCD QAPASS 16x02

    Using your New Liquid library at the moment

  4. Francisco Malpartida repo owner

    I have never tried with the NODEMCU but if it is 328 based processor it should work.

    For the display, most likely the problem is that it is not being initialized correctly. Pin mapping has to match that of the controller and lcd to get them going and pass that information to the creation of the object. If they don’t match the LCD will not work.

  5. thomas reisinger reporter

    ok, but I do not have a change to change it. Pin mapping is done through soldered i2c modul MH, only SDA and SLC . I LCD Address is correct identified. What else could I check?

    Thanks a lot.

  6. Francisco Malpartida repo owner

    For I2C devices, you will have to see how they have mapped the pins of the backpack to the LCD. That mapping is the one you have to use to create the object that drives the lcd. Each manufacturer maps it differently. The init by default is the one for the lcd backpacks I designed a while back.

    Take a look at the header files (.h, .hpp) for the I2C class. It describes how it is initialized. You will also find how to do it in the wiki and help files you have downloaded.

    Of course, for it to work you will need to figure out how the backpack in wired to the actual lcd.

  7. Log in to comment