LCD randomly reverts to displaying hieroglyphs

LCD randomly reverts to displaying kind of hieroglyphs
After LCD go berserk, program on arduino continues working properly. After resetting arduino all returns to normal.
Guys was discussing this on aquarium forum, and most suspected that it is interference from switching on and of other electric equipment.
Anyone else has experienced this and successfully overcome ?

LCD is standard 20 x 4 and duemilanove

I would check the wiring, if they are good and maybe if they are not wet - aquarium typically are not so dry and electronics and water are only cooperative under special circumstances.
Another point could be the power supply, what are you using, what is connected to the Arduino, pumps sensors? please tell more as we cannot see your project.

hieroglyphs?

haven't tought about entering the Egyptian market? :wink:

Not enough details to say much. Code? Wiring of your project? LCD model? I have one LCD module that needs extra delay BTW.

LCD randomly reverts to displaying kind of hieroglyphs

Is there any pattern to the hieroglyphs? For example: the expression 'Hello World' has three instances of the letter 'l'. Are all three displayed as the same incorrect character?

Don

I use this LCD :

http://cgi.ebay.com/HD44780-20x4-LCD-module-Blue-backlight-Free-pin-header-/320537704483?pt=LH_DefaultDomain_0&hash=item4aa1893823#ht_2302wt_1017

All stuff is placed separated from aquarium - so its not wet. I checked wiring and soldering twice, also executed "earthquake" test. Arduino is used for PWM controlling LED lights. Lights has own 24V ps and driver. I disconnected all relays for now. I can simulate event by plugging in-out other devices to same power outlet where arduino 12v PS sits. I need several tries to trigger usually. And in real life its happening by itself, with no side intervention.

Im using code v1.03 from there : Google Code Archive - Long-term storage for Google Code Project Hosting.

Hyeroglyphs are difficult do describe. Just strange unseen characters all over screen. Randomly screen is blank at all. Sometimes I can see clock ticking through hyeroglyphs but differently placed .

Let me ask you this, if you disconnect everything except for the LCD and run the lcd hello world sample code included in arduino IDE, do you see the random characters?

Just describing what you did is not enough, must provide hi-res pictures to prove you connected the lcd correctly. I've bought an lcd or two from that same ebay seller and didn't have any trouble so hopefully the unit is working.

I checked wiring and soldering twice ...

You can check it a hundred times and it will still look OK to you since you did it in the first place. We need the photos mentioned in the previous post. We need a long shot showing the entire setup and a closer shot clearly showing the interconnections between the Arduino and the LCD.

Don

Cant switch of lights for now as corals are sensitive animals. First need to master another source. Then I try to run controller
separately if better solution will not appear till then.

Wiring : http://www.reefledcontroller.com/images/lcd_bb.png except connect to pins 13, 12, 7, 6, 5, 4 instead of 12, 11, 5, 4 , 3, 2

Just noticed. LCD reverted to hieroglyphs after my auto-top-of system kicked in. But it is 100% separate system. 240v pump supply and 5v controller supply are connected to same 240v power outlet though.

Is it interference via power cables or magnetic interference via air ?

Wiring : http://www.reefledcontroller.com/images/lcd_bb.png

This is how you were attempting to connect the LCD to the Arduino, it does not show the connections that you actually are using. Specifically, it does not show if you interpreted the pin numbers correctly and it does not show if you simply just made a mistake.

Is it interference via power cables or magnetic interference via air ?

This is a very good possibility. You might want to start with some ferrite chokes on the 240 v power leads.

Your picture of the display is interesting and it could provide some clues if we knew what it is supposed to be displaying. Examples: (1) There are several '#' symbols in your picture. On the correct display does the same character appear in each of those locations, and if so what character is it? (2) The two bottom lines are very similar. Are they similar on the correct display?

Don

This is how it usually looks. Temp sensors disconneced- so -127
Forgot to mention - hieroglyphs are scrolling. Roughly 1 character per second.

hieroglyphs are scrolling. Roughly 1 character per second.

Can you be more specific. Are the characters moving left or right? What happens to the characters as they drop off the edge (does the same character appear somewhere else)? If yes, where (on the other end of the same line, on the other end of a different line)? Does anything else happen in your program at the same rate?

Does the change from normal to hieroglyphs occur every time the auto top-off system kicks in? Is there any other trigger that sets it off?

Can you unhook the front panel and move it further from the other components and maybe temporarily shield it from the other components with some foil (maybe in a plastic bag to prevent shorts)?

Don

If you can pull out the arduino and just test the lcd alone that will confirm you have a working unit. I also suspect interference. If lcd checks out in isolated test then will dismounting it from the box and stretching its cable away from the power supply fix the problem? I once used IDE harddrive cable to connect an led and its cable is close to a desk lamp, halogen one with transformer in lamp base. Every time I turn the lamp on or off I would create random characters on the lcd. It took me a while to realize what's going on and moved the lcd away from that lamp. Transformers are notorious.

Your power supply probably has a transformer and maybe it is a switching type. If that is the case it could produce EMI "electrical interference" that could easily "test" your Arduino for weaknesses. If you can get it away from you lcd and Arduino you can eliminate it as a cause of your problem.

Mark

muda:

I will try to move components apart. Its the most easy test at the moment anyway.

floresta,

Characters move to the left. 1st line to 3rd and 2nd to 4th. Sometimes blinking cursor appears somewhere. Sometimes all is just stationary.

Your power supply probably has a transformer and maybe it is a switching type. If that is the case it could produce EMF

A power supply that doesn't produce EMF is a fairly useless thing.
Perhaps you meant "EMI"?

AWOL:

Your power supply probably has a transformer and maybe it is a switching type. If that is the case it could produce EMF

A power supply that doesn't produce EMF is a fairly useless thing.
Perhaps you meant "EMI"?

Sorry, I work with motors a lot and had EMF on the brain. I will correct my post.

Thanks,
Mark

Characters move to the left. 1st line to 3rd and 2nd to 4th.

This is the normal 'shifting' (improperly called 'scrolling' in Arduinoese) pattern for a 20x4 LCD. So your LCD controller appears to be functioning normally in response to rogue signals. Sometimes the RS line is high resulting in the scrambling of the display data and sometimes it is low resulting in the shifting of the display and the appearance/disappearance of the cursor. Everything points to noise produced by the top-off system. Getting rid of the noise is another matter....

Don

Added magnetic chocke to 12v powerline.
So far - so good.

ALright! Thanks for reporting back. I am curious. Did someone else finish this project just like how you did it without experiencing interference? You seem to have used some code from some online source.