Skip to content

Transform your Neptune 4 3D printer with OpenNept4une, a collection of scripts designed to replace the manufacturer's software, reverting to the original open-source projects for enhanced performance, reliability, and features.

License

Notifications You must be signed in to change notification settings

Novus4K/OpenNept4une

 
 

Repository files navigation

OpenNept4une Logo

OpenNept4une

De-Elegoo-izing the Neptune 4 Series 3D Printers

NOTE: The Touch-Screen Display Service is in Beta (Most functions work and recieves frequent code updates). An alternative until the service is completed is the mobileraker phone app

LED’s, ADXL & WiFi Working on all Variants

Credits:

Image Features

  • Armbian 24.02.0-trunk Bookworm with Linux 6.1.67-current-rockchip64 (Credit)
  • Elegoo Services Removed (No Z-Axis Issues)
  • KAMP configured and installed
  • Bed Leveling Macros
  • Axis_Twist_Comp_Tune - Macro (Klipper Docs)
  • PID Calibration Macros
  • Easy WiFi config
  • Axis Twist Compensation Configured
  • Working segmented bed heaters (N4Pro)
  • Armbian packages updated (as of Dec 2023)
  • No need for Elegoo Firmware Updates (Updated in Fluidd GUI or Kiauh)
  • Crowsnest Current (Main) w/ ustreamer
  • Orca Slicer Profiles Provided
  • Simplified printer.cfg
  • Corrected instructions for Flashing v0.12 Klipper MCU Firmware
  • Firmware Retraction configured
  • E & Z Steppers configured for 32 microsteps
  • X & Y Steppers at 16 microsteps with Interpolation and stealthChop enabled
  • SPI ADXL345 & Mellow Fly-ADXL345 USB Accelerometer configuration included
  • Support for the Toush-Screen Display

Install Procedure - Re-flash eMMC with Latest OpenNept4une Release Image

Overview:

  1. Determine the stepper motor current and identify the PCB version (applicable only to N4 & Pro models)
  2. Flash your eMMC with the latest OpenNept4une release image
  3. Connect your printer to your network (ethernet)
  4. Update third-party modules in Kiauh / Fluidd or Mailsail
  5. Run the OpenNept4une script and select: 0ption 1) Install the latest OpenNept4une Printer.cfg (Select y for all prompts)
  6. After reboot re-run the OpenNept4une script and select: Option 4) Update MCU & (Virtual) MCU RPi Firmware (Select All but skip Pico for now)

Preparation (N4 & N4 Pro Models Only: If Plus or Max skip to - Requirements for Flashing the Image):

During the setup, you'll be asked for two key details: the current for the stepper motors and the PCB version, specific to N4 and N4 Pro models only. Be aware that these two models come with various stepper motors and PCB versions. Caution: Incorrectly setting the motor current can cause irreversible damage, so verify your selections carefully.

Determining Stepper Motor Current: Choose one of these methods to determine your motor's current:

  1. Serial Number: Refer to the barcode on your printer. Models before July 2023 (Neptune 4) or June 2023 (Neptune 4 Pro) use 0.8A steppers; later models use 1.2A steppers.

Serial Number Info

  1. Printer.cfg File: Look in the "TMC UART configuration" section of the printer.cfg file that came with your printer. The run_current for stepper_x and stepper_y will show "0.8" or "1.0 to 1.2".

  2. Stepper Inscription: Check the inscription on the X/Y stepper motors. "BJ42D15-26V77" indicates 0.8A, and "BJ42D22-53V04" indicates 1.2A.

Stepper Model No

Determining the PCB Version:

When you access the eMMC, note the PCB / Main-board's version number, which will be either V1.0 or V1.1.

Version 1.1

Requirements for Flashing the Image:

  • Makerbase MKS EMMC-ADAPTER V2 USB 3.0 Reader For MKS EMMC Module: AliExpress
  • Alternatively, a spare eMMC & eMMC > microSD adapter: AliExpress

Installation:

  • See the Releases section for the latest pre-configured OpenNept4une eMMC Image. Flash with balenaEtcher or dd.
  • Recommended to Back-Up original eMMC beforehand.
  • Run the following startup scripts with Ethernet connected (as user mks)

Printer Terminal Access Options:

Terminal / Shell access via SSH (Requires ethernet connection) -

ssh mks@printer_ip
Password = makerbase

PuTTY / Serial terminal access (Without Ethernet) -

Connect N4P USB-C port to PC Then connect via Serial COM8 (yours will be different) set baudrate to 1500000

User: mks
Pass: makerbase

Configure Wi-Fi (skip this if the printer is connected with an ethernet cable)

  1. Access Network Manager: Use the following command in the terminal to open the network manager:
