diff --git a/README.md b/README.md new file mode 100644 index 0000000..1d6e0fb --- /dev/null +++ b/README.md @@ -0,0 +1,267 @@ +# 🎯 Neptune 4 Plus - Open4Neptune Configs + +Complete Klipper configuration for Elegoo Neptune 4 Plus with Cartographer 3D, optimized for both Original and Bambu Lab hotends. + +--- + +## 🚀 Quick Start + +### 1. Clone Repository + +```bash +cd ~/printer_data/config +git clone https://git.sky-net.it/nocci/open4neptune-new.git +``` + +### 2. Install Update Manager (Optional but Recommended!) + +Add to your `moonraker.conf`: + +```ini +[include open4neptune-new/moonraker/update_manager.cfg] +``` + +Restart Moonraker, then update directly from Mainsail/Fluidd UI! 🎉 + +### 3. Install Configs + +```bash +# Copy calibration macros +cp -r open4neptune-new/calibration/ ~/printer_data/config/ + +# Copy user settings (choose one): +cp open4neptune-new/user_settings_clean.cfg ~/printer_data/config/user_settings.cfg +``` + +### 4. Restart Klipper + +**Mainsail/Fluidd:** Machine → Restart Firmware + +--- + +## ✨ Features + +### 🔧 PRINT_START Macro +- ✅ Cartographer Z0 calibration +- ✅ Automatic bed mesh (adaptive) +- ✅ Nozzle cleaning (KNCM) +- ✅ Precise temperature control (±2°C) +- ✅ Smart homing (CG28) + +### 🎯 PRINT_END Macro +- ✅ Detailed user feedback +- ✅ Auto park position +- ✅ Disable motors & sensors +- ✅ Completion jingle (END_TUNE) + +### 📊 Calibration Suite +- `CALIBRATE_Z_OFFSET` - Cartographer Z0 +- `CALIBRATE_INPUT_SHAPER` - ADXL resonance +- `CALIBRATE_PRESSURE_ADVANCE` - PA tuning +- `CALIBRATE_FLOW_RATE` - Flow calibration +- `CALIBRATE_TEMPERATURE` - Temp tower +- `CALIBRATE_RETRACTION` - Retraction test +- `CALIBRATE_BED_MESH` - Bed mesh +- `CALIBRATION_FULL` - Complete suite (~2.5h) +- `CALIBRATION_QUICK` - Essential only (~30min) + +### 🎨 Orca Slicer Profiles +- ✅ 10 profiles for both hotends +- ✅ PLA, PETG, ABS, TPU, Carbon Fiber +- ✅ Optimized for 15 mm³/s (Original) & 23 mm³/s (Bambu) + +--- + +## 📁 Repository Structure + +``` +open4neptune-new/ +├── moonraker/ +│ ├── update_manager.cfg # Moonraker Update Manager config +│ └── README.md # Setup instructions +├── calibration/ +│ ├── CALIBRATION_GUIDE.md # Step-by-step guide +│ ├── calibration_macros.cfg # All calibration macros +│ └── test_patterns.cfg # Printable test patterns +├── orca-profiles/ +│ ├── Neptune4Plus-Original/ # 15 mm³/s hotend +│ ├── Neptune4Plus-Bambu/ # 23 mm³/s hotend +│ └── README.md # Profile documentation +├── user_settings_clean.cfg # Production-ready config +├── user_settings_optimized.cfg # Verbose config (with comments) +├── install.sh # Install/update script +├── CHANGES.md # Change log +├── CLEANUP_NOTES.md # Cleanup documentation +└── README.md # This file +``` + +--- + +## 🔧 Installation Options + +### Option A: Moonraker Update Manager (Recommended!) + +**One-time setup:** + +```bash +# 1. Clone repo +cd ~/printer_data/config +git clone https://git.sky-net.it/nocci/open4neptune-new.git + +# 2. Add to moonraker.conf +echo "[include open4neptune-new/moonraker/update_manager.cfg]" >> ~/printer_data/config/moonraker.conf + +# 3. Make install script executable +chmod +x ~/printer_data/config/open4neptune-new/install.sh + +# 4. Restart Moonraker +sudo systemctl restart moonraker +``` + +**Then:** Machine → Update Manager → "open4neptune-configs" → Update + +### Option B: Manual Installation + +```bash +cd ~/printer_data/config +git clone https://git.sky-net.it/nocci/open4neptune-new.git +cp -r open4neptune-new/calibration/ ~/printer_data/config/ +cp open4neptune-new/user_settings_clean.cfg ~/printer_data/config/user_settings.cfg +# Restart Klipper +``` + +--- + +## 🎯 Usage + +### In Slicer (Orca/PrusaSlicer/Cura): + +**Start Gcode:** +```gcode +PRINT_START EXTRUDER_TEMP=[nozzle_temperature] BED_TEMP=[bed_temperature] FILAMENT_TYPE=PLA +``` + +**End Gcode:** +```gcode +PRINT_END +``` + +### In Mainsail/Fluidd Console: + +```gcode +; Show calibration menu +CALIBRATION_MENU + +; Quick Z measurement +QUICK_TOUCH + +; Babysteps during print +BABYZ_PLUS ; Z +0.005mm +BABYZ_MINUS ; Z -0.005mm +``` + +--- + +## 📊 Orca Profile Installation + +1. Open Orca Slicer +2. File → Import → Import Config(s)... +3. Select profiles from `orca-profiles/` folder +4. Choose profile based on your hotend: + - **Original:** `Neptune4Plus-Original/*` + - **Bambu:** `Neptune4Plus-Bambu/*` + +--- + +## 🔍 Troubleshooting + +### Calibration Macros Not Found + +```bash +# Check if calibration folder exists +ls ~/printer_data/config/calibration/ + +# Check if included in printer.cfg +grep "calibration" ~/printer_data/config/printer.cfg +``` + +### Update Manager Not Showing + +```bash +# Check moonraker.conf +grep "open4neptune" ~/printer_data/config/moonraker.conf + +# Restart Moonraker +sudo systemctl restart moonraker + +# Check logs +journalctl -u moonraker -f +``` + +### PRINT_START Not Working + +```gcode +; Test in console +PRINT_START EXTRUDER_TEMP=200 BED_TEMP=60 + +; Check for errors in Klipper console +``` + +--- + +## 📖 Documentation + +- **CALIBRATION_GUIDE.md** - Complete calibration instructions +- **moonraker/README.md** - Update Manager setup +- **orca-profiles/README.md** - Orca profile guide +- **CHANGES.md** - Recent changes +- **CLEANUP_NOTES.md** - Cleanup documentation + +--- + +## 🎉 Features at a Glance + +| Feature | Status | Description | +|---------|--------|-------------| +| PRINT_START | ✅ | Cartographer Z0, bed mesh, nozzle clean | +| PRINT_END | ✅ | Auto park, motors off, completion jingle | +| Calibration Suite | ✅ | 7 calibration macros + test patterns | +| Moonraker Update | ✅ | One-click updates from Mainsail UI | +| Orca Profiles | ✅ | 10 profiles for 2 hotends | +| KNCM Integration | ✅ | Nozzle cleaning macros | +| Helper Macros | ✅ | QUICK_TOUCH, BABYZ_±, CALIBRATE_PROBE | + +--- + +## 🚨 Important Notes + +⚠️ **Always backup before updates:** +```bash +cp ~/printer_data/config/user_settings.cfg ~/printer_data/config/user_settings.cfg.backup-$(date +%Y%m%d) +``` + +⚠️ **After installing:** +1. Run `CALIBRATION_QUICK` for essential calibrations +2. Test with a simple print +3. Fine-tune Pressure Advance for your filament + +⚠️ **Carbon Fiber Filament:** +- Use **ONLY** with Bambu Lab hotend (steel nozzle) +- Will destroy brass nozzle! + +--- + +## 📞 Support + +- **Repo:** https://git.sky-net.it/nocci/open4neptune-new +- **Open4Neptune:** https://github.com/OpenNeptune3D/OpenNept4une +- **Klipper:** https://www.klipper3d.org/ +- **Cartographer:** https://cartographer3d.com/ + +--- + +**Created:** 2026-03-12 +**Printer:** Elegoo Neptune 4 Plus +**Probe:** Cartographer 3D +**Firmware:** Open4Neptune + Klipper +**Hotends:** Original (15 mm³/s) + Bambu Lab (23 mm³/s) diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..ec1816f --- /dev/null +++ b/install.sh @@ -0,0 +1,76 @@ +#!/bin/bash +# ============================================================================ +# INSTALL SCRIPT - Neptune 4 Plus Configs +# Runs automatically when updating via Moonraker Update Manager +# ============================================================================ + +set -e + +echo "==============================================" +echo " Neptune 4 Plus Config Update" +echo "==============================================" +echo "" + +# Get script directory +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +CONFIG_DIR="$HOME/printer_data/config" + +echo "Script directory: $SCRIPT_DIR" +echo "Config directory: $CONFIG_DIR" +echo "" + +# Check if calibration folder exists +if [ -d "$SCRIPT_DIR/calibration" ]; then + echo "✓ Found calibration folder" + echo " Copying to config directory..." + cp -r "$SCRIPT_DIR/calibration" "$CONFIG_DIR/" + echo " ✓ Calibration macros installed" +else + echo "✗ Calibration folder not found" +fi + +echo "" + +# Check if user_settings_clean.cfg exists +if [ -f "$SCRIPT_DIR/user_settings_clean.cfg" ]; then + echo "✓ Found user_settings_clean.cfg" + + # Only copy if user_settings.cfg doesn't exist or is old + if [ ! -f "$CONFIG_DIR/user_settings.cfg" ]; then + echo " Copying clean version..." + cp "$SCRIPT_DIR/user_settings_clean.cfg" "$CONFIG_DIR/user_settings.cfg" + echo " ✓ user_settings.cfg installed" + else + echo " ℹ user_settings.cfg already exists (keeping current)" + echo " To update manually:" + echo " cp $SCRIPT_DIR/user_settings_clean.cfg $CONFIG_DIR/user_settings.cfg" + fi +else + echo "✗ user_settings_clean.cfg not found" +fi + +echo "" + +# Check if orca-profiles folder exists +if [ -d "$SCRIPT_DIR/orca-profiles" ]; then + echo "✓ Found Orca profiles" + echo " Location: $SCRIPT_DIR/orca-profiles/" + echo " Import manually in Orca Slicer:" + echo " File → Import → Import Config(s)..." +else + echo "✗ Orca profiles folder not found" +fi + +echo "" +echo "==============================================" +echo " Installation Complete!" +echo "==============================================" +echo "" +echo "Next steps:" +echo " 1. Restart Klipper (Mainsail → Machine → Restart Firmware)" +echo " 2. Test macros in console:" +echo " - CALIBRATION_MENU" +echo " - PRINT_START EXTRUDER_TEMP=200 BED_TEMP=60" +echo "" +echo "Enjoy your updated configs! 🔥" +echo "" diff --git a/moonraker/README.md b/moonraker/README.md new file mode 100644 index 0000000..b3e56e7 --- /dev/null +++ b/moonraker/README.md @@ -0,0 +1,269 @@ +# 🔄 Moonraker Update Manager Setup + +## 🎯 What This Does + +Configures your Neptune 4 Plus configs to be **updatable directly from Mainsail/Fluidd UI**! + +After setup, you'll see: +- **"open4neptune-configs"** in Machine → Update Manager +- **Update button** when new commits are available +- **Automatic Klipper restart** after update +- **Install script** that copies new files + +--- + +## 📋 Installation + +### Step 1: Clone Repo to Config Directory + +```bash +cd ~/printer_data/config +git clone https://git.sky-net.it/nocci/open4neptune-new.git +``` + +### Step 2: Add Update Manager Config to Moonraker + +Edit your `moonraker.conf`: + +```bash +nano ~/printer_data/config/moonraker.conf +``` + +**Add at the end:** + +```ini +# Neptune 4 Plus Config Updates +[include open4neptune-new/moonraker/update_manager.cfg] +``` + +**Or copy the section directly:** + +```ini +[update_manager open4neptune-configs] +type: git_repo +path: ~/printer_data/config/open4neptune-new +origin: https://git.sky-net.it/nocci/open4neptune-new.git +install_script: install.sh +managed_services: klipper +primary_branch: main +allow_offline_updates: False +update_sensors: + /tmp/open4neptune-last-check +persisted_version: /tmp/open4neptune-version +needs_refresh: True +``` + +### Step 3: Make Install Script Executable + +```bash +chmod +x ~/printer_data/config/open4neptune-new/install.sh +``` + +### Step 4: Restart Moonraker + +**In Mainsail:** +- Machine → Restart Moonraker + +**Or via SSH:** +```bash +sudo systemctl restart moonraker +``` + +### Step 5: Verify Installation + +1. Open Mainsail/Fluidd +2. Go to **Machine** → **Update Manager** +3. You should see **"open4neptune-configs"** in the list +4. Status should show **"Up to date"** + +--- + +## 🚀 How to Use + +### When Updates Are Available: + +1. **Machine** → **Update Manager** +2. Find **"open4neptune-configs"** +3. Click **"Update"** button +4. Moonraker will: + - Pull latest commits from git + - Run `install.sh` script + - Restart Klipper automatically +5. **Done!** ✅ + +### What Gets Updated: + +- ✅ Calibration macros (`calibration/*.cfg`) +- ✅ PRINT_START / PRINT_END macros +- ✅ Cartographer configuration +- ✅ Helper macros (QUICK_TOUCH, BABYZ_±) +- ✅ Orca Slicer profiles (for manual import) + +### What Does NOT Get Auto-Updated: + +- ❌ Your current `user_settings.cfg` (to prevent overwriting customizations) +- ❌ Manual changes you made + +**To update user_settings.cfg manually:** +```bash +cd ~/printer_data/config +cp open4neptune-new/user_settings_clean.cfg user_settings.cfg +# Restart Klipper +``` + +--- + +## 🔧 Update Manager Options + +### Force Update Check + +```bash +# In Mainsail Console: +UPDATE_MANAGER refresh open4neptune-configs +``` + +### View Update Status + +```bash +# In Mainsail Console: +UPDATE_MANAGER status open4neptune-configs +``` + +### Manual Update via Console + +```bash +# In Mainsail Console: +UPDATE_MANAGER update open4neptune-configs +``` + +--- + +## 📊 Update Manager Configuration Explained + +```ini +[update_manager open4neptune-configs] +type: git_repo # Git repository type +path: ~/printer_data/config/open4neptune-new # Where repo is cloned +origin: https://git.sky-net.it/nocci/open4neptune-new.git # Git URL +install_script: install.sh # Script to run after update +managed_services: klipper # Restart Klipper after update +primary_branch: main # Track main branch +allow_offline_updates: False # Require internet for updates +update_sensors: # Track last check time + /tmp/open4neptune-last-check +persisted_version: # Store current version + /tmp/open4neptune-version +needs_refresh: True # Show refresh button +``` + +--- + +## 🛠️ Troubleshooting + +### Update Manager Not Showing + +**Check Moonraker logs:** +```bash +journalctl -u moonraker -f +``` + +**Verify config:** +```bash +# Check if include is in moonraker.conf +grep -A 10 "update_manager open4neptune" ~/printer_data/config/moonraker.conf +``` + +### Install Script Fails + +**Run manually to see errors:** +```bash +cd ~/printer_data/config/open4neptune-new +./install.sh +``` + +### Permission Issues + +**Fix permissions:** +```bash +chmod +x ~/printer_data/config/open4neptune-new/install.sh +chown -R $USER:$USER ~/printer_data/config/open4neptune-new +``` + +### Klipper Doesn't Restart + +**Check managed_services:** +```ini +managed_services: klipper +``` + +**Manual restart:** +```bash +sudo systemctl restart klipper +``` + +--- + +## 💡 Pro Tips + +### 1. Backup Before Updates + +```bash +cd ~/printer_data/config +cp user_settings.cfg user_settings.cfg.backup-$(date +%Y%m%d) +``` + +### 2. Check Changelog Before Updating + +In Mainsail Update Manager, click on the repo name to see recent commits. + +### 3. Test After Updates + +```gcode +; Test basic functionality +CALIBRATION_MENU +QUICK_TOUCH +PRINT_START EXTRUDER_TEMP=200 BED_TEMP=60 +``` + +### 4. Rollback if Needed + +```bash +cd ~/printer_data/config/open4neptune-new +git log --oneline # Find commit to revert to +git reset --hard +# Then restart Klipper +``` + +--- + +## 📁 File Structure + +``` +open4neptune-new/ +├── moonraker/ +│ └── update_manager.cfg # Moonraker config +├── calibration/ # Calibration macros +├── orca-profiles/ # Orca Slicer profiles +├── user_settings_clean.cfg # Clean config (production) +├── user_settings_optimized.cfg # Verbose config (with comments) +├── install.sh # Install/update script +└── README.md # Documentation +``` + +--- + +## 🎉 Benefits + +✅ **One-click updates** from Mainsail/Fluidd UI +✅ **Automatic Klipper restart** after update +✅ **Safe** - doesn't overwrite your customizations +✅ **Transparent** - see what changed in commit log +✅ **Rollback** possible if issues occur +✅ **Professional** - like official Klipper plugins + +--- + +**Created:** 2026-03-12 +**For:** Elegoo Neptune 4 Plus with Cartographer 3D +**Firmware:** Open4Neptune + Klipper + Moonraker +**UI:** Mainsail / Fluidd diff --git a/moonraker/update_manager.cfg b/moonraker/update_manager.cfg new file mode 100644 index 0000000..a7c7b4c --- /dev/null +++ b/moonraker/update_manager.cfg @@ -0,0 +1,19 @@ +# ============================================================================ +# MOONRAKER UPDATE MANAGER - Neptune 4 Plus Configs +# ============================================================================ +# This file configures Moonraker to track the open4neptune-new repository +# and allow updates directly from Mainsail/Fluidd UI +# ============================================================================ + +[update_manager open4neptune-configs] +type: git_repo +path: ~/printer_data/config/open4neptune-new +origin: https://git.sky-net.it/nocci/open4neptune-new.git +install_script: install.sh +managed_services: klipper +primary_branch: main +allow_offline_updates: False +update_sensors: + /tmp/open4neptune-last-check +persisted_version: /tmp/open4neptune-version +needs_refresh: True