LCD Library

Hi all,
I wrote the LCD4Bit library (it's really just a conversion of the existing 8-bit one).
I haven't done any electronics work in the last year, sadly, and don't see myself having time to maintain the library in the near future.
As documented on the wiki, the source is in google code. I'd be happy to make someone else an admin on that project so that they can maintain it and make future releases.

My main concerns would be:

  • backward compatibility (if a newbie has found or been given an old sketch, they should be able to download the library, wire up their arduino and have it just work) and
  • that the default download of the library be of a stable version. There's no reason not to also release a beta version of the library and ask for testers.

function naming:

As in the code comment crimony pasted, I intentionally kept the mistake in the function name so that existing programs written against the 8-bit library could be made to work with the 4-bit library with minimal effort.

I'd be in favour of (as mem suggests) introducing a correctly named version of the function, and keeping the old named one too (and documenting it as legacy, and having it cause a deprecation warning, if that's possible). This is my top concern - that we don't break existing sketches. Arduino beginners have enough problems. I have no idea of the number of people using the library.

With regard to choosing a good name, LCD.println() is indeed misleading as gradbert says, as it does not move the cursor to a new line afterward. LCD.print() is already being used to allow printing of an individual character (but could be renamed to LCD.printChar()). You could have LCD.printString() but I doubt that's consistent with anything else. You might look to other arduino or processing libraries for a model.

You guys decide how to go forward, and I'll do my best to assist promptly.
neill