Deek ROBOT SD on Nano with LCD

I have a nano with a Deek robot SD data logger. The SD seems happy. I am having problems with the LCD. I don't know if the logger is interfering.

I think pin 10 is for the SD and 11 and 12 might be used so am avoiding those. For the LCD I am using:

//RS, EN, 4, 5, 6, 7
LiquidCrystal lcd(6,7,5,4,3,2);

//setup procedure has:
  lcd.begin(16,2);         // Dimention of the LCD
  lcd.setCursor(0,0);      // Reset position
  lcd.print("-- Tag Reader --");

// * LCD VSS pin to ground
// * LCD VDD pin to 5V
// * LCD V0 Contrast to 10k then GND
// * LCD RS pin to digital pin D6
// * LCD R/W pin to ground
// * LCD Enable pin to digital pin D7
// * LCD D4 pin to digital pin D5
// * LCD D5 pin to digital pin D4
// * LCD D6 pin to digital pin D3
// * LCD D7 pin to digital pin D2
// * 220ohm then +5V
// * Ground

The SD seems to be working but nothing shows on the LCD, it just sits there glowing.

Think it might be a problem because of the data logger, any ideas?

Thanks

That is wrong. Any value from 0R to 470R should give a visible display. 390R might give you the best contrast. 10k is way too high.

Thanks. Will try.

You will find that a lot of "tutorials" and the like and even most products such as the "keypad shield" and "I²C backpack" have "Vo" connected to a 10k potentiometer which connects to 5 V Vcc and ground.

This is a sad mistake mindlessly copied from one "design" to the next essentially since these LCD controllers were available. It indicates most designers never actually read and fully comprehended the datasheet. The potentiometer only ever functions over one twentieth of its range at the ground end. Such is life! :roll_eyes:

The correct version is a 1k variable resistor from "Vo" to ground, never connected to 5 V. As David mentions, 390 Ohms is in general a good approximation and most of the time direct connection to ground will be usable (especially if the supply voltage happens to drop as low as 4.6 V!).

Thanks, that's great, a 390R did the trick. I have data on the screen but it's just solid blocks across the top line. I still have an issue somewhere, will keep looking. I will double check all my connections but I still worry the SD is causing an issue...

Sorry, that does not make sense. :worried: Blocks are not "data".

Perhaps a photo?

Should have said visible character blocks.

Other people have had this issue. Am looking into it.

Thanks for help.

OK, so your contrast is set reasonably correctly but you are not actually accessing the display.

I think we may need a picture with sufficient detail to follow where the wires go, as well as the actual code.

Just standard code to test


#include <LiquidCrystal.h>

//                RS,E,D4,D5,D6,D7
LiquidCrystal lcd(6, 7, 5, 4, 3, 2);

void setup()
{
lcd.begin(16,2);
lcd.print("hello world!");
lcd.setCursor(3,1);
lcd.print("ok");
}

void loop()
{
}

But it’s tricky to see wiring on the photo. Am checking all connections with multi meter.

Ok so after a long time checking everything carefully and not finding any issues. I tried it and it worked. Seems the USB port I usually use is not pumping out enough power. It was a psu issue. Doh. Thanks for help with contrast. Glad it’s sorted.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.