This release is a pre-release and may not be stable for production use.
bambu-printer-manager
bambu-printer-manager is an all in one pure python wrapper for interacting with and managing Bambu Lab printers.
Documentation
All documentation for bambu-printer-manager can be found here.
DeepWiki is another good source.
Become a Sponsor
While caffiene and sleepness nights drive the delivery of this project, they unfortunately do not cover the financial expense necessary to further its development. Please consider becoming a bambu-printer-manager sponsor today!
Project Composition
bpm/
bambucommands.py # collection of constants mainly representing Bambu Lab `mqtt` request commands
bambuconfig.py # contains the `BambuConfig` class used for storing configuration data
bambuprinter.py # the main `bambu-printer-manager` class `BambuPrinter` lives here
bambuproject.py # provides `ActiveJobInfo` and `ProjectInfo` for tracking print job details
bambuspool.py # contains the `BambuSpool` class used for storing spool data
bambustate.py # contains the `BambuState` and `AMSUnitState` classes
bambutools.py # contains a collection of methods used as tools (mostly internal)
ftpsclient/
_client.py # internal class used for performing `FTPS` operations
Dependencies
Python 3.11+
* mkdocstrings, webcolors, and paho-mqtt install automatically as predefined dependencies
Installation
pip install bambu-printer-manager
Basic Usage
import time
import sys
import os
from bpm.bambuconfig import BambuConfig
from bpm.bambuprinter import BambuPrinter
from bpm.bambutools import parseStage, ServiceState
# Setup configuration
config = BambuConfig(
hostname=os.getenv('BAMBU_HOSTNAME'),
access_code=os.getenv('BAMBU_ACCESS_CODE'),
serial_number=os.getenv('BAMBU_SERIAL_NUMBER')
)
printer = BambuPrinter(config=config)
# Start session
printer.start_session()
# Wait for connection
while printer.service_state != ServiceState.CONNECTED:
time.sleep(1)
# Main loop
while True:
state = printer.printer_state
print(f"Tool Temp: {state.active_nozzle_temp}/{state.active_nozzle_temp_target}")
time.sleep(1)
Need Help?
Open an issue here.
Want to Contribute?
The best way you can contribute to this project is to make a monetary donation to its author. All funds received will go to the purchase of Bambu Lab hardware to support the continued development of this project. Please show your support by becoming a Sponsor today!
Developers are encouraged to submit a Pull Request to devel!
Please make sure to install pre-commit and lint and format your contributions through it:
pip install .[develop]
pre-commit install
Metadata
Release files for bambu-printer-manager 2.0.0rc1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bambu_printer_manager-2.0.0rc1.tar.gz | 188.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| bambu_printer_manager-2.0.0rc1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 385.6 kB
Release files / bambu_printer_manager-2.0.0rc1.tar.gz
| Download URL | bambu_printer_manager-2.0.0rc1.tar.gz |
|---|---|
| Size | 188.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1bd48f5752bcd6174e77f0c6ebb2b97e09a08ae7c971b8f4e8c26f0c370bdd72
|
|
BLAKE2b-256 checksum How to use checksums |
df4bbeb03abfa9a5a1dde7e2647c5a6868438e60d82f3fda94b3e535d95a218b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / bambu_printer_manager-2.0.0rc1-py3-none-any.whl
| Download URL | bambu_printer_manager-2.0.0rc1-py3-none-any.whl |
|---|---|
| Size | 197.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
23e5847ffec6b91fd9a8314163b45c5f217dfe5dfea595c536793f7a33ca3802
|
|
BLAKE2b-256 checksum How to use checksums |
89c24a3e63ac470c80d2655b23aea6dbd09d44a5e90a690a1439adab747af1fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency log