Newhaven NHD-C0220AZ-FSW-FTW

Thank you all for your responses, it is greatly appreciated! I will have to go through and follow recommendations, I will post follow ups on my results. I do have to start at the beginning now because I removed the LCD altogether and just put it to a 3.3V then 5V supply and trim the pot up and down, down to zero and could not get anything out of it.

This is absolutely the best way to go about doing things, but assuming that this controller reacts like the HD44780U you absolutely must get the contrast working properly before you try running any code.

I recommend that you start by using just a 5V supply, a 10K potentiometer, and the LCD module.

Connect pins 1, 2, and 3 as shown in the diagram on page 4 of the datasheet.

You should be able to vary the voltage at pin 2 from 0 to 5 volts (with respect to GND).

The display should be blank with 5 volts and you should see one row (or possibly both rows) of blocks at 0 volts.

When you adjust the potentiometer so that a single row of blocks is visible and not too dark you should find the voltage at pin 2 to be about 0.6 volts.

If this doesn't work you should call NHD because either the device is faulty or else it doesn't work like all of the others (which is certainly possible).

If this does work then you should substitute a 3.3v supply and see if you can still get the single row of blocks.

If you can't then you probably need a negative voltage for pin 2 as we discussed earlier. You may want to ask NHD about this as well.

Don't even think about running any code until you get this part resolved.

Thank you very much for the link and for the correction on the datasheet! How did you figure that out?

I have been using these devices in my courses and since retirement for more than 20 years with the 8080, 8085, 68HC11, various PICs, and now AVRs almost exclusively programming them in assembly language. The first thing I look at in a new program is its initialization routine and until recently they have almost invariably been wrong. The current LiquidCrystal library, for example, does not completely comply with the HD44780U recommendations.

Don