hallard / WeMos-Matrix-Shield

WeMos ESP32 ESP8266 RGB LED Matrix Shield
42 stars 10 forks source link

MH-ET LIVE D1 mini wiring "issues" #7

Closed helmarw closed 4 years ago

helmarw commented 5 years ago

not per se an issue just more an information for ppl want to use MH-ET LIVE D1 mini. Took me a couple of nights to figure it out and to get it to work. The general pin layout is the same but there is a tiny bit of information missing, the IOs are completely different to the WeMos. Neither https://github.com/dragondaud/myClock nor the PxMatrix library https://github.com/2dom/PxMatrix are working out of the box. Even SPI interface is on different IOs. I tried to summarise my modification in the attached pdf. Nothing fancy and i had to modify PxMatrix.h but it works now. i use a p4 64x32 Matrix display e.g. https://de.aliexpress.com/item/32380311346.html and those ESP32 https://de.aliexpress.com/item/32815530502.html This display seems to have a slow muxer so i had to use setMuxDelay, which is not part of the standard Arduino library v1.3.0 (installed form the library manager). The GitHub version v1.5.0 didnt work for me at all, so i added only the SPI and setMuxDelay-Modifications to the v1.3.0 also attached. then of course i needed to modify display.h and myclock.ino

MH-ET Live Minikit pinout and mods for LED Matrix.pdf PxMatrix_mod.txt You can use those files as reference. rename and replace PxMatrix.h with my mod, if you have the same issue

hallard commented 4 years ago

Thank for the head up, as for today, I'm using this code that works on ESP8266 and ESP32 with this shield.

#if defined(ESP8266)

#define P_LAT 16
#define P_A 5
#define P_B 4
#define P_C 15
#define P_D 12
#define P_E 0   // not needed on 64x32
#define P_OE 2

#elif defined(ESP32)

#define SPI_CLK 18
#define SPI_MOSI 23
#define SPI_MISO 19
#define SPI_SS 5  

#define P_LAT 26
#define P_A 22
#define P_B 21
#define P_C 5
#define P_D 19
#define P_E 17  // not needed on 64x32
#define P_OE 16

#else

#error "Target not supported, please select a ESP8266 or ESP32 Board"

#endif

and yes on my latest displays I needed to add this line also

//added for slow muxer
display.setMuxDelay(1,1,1,1,1);