Now here's an excellent little circuit board that allows you to directly mount the surplus LCD into a project.
A nice premade connector board.
3.3 volts
9-bit SPI serial interface
132 x 132 pixels
12-bit color 4-Red, 4-Green, 4-Blue
With the large number of phones going out of service. I thought I'd recover some of the parts, particularly the small colour LCD from Nokia phones.
I've recovered a couple from some CDMA phones and thought they'd be useful for projects.
I've only just started experimenting with them, so I thought they'd make for an interesting thread to share ideas, code and development.
A quick search for the LCDs I have didn't reveal much information. A quick generic google search also didn't come up with much, but the few hits I did find are packed with so much information and links to other progect, it will make your head explode !
So I'm just going to start at the begining. I've recovered some LCDs from some old Nokia CDMA phones. I've saved some of the other parts from the phone like the tiny motor, and especially the SMD connector to interface with the LCD.
I've been writing a lot of PIC code for other LCDs lately, so this shouldn't be too hard to write some code for either. Any contributions are welcome.
I'll be posting as I go.
Look Here -> |
Now here's an excellent little circuit board that allows you to directly mount the surplus LCD into a project.
A nice premade connector board.
3.3 volts
9-bit SPI serial interface
132 x 132 pixels
12-bit color 4-Red, 4-Green, 4-Blue
Some of the cheap Chinese MP3/MP4 players use the same screen also, maybe another source of parts for your projects
Yippee .... I know the Jaycar stand at Wyong field day this year will have lots of interesting surplus goodies for me to rip apart. I picked up several small 4 inch colour TFT displays out of the video intercom phones last year. They run on 12V and have a composite video input.
how about removing the plastic backlight from the LCD and building a mini video projector out of it - 132x132 pixels should be sufficient for simple moving images, lettering and graphics
add a green laser as the light source, some optics and away you go
Hi Trash,
Some of the older LCD's like the Nokia 3310 etc are quite easy to connect to a PIC controller as they just use an SPI type serial interface. There's plenty of info and resources on the net about this subject. I've also got some PIC software routines here if you're interested.
Are the routines in assembler or some higher level language ?
I had a look at the spec sheets and they seem simple enough to talk too, though they have a very elaborate command set for some of the more complex functions.
I'm also writing PIC code for another GLCD at the moment. It's monochrome, but has a rather difficult addressing structure.
Hey trash, can you save me the vibrating motors?
I want to strap them all together and make one great big vibrating thing....
Joking mate.
Interested in assembling some Brush-Bots and don't want to destroy a perfectly working phone for it.
I'm willing to trade you for LNBs, satellite supplies, cash, or "nah, just pay postage and we're good mate" would be nice too.
My wife works for a dentist and gets lots of samples from colgate and oral-b so it'd be cool to make up some brushbots, put some googley eyes on them and give them to kids instead of a lollypop.
That didn't seem to be much of a problem to me. The solution was, read the byte from the GLCD, and just inclusive OR the data onto the existing data and then write it back. Of course you have to be careful about the Y address.
I took this to the next level and just decided rather than a one way pixel set with IOR, I would XOR the data and toggle the pixels. simple enough.
But I'm having problems getting this working correctly. Though my read address subroutine seems to work ok on its own. When I try and work it into the pixel writing code, I get 0xFF... so a single pixel write appears on the screen as a bar.
I'll get it worked out sooner or later.
I've been posting my code on the satvg website.
I have saved them... they're supprisingly modular.Hey trash, can you save me the vibrating motors?
I'm not sure I want to part with them just yet.
I had some EVIL uses planned for them, but the thought of you wearing a suit (homer simpson with springs) with them vibrating all over you got me laughing.
If I decide that I don't have a use for them, I'll post them up to ya.
I like dentists... I have only fond fuzzy memories of going to the dentist.
I insist he uses nitrous. "But this is just a check up ?"
I remind him that the nitrous oxide is for his own safety.
There is a handful of very sharp metalic instruments, and his testicals are all within my reach !
A quick note..... try asking around country schools for old CDMA phones.
Quite a few schools have been collecting mobile phones for recycling.
You could save the energy of recycling the motors and have the kids at the school pull them out. This is one of my reasons for writing code for the screens. A simple pic chip can do some cool stuff with an old screen and at the same time germinate some fertile young minds into the electronics industry.
Also try dragging your bum down to the local ANZ bank. They have phone collection points there. Just ask the teller if you can get access to them so you can recycle the motors from each phone. You just pull the motors out and check the rest of the phone back into the container !
It's pro-active recycling. It requires no energy for you to remove the motors rather than a recycling company melting them down for scrap metal.
A lot of country councils have realised that having a salvage shop at the tip saves them money in cost of landfil. They don't aim to make a profit. The local one near where I'm working, you just tell them what you want, and they ring you if one comes in. You pay a couple of $$ and everybody is happy.
Another had a second hand book shop. Only shop I've ever seen that encourages shop lifting !
"How much for this book ?"
"Nothing, just take it !"
We have a recycle shop at our local tip. They always have interesting things to buy and usually only a couple of dollars for anything.
More communities need to start using them. There is SO much stuff thrown out every day that can be re-used and recycled into something else.
It's taken a LONG time but it seems like people are starting to see that re-using things is actually a cool idea.
I just had a very evil thought...
It wouldn't be hard to get hold of some dummy phones from dealextreme, slap in one of these LCDs with a pic, and pass it off as a real phone. Sell them at the pub, cash converters, etc..
Nasty....
Anyone wanna buy a nokia n95, 6110 navigator?????
----------
On a lighter note, Oatley Electronics had some analog pagers a while ago for like $2 each, they had a vibrator in them, LCD, battery, etc....
It's times like this I wish I bought junk like that.
The rest of the time I look around me and wonder why the hell I bought all the junk I have here, i'm never going to find a use for it all, not even in 6 lifetimes...
I scored some dummy mobile phones from a shop I did contract repairs for.
I took one of these dummies to the local pub and allowed it to "ring"....shouting loudly - "fark I hate mobile phones" - I threw it on the floor and ground it severely with a size ten workboot. Some rather surprised faces were to be seen.
This scam/laugh works well if you organise it with a mate ! Drop the offending phone in his beer and get invited outside for a beating etc....get some action in that now-boring-smoke-free front bar.
I thought about that approach too, but as you also suggested with the Y address, I could see problems if you were modifying two or more pixels in a colomn that were spread across two byte-wide rows.
I thought about setting up a block of ram that represented an image of the screen and casting it onto an array 32bit integers like a union. Then setup a timer that periodically refreshed the entire screen with the image in ram. You could then address pixels in the screen image in an X,Y format.
I never got around to trying this, so I can't vouch for the technique, but the theory of it sounded good.
The GLCD has that extra memory on board and you can adjust the Z address.
Just blank the screen, set the new Z address and turn it on. Pretty tricky !
If the LCD doesn't have a controller that does it for you,I thought about setting up a block of ram that represented an image of the screen and casting it onto an array 32bit integers like a union. Then setup a timer that periodically refreshed the entire screen with the image in ram. You could then address pixels in the screen image in an X,Y format.
I never got around to trying this, so I can't vouch for the technique, but the theory of it sounded good.
that's pretty much how you have to go about it.
Also not a problem if you can read back from the LCD controller.
Yeah, I should make it clear that we're talking about two different types of LCDs in this thread.
The first is the LCD's out of mobile phones. They have their own instruction sets and onboard processors and use a 2 wire serial comm. Their instruction sets are elaborate and full colour and wrap around. It behaves like a moving map display on a world wide wrap around map.
The other type gav and I are also talking about is a GLCD (Graphical LCD).
They don't have any smarts on board and their chipset usually consists of a KS0108B (and KS0107B).
They're similar to the two line text LCDs but they do not have a character generator on board. Instead when you write a byte to the screen, it controls 8 pixels. In sounds simple until you realise that you just might want to write one pixel and not change the other 7. Some operations are straight forward while others are a little more complex.
The address system isn't just a simple X.Y address system like it is on mobile phone screens. Instead it has an CS.X.Y.Z address system.
The GLCD is divided into two halves. The CS chip select determines which half of the screen you access, and both chips can be selected at the same time for write operations.
The Y address is the next simplest. It's a row of bytes, Y address range is 0-63 and each byte represents a column of 8 pixels.
Each row of 64 bytes makes up an X address page. And there are 8 pages down the display screen and 16 total, 8 off screen.
The Z address is the start line. This can be anything from 0-64 8 pixels across 8 X address pages.
I've got I2C routines in Microchip ASM, and Philips also give examples,
(same interface as the phone card appears to use)
so do you have a font with decimal point and dollar sign worked out yet?
Hi Trash,
Just wanted to see how you're going with the LCD screens?
I'm working on a little project for work in trying to use some 2.4" lcds in parallel to display an image or avi off the one power source.
Bobby
I haven't had any time to work on them lately. There's a radar project on my bench that has been taking up my time and causing my brain cells to argue amoungst themselves.
I'll get back to the phone LCD's sometime after may. I haven't even been thinking about code for them in my head.
Bookmarks