Strugling to find and download an LCD I2C library

Hi!
I struggle to download a LiquidDispaly_I2C library into my Arduino library in order to run my 20x4 I2C LCDs.
Collecting links to Youtube videos during some weeks gave me some links but I fail to improve my Arduino library. Either I manage to perform a download but can not find/get the files into the Arduino library or the links already has performed the download. Forced to use Win10 instead of my old friend, Win7, mákes things even worse.
I have been doing real time programming for 40 years. However "the system" questions have always been the hardest to owercome.

I have read the advice, how to approach the skilled people asnwering in Forum. Recently being retired and not able to keep 100 balls in the air at the time the amount of information available from Google, Forum etc owerflows my capacity.

I am sure that there are many Forum members that are able to give me a step by step advice to incorporate an LCD_I2C library into the proper place here.

Best regards,
Railroader

Please post a link to where you downloaded the library you want to install so I can provide complete and specific instructions.

Can’t you use the LCD library that comes standard with the IDE.

I have used LCD displays, and can’t remember having to install a library.
Look at the LCD examples that come with the IDE.
Leo…

Thanks for answering!
I got a download into Documents/Arduino/libraries containing both an LCDChrystal.h/.cpp and an LCDChrystal_ByVac.h/.cpp.
Stil the sketch compiles with an error, no LCDChrystl… found.

Copy the errormessage below.

C:\Users\User\AppData\Local\Temp\Temp1_Library_codeexamples.zip\I2C_20x4_lcd\I2C_20x4_lcd.ino:2:31: fatal error: LiquidCrystal_I2C.h: No such file or directory

#include <LiquidCrystal_I2C.h>

^

compilation terminated.

exit status 1
Error compiling for board Arduino/Genuino Uno.

Please provide a directory listing or screenshot of the folder structure and files in your installation of the library.

Wawa:
Can't you use the LCD library that comes standard with the IDE.

The LiquidCrystal library is not for I2C LCDs:

I have installed the Arduino package without any manipulations but I have not found out where it is stored in the computer. What is the default location of the Arduino library?
This bloody Win10 makes me irritated. Thanks to old DOS.....

Railroader:
I have installed the Arduino package without any manipulations but I have not found out where it is stored in the computer.

By "Arduino package", do you mean the Arduino IDE? If so then it's installed to C:\Program Files (x86)\Arduino.

Railroader:
What is the default location of the Arduino library?

Which library?

Railroader:
This bloody Win10 makes me irritated.

Me too. It's amazing how much worse each version of Windows I've used has been from the last (Luckily I skipped 8.1 or whatever it's called, which I believe was even worse that 10). Windows 10 was the last straw for me. I've always used Microsoft's OS since the DOS days but after this I'm switching to Linux.

pert:
The LiquidCrystal library is not for I2C LCDs

Ahhh, missed the I2C part.
I only ever used parallel control.
Leo..

Yes, Arduino IDE. I have found it like You describe.
I created a folder, liquidCrystal_I2C and copied the downloaded files to it.

Last compile message is:

In file included from C:\Users\User\AppData\Local\Temp\Temp1_Library_codeexamples.zip\I2C_20x4_lcd\I2C_20x4_lcd.ino:2:0:

C:\Program Files (x86)\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:34:19: fatal error: I2CIO.h: No such file or directory

#include "I2CIO.h"

^

compilation terminated.

exit status 1
Error compiling for board Arduino/Genuino Uno.

The I2CIO.h is missing but I copied the entire download.

Library? I just want a library to run my I2C LCD displays. LCS_I2C I have seen on Yoube.

Linux... I have heard about it but never stepped into it. Did write a damned good real time, preemptive multitasking executive for the Z80 using 128 kB once...

Using the library manager of the ide is pretty fool proof.

There is one i2c lcd library from the library manager I would recommend. It is hd44780 by Bill Perry which is plug and play for all possible displays. It will auto configure for the i2c address and the specific layout of the i2c expander chip to the display. Within the library there is a class which works for the hd44780 displays with the i2c back packs: hd44780_I2Cexp

You must include this class with the sketch. If there are any issues, run the diagnostic library sketch within that class called “I2CexpDiag”

#include <Wire.h>
#include <hd44780.h>
#include <hd44780ioClass/hd44780_I2Cexp.h> // include i/o class header

hd44780_I2Cexp lcd; // declare lcd object: auto locate & config display for hd44780 chip

void setup()
{
  // initialize LCD with number of columns and rows:
  lcd.begin(16, 2);

  // Print a message to the LCD
  lcd.print("Hello, World!");
}

void loop()
{
  lcd.setCursor(0, 1);
  lcd.print(millis() / 1000);
  delay(1000);
}

Thanks!
There are probably several nice libraries available but my problem is get just ONE of them into the proper folder to compile my first I2C LCD. The standard LCD, with 6 buttons, is already running.

The library manager will put the library in the correct place.

I recommend the hd44780 library, too. Here is a link to the wiki documetation. If you have a problem, post in the Display forum section. The library author is often there to answer questions.

Okey.
Library manager sounds nice but I have not yet learned how to use it. How do I get it started?

hd44780? Does that library run I2C LCDs?

Thanks for answering, all of You! I try to answer Forum questions when I have knowledge myself.

in my opinion, the best current I2C LCD library id the hd44780 ibrary by Bill Perry. It is easily installed using the Library Manager. Go to the Sketch menu. Include Libraries, and open Manage Libraries. In the topic drop down, choose display and in
filter your search textbox enter "hd44780". You should see hd44780 by Bill Perry. You may need to scroll down. Click on the library and click install. That should install the library and it will be ready to use. There is decent documentation (See Wiki) and many examples.

Thanks a lot for todays help!
I will now be occupied in driving railcars on 2 museum railroads in Sweden for two weeks but I will monitor Your answers using my mobile. Either it will be all clear to me or I might be able to issue another question.
Until then, be safe, be well and I will stay watching.

Railroader:
Okey.
Library manager sounds nice but I have not yet learned how to use it. How do I get it started?

There is full installation instructions for the hd44780 library package on the hd44780 github page:

Scroll down to the "Installation" section.

--- bill

Thanks!
I have tried following Your tip but I get lost, tons of text and choises.
I have got LiquidCrystal_I2C in my computer and manually created a folder in Arduino/libraries but the folder is either not found or considered invalid.

I have tried following Your tip but I get lost, tons of text and choises.

OK, here it is with less text and choices.

Installation using Library manager (IDE 1.6.2 and later)
In the IDE, Simply click on [Sketch]->Include Library->Manage Libraries...
Then search for "Extensible hd44780" to locate the library and install it.
There is no need to uninstall or modify any other LCD libary that may have already been installed.

This is the same advice given by groundFungus in reply #15.

Go to the Sketch menu. Include Libraries, and open Manage Libraries. In the topic drop down, choose display and in filter your search textbox enter "hd44780". You should see hd44780 by Bill Perry. You may need to scroll down. Click on the library and click install.