I am getting this error even after installing the updated version of the respective library. I read the source files and it includes the function "begin()". But still the same error occurs. Can you please help me as in why this error is still present ??
Are you sure begin() doesn't expect some arguments?
pert:
Are you sure begin() doesn't expect some arguments?
Yes. I checked some example sketches too. But it still shows the same error.
Post a link (using the chain link icon on the toolbar to make it clickable) to where you downloaded the library from or if you installed it via Library Manager state the full name. You should be aware there are multiple libraries of the same name but with different code.
When you encounter an error you'll see a button on the right side of the orange bar "Copy error messages". Click that button. Paste the error in a message here USING CODE TAGS (</> button on the toolbar).
I'm using 'LiquidCrystal I2C' library by Frank de Brabander.
Arduino: 1.8.5 (Windows 7), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, 115200, 4M (3M SPIFFS)"
WARNING: library LiquidCrystal_I2C claims to run on (avr) architecture(s) and may be incompatible with your current board which runs on (esp8266) architecture(s).
Generating function prototypes...
Compiling sketch...
In file included from C:\Users\jeet\AppData\Local\Temp\arduino_modified_sketch_347746\ReadNDisplay.ino:4:0:
C:\Users\jeet\Desktop\hitesh\arduino-1.8.5-windows\arduino-1.8.5\libraries\Streaming/Streaming.h:33:15: error: redefinition of 'template<class T> Print& operator<<(Print&, T)'
inline Print &operator <<(Print &stream, T arg)
^
In file included from C:\Users\jeet\AppData\Local\Temp\arduino_modified_sketch_347746\ReadNDisplay.ino:2:0:
C:\Users\jeet\Desktop\hitesh\arduino-1.8.5-windows\arduino-1.8.5\libraries\OnewireKeypad-master/OnewireKeypad.h:53:33: error: 'template<class T> Print& operator<<(Print&, T)' previously declared here
template<class T> inline Print &operator<<(Print &Outport, T str)
^
C:\Users\jeet\AppData\Local\Temp\arduino_modified_sketch_347746\ReadNDisplay.ino: In function 'void setup()':
ReadNDisplay:29: error: no matching function for call to 'LiquidCrystal_I2C::begin()'
lcd.begin();
^
C:\Users\jeet\AppData\Local\Temp\arduino_modified_sketch_347746\ReadNDisplay.ino:29:13: note: candidate is:
In file included from C:\Users\jeet\AppData\Local\Temp\arduino_modified_sketch_347746\ReadNDisplay.ino:3:0:
C:\Users\jeet\Documents\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:58:8: note: void LiquidCrystal_I2C::begin(uint8_t, uint8_t, uint8_t)
void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS );
^
C:\Users\jeet\Documents\Arduino\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:58:8: note: candidate expects 3 arguments, 0 provided
Using library OnewireKeypad-master in folder: C:\Users\jeet\Desktop\hitesh\arduino-1.8.5-windows\arduino-1.8.5\libraries\OnewireKeypad-master (legacy)
Using library LiquidCrystal_I2C at version 1.1.1 in folder: C:\Users\jeet\Documents\Arduino\libraries\LiquidCrystal_I2C
Using library Wire at version 1.0 in folder: C:\Users\jeet\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\Wire
Using library Streaming in folder: C:\Users\jeet\Desktop\hitesh\arduino-1.8.5-windows\arduino-1.8.5\libraries\Streaming (legacy)
exit status 1
no matching function for call to 'LiquidCrystal_I2C::begin()'
From LiquidCrystal_I2C/LiquidCrystal_I2C.h at 1.1.3 · johnrickman/LiquidCrystal_I2C · GitHub
void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS );
As I expected, that library's begin() requires parameters. In fact none of its examples even use begin(). As I said, there are multiple libraries of this name so likely you are looking at examples written for a different library.
Oh. Ok. Thanks for the help. Got it sorted now.
What did you end up doing?