Connecting (Anet A8) 2004 display to MKS GEN L
Was anyone able to connect the default Anet A8 (2004) display to a MKS GEN L?
I've tried direct connection with re-wiring, and see white squares there, but I'm only able to see white squares on the screen as on screenshot:
The code that is currently used for the display :
#define MOTHERBOARD BOARD_MKS_GEN_L
Pins were left as they were in config file.
Also I've tried replacing them with this numbering (which comes from MKS spec):
35 16 25 29 5V
37 17 23 27 GND
Are you aware that the default Anet A8 (ZONESTAR_LCD in Marlin firmware) has no SD card slot, nor does the MKS GEN L, so you would either need to get another display with SD card slot or get an external SD card reader. Unless you print through a printer server (e.g. like OctoPrint), having an SD card reader is a must have.
I've got the Anet A8 display working on a RAMPS 1.6 (which basically works exactly the same as a RAMPS 1.4 board). Note that at first connection I got exactly the same display when I connected the LCD to the EXP1 and EXP 2 headers using the "smart adapter".
To get the Anet A8 display working on a MKS GEN L (which is basically a RAMPS board as the pin layout of the RAMPS configuration are used in the firmware of the MKS GEN L) you need to forget about the EXP1 and EXP2 headers and the "smart adapter" for the Anet A8 display. Instead you need to connect the Anet A8 display to the AUX2 header. The only thing you would have to do (from the hardware side) is to switch the cables that are connected to the pin 1 and pin 2. I used Dupont connectors and cables. Pin 1 on AUX2 is VCC and pin 2 on AUX2 is GND, this is reversed on the Anet A8 display.
From the software side you need to set the following constants:
#define ULTRA_LCD // Character based
Please note that in the photo you still see the "smart adapter" with flat ribbon cables, but they are not connected to a screen, the reason for them being there is I also tested the full graphic discount controller in a previous session. The Anet A8 display is connected to the flat ribbon cable on AUX2 just above the top-left most stepper driver.
At the time of writing and the use of an older Marlin version, this required to set
#define ULTRA_LCD. In Marlin 1.1.9 you do not need to set
#define ULTRA_LCDexplicitly, this is now intrinsically set by
#define ZONESTAR_LCD. To elaborate on this, the
#define ZONESTAR_LCDsets the constant
#define ULTIPANELwhich sets constant