Skip to content

danielcherubini/elegoo-homeassistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

397 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Elegoo Printers for Home Assistant

hacs_badge GitHub stars GitHub issues

Bring your Elegoo 3D printers into Home Assistant! This integration allows you to monitor status, view live print thumbnails, and control your printers directly from your smart home dashboard.

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

image

Index


✨ Features

  • Broad Printer Support: Designed for the ever-expanding lineup of Elegoo resin and FDM printers.
  • Comprehensive Sensor Data: Exposes a wide range of printer attributes and real-time status sensors.
  • Live Camera: Monitor your print from anywhere.
  • Print Thumbnails: See an image of what you are currently printing directly in Home Assistant.
  • Direct Printer Control: Stop and pause prints, control temperatures, and adjust speeds.
  • Local Proxy Server: An optional built-in proxy to bypass printer connection limits.
  • Automation Blueprints: Includes a ready-to-use blueprint for print progress notifications.

🛰️ Local Proxy Server

Modern Elegoo printers often have a built-in limit of 4 simultaneous connections. Since the video stream consumes one of these by itself, users can easily hit this limit.

The optional proxy server acts as a single gateway, routing all commands and the video stream through one stable connection, effectively bypassing these limits.

➡️ Read more and join the discussion here


🖨️ Supported Printers

Elegoo releases new models frequently, and this integration is designed to be as "future-proof" as possible. Instead of worrying about specific version numbers, look at the Protocol your printer uses.

Don't see your specific model? Try it anyway! If your printer uses the SDCP protocol (which almost all modern networked Elegoo printers do), there is a very high chance it will work perfectly. This list is non-exhaustive and grows with the community.

✅ Modern Printers (SDCP over WebSocket)

Most newer models utilize WebSockets for communication. This integration offers full support for:

  • Mars Range (e.g., Mars 5, 5 Ultra)
  • Saturn Range (e.g., Saturn 4, 4 Ultra)
  • Centauri Range (e.g., Centauri Carbon)

🧪 Legacy Printers (SDCP over MQTT)

Older networked models typically use MQTT. These are supported in Beta, meaning most features work, though some metadata (like start/end times or cover images) may be missing due to the limitations of the older protocol.

  • Saturn Range (e.g., Saturn 2, 3 Ultra)
  • Mars Range (e.g., Mars 3, 4 Ultra)
  • Jupiter Range

Known Limitations for MQTT:

  • Begin Time, End Time, and Cover Image sensors will show "Unknown."
  • Standard sensors (status, layers, temps, progress) function normally.

🆕 CC2 FDM Printers (LAN-Only Connection)

CC2 (Centauri Carbon 2) printers use an inverted MQTT architecture where the printer runs its own broker. This integration supports LOCAL network connections only.

Supported Models:

  • Centauri Carbon 2
  • Elegoo Cura (some models)

⚠️ CRITICAL: LAN-Only Mode Required

CC2 printers MUST be configured for LAN-Only mode:

  1. On your printer: Settings → Network → LAN Only Mode
  2. Enable LAN Only Mode
  3. Save and restart if prompted
  4. Ensure printer and Home Assistant are on the same network/subnet

Cloud mode is NOT supported. Cloud connectivity requires Elegoo's OAuth2 authentication and cloud relay services, which are not currently implemented. This integration connects directly to your printer over your local network only.

Network Requirements:

  • Printer and Home Assistant must be on the same network/VLAN/subnet
  • For containerized Home Assistant (Docker/Kubernetes): Use host networking or proper network bridging
  • Port 1883 (MQTT) must be accessible between HA and printer

See CC2 Protocol Documentation for technical details.


⚙️ Installation

The recommended way to install this integration is through the Home Assistant Community Store (HACS).

  1. In HACS, go to Integrations and click the "+" button.
  2. Search for "Elegoo Printers" and select it.
  3. Click "Download" and restart Home Assistant.

🔧 Configuration

  1. Go to Settings > Devices & Services.
  2. Click "Add Integration" and search for "Elegoo Printers".
  3. The integration will attempt to auto-discover printers on your network.
  4. If no printer is found, select "Configure manually" and enter your printer's IP address.

⚠️ Firmware v1.1.29 Bug Notice

Elegoo firmware v1.1.29 contains a bug preventing remote control of lights and temperatures while a print is in progress. This is a firmware limitation; if you require these features during prints, consider using v1.1.25 if available for your model.


📊 Entities

The integration provides a comprehensive set of entities including Live Camera, Print Thumbnails, Control Buttons (Stop/Pause/Resume), and a full suite of Sensors (Progress, Temps, Layers, Z-Height, etc.).

🤖 Automation Blueprints

Includes a blueprint for mobile notifications. Import it here.

🧵 Spoolman Integration

Compatible with Spoolman Home Assistant. See SPOOLMAN.md for setup.


❤️ Contributing

If you've tested a new model not mentioned here, or if you've found a way to improve MQTT support, please open an issue or a PR!

Development Setup

Want to contribute code or help debug printer protocols? See the Development Guide for detailed setup instructions covering:

  • Linux/macOS setup
  • Windows setup (with troubleshooting for common issues)
  • Dev Container setup (VS Code + Docker)
  • Running the debug script to capture printer data

About

A Integration for Home Assistant and Elegoo Printers using SDCP

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 14

Languages