skillfed

pymammotion

pymammotion v0.8.13 101.2K downloads/30d#12,954 on PyPI
Copyleft license GPL-3.0 Active released

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 on this page — 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

pymammotion on PyPI

pip

pip install pymammotion

uv

uv add pymammotion

poetry

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 the current Python release (>=3.13)
Install friction low — pure-Python wheel
Runtime dependencies 21 — aiohttp, aiomqtt, alibabacloud-apigateway-util, alibabacloud-iot-api-gateway, betterproto2, bleak-retry-connector, bleak, crcmod, cryptography, mashumaro, numpy, orjson, pillow, protobuf, pyjwt, pyrsistent, python-dotenv, sdp-transform, shapely, webrtc-models, websockets
Maintenance actively maintained — 1 days since the last release
First released
Downloads 101,214/month — #12,954 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pymammotion-0.8.13-py3-none-any.whl

Tags

mammotion mower control apiluba yuka robot lawn mowermqtt bluetooth device controlrobotic mower automationmammotion home assistantlawn mower python apiiot device integration
iot-device-controlmqtt-bluetoothhome-automation

More Internet packages