Just looking for a quick sanity check. I have this little OLED (link below), which appears to have no CS wiring available to tap into. I can't identify any leads at least...
Having its CS pin constantly tied to low leaves me unable to use this with other SPI devices, is that correct?
I'm trying to get it into step w/ an NRF2401 wired over SPI.
How are you going to deselect the chip without a chip select?
You could try to modify it. According to the SSD1306 datasheet /CS is pin 17 on the FFC connector. But when I've traced this in the past on the two different OLED displays I have I found that /CS was actually pin 13. I have never understood this discrepancy. Then there's the question of whether they pulled it high low or tied it high low. You'd have to try and figure out how it's wired and then do some soldering on tiny parts.
Or you could add external buffers to isolate it.
Or you could use two additional I/O pins and control it via software SPI.
It would be easier to buy another display. There are many out there.
Points taken, and thank you for the response. That's what I assumed/gathered thru reading but didn't find it as explicitly stated. So, if you have a oled w/o explicitly labeled and/or readily available access to a CS solder pad, you can't use that in unison with other SPI devices.
olikraus:
However I see another problem: The CS line is used to synchronize the data transfers. Without CS line, data corruption is more likely.
Oliver, what does this mean? I can't find anything in the datasheet about that. According to the timing diagrams, only in 6800 mode is CS ever required to be high.
If you already have this display and are feeling adventurous you could try to modify it. The two displays of this type that I have both have CS on pin 13 of the flexible flat cable (FFC). This puzzled me for some time until I discovered recently that the datasheet pinout is reversed from the FFC pinout, so that pin 17 of the datasheet = pin 13 on the cable.
Anyway, pin 13 (see photo below) is either routed to ground or a pull down resistor, maybe one of the resistors in the R2 IC. If you cut the trace leading from that pin and carefully solder a wire to it you could expose CS for your own use. You would have to arrange it so that CS did not exceed 3.3V when high, but this isn't too difficult to do.
Take an ohmmeter and see if that pin really does go to one of the pins on R4 R2. If it does, check the other side of the resistor (probably the opposite pin) and try to figure out where it goes. Maybe to ground.
It's hard for me to see the trace on the board clearly in that photo.
The connector pins are 0.5mm 0.65mm pitch. At that size your hand will shake and soldering isn't easy. One strategy worth considering is to expose a short section of the trace where the arrow is by scratching it with an exacto knife, until the metal shows. Then cut the trace between that area and the resistor (or where ever the trace goes). This way you can solder without worrying as much about bridging to the nearby pins.
You might ruin it. But those little OLED displays are so cheap. The ones I have cost $4.
edit:
Looking at it again, I'll bet that trace doesn't go to R2. It probably connects directly to the ground plane right in front of it. If that's the case you don't have a lot of choice about where to cut it. Cut it right there where it connects with ground and steady your hand for soldering. I find a shot of whiskey helps.
jboyton:
Oliver, what does this mean? I can't find anything in the datasheet about that. According to the timing diagrams, only in 6800 mode is CS ever required to be high.
Hmm, it actually was mentioned in the ST7565 manual (page 13):
When the chip select is inactive, D0 to D7 enter a high
impedance state, and the A0, /RD, and /WR inputs are
inactive. When the serial interface is selected, the shift
register and the counter are reset.
I would not wonder if this is also true for the SSD1306.