Configuring LCD2004 5 Button (from Anet/Melzi/Zonestar etc.) with Ramps 1.4

Hi everyone,

so in my bumbling about trying to learn and figure out firmware I have hit a roadblock and cant get any further:

Setup: I have an Anet A8 and recently swapped out the Anet (or Melzi whatever you want to call it) for a Ramps 1.4 / Arduino MEGA and was able to configure everything using the Config. Tool to get it moving and whatnot. I have the RAMP Smart adapter for the LCD with the EXT 1 and EXT 1 connections.

The Problem: the Anet A8 has the 5 Button LCD 2004 display. Directly hooking up the single cable from EXT1 from the LCD adapter did nothing of course...I learned that the Anet/Melzi/Zonestar have the physical power and GND pins switched, so I separated these two wires from the ribbon cable, cut them, and switched them. Viola, the thing lights up now, however, it displays only 2 white bars. I have been trying with both the Config Toll 0.92.9 as well as with the Dev. 1.0.0 version to try to figure out how to point the pins on the Ramps to the correct functions on the LCD display but with no luck.

With the 0.92.9 I was able to compile the firmware (after selecting Analog Pin 1) with selecting the Zonestar P802 LCD. Flashed the printer and no change in LCD, just two white lines. I checked the configuration.h, noted that the FEATURE_CONTROLLER 24 was entered (I believe that is the correct LCD). Tried going through the pins.h and couldn't figure out the pins configuration

With the 1.0.0dev I was unable to compile the firmware, and got back the error: unknown board - LCD combination. Additionally I was unsure if I need to configure the display.h AND the ui.h?? In the documentation from Repetier I couldn't understand also how to figure out the pins which I would need for the LCD (RW, RS, Enable etc...)

Since I run my printer with Repetier Server with a Rasppi and a touchscreen mounted on the side table I don't really need the buttons on the LCD but it would be nice if it could at least display this is a good exercise for me to learn how to customize Repetier. If anyone could help point me in the right direction I would appreciate it!

Best regards,



  • You can connect your lcd to Aux 2 extension (Caution power and ground need to be reversed)
    In your ui.h find CONTROLLER_ZONESTAR and replace your lcd pins with:

    #define UI_DISPLAY_ENABLE_PIN    44   
    #define UI_DISPLAY_RS_PIN        64  
    #define UI_DISPLAY_RW_PIN        -1
    #define UI_DISPLAY_D4_PIN        63
    #define UI_DISPLAY_D5_PIN        40
    #define UI_DISPLAY_D6_PIN        42
    #define UI_DISPLAY_D7_PIN        65

    adc keypad is using pin A12. So in configuration.h set ADC_KEYPAD_PIN 14(real pin A12 I think repetier equiv is 14)

    No adapter required works for Anet A8/melzi/2004lcd with keypad.
  • I just came across this issue myself and did not want to order a new LCD since I had a spare A8 LCD.  It took me a bit to get it working in 1.0.3, but it now works quite well.

    Here is what I did:
    For the wire, I am plugging into EXP1 BUT I had to reverse the entire plug on one side then peel away the power wires and reverse them.  It took a bit to find the correct wire for the keypad, but its either #2 or #9 depending on what direction you're looking at it.  It's the second from the end on the opposite side as the power.  On the RAMPS board it is pin 35.  I removed that from the plug altogether and strung it over to pin 11 in  AUX2 and set ADC_KEYPAD_PIN to 11 in Configuration.h  Works perfect as long as your wires are put in the plug correctly.

    In Display.h find CONTROLLER_ZONESTAR and add this:

    #elif MOTHERBOARD == 33 // RAMPS

    #define UI_DISPLAY_ENABLE_PIN  16
    #define UI_DISPLAY_RS_PIN      25
    #define UI_DISPLAY_RW_PIN      -1
    #define UI_DISPLAY_D4_PIN      27
    #define UI_DISPLAY_D5_PIN      23
    #define UI_DISPLAY_D6_PIN      17
    #define UI_DISPLAY_D7_PIN      37

    Here are the pinouts for both the EXP1 plug on the RAMPS LCD adapter and the LCD2004.  You can see how they are opposite and then the power is reversed. 

    Both of these are with the notch facing up.  You can see how they are opposite as apposed to the standard grey cable that comes with the LCDs.  The black wire on the right is in pin 10 of the plug with nothing between it and the grey.  That is where the white should be but I broke it off to go to pin 11 in the AUX2 plug of the RAMPS board.

Sign In or Register to comment.