sudo nmtui
  1. Connect to Wi-Fi:
  • In the network manager, navigate to Activate a connection.
  • Select your Wi-Fi network and enter the necessary credentials to connect.

Remember to save your settings before exiting any configuration menus.

Run Kiauh for the latest Updates

~/kiauh/kiauh.sh
  • In the Kiauh menu, select Option (2), type key (a), and press ENTER.
  • Once complete quit out of Kiauh.

Install latest OpenNept4une Printer.cfg & Update MCU & (Virtual) MCU RPi Firmware

cd ~/OpenNept4une/ && git fetch --all && git reset --hard origin/main && git clean -fd
~/OpenNept4une/OpenNept4une.sh
  • Perform Option (1): Install the latest OpenNept4une Printer.cfg, When prompted answer (yes) to updating other configurations (KAMP / moonraker etc).
  • Once you have rebooted re-run:
~/OpenNept4une/OpenNept4une.sh
  • Then Perform Option (4): Update MCU & (Virtual) MCU RPi Firmware (Select All but Skip Pico for now)

General Configuration Instructions

Follow these steps to configure the basic settings on your Neptune 4 printer's custom Armbian image:

Configure Correct Timezone

  1. Access Armbian Configuration: Open the terminal and enter the following command:
sudo armbian-config
  1. Set Timezone:
  • Navigate to Personal.
  • Then select Timezone.
  • Choose and set your correct timezone.

OrcaSlicer Configs

  • Download the latest Official Release OrcaSlicer
  • Configure Orca defaults for your machines model before import.
  • Check/confirm Bambu Network Engine install
  • Download the latest OrcaSlicer Profiles
  • In OrcaSlicer click [File > Import > Import Configs...]

Fluidd / Klipper Calibration:

Config / Tuning Macros below (pre-configured in Fluidd BedTune/Level macros will begin after heating finishes. Do the Probe Z Offset cold):

BED_LEVEL_SCREWS_TUNE
Klipper Docs (Rerun macro after each round of corrections)

CALIBRATE_PROBE_Z_OFFSET
(This test should be done cold. Paper Thickness Test. When you determine a value, click Accept and run a SAVE_CONFIG command after)

AUTO_FULL_BED_LEVEL
(Not required as using dynamic meshes before print, but useful to see how level the whole bed is - Click Save Config & Restart after)

Note:

PID_TUNE_EXTRUDER

PID_TUNE_INNER_BED

PID_TUNE_OUTER_BED (N4Pro only)

Pressure advance value will need your own data.

Input shaping values will also need your own data. (SPI ADXL345 & Mellow Fly-ADXL345 Pre Configured for tuning)

After editing configs or calibrating, save in the fluidd interface, then in fluidd select the top right menu > Host > reboot. Avoid direct power cycles; this ensures changes are saved from RAM to eMMC.

I suggest adjusting the Flow Rate by following the instructions in this link. While the other tubing techniques can be beneficial, I advise against doing pressure advance tuning and control in this context. It may be necessary to turn off firmware retraction when conducting retraction tests during the tuning process. OrcaSlicer Fine Tuning

Slicer Settings

(If using the provided OrcaSlicer profiles you can skip this)

Displaying Thumbnails on the Original Display

All Slicers that generate thumbnails that moonraker is capable of understanding should work. The display uses 160x160 pixels to display the thumbnail, so your generated thumbnails should be at least that size.

Orcaslicer

START CODE

NOTE all text including PRINT_START and after must be on one line

;Nozzle diameter = [nozzle_diameter]
;Filament type = [filament_type]
;Filament name = [filament_vendor] 
;Filament weight = [filament_density]
PRINT_START BED_TEMP=[hot_plate_temp_initial_layer] EXTRUDER_TEMP=[nozzle_temperature_initial_layer] AREA_START={first_layer_print_min[0]},{first_layer_print_min[1]} AREA_END={first_layer_print_max[0]},{first_layer_print_max[1]}

PRINT END CODE

PRINT_END

Prusaslicer

START CODE

NOTE all text including PRINT_START and after must be on one line

;Nozzle diameter = [nozzle_diameter]
;Filament type = [filament_type]
;Filament name = [filament_vendor]
;Filament weight = [filament_density]
PRINT_START BED_TEMP=[first_layer_bed_temperature] EXTRUDER_TEMP=[first_layer_temperature] AREA_START={first_layer_print_min[0]},{first_layer_print_min[1]} AREA_END={first_layer_print_max[0]},{first_layer_print_max[1]}

PRINT END CODE

PRINT_END

About

Transform your Neptune 4 3D printer with OpenNept4une, a collection of scripts designed to replace the manufacturer's software, reverting to the original open-source projects for enhanced performance, reliability, and features.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.3%
  • Shell 30.7%