Apparent slow lcd on startup

I'm using an HD44780 2x16 LCD in 4 bit mode with my arduino. Most times, when I power up the arduino, the LCD does not respond unless I push the reset button. Doesn't the liquidcrystal library have some delay built in? What could I change to help this?


There seem to be many people having trouble with the liquidCrystal library, especially in 4-bit mode. I have written a replacement for liquidCrystal.cpp, the main part of the library. It's only been available for a week and I haven't had much feedback, so I would really appreciate it if you could try it out. You can find the program and some of my thoughts on why liquidCrystal doesn't work all the time at


Very nice. I'm presently using my LCD display with a serial backpack (I'm stingy about using I/O pins up on my development system) so I won't be able to test out your code at this time.

Thanks for your contribution to the cause as open source contributors are one of our most valuable assists.


The startup portion is much better, however, now I have some strange characters appearing in the lower part of my screen. I’ll try to get some video to post for you sometime tomorrow (Sunday, eastern time USA).