Pages: 1 [2] 3 4 5   Go Down
Author Topic: Problem with SSD1306 LCD and U8glib  (Read 9673 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Edison Member
*
Karma: 36
Posts: 1219
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

My best advice at this point it to forget that display.
Buy a better display from a good company that sells electronics which work: https://www.adafruit.com/products/326
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,
I just wanted to tell you, that the module is working now.
I wrote to the chinese seller, and he sent me a link to a chinese website with a working library and code: http://www.14blog.com/archives/1358
Google-translate does hard work on this page smiley-wink

BTW the module doesn't need any resistors, and it works on every digital pin.

Thanks for help!

Regards.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@ Oliver:

Can you please  take a look at the library and check if the module works also with u8glib?
The provided library is really "buggy".
Logged

Germany
Offline Offline
Edison Member
*
Karma: 137
Posts: 1551
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for the feedback. Main problem is, that i do not own this display. So i can not do any tests on it.

Oliver
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for the feedback. Main problem is, that i do not own this display. So i can not do any tests on it.

Oliver

OK. Thanks anyway!
Logged

Germany
Offline Offline
Edison Member
*
Karma: 137
Posts: 1551
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have ordered the same display from this china seller. Usually it will take some weeks, but once it is here i will verify this.

Oliver
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I have ordered the same display from this china seller. Usually it will take some weeks, but once it is here i will verify this.

Oliver

GREAT! smiley Thank you! Danke dir! :-)
Logged

Offline Offline
Edison Member
*
Karma: 36
Posts: 1219
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Interesting.
So they use I2C without acknowledge, because SDA can not pull the line low, as I suspected.
But they use a library with software I2C that can be used on any pin ?
I clicked the download link, but did not get a file.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 17
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Interesting.
So they use I2C without acknowledge, because SDA can not pull the line low, as I suspected.
But they use a library with software I2C that can be used on any pin ?
I clicked the download link, but did not get a file.

Yes, I2C can be used on any pin. I am too much a newbie for finding that interesting. smiley
I uploaded the rar-file to my box-account: https://app.box.com/s/5667p2057unut79gbd0n
Logged

Germany
Offline Offline
Edison Member
*
Karma: 137
Posts: 1551
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Still strange. The SSD1306 is a standard controller. According to the datasheet of the SSD1306, standard I2C should be fully supported. In fact U8glib has been reported to work fine with the Adafruit OLEDs (also based on SSD1306)

Oliver
Logged

Offline Offline
Edison Member
*
Karma: 36
Posts: 1219
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Frantischek, thanks for the file !

olikraus, I read that SDA is split into two pins for reading and writing. The heltec display uses only the input pin. I have been reading about those heltec displays for my own heltec display (SPI without CS interface).
Logged

Germany
Offline Offline
Edison Member
*
Karma: 137
Posts: 1551
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

In the source of the rar archive they do "software I2C without ACK". I will wait for the display and do some deeper analysis.

Oliver
Logged

Germany
Offline Offline
Edison Member
*
Karma: 137
Posts: 1551
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi

I have received the display. Indeed, it does not send the I2C ACK bit. I have updateded U8glib (see attached prerelease). Now U8glib works with this nice little display.



Oliver

Edit: U8glib constructor is (Arduino Uno only): U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NO_ACK)

* u8glib_arduino_v1.16pre1.zip (1076.42 KB - downloaded 234 times.)
« Last Edit: March 09, 2014, 05:19:25 am by olikraus » Logged

The Netherlands
Offline Offline
Edison Member
*
Karma: 51
Posts: 1729
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

If it doesn't send that acknowledge bit, does it send any thing at all ?
This seems to be the same display (it is available in white, blue and blue/yellow) as fitted on the Crius CO-16.
Are pins 19 and 20 of the flex cable from the display connected ?
If not it can't send anything back and that can be solved by connecting these pins with a drop of solder, which is easy to do.
After that, the display will work as it's meant to be.
Logged

Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Germany
Offline Offline
Edison Member
*
Karma: 137
Posts: 1551
If you believe something is right, you won't see what's wrong (David Straker).
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi MAS3

U8glib does not read anything from the display. In fact U8glib was designed not to read anything from a display. Reason is, that most SPI based displays disallow to read back anything (because of the missing MISO line). From this perspective, I would say, that this display works as expected, except, that it does not send the ACK signal. I personally think, this is because the level shifting from 5V to 3.3V for this OLED is only done in one direction (to reduce production cost for this display).

From what i have seen on the OLED, i would say, that all connections are soldered. Which signals are on line 19 and 20? What do you mean by "connected"? Should these lines be shortend?

As a conclusion, i would say the problem is solved now. It is not nice, that the ACK is not sent, but all my testing had been very successful with this display. Indeed there was never any wrong/missing pixel. It simply works very reliable with U8glib.

Oliver

Logged

Pages: 1 [2] 3 4 5   Go Up
Jump to: