Inexpensive (Basic Graphics) LCD Display


25 posts
by JRJurman » Mon Jan 16, 2012 11:25 pm
Ok, so I know a lot of people have been trying to figure out what displays they are using, and in wondering myself I decided that (being somewhat fluent in bash/Terminal commands) that I don't really need GUI/X. I was considering getting one of these displays:

http://www.sparkfun.com/products/10168 or http://www.sparkfun.com/products/710

Graphic LCD 84x48Graphic LCD 128x64

(which are 84x48:~$10 and 128x64:~$20 respectively) and I was wondering what you guys might think the difficulty in hooking something like that to the RPI would be… I've never worked with Digital Electronics, which is why I really want to get RPI, but the display problem is something I haven't really found an (inexpensive and portable) solution to.

Are there cheaper and more portable solutions, or does this look like a plausible idea, and what would I need to do to get this working with the RPI?
Posts: 5
Joined: Mon Jan 16, 2012 11:09 pm
by Tyggerjai » Tue Jan 17, 2012 2:35 am
Doable - I'd go the 10168 because it already has a serial interface. Using the other one, I think, would require either a lot of GPIO pins, or some shift registers to do serial->parallel. I'd be tempted to spend the extra and go with this one:

http://www.sparkfun.com/products/9351

It's basically the larger screen you link to with the hard work of hooking up a serial interface already done. To be honest, I can't imagine doing any serious work on the Nokia screen - the actual display area is not much more than 1" by 1.5".
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by JRJurman » Tue Jan 17, 2012 3:38 am
Thanks for the link... I kinda wanted to stay below the price of the Raspberry PI (to keep this as cheep as possible) but I guess as far as display options go this might be the best... Now, say I were to get this, what would I need to look into to get this to properly work with a Linux distro... I'm pretty good with software, but have never looked into hardware implementation and whatnot (hence why I want to get RPI).
Posts: 5
Joined: Mon Jan 16, 2012 11:09 pm
by Tyggerjai » Tue Jan 17, 2012 6:05 am
I haven't used that specific one (I have the non-serial ones), but the datasheet suggests that you can simply use the serial TX/RX lines out of the Raspberry Pi. That's assuming you don't need them for anything else.  A better option might be a USB->serial converter on the USB bus if you want the serial port left free for something else.

You can use something like screen for debugging, and then any language that supports serial interfacing should work. It's just a question of learning the protocol, which is in the datasheet. In Python, for example, you just need pyserial, and it should work out of the box.

So fairly trivial, basically, but it may take some grunt work to write a display library for your language of choice.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by Tyggerjai » Tue Jan 17, 2012 6:07 am
Oh, I should point out that you would need an external power supply. I haven't checked the raspberry pi pin out lately, but I imagine if it's powered at 5v, it's unlikely to have 6v available for peripherals :)
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by roelfrenkema » Tue Jan 17, 2012 1:13 pm
I wont be using a display at all except for a television, mostly I will shell into the device through ssh. Problem solved. Especially as I always have a display available being my Android phone that can communicate through ssh. LOL
Posts: 105
Joined: Sat Jan 07, 2012 5:17 pm
by RobMurray » Tue Jan 17, 2012 2:23 pm
There was an interesting post on hackaday.com last week about an inexpensive digital picture frame which can run linux.  With the right software, it could work as a USB connected display for the RaspberryPi.  It is available on ebay for about £15. see This digital picture frame runs Linux better than you might think

It also has bluetooth.
Posts: 1
Joined: Tue Jan 17, 2012 2:06 pm
by JRJurman » Tue Jan 17, 2012 2:43 pm
I'm looking for something more portable, and I was hoping that getting something as simple as what I posted above would be really cheap; and again, I don't really have an intention of running X. I might have to look at those digital picture frames as I keep seeing them pop up as a good high-res solution.
Posts: 5
Joined: Mon Jan 16, 2012 11:09 pm
by Marcus » Tue Jan 17, 2012 2:46 pm
Tyggerjai said:


Doable - I'd go the 10168 because it already has a serial interface. Using the other one, I think, would require either a lot of GPIO pins, or some shift registers to do serial->parallel. I'd be tempted to spend the extra and go with this one:

http://www.sparkfun.com/products/9351

It's basically the larger screen you link to with the hard work of hooking up a serial interface already done. To be honest, I can't imagine doing any serious work on the Nokia screen - the actual display area is not much more than 1" by 1.5".



