-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Daniel Heinen edited this page Mar 27, 2026
·
6 revisions
Welcome to the ankerctl wiki. ankerctl is a Go reimplementation of ankermake-m5-protocol -- a CLI and web UI for monitoring, controlling, and interfacing with AnkerMake M5 3D printers.
- Security -- Strict type system, no dynamic eval, compiled binary
- Performance -- Single binary, fast startup, low memory footprint
- Deployment -- ~50 MB Docker image (vs ~300 MB Python), no runtime dependencies except ffmpeg
- Concurrency -- Native goroutines for MQTT, PPPP, and WebSocket streams
- Installation and Configuration -- Docker, binary, and source installation; printer setup; API key; environment variables
- Architecture -- Package layering, service framework, web layer, Python source mapping
- Protocol Details -- MQTT, PPPP, and crypto protocol documentation
- API Reference -- Complete REST and WebSocket endpoint reference
- Development Guide -- Build commands, git workflow, mandates, contributing
- Migration Status -- 16-phase migration plan progress and open items
- Troubleshooting -- Common problems and their solutions
Download the latest release from Releases (v0.9.24+), make it executable, and run:
chmod +x ankerctl-linux-amd64
./ankerctl-linux-amd64 webserver --listen 0.0.0.0:4470docker run -d \
--name ankerctl \
--network host \
-v ~/.ankerctl:/root/.ankerctl \
-e ANKERCTL_HOST=0.0.0.0 \
ghcr.io/django1982/ankerctl:latestgit clone https://github.com/Django1982/ankerctl_go_remake.git
cd ankerctl_go_remake
# Download vendor assets (Bootstrap, Chart.js etc.) — required before building!
# Linux/macOS:
bash scripts/prepare-web-vendor.sh
# Windows (PowerShell):
# .\scripts\prepare-web-vendor.ps1
go build -o ankerctl ./cmd/ankerctl/
./ankerctl webserver --listen 0.0.0.0:4470Note: Without the vendor script the web UI will be a blank page. The script downloads frontend vendor libraries from CDN and embeds them into the binary via
//go:embed.
Navigate to http://localhost:4470 and log in with your AnkerMake email and password.