Introduction: Wiring a LOLIN WEMOS D1 Mini Pro to an SSD1283A 130x130 Transflective LCD SPI Display
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).
LCD Screen; $3.05 https://de.aliexpress.com/wholesale?catId=0&initia...
WEMOS D1 Mini Pro; $2.90 https://de.aliexpress.com/wholesale?catId=0&initia...
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:-
and your screen will run about 4 times faster.