--- id: pymammotion version: "0.8.13" license: GPL-3.0 license_treatment: copyleft maintenance: active --- # pymammotion License: copyleft · Maintenance: active · Downloads: 101.2K/mo ## What it is and what it does PyMammotion is a Python library for interacting with Mammotion robotic lawn mowers through multiple transport layers: MQTT, cloud APIs, and Bluetooth. It abstracts the device communication protocol and provides a programmatic interface for control and telemetry, making it suitable for automation frameworks like Home Assistant or custom monitoring scripts. The library is under active development (latest release 2026-08-13) and carries a significant warning: Mammotion's Terms of Service explicitly prohibit unofficial API access, and using this library may result in permanent account or device bans. The codebase depends on 21 runtime packages including protobuf serialization, cryptographic signing (PyJWT, cryptography), async I/O (aiohttp, websockets, aiomqtt), and geometric computation (shapely, numpy). It requires Python 3.13 or later. Use it for: - Integrate Mammotion mowers into Home Assistant for centralized lawn care automation and scheduling - Build custom monitoring dashboards that pull telemetry and status from multiple mowers via MQTT - Automate mower commands (start, stop, dock) based on weather, time, or external triggers - Develop IoT applications that coordinate mower operation with other smart home devices - Create diagnostic or fleet-management tools for users with multiple Mammotion devices ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. PyMammotion provides a Python API to control and monitor Mammotion robotic mowers (Luba, Yuka, Spino) via MQTT, cloud, and Bluetooth connections. Yes, if you own a Mammotion mower and accept the Terms of Service risk. The library is actively maintained, has low install friction, and integrates well with Home Assistant. No, if you require GPL-3.0 compatibility guarantees or need support for older Python versions. The copyleft license and account-ban warning are non-negotiable constraints for some users. ## Install pip install pymammotion uv add pymammotion poetry add pymammotion ## Installing pymammotion Before you install: Low install friction with a pure Python wheel. Active maintenance as of 1 day ago. Requires Python 3.13 or later, which narrows compatibility to recent environments. The 21 runtime dependencies are substantial but mostly established packages (aiohttp, websockets, protobuf, cryptography). License in practice: Licensed under GPL-3.0 (copyleft). Any application using PyMammotion must also be distributed under GPL-3.0 or a compatible license; proprietary or closed-source projects cannot use it without relicensing. Quickstart: pip install pymammotion import pymammotion # Initialize client with MQTT or Bluetooth connection # See GitHub wiki for device-specific setup and examples Requires Python 3.13 or later. Mammotion's Terms of Service prohibit unofficial API access; using this library risks permanent account ban. Verify before relying: - Exact scope of supported Mammotion device models and firmware versions - Whether MQTT, cloud, and Bluetooth modes are equally mature or if some are experimental - Real-world stability and reliability reports from active users - Performance and latency characteristics for remote control operations ## Package facts - License: GPL-3.0 (copyleft) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 101.2K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags mammotion mower control api, luba yuka robot lawn mower, mqtt bluetooth device control, robotic mower automation, mammotion home assistant, lawn mower python api, iot device integration, iot-device-control, mqtt-bluetooth, home-automation [View on SkillFed](https://skillfed.io/packages/pymammotion) · [View on PyPI](https://pypi.org/project/pymammotion/)