Sen descrición

maziggy 49b9fb854b - Fixed bug in notification module where notifictions were sent although printer is offline hai 5 meses
.github b6a7dabbab Disbaled CI temp. hai 5 meses
backend 49b9fb854b - Fixed bug in notification module where notifictions were sent although printer is offline hai 5 meses
deploy a7319f0e70 Fix browser freeze on print completion with camera stream open hai 5 meses
docs 6571643a4c 1. Wiki links updated to http://wiki.bambuddy.cool: hai 5 meses
frontend e9193276a6 Summary of Fixes hai 5 meses
icons 07f4d4482f Moved documentation to it's own repository hai 5 meses
mockup 06bfaa3c74 Completely removed control page and all it's related code hai 5 meses
scripts 6de875582a Completely refactored k-profile module hai 5 meses
static e9193276a6 Summary of Fixes hai 5 meses
tests ff53e62ef8 Add comprehensive automated testing infrastructure hai 5 meses
._.DS_Store ef927985e4 Added filament spool fill levels to printer card hai 5 meses
.coverage ff53e62ef8 Add comprehensive automated testing infrastructure hai 5 meses
.dockerignore 83d8c4e865 Added Docker support hai 5 meses
.env.example 28a5e786e9 Added configurable logging; Major improvements and bugfixes hai 5 meses
.gitignore 34193c2d89 Uodated .gitignore hai 5 meses
.pre-commit-config.yaml 929c4c8cd6 - Fix total print hours calculation in set_total_hours to include all hai 5 meses
CHANGELOG.md 5e771b70c9 Release Notes for 0.1.5 hai 5 meses
Dockerfile 6cd9cb7033 Fixed docker build warnings hai 5 meses
Dockerfile.test 88bd020dc9 Improved Docker support; Added Docker test suite hai 5 meses
LICENSE 8a85147713 Initial commit hai 6 meses
PLAN.md 6d71261de7 Renaming app to Bambuddy hai 5 meses
README.md 40e31f4b3d Added Docker section to README hai 5 meses
build_docker.sh 6cd9cb7033 Fixed docker build warnings hai 5 meses
docker-compose.test.yml 88bd020dc9 Improved Docker support; Added Docker test suite hai 5 meses
docker-compose.yml 11a6bb282a Key Discovery hai 5 meses
pyproject.toml 58c98b1075 Added docker test suite hai 5 meses
requirements-dev.txt 58c98b1075 Added docker test suite hai 5 meses
requirements.txt 77a66ea867 Added system info page hai 5 meses
test_backend.sh ff53e62ef8 Add comprehensive automated testing infrastructure hai 5 meses
test_docker.sh 88bd020dc9 Improved Docker support; Added Docker test suite hai 5 meses
test_frontend.sh ff53e62ef8 Add comprehensive automated testing infrastructure hai 5 meses

README.md

Bambuddy Logo

Bambuddy

Self-hosted print archive and management system for Bambu Lab 3D printers

Release License Stars Issues Visitors

FeaturesScreenshotsQuick StartDocumentationContributing


Testers Needed! I only have X1C and H2D devices. Help make Bambuddy work with all Bambu Lab printers by reporting your experience!

Why Bambuddy?

  • Own your data — All print history stored locally, no cloud dependency
  • Works offline — Uses LAN Mode for direct printer communication
  • Full automation — Schedule prints, auto power-off, get notified when done
  • Multi-printer support — Manage your entire print farm from one interface

✨ Features

### 📦 Print Archive - Automatic 3MF archiving with metadata - 3D model preview (Three.js) - Duplicate detection & full-text search - Photo attachments & failure analysis - Re-print to any connected printer - Archive comparison (side-by-side diff) ### 📊 Monitoring & Stats - Real-time printer status via WebSocket - Live camera streaming (MJPEG) & snapshots - HMS error monitoring with history - Print success rates & trends - Filament usage tracking - Cost analytics & failure analysis - CSV/Excel export ### ⏰ Scheduling & Automation - Print queue with drag-and-drop - Scheduled prints (date/time) - Smart plug integration (Tasmota) - Energy consumption tracking - Auto power-on before print - Auto power-off after cooldown ### 📁 Projects - Group related prints (e.g., "Voron Build") - Track progress with target counts - Color-coded project badges - Assign archives via context menu ### 🔔 Notifications - WhatsApp, Telegram, Discord - Email, Pushover, ntfy - Custom webhooks - Quiet hours & daily digest - Customizable message templates ### 🔧 Integrations - [Spoolman](https://github.com/Donkie/Spoolman) filament sync - Bambu Cloud profile management - K-profiles (pressure advance) - External sidebar links - Webhooks & API keys ### 🛠️ Maintenance - Maintenance scheduling & tracking - Interval reminders (hours/days) - Print time accuracy stats - File manager for printer storage ### 🎛️ Printer Control - AMS/AMS-HT temperature & humidity monitoring - Chamber temperature & light control - Speed profiles & fan controls - AI detection modules (spaghetti, first layer) - Automated calibration (bed level, vibration) - Dual nozzle support

