Arduino LCD shield PCB not working

I created a simple PCB to act as an Arduino LCD shield in order to replace my breadboard and jumper wires.

The shield turns the LCD on when stacked on top of my arduino. It turns the LCD on but it looks like there’s no data being displayed. White blocks are displayed at first and then a blinking white block appears on the second row. Here is how it looks like: [LCD Shield PCB] http://imgur.com/a/HAqtS

I am wondering what can be wrong and what I can do to resolve this. I tried soldering on different LCDs but it seems like that’s not the problem.

Any help appreciated.

Thanks

I suspect there is something wrong with your PCB.

Don

Sorry to say but Don is right, see the Fritzing diagrams I have made.

What you wanted :-
What you wanted.JPG

What you have :-
What you have.JPG

Regards,

Graham

Sorry to say but Don is right, see the Fritzing diagrams I have made.

My answer was actually done 'tongue on cheek' as I didn't realize you could scroll down and actually see the PCB! All I saw was the photo of the display.

It is beyond my comprehension to understand why one would design a PC board to accommodate an unfortunate choice of pin numbers in the constructor.

A better choice would be to design the PC board with a straightforward layout and then change the constructor to agree with the layout.

EDIT: I forgot to point out that you can use your 'incorrect' PCB if you change the constructor in your sketch.

Don

I prefer using the less than $1 USD (shipped to my door) i2c backpacks for LCD displays.

--- bill

He has a few problems, not least of which is the messed up pot wiring, but also the R/S RW and E pin wiring........

Regards,

Graham

floresta: EDIT: I forgot to point out that you can use your 'incorrect' PCB if you change the constructor in your sketch.

I think it will take more than that. Have a look at the /RW and RS lines. Will be hard to use it when RS is grounded. (can only be sent instructions/cmds - no data)

And then the pot connections and the resistor on the VCC signal.

The shield can be used but it will take modifications to correct the errors.

--- bill

ghlawrence2000:
He has a few problems, not least of which is the messed up pot wiring,

Depending on the pot used, you could resolder the pot rotated around to swap around the connections.
But to me a bigger issue is how do you adjust the pot once the LCD is soldered on?
and if it is on the bottom side of the PCB there are many situations where the shield couldn’t be used do to clearance issues with the components on the PCB it is plugging into.

— bill

It is a pity really, since the goal was good, the end result not so much.

Regards,

Graham

Thanks for the feedback. I’m a real newb to PCB making and this is my first time making a custom shield for an Arduino. I’m painfully learning everything as I go.

I saw the issues with the pot, RS and RW . I have multiple boards so I just rotated the wiper, ground and 5v pin of the pot to fix it. However, I’m having an issue with the RW and RS pin. I cut the trace of the RW pin and hard wired it to ground and then I tried to hardwire my RS pin to digital pin accordingly to my code but that didn’t work.

I’m only getting dark blocks when I power on the LCD. See the pictures here: http://imgur.com/a/ZJrsi

Please let me know if you see anything that I might not seeing to resolve this.

Thanks

Tony

I am sorry, but from the second set of pictures, it is not completely clear what changes you made. Does your contrast pot now do something meaningful? And did you replace R2 with a wire? Also you don't really want the extra resistor legs going near your ICSP connector.......

Apart from that, I can't thing of anything else other than your constructor for the LCD library...

Regards,

Graham

Hi you guys,

I resolved the issue. It was a grounding issue. I had to cut my trace that connected RS to ground and solder a wire to connect the RS pin directly to the digital pin of my Arduino and then I cut the trace of the RW and hardwired that to ground to put the LCD in write mode.

Thanks for the help guys!