LCD setCursor does not work as expected

Dear community,

I am trying to fit 4 lines on a 4-line LCD screen but it does not work as expected. Indeed, it doesn’t print the 3rd line and places the 4th line in the 3rd line instead, leaving the 4th line empty, as shown by the picture attached.

Here is the relevant code:

  #include "LiquidCrystal.h"
  LiquidCrystal lcd(2, 3, 4, 5, 6, 7); 


//within void setup():
  lcd.begin(19, 3);       // set up the LCD's number of columns and rows:
  lcd.print("DIGITAL VOLTMETER");

//within void loop():

  lcd.setCursor(0, 1);
  lcd.print("Voltage= ");
  lcd.print(input_voltage);
  lcd.setCursor(0, 2);
  lcd.print(now.year(), DEC);
  lcd.print("/");
  lcd.print(now.month(), DEC);
  lcd.print("/");
  lcd.print(now.day(), DEC);
  lcd.setCursor(0, 3);
  lcd.print(" ");
  lcd.print(now.hour(), DEC);
  lcd.print(":");
  lcd.print(now.minute(), DEC);
  lcd.print(":");
  lcd.print(now.second(), DEC);

  lcd.begin(19, 3);       // set up the LCD's number of columns and rows:

For a 4 line LCD? I don't think so.

I suggest you to use this one https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library/blob/master/LiquidCrystal_I2C.h more simple but you must add module something like this http://www.raspberrypi-spy.co.uk/wp-content/uploads/2015/04/i2c_backpack_02-1024x597.jpg

Aaah thank you PaulS, I was convinced that it counted from 0! Changed   lcd.begin(19, 3); to   lcd.begin(20, 4); and it now works exactly as I wanted. Thank you!