PCD8544 not working

Posted on
  • My LCD is not working i.e. there is nothing on the display. All I can do is toggle the back-light.

    It's the blue one with "Nokia 5110" above the screen. I've tried all the examples from the tutorials page, SPI baud rate 1000000, also tried with different pins, changed the breadboard and cables and nothing helps.

    Any ideas please?

  • At 1Mhz it was behaving strangely for me (scrolling everything one pixel at every flip()).. but still it was behaving, and doubling to 2Mhz totally fixed it. So.. sorry.. are you absolutely, positively sure you wired it correctly? or do you have it working on another platform?


  • I'd be pretty convinced it was the wiring - the backlight is basically just a light so whether it works doesn't tell you much about the device itself. So you specifically tried this example and wiring?

    @Loop: The scrolling was actually caused by a bug in Espruino's SPI - hopefully it's fixed in 1v61...

  • Yes I'm sure about the wiring as I checked and tried again so many times I've lost the count now :)

    It's a new LCD so I don't know for sure, maybe I was out of luck and got a broken one. I'll dig out my Arduino board and see if it's working there.

  • I know this thread is one year old but I am experiencing the same problem. I received my espruino pico last week and I am quite new to espruino at all. Started plugging things today ;-)

    @graf Did you solve your problem?

    I made the wiring exactly like in http://www.espruino.com/Pico+LCD+Hello+W­orld and used the snipped from this page. Nothing happens. Only blue backlight.

  • Is the display the one you got with your Pico? Does there seem to be any damage on it? is the front loose?

    Just to check, does the backlight light up for the first bit of example code on that page:

    A5.write(0); // GND
    A7.write(1); // VCC
    // Setup SPI
    var spi = new SPI();
    spi.setup({ sck:B1, mosi:B10 });
    // Initialise the LCD
    var g = require("PCD8544").connect(spi,B13,B14,B­15, function() {
      // When it's initialised, clear it and write some text
      g.drawString("Hello World!",0,0);
      // send the graphics to the display

    Or is it for the second example only?

    It looks a lot like the LCD manufacturer sent me a really poor batch of displays (I've had to throw 40 of them away because of dead pixels/etc), so it wouldn't surprise me a great deal if there did turn out to be a problem with yours.

    Assuming the display is plugged in exactly the same way, I'm not really sure where to go with testing, short of sending out a new display - unless you know someone that has a similar display you could test with?

  • Hi Gordon,
    it's the display I got with my Pico and it seems to be broken :-(
    I get the Hello World String on the display only if I press the top left corner of metal around the display with my thumb.

    The backlight works with the second example code.

  • It looks that some - or may be most - of these displays are scavanged from recycled phones... Why would mine look dull and have typical usage pattern (severe) scratches when coming from a production line, even when not passing top quality bars... putting a protection foil over it was just a nice touch... (Is not at all a complaint - I like the reuse... saves(?) the earth and my $, and the patina has some mystery: what did this display show? who used it before? is it personalized... hahaha). Back from mistery to facts: The metal sheet frame has tabs that go through the board. On my unit one was not fully pushed in. The connector between the carriar board and the actrual LCD (plated glass) module is a piece of special rubber strip with conducting segments. A not fully-snapped-in-holding-down sheet metal frame or a not-properly-positioned connector strip may be the cause. Give both a check...

  • You might be able to fix your display by pushing it down, and using pliers to bend the metal things that stick through the board so they hold it on better. I often had to do that to make them stay together after taking them apart to change the backlight LEDs.

  • Thanks. I fixed it by bending the metal a litle bit.

  • Great, glad it's sorted!

    Sorry about this - I got an initial set of LCDs from the manufacturer and they looked ok. The next (big) order was a total mess though - I only really realised there were issues after the first set of kits had been packed up and sent out :(

    I really doubt the LCDs are second hand ones? They were really badly packed during shipping so the scratching could have been from that? Again, I only noticed that later on and started checking for scratches when sending out to later backers.

  • Hi Gordon,

    I've got mine espruinos as well, thanks! Now I try to play with it and encountered similar issue - LCD examples do not work. Though, it looks like there is something with SW. It can't find PCD8544 module, which looks strange:

    WARNING: Module "PCD8544" not found

    Is there anything I am missing?
    PS. Enabling backlight is working for me too, but that code goes before 'require'

  • Are you sending that from the right-hand side of the IDE, or typing it into the left hand side? You need to send from right side - the IDE sees the require call, fetches the module from espruino.com/modules, and sends that (after sending code, you can press the up arrow to see history of commands, and you'll see the Modules.addCached() and the code for the module.

  • Sorry, resolved the issue by specifying the path where to store downloaded modules in IDE

  • Yes, I tried that, but it didn't work, so I started to play in the left side.
    Fortunately, the issue was just in IDE failing to download modules to default location.

  • Hey Gordon,
    I also just got my Pico package. Like the others, it isn't working. In my case, there is actually a part dead.

    There are also many scratches.
    When suddenly a part of the screen fell out, I disassembled the screen and saw that a whole part was missing.

    I know it is not your fault, but I recommend you to switch screen manufacturer.

  • Those images don't load, so I can't see what's wrong...

    I think it's safe to say that Gordon isn't going to be buying from that vendor again, after they pulled the old sample switcheroo on him. That said, the quality of many of these pcd8544 displays (from other vendors) is pretty poor - YGWYPF.

  • @DrAzzy are you seeing them now?

  • Wow, that's really poor. Can you let me know your backer number and I'll send another one out to you?

    Sorry again about that - I'm a bit stuck with suppliers because I believe that the LCDs with pins pre-installed only come from one manufacturer. I'll be making sure they help to sort this out though, and I'll be personally checking every LCD I send out from now on.

    I'll also have a word with one of the other manufacturers and will see if I can get them to install pins for me. These LCDs weren't cheap either, so I may well be able to get LCDs with pins installed for less money.

    If anyone else has a broken display, please can they post up with their backer number as well? I'll try and get new displays sent out.

  • My baker number is #1368.
    Thanks for replacing it.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview

PCD8544 not working

Posted by Avatar for graf @graf