Author Topic: Another OLED SSD1306 library for Digispark  (Read 8707 times)

StefanG

  • Newbie
  • *
  • Posts: 3
Another OLED SSD1306 library for Digispark
« on: February 12, 2015, 11:47:22 am »
Hi,

in December last year I could not find a good library for driving 0.96 OLED displays (cheap to buy from BuyinCoins) with Digispark. So I used existing Arduino libraries for 0.96 OLED displays with SSD1306, took the best parts and made a library without the 1 kByte screen buffer for the use with Digispark (ATtiny85).

After Xmas I became ill and could not make the library public here. Now healthy again I see that things have changed and now there is a library. I have no time to develop my library further on and I have not compared both libraries.

So find out if my library is useful for you. You can also take a useful part and integrate it to your own solution or to the other library here. All is open. Take it over if you want.

I made it fast and created a zip file of the library. You can download it here: http://goetzes.gmxhome.de/TinySSD1306.zip.

There is an example in the zip file. I hope that this example is enough explanation to understand the usage of the library functions. Some comment can also be found in the library files.

Sorry for my English - it is not my main language.
« Last Edit: March 12, 2015, 09:52:11 am by StefanG »

bianchifan

  • Newbie
  • *
  • Posts: 4
Re: Another OLED SSD1306 library for Digispark
« Reply #1 on: June 03, 2015, 05:27:52 am »
While Defragster's SSD1306xLED is running fine TinySSD1306 doesn't compile.
I'm using newest IDE (1.6.4). Compile job starts but does nothing and won't terminate, CPU usage 0%.

StefanG

  • Newbie
  • *
  • Posts: 3
Re: Another OLED SSD1306 library for Digispark
« Reply #2 on: June 09, 2015, 05:46:27 am »
Last year I used IDE 1.0.4. I wrote the first post here and some later I gave the digispark module with the oled display away. It was like a roadside picnic.

I found that two aspects are possibly helpful in my library version:
- a (rudimentary) writing of proportional letters let you print one or two more small letters in a row,
- scrolling of screen areas in different directions at one time (used in the example). 

As I wrote in my first post I will not develop the code further on. So if something is interesting for you - you have to dive deeper into the code and find out why it makes this strange with the new IDE. 

If you have a special question you can send me a pm. Sorry that I can't do more  :( .

defragster

  • Sr. Member
  • ****
  • Posts: 467
Re: Another OLED SSD1306 library for Digispark
« Reply #3 on: June 09, 2015, 12:01:49 pm »
I'm mostly on Teensy these days and the 1.6.4 version shows instances there of compile errors that hang or ABEND and result in no useful error detail.

The IDE folks have taken a fix that will be in a pending release it was noted - these issues started and have been resolving since sometime after 1.6.x started - they updated the compiler version and that may be behind it.

Glad to hear that version still good for something!  The newer included Digistump version is better and more robust - but only if it compiles.

bianchifan

  • Newbie
  • *
  • Posts: 4
Re: Another OLED SSD1306 library for Digispark
« Reply #4 on: June 12, 2015, 10:25:01 am »
It was like a roadside picnic.

????
So much effort with writing a lib only for a short picknick?

Nevertheless.. last weekend I got your lib runnin'.. THank you for the lib!
First prob was the IDE, it's weird somehow, I do not know why the compiler sucked.
Most probs due to CONST and PROGMEM...

I do not understand the inclusion of TinyWireM, it blows up a lot.
SSD1306xled code is about 2K smaller, so I'm trying to integrate both.


StefanG

  • Newbie
  • *
  • Posts: 3
Re: Another OLED SSD1306 library for Digispark
« Reply #5 on: October 26, 2015, 10:46:50 am »
The rainy weather in autumn brought me back to tinker with a new digispark and a new 0.96 OLED display.

So I had the chance to bring the library up to a new version. Most basic functions I took from DigisparkOLED library. So now Wire library is used and it runs under Arduino 1.6.4 IDE (PROGMEM with const corrected).

I did not compare the footprints of both SSD1306 libraries.

If the special features (scrolling, poor proportional writing, only one font table for small and big letters) are useful for you - try it out.

I have changed the zip file on the webserver. The link in the first post brings the new version.
« Last Edit: October 26, 2015, 11:47:39 am by StefanG »