<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>OLED display &#8211; Squix &#8211; TechBlog</title>
	<atom:link href="https://blog.squix.org/tag/oled-display/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.squix.org</link>
	<description></description>
	<lastBuildDate>Thu, 23 Feb 2017 20:23:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.5.8</generator>
<site xmlns="com-wordpress:feed-additions:1">121913304</site>	<item>
		<title>ESP8266 Oled Display library: How to customize fonts</title>
		<link>https://blog.squix.org/2015/12/esp8266-oled-display-library-how-to.html</link>
					<comments>https://blog.squix.org/2015/12/esp8266-oled-display-library-how-to.html#comments</comments>
		
		<dc:creator><![CDATA[Daniel Eichhorn]]></dc:creator>
		<pubDate>Sun, 20 Dec 2015 12:02:00 +0000</pubDate>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[custom fonts]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[OLED display]]></category>
		<category><![CDATA[SSD1306]]></category>
		<guid isPermaLink="false">http://blog.squix.org/2015/12/20/esp8266-oled-display-library-how-to/</guid>

					<description><![CDATA[Many people were asking me to publish the code that creates the font files used in the SSD1306 OLED library. Well, I was hesitating since the code was a bit hacky. So I sat down and created an online tool which is now open for ... <p><a class="read-more btn btn-secondary" href="https://blog.squix.org/2015/12/esp8266-oled-display-library-how-to.html">Read More</a></p>]]></description>
										<content:encoded><![CDATA[<div dir="ltr" style="text-align: left;" trbidi="on">
Many people were asking me to publish the code that creates the font files used in the SSD1306 OLED library. Well, I was hesitating since the code was a bit hacky. So I sat down and created an online tool which is now open for Beta testing. It allows you to select a font from a list of integrated Apache licensed files, choose font size and style (plain, italic, bold) and then create the C file which you can copy paste into your Arduino IDE. Almost forgot, there is also a preview of how the font will look on the display&#8230;</p>
<p>It might not be perfect yet and I&#8217;m looking forward to get your feedback&#8230;<br />
And here is the tool:&nbsp;<a href="http://oleddisplay.squix.ch/" target="_blank">http://oleddisplay.squix.ch/</a></p>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/12/OledFontPreview.png?ssl=1" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" decoding="async" border="0" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/12/OledFontPreview.png?w=730&#038;ssl=1" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">Preview pane of the Font creator</td>
</tr>
</tbody>
</table>
<p></div>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.squix.org/2015/12/esp8266-oled-display-library-how-to.html/feed</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">18</post-id>	</item>
		<item>
		<title>ESP8266 OLED display library release</title>
		<link>https://blog.squix.org/2015/12/esp8266-oled-display-library-release.html</link>
					<comments>https://blog.squix.org/2015/12/esp8266-oled-display-library-release.html#comments</comments>
		
		<dc:creator><![CDATA[Daniel Eichhorn]]></dc:creator>
		<pubDate>Sun, 06 Dec 2015 19:53:00 +0000</pubDate>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[library.]]></category>
		<category><![CDATA[OLED display]]></category>
		<guid isPermaLink="false">http://blog.squix.org/2015/12/06/esp8266-oled-display-library-release/</guid>

					<description><![CDATA[Recently I released a new version of the&#160;esp8266-oled-ssd1306 library. This library allows you to control these wonderful little displays from a ESP8266 with little effort. When I first wrote the library for the WeatherStation I had the problem that 128&#215;64 pixels never seemed enough space ... <p><a class="read-more btn btn-secondary" href="https://blog.squix.org/2015/12/esp8266-oled-display-library-release.html">Read More</a></p>]]></description>
										<content:encoded><![CDATA[<div dir="ltr" style="text-align: left;" trbidi="on">
Recently I released a new version of the&nbsp;esp8266-oled-ssd1306 library. This library allows you to control these wonderful little displays from a ESP8266 with little effort. When I first wrote the library for the WeatherStation I had the problem that 128&#215;64 pixels never seemed enough space to display all the information. Then I added a feature set which allows you to describe the information in an number of frames which will then be side scrolled and displayed one after the other, just like a photo carousel often used on web pages.</p>
<h3 style="text-align: left;">
Shifted Display Fix</h3>
<p>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!</p>
<h3 style="text-align: left;">
More ASCII characters</h3>
<p>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 &#8220;°&#8221; 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.<br />
In this picture you can see its use:</p>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/4.bp.blogspot.com/-wFiaxYwwAYw/VmSdPi964PI/AAAAAAAAAeA/lpwUtBZ30Kw/s1600/NewCharacterSet.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" fetchpriority="high" decoding="async" border="0" height="320" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/12/NewCharacterSet.jpg?resize=320%2C320&#038;ssl=1" width="320" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">Using the new extended character set, containing the &#8220;°&#8221; character among others.<br />
Displaying data from my balcony, measured with the <a href="https://shop.squix.ch/index.php/climatenode.html" target="_blank">ClimateNode</a></td>
</tr>
</tbody>
</table>
<div style="text-align: left;">
To update the library go to the library manager, search for &#8220;esp8266-oled-ssd1306&#8221; and click update.</div>
<div style="text-align: left;">
</div>
<h3 style="text-align: left;">
One last thing&#8230;</h3>
<div>
Ok, maybe my announcement is not comparable to those of late Steve but still I&#8217;m happy to have a new product in my small shop: the ClimateNode. It contains a NodeMCU V1.0, a DHT22 to measure temperature and humidity and a USB cable. To get it to run you&#8217;ll need 3 female-female dupont jumpers which are part of the WeatherStation Kit. How you can set the hole thing up, soon, on this channel;-). So stay tuned! You can order it now here:&nbsp;</div>
<div>
<a href="https://shop.squix.ch/index.php/climatenode.html">https://shop.squix.ch/index.php/climatenode.html</a></div>
<div>
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/4.bp.blogspot.com/-dnEI3BYcACY/VmSf0e16J5I/AAAAAAAAAeM/JUJnACa7tDw/s1600/ClimateNodeSmall.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" decoding="async" border="0" height="320" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/12/ClimateNodeSmall-1.jpg?resize=320%2C320&#038;ssl=1" width="320" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">The new ClimateNode to measure temperature and humidity on <br />
your balcony, basement,&nbsp;bathroom, etc.</td>
</tr>
</tbody>
</table>
<div>
</div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.squix.org/2015/12/esp8266-oled-display-library-release.html/feed</wfw:commentRss>
			<slash:comments>16</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">22</post-id>	</item>
		<item>
		<title>#ESP8266: Open-Source Designer Advice wanted for the weather station!</title>
		<link>https://blog.squix.org/2015/06/esp8266-open-source-designer-advice.html</link>
					<comments>https://blog.squix.org/2015/06/esp8266-open-source-designer-advice.html#comments</comments>
		
		<dc:creator><![CDATA[Daniel Eichhorn]]></dc:creator>
		<pubDate>Thu, 11 Jun 2015 09:13:00 +0000</pubDate>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[128x64]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[I2C]]></category>
		<category><![CDATA[OLED display]]></category>
		<category><![CDATA[weather station]]></category>
		<guid isPermaLink="false">http://blog.squix.org/2015/06/11/esp8266-open-source-designer-advice/</guid>

					<description><![CDATA[So, all the major technical challenges have been resolved. But now the fine tuning begins. Anyone with a graphical eye in the audience to give advice? How to arrange the different elements most efficiently so that it is pleasant to eye and brain and uses ... <p><a class="read-more btn btn-secondary" href="https://blog.squix.org/2015/06/esp8266-open-source-designer-advice.html">Read More</a></p>]]></description>
										<content:encoded><![CDATA[<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
So, all the major technical challenges have been resolved. But now the fine tuning begins. Anyone with a graphical eye in the audience to give advice? How to arrange the different elements most efficiently so that it is pleasant to eye and brain and uses the space most efficiently? Please step forward&#8230; Your &#8220;playground&#8221; is 128&#215;64 pixels, 1-bit depth&#8230; All results will be open sourced&#8230;</p>
</div>
<p><iframe allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/JbfZmmxRPu4" width="560"></iframe></p>
<p>
<a name='more'></a></p>
<p>Here is the (sample) data that can be displayed.</p>
<p>Updated every 10 minutes (the forecast.io has limited free quota):</p>
<ul style="text-align: left;">
<li>CURRENT_TEMP=25</li>
<li>CURRENT_HUMIDITY=62</li>
<li>CURRENT_ICON=clear-day</li>
<li>CURRENT_SUMMARY=Clear</li>
<li>MAX_TEMP_TODAY=26</li>
<li>MIN_TEMP_TODAY=14</li>
<li>ICON_TODAY=rain</li>
<li>SUMMARY_TODAY=Light rain starting in the afternoon.</li>
<li>MAX_TEMP_TOMORROW=29</li>
<li>ICON_TOMORROW=rain</li>
<li>MIN_TEMP_TOMORROW=13</li>
<li>SUMMARY_TODAY=Light rain in the morning and afternoon.</li>
</ul>
<p>Updated every minute:</p>
<ul style="text-align: left;">
<li>GMTOFFSET=2</li>
<li>YEAR=2015</li>
<li>MONTH=06</li>
<li>DAY=11</li>
<li>HOUR=13</li>
<li>MINUTE=43</li>
<li>SECOND=53</li>
<li>SUNSET=21:17</li>
<li>SUNRISE=05:33</li>
<li>MOONPHASE_DESCRIPTION=waning crescent</li>
<li>MOONPHASE=7</li>
</ul>
<div>
</div>
<div>
By the way, the WeatherStation Kit is available at the shop:&nbsp;<a href="https://blog.squix.org/about-this-shop">https://shop.squix.ch</a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.squix.org/2015/06/esp8266-open-source-designer-advice.html/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">45</post-id>	</item>
		<item>
		<title>#ESP8266: Improving the WeatherStation Display</title>
		<link>https://blog.squix.org/2015/06/esp8266-improving-weatherstation-display.html</link>
					<comments>https://blog.squix.org/2015/06/esp8266-improving-weatherstation-display.html#comments</comments>
		
		<dc:creator><![CDATA[Daniel Eichhorn]]></dc:creator>
		<pubDate>Sun, 07 Jun 2015 09:29:00 +0000</pubDate>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[Arduino IDE]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[OLED display]]></category>
		<category><![CDATA[SSD1306]]></category>
		<category><![CDATA[weather station]]></category>
		<guid isPermaLink="false">http://blog.squix.org/2015/06/07/esp8266-improving-weatherstation-display/</guid>

					<description><![CDATA[These tiny OLED displays are cool, but they are also&#8230; well&#8230; tiny. To get the most of the screen real estate I started working on a little framework that allows you to display different cards on a carousel, which then are transitioned from one to ... <p><a class="read-more btn btn-secondary" href="https://blog.squix.org/2015/06/esp8266-improving-weatherstation-display.html">Read More</a></p>]]></description>
										<content:encoded><![CDATA[<div dir="ltr" style="text-align: left;" trbidi="on">
These tiny OLED displays are cool, but they are also&#8230; well&#8230; tiny. To get the most of the screen real estate I started working on a little framework that allows you to display different cards on a carousel, which then are transitioned from one to the next. Here is a little demo.</p>
<p><iframe loading="lazy" allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/1_1q20T4_ZE" width="560"></iframe></p>
<p>
Unlike the first version which was programmed for the LUA firmware, this update is made for the Arduino IDE. It looks like I will have much more degrees of freedom here, since the heap doesn&#8217;t seem to get depleted so easily like on the LUA platform. Since u8glib has not been ported to the ESP8266 Arduino IDE yet and the Adafruit library didn&#8217;t work for me I had to get the necessary code running myself. Well&#8230; not entirely myself, the code <a href="http://www.esp8266.com/viewtopic.php?f=29&amp;t=3256" target="_blank">here</a> helped me to get started. Stay tuned for the final release and l<b>et me know if you like the preview</b>&#8230;</p>
<h3 style="text-align: left;">
Update: The WeatherStation Kit!</h3>
<div>
Order all components needed for the WeatherStation in one Kit. The WeatherStation Kit is now available at the shop:&nbsp;<a href="https://blog.squix.org/about-this-shop">https://shop.squix.ch</a></div>
<div>
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/3.bp.blogspot.com/-ATMgNrCLW24/VYHM2ujGRnI/AAAAAAAAAV8/j1dL4UGwsuk/s1600/WeatherStationKit.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" loading="lazy" decoding="async" border="0" height="234" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/06/WeatherStationKit-2.jpg?resize=320%2C234&#038;ssl=1" width="320" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">The WeatherStation Kit available at the shop!</td>
</tr>
</tbody>
</table>
<div>
</div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.squix.org/2015/06/esp8266-improving-weatherstation-display.html/feed</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">46</post-id>	</item>
		<item>
		<title>ESP8266 contribution from Zurich to #FIFAgate: At least data is not corrupt!</title>
		<link>https://blog.squix.org/2015/05/esp8266-contribution-from-zurich-to.html</link>
					<comments>https://blog.squix.org/2015/05/esp8266-contribution-from-zurich-to.html#comments</comments>
		
		<dc:creator><![CDATA[Daniel Eichhorn]]></dc:creator>
		<pubDate>Thu, 28 May 2015 09:34:00 +0000</pubDate>
				<category><![CDATA[Common]]></category>
		<category><![CDATA[#FIFAgate]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[MQTT]]></category>
		<category><![CDATA[nodemcu]]></category>
		<category><![CDATA[OLED display]]></category>
		<guid isPermaLink="false">http://blog.squix.org/2015/05/28/esp8266-contribution-from-zurich-to/</guid>

					<description><![CDATA[I recently discovered the Node Red tool and almost immediately fell in love. I was about to write something like that myself when I found out about it and so far it does everything the way I would expect it: you could call it if-this-than-that ... <p><a class="read-more btn btn-secondary" href="https://blog.squix.org/2015/05/esp8266-contribution-from-zurich-to.html">Read More</a></p>]]></description>
										<content:encoded><![CDATA[<div dir="ltr" style="text-align: left;" trbidi="on">
I recently discovered the <a href="http://nodered.org/" target="_blank">Node Red</a> tool and almost immediately fell in love. I was about to write something like that myself when I found out about it and so far it does everything the way I would expect it: you could call it <a href="https://ifttt.com/" target="_blank">if-this-than-that</a> for your home automation/internet of things projects.</p>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/1.bp.blogspot.com/-kpySFIKqpE0/VWb5V3qQxeI/AAAAAAAAAUA/Ff8BYq-nxBY/s1600/FIFAgate.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" loading="lazy" decoding="async" border="0" height="219" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/05/FIFAgate.jpg?resize=320%2C219&#038;ssl=1" width="320" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">I needed a high activity Twitter hash tag. What could be more<br />
active today than #FIFAgate?</td>
</tr>
</tbody>
</table>
<p><a name='more'></a></p>
<p>My first little project was to pass on a twitter feed through MQTT to a <a href="http://s.click.aliexpress.com/e/yRVVB2F2B" target="_blank">NodeMCU ESP8266</a> module with an attached OLED display. It was super easy and even more versatile than I expected. I can now shift away the logic from the ESPs which are always short on RAM to the central node running on a Raspberry Pi. The stream can then easily be setup in the browser. As soon as you press &#8220;deploy&#8221; the changes will become visible on the OLED display.</p>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/1.bp.blogspot.com/-I_CmYs27uYc/VWb58od7kGI/AAAAAAAAAUI/H_9B-Rt99Xo/s1600/Screenshot%252B2015-05-28%252B13.18.17.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" loading="lazy" decoding="async" border="0" height="153" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/05/Screenshot2015-05-2813.18.17.png?resize=320%2C153&#038;ssl=1" width="320" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">The twitter flow: get the tweets from twitter, beautify them a little<br />
throttle the news feed to not overload the ESP and send them to the<br />
ESP over MQTT.</td>
</tr>
</tbody>
</table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;">
<tbody>
<tr>
<td style="text-align: center;"><a href="https://i0.wp.com/3.bp.blogspot.com/-_jawLd_-qWQ/VWb8uRUUl-I/AAAAAAAAAUU/YtpTQAJV4y0/s1600/FIFAgate%252BOled%252Bdisplay.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img data-recalc-dims="1" loading="lazy" decoding="async" border="0" height="182" src="https://i0.wp.com/blog.squix.org/wp-content/uploads/2015/05/FIFAgateOleddisplay.png?resize=320%2C182&#038;ssl=1" width="320" /></a></td>
</tr>
<tr>
<td class="tr-caption" style="text-align: center;">The data flow: Twitter, Node Red, NodeMCU (Lua), Oled display</td>
</tr>
</tbody>
</table>
<div class="separator" style="clear: both; text-align: center;">
</div>
<p></div>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.squix.org/2015/05/esp8266-contribution-from-zurich-to.html/feed</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">49</post-id>	</item>
	</channel>
</rss>
