Skip to content
Daniel Heinen edited this page May 9, 2026 · 2 revisions

ankerctl Wiki

Welcome to the ankerctl wiki. ankerctl is a CLI and web UI for monitoring, controlling, and interfacing with AnkerMake M5 3D printers, written in Python (3.10+) using Flask. It is an open-source alternative to the proprietary AnkerMake / eufyMake Studio software, with full local LAN control, slicer integration, and raw protocol access.

This is the original Python implementation. A separate Go reimplementation exists at ankerctl_go_remake — both share the same web UI and feature set; pick whichever fits your deployment best.

Why ankerctl?

  • No vendor lock-in — talks to your printer locally over MQTT and PPPP without any cloud dependency once configured
  • Slicer integration — print directly from PrusaSlicer, OrcaSlicer, SuperSlicer, and Bambu Studio via the OctoPrint-compatible upload API
  • Full visibility — live MQTT events, video stream, print history, timelapse, bed-level heatmap
  • Home Assistant ready — native MQTT Discovery for sensors, light switch, and camera entity
  • Notifications — push print events to Discord, Telegram, Slack, email, and any other Apprise-supported target

Pages

Getting started

  • Installation — system requirements, Python install, Docker, eufyMake login.json
  • Quick Start — five-minute walkthrough from clone to first print
  • Configuration — environment variables, config file location, API key

Daily use

Deployment

  • Dockerdocker compose, host networking, UID/GID, HA addon
  • Firewall ufw — required UDP ports for PPPP

Reference / development

Quick install (Docker)

git clone https://github.com/Django1982/ankermake-m5-protocol.git
cd ankermake-m5-protocol
cp .env.example .env
docker compose up -d

Then open http://localhost:4470 and either upload your login.json or sign in with your AnkerMake email and password.

Note: Docker requires network_mode: host because PPPP uses asymmetric UDP. Linux hosts only.

Quick install (Python)

git clone https://github.com/Django1982/ankermake-m5-protocol.git
cd ankermake-m5-protocol
pip install -r requirements.txt
./ankerctl.py webserver run

See Installation for platform-specific details.

Quick links

Clone this wiki locally