Plus: Dark/light theme • Mobile responsive • Keyboard shortcuts • Multi-language (EN/DE) • Auto updates • Database backup/restore • System info dashboard


📸 Screenshots

Click to expand screenshots

Printers
Real-time printer monitoring with AMS status

Archives
Print archive with 3D preview and project assignment

Projects
Group related prints into projects

Queue
Print scheduling and queue management

Statistics
Customizable statistics dashboard

Maintenance
Maintenance tracking per printer

Maintenance Settings
Configure maintenance types and intervals

Cloud Profiles
Bambu Cloud filament profiles

Cloud Profiles Edit
Edit filament preset settings

K-Profiles
Pressure advance (K-factor) profiles

K-Profiles Edit
Edit K-factor profile settings

Settings
General configuration and integrations

Smart Plugs
Smart plug control and energy monitoring

Notifications
Multi-provider notification system

API Keys
API keys and webhook endpoints


🚀 Quick Start

Requirements

  • Python 3.10+ (3.11/3.12 recommended)
  • Bambu Lab printer with LAN Mode enabled
  • Same local network as printer

Installation

Docker (Recommended)

git clone https://github.com/maziggy/bambuddy.git
cd bambuddy
docker compose up -d

Open http://localhost:8000 in your browser.

Docker Configuration & Commands **Environment Variables:** | Variable | Default | Description | |----------|---------|-------------| | `TZ` | `UTC` | Your timezone (e.g., `America/New_York`, `Europe/Berlin`) | | `DEBUG` | `false` | Enable debug logging | | `LOG_LEVEL` | `INFO` | Log level: `DEBUG`, `INFO`, `WARNING`, `ERROR` | **Data Persistence:** | Volume | Purpose | |--------|---------| | `bambuddy.db` | SQLite database with all your print data | | `archive/` | Archived 3MF files and thumbnails | | `logs/` | Application logs | **Updating:** ```bash cd bambuddy && git pull && docker compose up -d --build ``` **Useful Commands:** ```bash # View logs docker compose logs -f # Stop/Start docker compose down docker compose up -d # Shell access docker compose exec bambuddy /bin/bash ``` **Custom Port:** ```yaml ports: - "3000:8000" # Access on port 3000 ``` **Reverse Proxy (Nginx):** ```nginx server { listen 443 ssl http2; server_name bambuddy.yourdomain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; location / { proxy_pass http://localhost:8000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_read_timeout 86400; } } ``` > **Note:** WebSocket support is required for real-time printer updates. **Network Mode Host** (for easier printer discovery): ```yaml services: bambuddy: build: . network_mode: host ```

Manual Installation

# Clone and setup
git clone https://github.com/maziggy/bambuddy.git
cd bambuddy
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

# Run
uvicorn backend.app.main:app --host 0.0.0.0 --port 8000

Open http://localhost:8000 and add your printer!

Need detailed instructions? See the Installation Guide

Enabling LAN Mode

  1. On printer: SettingsNetworkLAN Mode
  2. Enable LAN Mode and note the Access Code
  3. Find IP address in network settings
  4. Find Serial Number in device info

📚 Documentation

Full documentation available at wiki.bambuddy.cool:


🖨️ Supported Printers

Series Models Status
H2 H2C, H2D, H2S ✅ Tested (H2D)
X1 X1, X1 Carbon ✅ Tested (X1C)
P1 P1P, P1S 🧪 Needs testing
A1 A1, A1 Mini 🧪 Needs testing

🛠️ Tech Stack

Component Technology
Backend Python, FastAPI, SQLAlchemy
Frontend React, TypeScript, Tailwind CSS
Database SQLite
3D Viewer Three.js
Communication MQTT (TLS), FTPS

🤝 Contributing

Contributions welcome! Here's how to help:

  1. Test — Report issues with your printer model
  2. Translate — Add new languages
  3. Code — Submit PRs for bugs or features
  4. Document — Improve wiki and guides

    # Development setup
    git clone https://github.com/maziggy/bambuddy.git
    cd bambuddy
    
    # Backend
    python3 -m venv venv && source venv/bin/activate
    pip install -r requirements.txt
    DEBUG=true uvicorn backend.app.main:app --reload
    
    # Frontend (separate terminal)
    cd frontend && npm install && npm run dev
    

See CONTRIBUTING.md for guidelines.


📄 License

MIT License — see LICENSE for details.


🙏 Acknowledgments

  • Bambu Lab for amazing printers
  • The reverse engineering community for protocol documentation
  • All testers and contributors

Made with ❤️ for the 3D printing community

Report BugRequest FeatureDocumentation