Base printer config file for Klipper (based on the original code from jerryngm). Use at your own risk!! Please read the comments in the file, you will need to calibrate multiple things specially the heater PID for the hotend and bed.
✔️ X Y Z E Steppers and Endstops
✔️ Heaters and Fans
✔️ Filament sensor
✔️ Klipper's Pressure Advance
✔️ Klipper's Input Sharper
The Elegoo Neptune 3 printer uses a proprietary board called ZNP Robin Nano_DW V2.1, but, according to the official Marlin source code from Elegoo this board is based on the STM32F401 chipset and has the exact same pinout of the MKS Robin E3 V2 board.
So, just use the following config in make menuconfig:
- Micro-controller Architecture (STMicroelectronics STM32)
- Processor model (STM32F401)
- Bootloader offset (32KiB bootloader)
- Communication interface (Serial (on USART1 PA10/PA9))
Once compiled, copy klipper.bin to an SD card (root folder) then rename it to ZNP_ROBIN_NANO.bin, insert it to your Neptune then switch on. You can remove the stock screen, it will become useless since it doesn't work with Klipper.
You can revert back to original firmware by placing the original firmware bin file to the SD card.
-
First, compile and install the Klipper firmware according to the configuration above and then connect the printer to a Klipper machine via USB. You can completely remove the screen since it is useless with Klipper.
-
Calibrate the probe offset (PROBE_CALIBRATE), following the instructions here: https://www.klipper3d.org/Bed_Level.html
-
Do a PID calibration for the extruder heater and the bed, following the instructions here: https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings. For my setup, I configured for PLA using the following commands:
PID_CALIBRATE HEATER=extruder TARGET=200
PID_CALIBRATE HEATER=heater_bed TARGET=60
-
Calibrate the extruder rotation_distance (E-Steps): https://www.klipper3d.org/Rotation_Distance.html#calibrating-rotation_distance-on-extruders
-
Run a heightmap calibration. If something goes wrong, maybe you need to align your X gantry. Worse case, you can increase the horizontal_move_z under bed_mesh if the probe keeps bumping on the bed during calibration.
-
For Input Shaper you can use an ADXL345 accelerometer. It is quite simple to attach it to the bed or the hotend and run the resonance tuning. For more details read the official documentation.
-
To attach the ADXL345, I simply used a set of M4 nylon screw/nut/washer (used nylon to avoid any kind of short) and I lock it into one of the PEI sheet holes on the handle and on one right screw of the hotend cover like the following pictures.
-
For each position just run the SHAPER_CALIBRATE AXIS=X/Y.
-
- For Pressure Advance just follow the official documentation and use the configuration for long bowden extruders.