chicken 630 Posted April 29, 2014 Author Share Posted April 29, 2014 That 555 timer would probably use more power than waking up your MCU every second or so. Quote Link to post Share on other sites
greeeg 460 Posted April 29, 2014 Share Posted April 29, 2014 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. Quote Link to post Share on other sites
yosh 121 Posted April 29, 2014 Share Posted April 29, 2014 Updated library and added some documentation. SHARPMemLCDTxt.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) Quote Link to post Share on other sites
veryalive 49 Posted April 29, 2014 Share Posted April 29, 2014 @@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. chicken 1 Quote Link to post Share on other sites
pabigot 355 Posted April 29, 2014 Share Posted April 29, 2014 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. Quote Link to post Share on other sites
pabigot 355 Posted April 29, 2014 Share Posted April 29, 2014 @@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. chicken 1 Quote Link to post Share on other sites
chicken 630 Posted April 29, 2014 Author Share Posted April 29, 2014 @@yosh Hmm, I can't observe the missing line with my own setup. @@veryalive Good eye! The joys of copy&paste off() should set the pin to LOW. And good practice of digging through other people's code. Quote Link to post Share on other sites
chicken 630 Posted April 29, 2014 Author Share Posted April 29, 2014 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. Quote Link to post Share on other sites
yosh 121 Posted April 29, 2014 Share Posted April 29, 2014 @@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) Now it's working as intended. chicken 1 Quote Link to post Share on other sites
greeeg 460 Posted June 24, 2014 Share Posted June 24, 2014 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. bluehash and yosh 2 Quote Link to post Share on other sites
yosh 121 Posted June 24, 2014 Share Posted June 24, 2014 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 :-( Quote Link to post Share on other sites
greeeg 460 Posted June 24, 2014 Share Posted June 24, 2014 It's running from 3.3v right now (Y) 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 Also worth mentioning that the FPC + zebra are physically constructed differently. Display side Display side ################ ########## _______ < FPC ribbon ########### @@ ############### Zebra strip > @@ 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 yosh 1 Quote Link to post Share on other sites
yosh 121 Posted June 24, 2014 Share Posted June 24, 2014 Ok, I'll make a set of new PCBs Thanks for the input @@greeeg ! Quote Link to post Share on other sites
RafasS 0 Posted August 5, 2014 Share Posted August 5, 2014 Hello, how i can print string and image in a position (x,y) using the code that @@chicken post? Quote Link to post Share on other sites
chicken 630 Posted August 5, 2014 Author Share Posted August 5, 2014 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. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.