Jump to content
chicken

SHARP Memory Display Booster Pack

Recommended Posts

That 555 timer would probably use more power than waking up your MCU every second or so.

 

Since this 43oh. I think I should recommend using an MSP430. standby current of the msp430g2210 with the VLO running is 0.7uA max.

and you could easily program it's hardware timer to toggle the pin every second. or 1/2 a second.

 

over 100x less power consumed than a 555.

Share this post


Link to post
Share on other sites

Updated library and added some documentation.

attachicon.gifSHARPMemLCDTxt.zip

https://github.com/astuder/MSP430-sharp-LS013B4DN02-memory-display/tree/master/energia

 

@@yosh I fixed a bug with VCOM, which could cause permanently (?) stuck pixels

 

@@chicken I didn't see any stucked pixels until now ... the only thing I found is, that the first line of pixels is missing after powering up the board (Launchpad or my own MSP430 board, both Versions of the library). After pressing "Reset" everything is ok.

 

Edit: Added image (left: after power up, right: after reset)

post-31435-0-06635600-1398757523_thumb.jpg

Share this post


Link to post
Share on other sites

@@chicken

 

hi and thank you for your test routines for the sharp 96x96 booster pack.

I was looking at the cpp file, mainly checking what's available and how to drive that LCD from a memory-limited '2553.....

 

?????>>>  could it be that your display ON / OFF routines need a fix ??? <<<<<<

 

 

 

referring to this part of your code in    SHARPMemLCDTxt.cpp     (comments with <<<... are mine) :

 

void SHARPMemLCDTxt::on()

{

digitalWrite(m_pinDISP, HIGH);            <<<<<<<<<<<<<<<<<< for 'ON'     set HIGH.......

}

void SHARPMemLCDTxt::off()

{

digitalWrite(m_pinDISP, HIGH);            <<<<<<<<<<<<<<<<<<  for 'OFF'    .... and again, HIGH ......   ??

}

 

 

 

I like digging into to other folk's driver code to see how they do it, always want to learn new stuff, so that's when I saw this and thought to ask...

 

cheers.

Share this post


Link to post
Share on other sites

The Teensy 3.1 can not stay and deep sleep and provide the pulsed refresh, it has to come out of deep sleep every second which would bring the power consumption to about .250mA . But if I use a CMOS 555 timer chip to generate the Vcom pulse it only takes about 110-140 uA which is much better for a battery powered setup.

If 555 takes 100uA then definitely you should be using an MSP430 instead, which could be sub-uA on average.

 

Are there any issues with showing the same static image for 24 hours or longer as long as the Vcom is refreshed every .5-1 seconds

Yes. The description of static mode in the LS013B7DH03 datasheet recommends redrawing the data every two hours to avoid stuck pixels. I expect that applies to all displays with the same technology.

Share this post


Link to post
Share on other sites

@@chicken I didn't see any stucked pixels until now ... the only thing I found is, that the first line of pixels is missing after powering up the board (Launchpad or my own MSP430 board, both Versions of the library). After pressing "Reset" everything is ok.

Without looking at the source, there's a startup procedure for these displays that, if not followed, might explain that behavior. My implementation of it can be seen here.

Share this post


Link to post
Share on other sites

Without looking at the source, there's a startup procedure for these displays that, if not followed, might explain that behavior. My implementation of it can be seen here.

 

@@yosh with this input, try delay(1) after display.on() and after display.clear()

 

[edit] PS: what version of Energia are you using? I'm using E0012 as pulled from GitHub in March.

Share this post


Link to post
Share on other sites

@@yosh Hmm, I can't observe the missing line with my own setup.

 

Shame on me, I found my mistake ... I just forgot to uncomment the first lines in loop() (->Turn on LCD power with offical TI BoosterPack) :wacko::blush:

Now it's working as intended.

Share this post


Link to post
Share on other sites

It will take me awhile to finish the code to actually do what I want for this project. But if anyone wanted to see the non-refelctive 168x144 pixel display.

 

I find it much more readable than the reflective.

 

post-274-0-85607000-1403606590_thumb.jpg

 

I'm using a paperclip to hold the zebra connector with enough contact force.

Share this post


Link to post
Share on other sites

It will take me awhile to finish the code to actually do what I want for this project. But if anyone wanted to see the non-refelctive 168x144 pixel display.

 

I find it much more readable than the reflective.

I'm using a paperclip to hold the zebra connector with enough contact force.

@@greeeg

That's a nice display !!! I have two questions ... first, do you think 3.3V are enough to power this display? Chicken mentioned in the first post, that the 5V Sharp displays maybe also work with only 3.3V.

Second questions is, do you think it's possible to solder a FPC/FFC cable on the zebra connector? Unfortunately my Sharp PCB (see here: http://forum.43oh.com/topic/5083-mailbag/page-4#entry48400) only has a FPC connector :-(

Share this post


Link to post
Share on other sites

It's running from 3.3v right now (Y) :D

 

Running from 5v has a very slight contrast increase. This board has a step up converter for the LCD power, but I am bypassing it right now.

 

That's pretty much how the 96x96 displays FPC cables are connected. So I'm going to say it's possible. But I have no idea what kind of glue you'd need, where would you source a FPC cable that is wider on one side? :S

This is why I asked chicken to include the zebra connection on the breakout board :P

 

Also worth mentioning that the FPC + zebra are physically constructed differently.

  Display side                    Display side   
################                   ##########    _______ < FPC ribbon
###########   @@                   ###############
Zebra strip > @@ 

post-274-0-03731000-1403614910_thumb.jpg

 

 

Since the displays are quite pricey, it's cheaper to buy a new set of boards than it is to damage and have to buy a new display :P

Share this post


Link to post
Share on other sites

Hi @@RafasS

 

No, my library does not support this. Unfortunately the SHARP displays only allow to update a complete row at once. So even if you'd extend my library to support x-position, it would overwrite everything on that line.

 

Y-position is supported by the library (line parameter). For text, x position can be roughly controlled with leading spaces in the string.

 

If this is too limiting for your project, take a look at the libraries from Energia or Adafruit. However these work with screen buffers in memory and therefore have a larger memory footprint. This is an issue with Value Line family (MSP430Gxxxx) MCUs, but might be no problem with the larger MCUs.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×