cr0sh
My intent was NOT to build an Arduino board. No intention to use it for an actual arduino master board. It is simply a display board (shield).
I am using the 4 bit interface plus the the brightness control, a buzzer, 7 input buttons and the I2C interface. This pretty much takes all of them. The code will fit nicely in the atmega 168. The intent is to keep it simple and cheap. It can be plugged into any arduino and with no modification to any code, what ever is sent out the serial port (Serial.print()) shows up on the display. It supports standard ascii and does not need any special codes to do anything. Baudrate, brightness, and several other settings can be done using the buttons. (hold down buttons 1 and 2 to get into menu mode)
Shift registers are a nice idea if you are trying to build an Arduino cpu board and want to conserve pins. This is an I/O board. It is intended to be used as a shield on TOP OF another Arduino. It also supports the mega extra serial ports.
The reason I built it is because other serial LCD controllers on the market do not support CR/LF and are not open source so you cant change them. They use a PIC chip. My original design goal was a stand alone unit connected via a cable. Once I got going on the design, it cost nothing extra to make into a shield.
Mark