ebay OLED module driven and powered from PC parport in Linux

ebay OLED module driven and powered from PC parport in Linux

I bought ebay item 171069574803, a small OLED display module, 11$

formatting link

My first adventure in driving OLEDs, so, there is some test code on that site, and more on various places on the web.

First this: Some people have been trying for month to get it working to no avail, sooo, well it did not work for me, until late Saturday night I had a closer look at the module and found those soldered 0 Ohm resistors used as jumpers, first I thought: Hey there are some SMDs missing, and then that feeling, oh what if those are jumpers. Reading the datasheet a few mode times discovered those were indeed mentioned. not in a way that you would find it on a first quick read, or a second, or a third....

Anyways, soldered the jumpers to the correct configuration for I2C, and it worked first time with the 2 code versions I had put together.

formatting link

One 0 Ohm jumped overboard, and I used a piece of wire to replace it:

formatting link

These SMD things are a bit too small for my taste, you need a magnifying glass all the time soldering. And that no lead solder does not make life any easier.

The display is fast, and really bright enough on default contrast setting:

formatting link

It is amazing how little current this uses, a parport I/O pin has no problem powering the whole thing, including its internal voltage converter.

Here is the test source code for the parport in C:

formatting link
Connections are in the C source.

Made a little test connector sort of thing, testing code in C on the PC is so much faster, then later the C code will be converted to PIC 18F14K22 asm. This will be the Geiger counter counts per minute and accumulated dose display. This module is smaller than the LCD used in gm_pic, uses less power, and less I/O pins, making other things possible with those pins. I will have to write some code to make bigger characters, and also for graphics.

Well one more expertise, OLED, added now.

Looks like the end of LCDs in small projects....

Reply to
Jan Panteltje
Loading thread data ...

PS: character generator working now too:

formatting link
formatting link

ebay OLED module driven and powered from PC parport in Linux

I bought ebay item 171069574803, a small OLED display module, 11$

formatting link

My first adventure in driving OLEDs, so, there is some test code on that site, and more on various places on the web.

First this: Some people have been trying for month to get it working to no avail, sooo, well it did not work for me, until late Saturday night I had a closer look at the module and found those soldered 0 Ohm resistors used as jumpers, first I thought: Hey there are some SMDs missing, and then that feeling, oh what if those are jumpers. Reading the datasheet a few mode times discovered those were indeed mentioned. not in a way that you would find it on a first quick read, or a second, or a third....

Anyways, soldered the jumpers to the correct configuration for I2C, and it worked first time with the 2 code versions I had put together.

formatting link

One 0 Ohm jumped overboard, and I used a piece of wire to replace it:

formatting link

These SMD things are a bit too small for my taste, you need a magnifying glass all the time soldering. And that no lead solder does not make life any easier.

The display is fast, and really bright enough on default contrast setting:

formatting link

It is amazing how little current this uses, a parport I/O pin has no problem powering the whole thing, including its internal voltage converter.

Here is the test source code for the parport in C:

formatting link
Connections are in the C source.

Made a little test connector sort of thing, testing code in C on the PC is so much faster, then later the C code will be converted to PIC 18F14K22 asm. This will be the Geiger counter counts per minute and accumulated dose display. This module is smaller than the LCD used in gm_pic, uses less power, and less I/O pins, making other things possible with those pins. I will have to write some code to make bigger characters, and also for graphics.

Well one more expertise, OLED, added now.

Looks like the end of LCDs in small projects....

Reply to
Jan Panteltje

Don't oled's degrade over time? I'd expect cheap ebay units to be chancier.

Remember 7-segment EL displays? The most-used segments deteriorated fastest, so things got weird.

LCDs are awfully good these days.

--

John Larkin                  Highland Technology Inc 
www.highlandtechnology.com   jlarkin at highlandtechnology dot com    

Precision electronic instrumentation
Reply to
John Larkin

On a sunny day (Sun, 26 Jan 2014 08:32:50 -0800) it happened John Larkin wrote in :

I think i have seen 10,000 hours mentioned, not sure.

True, but rather big and power hungry with LED backlights,

In an OLED only pixels that are 'on' draw current, and only as much as contrast is set, and the pixels are even multiplexed. I had to put the brightness down to almost zero now in the evening.

