Nokia 5110 not working

Posted on
of 2
/ 2
  • Hi,

    I have tried the examples code on the website to test run pico but but lcd screen is not working. what should i do? theres only black lidded lights but no words on the screen!

  • Hi - please can you check down the sides of the screen?

    There are 4 little metal tabs that poke through the PCB - can you make sure they're all the way through, and if not push them in? They may have come loose in transit.

  • all of them are in tag.

  • i think my lcd is faulty

  • Hmm, that's a pain. Can you try pinching as shown in this picture, while uploading the software?

    If that fixes it, it's possible that it'll actually stay working after that. But if not then you can either push something under that edge of the LCD, or you can take the frame off and put a very slight bend in it.

    1 Attachment

    • 20150501_135525.jpg
  • These LCDs really haven't been great - as I said in another post the LCD manufacturer sent some really poor quality displays, but once I realised I started trying to check LCDs before sending them out.

    I've haven't actually found one yet that is properly broken, only ones that are scratched, have dead pixels or aren't making proper contact with the board for some reason.

  • still doesnt work... only the lights will come on

  • Ok - what's your backer number, and I'll get a new one sent out to you.

    Is there any obvious damage to the screen though?

  • my screen looks fine except for afew scratches. im backer #364 leon

  • I'm having the same issue. I'm tried the same steps mentioned above and have all 4 or my pins poking through.

    Although I'm a noob to electronics I can't seem to get mine to display. I've tried various configurations and still no text. I can get the backlight to come on but that is about it.

    I'm backer #1239

    I've also included a dump of the g = require("PCD8544") variable.

    "buffer": new ArrayBuffer(504),
    "flip": function () {digitalWrite(c,0);b.write([64,128],d);d­igitalWrite(c,1);b.write(this.buffer,d)}­,
    "setContrast": function (a) {digitalWrite(c,0);b.write([33,128|E.cli­p(127*a,0,127),32,12],d)}

    How can I fix this? Also are there any commands that I can execute that will give me diagnostics of the board to tell me if there are any issues.

  • @user55002 looks like you've wired the display up the wrong way...

    The tutorial says: the Espruino Pico on the breadboard with the USB connector facing left, and then place the LCD directly above it, aligned to the right (so the pin on the Pico nearest the USB connector should not be connected to anything).

    You've put the USB connector facing right in that picture...

    It should look like in the picture below... Can you give that a try and see if it works?

    1 Attachment

    • Pico LCD Hello World.gif
  • I've tried several ways and still the same issue. I've attached a picture of when I had this in that configuration also.

    One thing that would help some of the beginners with the tutorials would be to list the breadboard pins in which the pins should go in. Sometimes it's easy to see from the Tutorials and sometimes it isn't.

    Any idea how I can get this display to work correctly?

  • Ok, did you follow the steps at the top of this post? (Like checking to see if the tabs are all pushed in?)

    If it's something else I'll send you out another display.

    Just for the future though, it's probably best not to plug things in lots of different ways around unless you're sure it'll be ok. There are certain ways you could have plugged it in that could have damaged it.

    Good point about the pins. It works for the starter kit, but some other types of breadboard don't have the numbers (and on some I bet the numbering is different!). It would probably help if I drew in lines for what is connected where, or it might make sense to do a proper top-down diagram.

  • Yes the tabs are completely plugged in. I'd be happy to do a hangout with you if you would like to run through some diagnosis prior to send me a new display.

  • Thanks, that's fine. I'll send one out.

    It's not a huge surprise - just wanted to check it was nothing else easily fixable first :)

  • Thank you

  • SOLVED (for me anyway)
    I worked my way through the sample page for the screen and at one point thought my screen was broken as no words displayed, although I could get the light on. The problem was a real novice mistake! See if this is you too...

    The early examples on the page work as soon as they are sent to the pico, and the light stays on. The later examples put the code with in onInit, but with no call to the onInit function! So when you send the code to the board, you have to manually type onInit() on the left hand side of of the screen otherwise it won't run.

    I'm embarrassed to say that this took me about 2 hours to work out - but hopefully writing it down here will help out some others too.

    (There is an inconsistency in examples, sometime they add a call to onInit() at the bottom of the script, other times they don't, so be on the lookout for it.)


  • Thanks! I'll update the tutorial to try and make it a bit clearer :)

  • Hi Gordon,

    I am getting the same issue, the backlight is on but I do not see any text written on the display.

    How was this resolved before?


  • What code are you trying to use, and how are things wired? I think that these people's problems were each solved by a different thing.

  • I am following:­Workshop/blob/master/

    And copied the code from there and have it wired as per the picture for Task One: Beginner Screen & Button. The backlight is on but the screen is not displaying the text, the same as reply number 12 in this thread

  • Try the following:

    • in Settings - General - Communication disable 'Save on send' (send = upload)
    • paste code into editor pane
    • remove last line (onInit();)
    • upload the code (light should come on)
    • enter into console pane onInit();

    Sometimes the breadboard contacts are not as reliable... use other breadboard connections (shift to the right) / rotate the bread board (by 180 degrees) / place pico and display separately and use wires to connect...

  • Hi - sorry you're having troubles...

    One thing to check is around the side of the LCD, where the metal meets the red circuit board. Is it down flat all the way around? the metal bezel is held on with 4 tabs, and sometimes one of the tabs pops out and needs to be pushed back or the LCD itself doesn't make a good connection to the board.

    ... you shouldn't have to push hard to get it in, so if it doesn't go it might be that the LCD glass has moved around a bit.

    Sorry about that.

  • I did some projects a few years back with the Olimex boards with a Nokia display. The ones where the display was double sided taped to the PC board.
    They worked fine until I took them outside with a lower temperature. They wouldn't wake up.
    The fix that I finally found involved increasing the contrast value in 4 steps with a delay between each step. A one step contrast increase would cause the power to latch up. Four steps allowed the display current draw to adjust and not exceed the latch point. I no longer have access to the code for this.

  • Hi there,

    I'm sorry to post a message here, I'm not sure it is the right place, but I don't know where else to post it. I'm François (papamaker) and I'm selling a kit indcluding this kind of screen:

    My question is about this:

    These LCDs really haven't been great - as I said in another post the LCD manufacturer sent some really poor quality displays, but once I realised I started trying to check LCDs before sending them out.

    I'm also selling an electronic kit and I face a lot of problem with those screens (~30% are not working). I was wondering if you have some hints for me? Did you find a good seller for them?

    That would be great if you could help me.
    best regards,

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

Nokia 5110 not working

Posted by Avatar for Leon @Leon