Add Moonraker Update Manager integration

🎉 One-click updates from Mainsail/Fluidd UI!

New files:
- moonraker/update_manager.cfg - Moonraker config
- moonraker/README.md - Setup instructions
- install.sh - Auto-install/update script
- README.md - Complete project documentation

Features:
 Update Manager entry in Mainsail/Fluidd
 One-click updates from web UI
 Automatic Klipper restart after update
 Safe install (doesn't overwrite custom user_settings.cfg)
 Installs calibration macros automatically
 Professional update workflow

Setup:
1. Add [include open4neptune-new/moonraker/update_manager.cfg] to moonraker.conf
2. Restart Moonraker
3. Machine → Update Manager → open4neptune-configs → Update

Like official Klipper plugins! 🔥
This commit is contained in:
root 2026-03-12 14:38:40 +00:00
parent 862b062ecb
commit 8dba9d6b55
4 changed files with 631 additions and 0 deletions

267
README.md Normal file
View file

@ -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)

76
install.sh Executable file
View file

@ -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 ""

269
moonraker/README.md Normal file
View file

@ -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 <commit-hash>
# 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

View file

@ -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