Good quality LCDs burn in too, like my monitor. Will have to see what it does to OLEDs. Contrast is amazing! Black is finally: black.

0bama would like it.
Reply to
Jan Panteltje

Well done. Thank you for sharing. You no doubt just saved me hours of frustration.

I just ordered one also. R.I.P. LCD. No more plus size displays for me. :)

--
      __ 
   __/  \ 
  /  \__/ 
  \__/    Don Kuenz 
  /  \__ 
  \__/  \ 
     \__/
Reply to
Don Kuenz

O's not actually black. It's hilarious to hear him address a black audience, NAACP or something. He fakes a bizarre intermittent urban-black/southern-white accent.

--

John Larkin                  Highland Technology Inc 
www.highlandtechnology.com   jlarkin at highlandtechnology dot com    

Precision electronic instrumentation
Reply to
John Larkin

On a sunny day (Sun, 26 Jan 2014 11:22:13 -0800) it happened John Larkin wrote in :

I just ran some tests, text in blue on black for 2 hours, then a 100% blue display, see not 'ghost'.

Added inverse and different background option (stripes) to my driver.

It seems I cannot read back from display memory in serial mode (both i2c and SPI), not even the status register (so says the datasheet), so graphics that I would normally do by read modify write, needs a full buffer memory of 128 * 8 bytes, making graphics via SPI or I2C impossible on a PIC with 256 bytes RAM. Also it would be slow (writing a whole display for one or more pixels modified). So it would need the 8 bit interface, with at least 2 control lines (CS and RD/!WR) That is 10 pins of my PIC... In the past I have worked around stuff like that with an 8 bits i2c IO expander PCF8574. Need to try some more things, also the character generator I wrote needed Chinese correction, characters were by default on the side and backwards, needed 2 reversals, actually 3.

Reply to
Jan Panteltje

On a sunny day (Sun, 26 Jan 2014 17:25:26 +0000 (UTC)) it happened Don Kuenz wrote in :

Read what I replied to J.L. about graphics via serial link.

I have made a new tgz archive:

formatting link

Use tar -zxvf lm096_oled-0.1.tgz to unpack it. cd m096_oled-0.1 make make install

It has the character generator, real menu, and I cleaned up some code

Then try this: lm096_oled -x 16 -y 4 -c -t "PANTELTJE" -f 1 -b 0 That will put the text PANTELTJE at x position 16 (pixels) row 4 (halfway down screen), does a clear screen first, uses font 1, and uses black as filler byte for cls.

Here the menu: Panteltje LM096-128064_I2C-0.1 Usage: lm096_oled [-a int] [-b int] [-f int] [-h] [-i] [-p] [-t text] [-w] [-x int] [-y int] [-z]

-a int pixel value for plot, 0 or 1, default 1.

-b int filler byte for cls, 0-255, default 0.

-c cls, clear screen.

-f int font, 0 = txtfont, 1 = s14font, default 0.

-h help (this help).

-i inverse display.

-p plot pixel value at x, y.

-t text text to display.

-v verbose.

-w power off and exit OK.

-x int text x position in pixels, 0-127, default 0.

-x int text y position in pixels, 0-83, default 0.

-z zoom (double height).

zoom does not work yet, its late...

I will probably be updating the driver in the coming weeks.

My part is GPL, I think there is little left from the original code except the test picture (screen dump), and I am not using that, so the next version will be 100% GPL. Needs some small fixes too.

Should get you started :-)

Reply to
Jan Panteltje

At this point my BSD host complains about a missing sys/io.h file, which is entirely understandable beings you probably wrote it for Linux. No worries, I ought to have ample time to port it to BSD before my part arrives on a slow boat from China. :)

Thank you again for sharing.

--
      __ 
   __/  \ 
  /  \__/ 
  \__/    Don Kuenz 
  /  \__ 
  \__/  \ 
     \__/
Reply to
Don Kuenz

On a sunny day (Mon, 27 Jan 2014 15:38:13 +0000 (UTC)) it happened Don Kuenz wrote in :

Yes, try just commenting out the include on line 45 or so in lm096_oled.c : #include /* for glibc */ by putting 2 '//' in front, so it reads: //#include /* for glibc */

It is not even needed on my system, compiles fine without it. I usually throw in a bunch of includes to speed up writing...

