Which serial LCD to buy?

Every once in a while on the arduino forum, people ask about which serial LCD to buy so today I saw such a post again and wrote this reply. I am certainly biased towards this serial LCD issue as I make and sell the phi-panel family of serial LCDs and keypad panels myself but take whatever you consider as fair argument:

3 vs. 4 wires:
Some serial LCD comes with 3 wires, 5V, GND, and RX. Some comes with 4 wires, 5V, GND, RX, and TX. Some serial LCDs are just LCDs, i.e. an output device. So you don’t need to read back from it. This saves one line, the RX on your arduino. Some have both RX and TX for possibly these reasons:

  • Update firmware could require two-way communication for verifying the firmware at upload.
  • Read back from the LCD to see what’s on the display, don’t know why that’s important. Or read back type of serial LCD ie. serial number or model number so arduino knows there is a serial LCD connected.
  • The serial LCD can connect to other things. Again, this is a link to my product: this phi-panel has either integrated or optional 16-key keypad. The user input on the keypad is processed then transmitted TO arduino RX while commands to control the LCD or keypad (say enable/disable multi-tap) or messages to display on the LCD are transmitted FROM the arduino to the LCD panel. This requires two-way communications.

Some serial LCDs are cheap because they don’t have a processor on board. They are the I2C serial interface, which arduino can connect to. These are simply I/O expanders that give you 8 additional I/O ports, enough to run the LCD. The backpack has no intelligence. The arduino spends all the resources and does all the work and needs to drive the display with special libraries provided by the makers. I know of two sources besides ebay, adafruit, and our forum member fm. Since there is no processor on the LCD backpack, the solution is cheap.

The more costly serial LCDs have on-board processors that controls the display and in the case of my LCD backpack, also possibly senses other inputs, process them, or even run multi-tap input or other fancy stuff on the on-board processor so your main arduino doesn’t need to worry about those. Those are more expensive and frees up resources on arduino and are more or less swappable with other serial LCDs with on-board processors without ever needing special libraries. Among a few of the sellers, sparkfun, moderndevice, some ebay sellers, mine, etc. All have the same level of intelligence except for mine, which is also the lowest cost with most functions. That might explain why both sparkfun and moderndevice are not interested in carrying my serial LCD. smiley-wink

So my logical conclusion is to buy the phi-panel family of serial LCD for the lowest price (except for fm’s I2C backpack) and best functionality. The rest of them in terms of functionality are about 5,000 lines of firmware code behind.

7 Responses to Which serial LCD to buy?

  1. Hyrum says:

    I can’t wait to get mine!

  2. Pingback: More about different LCD backpacks « Liudr's Blog

  3. shulcher says:

    Do you provide the firmware source?

    Also, when I “git clone https://code.google.com/p/phi-panel

    I get “warning: You appear to have cloned an empty repository.”, and nothing is downloaded.


    • liudr says:

      Not at the moment. Is there some reason you want the source? I spent a whole summer programming the firmware so I want to keep it for a while to keep my competitive edge in the very competitive serial lcd market. Let me know if you want additional features.

      • shulcher says:

        Sorry, I misunderstood. I thought it was open source. I’m trying to learn, and and running examples I can pick apart are a good way form me to fast-forward.

      • liudr says:

        Eventually I will open the source. I’ve seen too many ebay sellers just selling things very cheap from open source designs. I keep wondering if the designer made enough money to justify the time and resource spent making the project and more time and resource supporting the product sold by others. My project code is about 3,000 lines long. So it is less instructional than lots of projects I posted the source code. If you want to see how certain functions are done, I might be able to post that portion of code.

Leave a Reply