I'm seeing a few issues that need to be resoved.
NOTE: there are some wiring issues that need to be resolved before
any more testing is done.
i.e. turn off the power and correct some wiring before proceeding
First, the sample sketch you included in your first post is not including the proper header
files and is actually using headers from two different glcd libraries.
ks0108.h is from the ks0108 libary and glcd.h is from the glcd (GLCDv3) library.
My suggestion is to use the examples that come with the library before you start
to run your own.
In %99.99 percent of the cases, the reason the display is not working is that
the wiring is not correct. The other fractional case tend to be because the wiring
was incorrect at some point and something on the display got fried.
Usually that doesn't happen and it is simply a case of incorrect wiring.
I am the co author of the GLCDv3 library but I am no longer offering support for it.
I now am supporting openGLCD so that would be the library I can help with.
It is essentially a superset of GLCDv3 with many bug fixes and new features
but is licensed as GPL v3 vs LGPL 2.1+
If you are wanting to create a closed source project then you cannot use openGLCD
but can use GLCDv3 or u8glib libraries instead.
Not sure who will step up for GLCDv3 support but for u8glib support Oliver can help you.
Currently openGLCD uses the same wiring as GLCDv3.
Whether GLCDv3 or openGLCD both libraries have lots of documenation on
how to wire up the pins along with some special directions and warnings on how
to hookup the contrast circuit (potentiometer).
From looking at your photo you have deviated from that contrast circuit
wiring in some very siginificant ways.
Note: the sparkfun datasheet has an error on it with respect to the VEE signal.
(most ks0108 datasheets have errors so this is not unique to this one)
The VEE signal is an output voltage signal and does not vary it will be negative
with respect to ground in the -5 to -8 volt range.
Regardless of that, the documentation in GLCDv3 and openGLCD explain
the proper way to connect the pot for contrast control using the Vee signal.
You have two potentiomenters.
They are both incorrectly wired to the GLCD contrast circuit pins.
Most concerning is the pot on the right.
That pot has the wiper hooked up to (VEE, pin 18) which is a glcd output pin.
The VEE pin provides a negative voltage from the glcd on board negative
power supply, that is used along with pot to create the needed voltage to
feed into the V0, pin3 input pin which is the contrast input voltage which controls
the contrast.
The way you have it wired up, Vee is being treated as an input signal
and the concerning part is that if the pot is turned too far either way,
it might short out VEE to either VCC or ground which can potentially fry the onboard
negative powersupply which means you wouldn't be able to drive the Vo signal
to turn on the pixels even after the wiring is corrected.
So my suggestion at this point is remove both pots, and review the documenation
for the proper wiring for the contrast pot and rewire it correctly before any further testing
is done.
The data lines looked good.
I couldn't quite tell where the yellow wires hooked to the analog pins are going.
The reset line looked ok.
When using GLCDv3 or openGLCD, you will want to run the diagnostic sketch.
Until the hardware is working, there is little point in running anything else.
The included HTML documenation in both GLCDv3 and openGLCD have details and glcd display
screen shots along with the serial monitor log that shows the expected results.
They also include a section on troubleshooting which can help resolve some common issues.
If you are using openGLCD and after running the diag sketch and can't resolve it
from the troubleshooting guide, then please come back and post the diag serial output
as that will help diagnose the issue.
--- bill