Reply to
Jan Panteltje

OLEDs have a layer of calcium metal as an electron donor. Not necessarily the most stable structure in the universe.

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs 
Principal Consultant 
ElectroOptical Innovations LLC 
Optics, Electro-optics, Photonics, Analog Electronics 

160 North State Road #203 
Briarcliff Manor NY 10510 

hobbs at electrooptical dot net 
http://electrooptical.net
Reply to
Phil Hobbs

Why, is it a radioactive layer? :-)

Tim

--
Seven Transistor Labs 
Electrical Engineering Consultation 
Website: http://seventransistorlabs.com
Reply to
Tim Williams

On a sunny day (Mon, 27 Jan 2014 11:19:07 -0500) it happened Phil Hobbs wrote in :

Well,

formatting link

dataheet

Note I am using ghostview for pdf, else it was not readable.

50,000 hours. Now about that LCD backlight, and the MTBF of its power converter.
Reply to
Jan Panteltje

The "50% initial brightness" lifetime spec may result in really ugly effects well before the 50K hours. An LCD backlight loses brightness for all pixels together; and OLED will be selective on past use history, of both locations and colors.

And I hear that OLEDs are moisture sensitive, so the accelerated life tests may not be accurate.

Does anyone have an OLED gadget that they have used for a while?

--

John Larkin         Highland Technology, Inc 

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

So its a monochrome OLED display, with color backlight. To be fair, one should compare it with a monochrome LCD. In that it fails badly in bright sunlight, where the LCD needs no backlight to produce a good display, and only a couple ma DC to a LED backlight to produce a good display in darkness.

--
Regards, 

Adrian Jansen           adrianjansen at internode dot on dot net 
Note reply address is invalid, convert address above to machine form.
Reply to
Adrian Jansen

It oxidizes. Rapidly. ;-)

Reply to
krw

On Mon, 27 Jan 2014 11:19:07 -0500, Phil Hobbs Gave us:

Probably one of the reasons they age and lose their color calibration.

Reply to
DecadentLinuxUserNumeroUno

On Mon, 27 Jan 2014 11:05:49 -0600, "Tim Williams" Gave us:

There is something wrong with this wording/framing.

Reply to
DecadentLinuxUserNumeroUno

Do OLEDs have backlights?

--

John Larkin                  Highland Technology Inc 
www.highlandtechnology.com   jlarkin at highlandtechnology dot com    

Precision electronic instrumentation
Reply to
John Larkin

On a sunny day (Mon, 27 Jan 2014 14:02:44 -0800) it happened John Larkin wrote in :

It is actually more specified in footnote 6, and no ugly effects are mentioned.

Are you just arguing for the sake of it (like multicores ;-) )?

I am interested in OLED from a bit different perspective, : TV. As a kid I already tried to make pixels glow by scraping stuff of an old broken CRT screen and putting between carbon stripes made with a pencil, never worked. My feeling told me that was the way to go though, I am really happy some clever chemist found the right stuff to make the needed colors. Sort of an old dream come true.

I already mentioned the extreme power saving, hey running a display powered by a par port data pin is a unicum no? But there is much more. The things is so fast that I wonder if I port it to a PIC I can do i2c fast enough to do 25 fps by uploading the 128x8 bytes 25 times per second. No problem on a par bus, but maybe i2c will even be fast enough (used out of spec). But that is just experimenting, the extreme contrast ratio is an other aspect (going to try a lens in front and see if I can project it on a screen, just for fun, will be a dark room experiment).

BUT the viewing angle, now compare that to my Samung > 1000 Euro laptop LCD that has any color you want depending on how you look at it,

The viewing angle of this little OLED is .. well, at what angle can you still read any text? That is the limit. OLED TVs are still very expensive and small, but I am already convinced. Give it some time...

My Samsung monitor came with all sorts of warnings about 'burn in', and disclaimers, the internet is full of 'remove burn in' programs, not that those help a lot. LCDs with LED or even CFL backlight NEVER give the correct color, are often manipulated by locally dimmed backlights to get any contrast at all, LCDs are, in my opinion (broadcast related) an disaster, and they are dead slow too, need all sort of driving tricks to speed up, tricks that actually may shorten their lifetime.

Somebody here has one in or at the front door.

Reply to
Jan Panteltje

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.