Go Down

Topic: Problem with SSD1306 LCD and U8glib (Read 14470 times) previous topic - next topic

Caltoa

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

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 ;)

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

Thanks for help!

Regards.

@ 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".

olikraus

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

Oliver


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!

olikraus

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


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! :) Thank you! Danke dir! :-)

Caltoa

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.


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. :)
I uploaded the rar-file to my box-account: https://app.box.com/s/5667p2057unut79gbd0n

olikraus

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

Caltoa

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).

olikraus

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

olikraus

#27
Mar 09, 2014, 10:14 am Last Edit: Mar 09, 2014, 11:19 am by olikraus Reason: 1
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)

MAS3

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.
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

olikraus

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


Go Up