What does it mean that it's already got the serial interface? Would that mean plug-n-play or how would we use it with the RasPi?
Posts: 11
Joined: Wed Aug 24, 2011 8:31 pm
by Tyggerjai » Tue Jan 17, 2012 11:02 pm
LCDs are traditionally "parallel" interface - they have 7 data pins (although there are techniques for using only 4 of them), and you need to put data on each pin and then "clock" the data into the LCD all at once, which means you need 7 (or 4) GPIO pins free on the device writing to them. One classic way around that is to use a shift register, which turns serial data into parallel - basically, you clock serial data one bit at a time into the shift register which holds it in a buffer, and then tell the shift register to move the data to the LCD pins all at once. That means you only need 2 pins to talk to the shift register. These days, instead of shift registers, it's becoming common to use micro controllers dedicated to LCD (or 7segment LED) displays. The principle remains the same - you talk serial over 2 pins to the micro controller, send it the data and then say "display", and it takes care of talking directly to the LCD.

The short answer for the Raspberry Pi is that you will be able to talk to any "Serial LCD" via either the serial RX/TX pins, or the SPI pins, depending on the protocol. That means you only need those 2 pins, and most modern programming languages have a serial comms capability. In Python (which I believe is available on most linux ARM ports), there's PySerial, which means you can talk to the LCD basically with one line of setup.

It also means you can use something like the FTDI USB->232 converters to put the LCD on the USB bus - in fact, except for the device ID, the code for talking to an LCD via RX/TX and via USB would be exactly the same. The converters are another significant increase in cost, though, but it says a lot about how cheap the Raspberry Pi is that a $20 cable is a "significant increase" :)
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by Tyggerjai » Tue Jan 17, 2012 11:13 pm
Also, if you have a lot of spare time up your sleeve, DealExtreme sell a replacement screen for the Nintendo DS for about $10. Your first problem would be working out what protocol it speaks, and your second problem would be physically connecting the ribbon cable, but they're pretty funky little screens for $10.

Once I actually get a Raspberry Pi, if there's enough interest, I'll spend a weekend poking the serial LCD and post some video, so you can see what's involved and what sort of results you get.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by Tyggerjai » Tue Jan 17, 2012 11:27 pm
Oh. One last thing I've forgotten to clarify. None of these solutions are "displays" in the traditional sense of a monitor. What we're basically doing is re-inventing the serial console. There's a much longer explanation required here about virtual TTYs and stuff, but this is not in any sense a "plug and play" display - there's a fair chunk of software magic required to run it. Adding a micro controller and literally recreating a serial console might end up being the cheapest and easiest way to go.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by Adiandco » Wed Jan 18, 2012 12:09 am
@ Tyggerjai

I've got a set of Nintendo DS screens available to me courtesy of my kids rough handling skills.  I lack the knowledge to hook them up to the RPI & it's all going to be a learning curve anyway so any video/tutorial you can post would be gratefully received.

Oh & gratz on forcing me to reply.   I'm a serial lurker to the forums following a few threads but this just a sounds a challange worth the effort.  An RPI, touch NDS screen with a pile of cells taped together for portable computing maybe, don't even know the voltages the NDS screen requires. Hmm, may have to dust off the soldering iron.
Posts: 1
Joined: Tue Jan 17, 2012 11:37 pm
by Tyggerjai » Wed Jan 18, 2012 3:14 am
Sorry to say, there's no way I have the time or skills to interface the Nintendo screen. As far as I know, they ran directly off the ARM9 CPU on the DS - it was basically a dedicated display processor. The pinouts are documented, kinda, and there was a linux port to the DS, so in theory, someone might know how to hook it all up, but I don't know how easy it would be and how much else the Rpi would be able to do.

Using the touch screen as a control, however, should be very easy - it's incredibly well documented for the arduino.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by JRJurman » Thu Jan 19, 2012 5:30 am
I think I understand what you mean as far as not being able to really run these as a true display, however I'm still eager to put something of a meter or clock on one of these displays... I was talking to a couple of people and one of them had recommended looking at displays at Digi-Key... This is what I came up with: http://search.digikey.com/scri.....wordSearch, now would I still be looking for serial displays, or would there be more that I would have to consider. I see a $5 one which, if need be I might get a batch (if these things are apt to break). http://search.digikey.com/us/e.....ND/2523705
Posts: 5
Joined: Mon Jan 16, 2012 11:09 pm
by Tyggerjai » Thu Jan 19, 2012 8:35 am
Oh, you could easily put a meter or clock on them - they'll make an excellent display for a running program, it'll just be a little harder to use them to log in or get a terminal. So yeah, you could telnet or SSH in, or have a web interface, and use the display just for a clock, sure. In that case, those Digikey ones should work brilliantly. Again, they're small - just over an inch square, but they're almost certainly already serial (they have SCL and SDI lines, which will be Serial Clock and Serial Data In). Not sure of the protocol, but they should work fine. Certainly worth a $5 punt.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by Tyggerjai » Thu Jan 19, 2012 8:48 am
Having said which....

On further reading, not sure how friendly/well documented the digikey one will be. If you think you can spare 5 GPIO pins, throw $10 at sparkfun for the Nokia - it's well understood, well supported and there's sample code, at least for the arduino. Otherwise, the sparkfun serial will be even easier and save a few pins.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by Username » Sun Jan 22, 2012 8:08 am
I hope that someone here will post a how-to guide on installing a basic charature LCD once we all get our new toys. I am sure that the community at large would appreciate it ( I know I would )
Posts: 2
Joined: Sun Jan 22, 2012 7:36 am
by Tyggerjai » Sun Jan 22, 2012 10:41 am
If someone reminds me about it, (assuming I get one of the first batch, and allowing enough time for it to get to Australia) then I'll definitely post how-tos for both standard and graphic LCDs, serial and parallel. If you're lucky, that might include the Nokia. The Gertboard will almost certainly make it easier, by the way.
Posts: 13
Joined: Sat Jan 07, 2012 2:22 am
by tbyte » Sun Jan 22, 2012 11:45 am
I'm using some of these

http://www.pearl.de/a-HPM1184-5618.shtml

There is a simple hack allowing you to use it with lcd4linux for text, bars and images

http://geekparadise.de/2011/04.....-dockstar/

Altough its in german, the given bash commands should give the needed info.

The main steps are

-compiling and installing lcd4linux with a new driver (source and a build script are given)

-calling a given python script to apply the firmware hack to the picture frame (only once for a new frame)

-configuring lcd4linux to display whatever

Since the shipping costs for customers outside of Germany,Austria, Switzerland and France exceed the value of the device several times its not a solution for everyone here.

I paid 7,80€ for device and shipping.
Posts: 1
Joined: Sun Jan 22, 2012 11:22 am
by jdobmeier » Fri Feb 24, 2012 10:40 pm
here is the same thing for people in the US:

This digital picture frame runs Linux better than you might think

http://www.parrot.com/usa/prod.....pdf/df3120

can connect over usb, comments on hackaday were favorable concerning vncviewer, and it has bluetooth for mouse/keyboard
Posts: 19
Joined: Sat Dec 10, 2011 4:49 pm
by Robin Bobcat » Wed Feb 29, 2012 1:28 am
Adafruit has a LOT of cheap LCD displays, including Nokia takeouts.

Again, not sure on interfacing, but if an Arduino can handle them, I'm sure a Pi can.

http://www.adafruit.com/products/338
Posts: 5
Joined: Wed Feb 29, 2012 1:01 am
by camer0n » Fri Jun 08, 2012 2:06 pm
I was hoping to use something about 2.6" to 3.2" in size, like this: http://www.ebay.com.au/itm/221037723753 ... 1497.l2649.


They are a cheap LCD, but just don't know how to connect them, create drivers, etc. Ideas?
Posts: 5
Joined: Fri Jun 08, 2012 2:02 pm
by avtsuk » Sat Jun 09, 2012 9:13 pm
I've been playing with a 16x2 LCD Display - these are the results - http://youtu.be/dxdBxfTwA04

Its all written in PHP, rather than Python as I'm using it as a stepping stone onto another project..
Posts: 7
Joined: Sun Jun 03, 2012 9:20 pm
by texy » Sat Jun 30, 2012 12:06 pm
The Nokia type display in the first picture of this thread is extremely cheap from china via ebay and can be hooked up the the pi's gpio port very easily :

viewtopic.php?f=32&t=9814

Texy
"2.8inch TFT LCD + Touch screen" add-on boards for sale here :
http://www.raspberrypi.org/phpBB3/viewtopic.php?f=93&t=65566
50p goes to the Foundation ;-)
Forum Moderator
Forum Moderator
Posts: 2313
Joined: Sat Mar 03, 2012 10:59 am
Location: Berkshire, England