LCD Flicker

Hi Guys,

I'm new to this forum, but I've been playing around with Arduino for over a year. I'm NOT an electronics buff, but I managed to build a shot timer that I use at the shooting range. Everything works fine until the timer gets hot due to the use in the sun. This causes the LCD to start flickering badly. It looks as if the individual pixels are written line by line from top to bottom.

I don't have any lcd.clear commands in the loop, so it is not that. When used indoors and at room temperature the display works fine.

I'm using a 1602 Winstar LCD and an Arduino based PCB built along the lines of the Arduino on a Breadboard. I use a 9V battery and an LM7805 voltage regulator.

Any help will be appreciated.

SpongeBob

Sounds like it may be as simple as the unit is getting too hot.

If this is the case, put it in a white case to reflect the sun, and put a small fan in the case along with venting holes to make sure there is airflow past the unit to dissipate the heat.

You didn't indicate where you live so I can't tell if you should move North or move South.

Don

SpongeBobCamoPants: I don't have any lcd.clear commands in the loop, so it is not that. When used indoors and at room temperature the display works fine.

Nevertheless, if you are continually updating it in the loop, that may be causing the problem.

Update it only when something changes.

SpongeBobCamoPants: I use a 9V battery and an LM7805 voltage regulator.

Sounds very inefficient.

@ floresta: LOL.

@ Paul__B: I agree that using an LM7805 is inefficient, the chip lowers voltage by converting the excess power into heat.

@ SpongeBobCamoPants: arduinodlb made a good suggestion, try to increase the airflow over your circuit. You should consider swapping the LM7805 for a switching buck voltage regulator, they are much more efficient, and don't produce a lot of heat. It will also make the battery last longer. There are even units which are pin compatible with the standard 7805 and are a direct replacement. I'm not sure if this applies to the hot-side of the specs, but a wide-temperature range display might be able to cope with the heat better than a simple generic LCD.

@ floresta: I'm actually quite far south already, as I'm in South Africa XD

@ TheCoolest: I'm very new to electronics so I'm just using circuit diagrams I find on the net. With what can I replace the LM7805 regulator ? Any specific part number or make ?

I did some more testing. It seems as if the LCD starts flickering at random. I had it happened to me at night time with low temperatures.

While on the shooting range on Saturday the display was intermittently flickering. It would get very bad and then just stop. I used 3 different timers and they all seemed to do this at random. Like I said, the rest of the circuit works fine. It picks up gun shots fine, but the screen is driving me nuts !

I measured the voltage on the data pins at the screen and it is constant at 4.98V

None of the components get hot. I don't have a heat sink on the regulator, but it doesn't even feel warm.

In that case, post your sketch here. Seemingly random flickerings are often software bugs.

If you're working with schematics you found online, it could be useful for us to see them. It could also be hardware related issues.

How is the LCD connected? Does it rely on accurate timing?

Finally ! I found the problem. I used aPWM pin on the ATMega328 to adjust the contrast. This caused the flickering. I now use a 10K pot and it works like a charm.

Thanks for the advice though.