Introduction: Wiring a LOLIN WEMOS D1 Mini Pro to an SSD1283A 130x130 Transflective LCD SPI Display

About: Tinkering with digital since 1982

There's no good info on hooking this up online, so, here's how!

The SSD1283A LCD is an awesome little transflective display - it can be read easily in direct sunlight, and has a backlight too, so can be read in darkness as well.

The Wemos D1 Mini Pro is amazing - excellent wifi support, with easy step that make it OTA updatable - yes - you can update software and re-flash these things over wifi, without needing to connect it to your PC!

I am in the process of building my own Infrared Camera, which shows temperatures on the screen and uploads the data in real-time to the internet as well. But that is for a future instructable - for now - let's get the screen going!

Check the photo to ensure your board and screen match mine (this sketch probably works fine on any D1 model, not just the Mini Pro).

Supplies

Step 1: Wire Them Up!

The LCD is an SPI device (e.g. MOSI), but the manufacturer has wrongly printed I2C labels (e.g. SDA) on the board, so don't get confused.

Make these connections. If you're using a breadboard, copy the photo above.

D1LCD 3V3 VCC G GND D8 CS D4 RST D3 A0 D7 SDA D5 SCK 3V3 LED

If you are running low on pins, I don't think the D8-CS connection is needed (seems to work fine with this disconnected).

(in case the broken instructables editor ruined my table above - here's the wiring again, in text:)

D1 -- LCD

3V3 -- VCC

G -- GND

D8 -- CS

D4 -- RST

D3 -- A0

D7 -- SDA

D5 -- SCK

3V3 -- LED

Step 2: Load the Software

Open Arduino, select your board: (LOLIN(WEMOS) D1 mini Pro

Select your port: /dev/cu.SLAB_USBtoUART (if you're using a Mac).

Create a folder with the attached* files, open the sketch, and upload it!

* instructables was down when I wrote this, and was unable to upload files - so I've put them here: http://chrisdrake.com/Wemos_D1_Pro-SSD1283A_ok.zip

Step 3: Bonus Step - Make It Work 4x Faster

Edit LCDWIKI_SPI.cpp and remove this line:-

SPI.setClockDivider(SPI_CLOCK_DIV4); // 4 MHz (half speed)

and replace it with this line:-

SPI.setFrequency(40000000);

and your screen will run about 4 times faster.