Shifted Display Fix
With this new release I fixed a few very annoying issues. The most important (and also most annoying) issue was the shifting of the display content after reprogramming. I had suspected the init sequence for a long time but never had time to analyze it properly. It now turns out: I was completely wrong. The SSD1306 has various memory modes. In the mode I used you have to set the writing pointer to the used display memory. This pointer will be increased automatic with every write in to the memory. While this implicitly happens when you power cycle the display omitting this calibration can lead to unexpected results, such as shifted or distorted display content. Long story short: I fixed it and it seems to work now. This means while developing an application for the OLED display you no longer will have to unplug the ESP8266 to get a properly placed content!
More ASCII characters
Another fix was not really in the library but in my hacky Java program which I wrote to convert TTF fonts to a proprietary format used in the library. Out of considerations for space I had initially decided to include fonts only containing the charachters 32-127 of the ASCII table. But it so happens the the degree symbol “°” is in the extended ASCII table at charachter 176. Since I use the library and the fonts in the WeatherStation this character is very useful. So in the new release I added the full printable character set from 32-255.
In this picture you can see its use:
|Using the new extended character set, containing the “°” character among others.
Displaying data from my balcony, measured with the ClimateNode
One last thing…
|The new ClimateNode to measure temperature and humidity on
your balcony, basement, bathroom, etc.
A ridiculous amount of coffee was consumed in the process of building this project. Add some fuel if you'd like to keep me going!