40x4 LCD showing rubbish

Hi everyone,

I'm trying to get a 40x4 (40 chars 4 lines) LCD working with an Arduino Nano.
This is the display I have, and this is the datasheet for it.

As you can see it has 8 data pins, and 2 enable pins (beside the other well known LCD pins).
So I assumed it is actually a combined version of two 40x2 LCD's, where one enable pin enables the top 2 lines, and the other enable pin does the bottom 2 lines.

They I usually handle these kind of displays, is by creating 2 independant LiquidCrystal objects, one for each enable pin, like so:

LiquidCrystal lcd1(12, 11, 5, 4, 3, 2);
LiquidCrystal lcd2(12, 10, 5, 4, 3, 2);

Where in the first object, pin 11 is connected to the E1 pin of the display, and for the 2nd object, pin 10 is connected to the E2 pin of the display. pins 5-2 are data7-4, and pin 12 is connected to the RS pin of the display.

This configuration however does not work with this specific display, it only shows rubbish on the screen, see a video here to see what I mean:

Another strange thing I've noticed is that turning the potmeter for the contrast does not have any effect on the actual contrast.
And yes I've triple-checked all connections.

Does anyone here have any experience with this or a similar LCD? I'm kinda out of ideas to get it running correctly...

Your approach is absolutely correct.

I suspect something is wrong with your connections due to your problems with the contrast.

Why don't you try each half of the display with a 'normal' program first to make sure that your connections are correct?

And yes I've triple-checked all connections.

I've heard that before. Post a good photograph and we can double check it for you. With the pins at the end of the display, and a non-standard layout as well, it is easy to make a mistake.

You didn't provide a complete sketch. During initial testing it helps to send static information to the display in setup() and leave loop() empty.