I re-wrote much of the LiquidCrystal library (for non-graphical LCDs like 16x2 line ones, etc)
it should now work much better for people and I'm looking to get it included in the next rev of the Arduino IDE and have it be the 'gold standard' for LCD interfacing
what has been added:
4-bit init. works even without power-cycling
correct timing delays reduce chance of 'garbling'
R/W pin not needed, saves 1 pin!
more commands to control the LCD display
you can set it up for 2 or 4 line displays with begin()
example for creating custom characters
much faster than old LiquidCrystal and LCD4Bit
etc.
The wiring diagram image shows LCD pins D0-D4 in use, while the code below says:
" * LCD D4 pin to digital pin 5
LCD D5 pin to digital pin 4
LCD D6 pin to digital pin 3
LCD D7 pin to digital pin 2"
ASIDE:
I used the old library with great success but in upgrading I'm getting some funky hieroglyphics — I'm guessing that might be caused by the pin issues mentioned above as I've got flying leads from my 40x2 panel connected to D4-D7. Out with the 'iron again I guess! :-/
Looks like the wiring diagram has the data pins backwards- should be D0-D7 from left to right instead of D7-D0. The text has the correct information. Four bit mode always uses the top 4 data pins, D4-D7. If you've had it working before, the wires you have soldered to the LCD are fine.
I can not find an updated keywords file in the link. That could be nice.
I had to change the offsets in setCursor to { 0x00, 0x40, 0x10, 0x50 } to get the third and fourth line to start correctly but I guess that has something to do with my display (JHD164A).
Both of them show the pinouts as shown in the LiquidCrystal Tutorial. I've tried that wiring with a half dozen different LCD's from different sources, and all worked properly for me. I also tried them on pins 0 - 4 according to those diagrams and got garbage. So I'm perplexed as to why you've got different pinouts, or different documentation for it. But if you've got a link to different docs on the module, I'm happy to try them out.