The ESP8266 module can be used to control an I2C OLED SSD1306 Display. Mainly to display sensor values locally.
We currently only support text messages, 8 lines of 16 characters.
As you can see, connections are easy with this display. The board has only 4 wires:
Connect the OLED Display to the I2C interface. This display works with 3V3 and can be connected directly to the ESP module.
LCD ESP-01 GND GND VCC VCC SDA GPIO 0 SCL GPIO 2
Some displays feature a Reset or RST pin. At start-up those displays may show noisy pixels. Resetting the display and thereafter the ESP will help. NodeMCU for instance, provides a RST pin. Connecting this pin to the RST pin of the OLED is a good way to synchronize operation.
Other displays might already be connected to a ESP board. Many of these displays have their reset pin connected to a GPIO. Commonly the pin number 16 is used and in order to get those displays to work properly you need to activate the pull-up for that pin. A quick test is to set the pin to high (1) but for long turn you should enable the pull-up instead. If the pin is missing a pull-up you can add one yourself by soldering a 10k resistor from 3.3V to the pin.
Use the device tab on the ESP Easy webinterface and create a new task by editing one of the available tasks. Select "Display - OLED 1306" from the dropdown box.
Enter template texts into lines 1 to 8. Plain text will be shown on the display exactly as entered. If you want to show a value, enclose <task name> and <value name> between brackets, separated by a hashtag.
So if you have a dallas sensor running, with taskname "Dallas", to get the temperature value, use this:
With release 057, some features were added. If you put %sysname% or %ip% or %systime% on a line in the table, the display will show either the name you gave the ESP module, its IP address or its time. The latter only when NTP is being deployed.
Check this sample on how to get it done:
(The IDX field will be stuffed with '1', because it's needs a value. But nothing will be send with this device)
|OLED,<row>,<col>,<text>||-||Write text messages to OLED screen, ROW for row, COL for starting column, and Text for text.|
|OLEDCMD,<value>||on, off, clear||Switch on or off the OLED or to clear the display. During the off state, the content will be updated according to the latest values or states.|
|Name||Character||Code (generic)||Code (html)||Code (verbose)||Extra information|
|"degreeC" and "degree_C" will give you ˚C|
|Angle quotes (L/R)||«