This allows to fully use the cheap LCD12864 from RepRap Discount as an alternative display for your Anet A8 printer.
For this to work you need to use the SkyNet3D port of the Marlin firmware. You can get this from the Facebook Support Page as package together with guides on how to setup sensors and stuff. You may also just get the current development version from the GitHub repository.
Disclaimer This "Thing" is meant for people which basically need the raw information and can handle the remaining stuff themselves. You are using this informations on your own risk. I am not responsible if your hardware breaks or your printer suddenly makes or is toast. If you need help with SkyNet3D or Marlin refer to original support!
I added some images of my working prototype. They are just to proof that it works and give an overview on how it was done. I may add more informations later on.
Until now there was only supported for the Anet A6 LCD12864 version of the full graphics display available in SkyNet3D. Afaik this is the first guide to get the LCD 12864 RepRap Discount Display controller working with the original Anet A8 board.
Creating an adapter wiring is actually easy!
Using patch cables:
A quick and easy way for people which don't want to cut their ribbon cables is to use ten breadboard "patch cables" (female to male) and stick the female part into the RepRap Connectors and the male part into the connectors of the cables. Garry did this here and I think that is a really good idea and very easy to do if you have some of those available.
Another way to do this is cutting the two ribbon 10 wire cables which usually come with the RepRap Discount Display. Splicing them and reconnect them using the information provided below. I was soldering them to some connectors which also keeps the cable spread out nicely."
There is a free pin with this setup. I use it for my 3D-Touch sensor setup. I made the adapter so that it is fully compatible with the instructions from that description. I am happy to tell you that this setup also preserves the buzzer of the display.
The SD card slot on the display:
The SD card slot on the display is not useable (the one on the board still is). There may be the possibility to use it.
Hints (I did not test this): You need to wire all of the J3 wires and LCD:5 goes to EXP2:4 (instead of the Servo of BLTouch) this should be in the firmware LCD_SDSS = 27. You may also need/want to sacrifice the beeper and connect LCD:3 to EXP2:7 that would be the SD_DETECT_PIN = 28 in firmware.
Now for the adapter wiring itself!
It is not hard, just follow it wire by wire. It shows always originating
connector:pin from Anet A8 Board
connector:pin on the RepRap Display.
Counting is done from the "red marked wire", which is no. 1 of the 10 cables.
The J3 connector is normally not used on your board (besides for flashing firmware with a programmer).
The LCD port is the one which your stock LCD 2004 Controller is plugged into.
The original display and the Anet board are not modified. You can always switch back.
J3 Connector on Anet Board
The connections in () are not really needed and can be omitted (yes there is only one needed with the J3).
J3:1 > -
J3:2 > -
J3:3 > (EXP2:1)
J3:4 > -
J3:5 > (EXP2:2)
J3:6 > (EXP2:6)
J3:7 > EXP2:8
J3:8 > (EXP2:9)
J3:9 > -
J3:10 > -
LCD Connector on Anet Board
LCD:1 > EXP1:9
LCD:2 > EXP1:10
LCD:3 > (Optional for BLTouch/3D-Touch)
LCD:4 > EXP2:3
LCD:5 > EXP1:1
LCD:6 > EXP2:5
LCD:7 > EXP1:3
LCD:8 > EXP1:2
LCD:9 > EXP1:4
LCD:10 > EXP1:5
Modifications in the firmware
Update: I added a commit to the SkyNet3D Development repository which contains the changes as easy to use configuration option (experimental)
Changing the firmware manually can be done by editing the
pins_ANET_10.h file to address the right pins for this wiring.
// For RepRap Discount (with Anet Adapter wiring)
#define SERVO0_PIN 27 // free for BLTouch/3D-Touch
#define BEEPER_PIN 28
#define LCD_PINS_RS 30
#define LCD_PINS_ENABLE 29
#define LCD_PINS_D4 17
#define BEEPER_PIN 17
#define LCD_PINS_RS 27
#define LCD_PINS_ENABLE 28
#define LCD_PINS_D4 30
#define ST7920_DELAY_1 DELAY_0_NOP
#define ST7920_DELAY_2 DELAY_1_NOP
#define ST7920_DELAY_3 DELAY_2_NOP
To enable this display in the firmware you need to tell
Configuration.h to use it:
Have fun with the cheap controller and a nice and much easier to use printer!