Newhaven Display Forum

HELLO EVERYBODY, Y RECENTLY BOUGHT A NHD-2.8-25664UMB3 DISPLAY FOR AN ELECTRONIC DEVICE I'M WORKING ON BUT I LACK OF EXPERIENCE IN ELECTRONICS DESIGN PLEASE HELP ME WITH THIS: ROTARY ENCODER+SSD1322+SPI 4 WIRE INTERFACE = MENU SCROLLING ON THE DISPLAY...THANKS IN ADVANCE..ANY HELP WILL BE APPRECIATED!

We have plenty of example code available to get you started with your software development. One document you can refer to is on our example program code webpage for that display, here: http://www.newhavendisplay.com/app_notes/OLED_25664.txt (http://www.newhavendisplay.com/app_notes/OLED_25664.txt). Some more example code I have for the Arduino Mega is included below:

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.*///---------------------------------------------------------

I also am having difficulties in getting this display to work. I've tried on both a beaglebone black and an Arduino Mega. On the beaglebone black, I follow your recommended init sequence, and all i get is a random matrix-like grayscale display. On the mega (using the exact code above), I get nothing at all. The display is simply blank. Please advise, as I am working on product development and didn't anticipate so much difficulty with the display.

Iíve had a similar problem with parallel interface (6800), which may be due to me not controlling CS line (lack of i/o pins made me tie that pin permanently LOW and RES High, this i will verify soon ). i found the command instructions worked fine but data instruction had a problem.

try issuing command(0xA4) and command(0xA5) and see what happens.

Iím currently using 4 wire spi interface, which works fine. i will return back to parallel just as soon as i have sorted out other aspects of my project.

Can you share your 4-wire SPI code? I am not interested in parallel, only SPI. If I can at least just verify that the display is working (get something readable) then that will at least give me some motivation. At this point I just cannot get any human-readable text on the screen. In contrast, I have a couple of SSD1306-based displays, and I have that one working on both the beaglebone and the arduino over 4-wire SPI. HELP!

Here is my wiring for the Mega. Mike - I am using your code straight from this thread. When wired up as 4-wire SPI (as in picture) I get absolutely nothing. If I put BS0 high (3-wire mode) I at least get a flicker on the display when the arduino boots (and this can be repeated by resetting arduino). But that's as far as I can get currently... My SSD1306 display works fine on both devices (beaglebone and arduino). Please advise!!!

The code I have posted here has been tested and verified to work. You mentioned you used this initialization on the beaglebone and you got a random matrix-like grayscale screen. This is normal, as it is simply the random "garbage" present in the display's RAM at start up. You would need to proceed to write to it to see desired results.If this initialization is working for you with the beaglebone, but not the Arduino, the problem must not be the display or code. On the Arduino Mega, have you replaced the voltage regulator with a 3.3V regulator to supply the display with 3.3V logic? Is your SPI speed for whatever reason too fast on the Arduino?