New Web app and Command Line Tools

Wasn’t sure if this was the right place to post these, but I’ve been hacking around on some tools to work with more than one printer. My biggest issues are with Bambu Studio and it forcing me to manually switch from one printer to another just to see things like colors, files, status, etc. So I wrote a couple of cool apps that I’ve open sourced to Github:

Bambu Farm

A web app that shows you your printers, cameras, print status and AMS details:

Bambu CLI

A Node.js powered Command Line tool that shows you all sorts of interesting things from your printers. And I have more planned.

Right now it shows:

  • Current Status
  • AMS filament details
  • Lists the files on the device
  • Allows downloads from the device
  • Parses a .3mf file and returns some useful information.

I’ve only got access to my 2 X1C’s so I could use some testers that have 2+ machines as well as other models to make sure that I’m handling all the “edge cases”


Thank you for looking for and working towards a solution to this problem. Lots of people that complain about the issue but no one is willing to take up the torch to find a solution. Thank you for sharing your findings and work.


This will be helpful! I have docker running on my Unraid Server and now just need to figure out how to install this.
Question: I would like to add an LED strip to my P1S and use an addressable LED strip , WLED , and an esp8266. The Bambu Labs printers P1 and X 1 series output MQTT topics that can be watched for status changes. Things like printing started, printing finished , printing error, printing successful. Those topics could then be acted upon to change the state of the LED strip to Green for successful, Red for Error, Lights on when printing, lights off after a delay once finished printing , etc. There is a guy who has implemented this already , but shipping and cost of his device seems a bit steep for a person who could put this together using the ESP8266, A simple addressable LED strip and some knowledge of how to figure out the MQTT side of things. Any interest in lending a hand? Im not the most savvy when it comes to the code side of things.

1 Like

There is a request for similar fuctions here.

The same or similar requests probably exist in GitHub or from the Discord.

I didn’t build the web app to emit those types of topics, but it wouldn’t be hard to add them. The web app has a WebSocket server that emits events from all of the printers bound to it. So, in theory, it wouldn’t be that hard to add a listener to it and do your thing.

Yup, saw those. That’s why I built these tools. It was frustrating to me with only two printers :slight_smile:


With more and more new BL printers coming out and more people owning multiple printers, it should be logical for BL to develope the feature soon. Maybe you can inquire privately where this feautre is in their timeline and whether they welcome outside contributions and join forces with them if they do.

If they truly wanted to get peoples feedback it would be in a Github branch. I don’t know anyone on their team to talk to anyway…

I have no idea where to even start with this.

1 Like

Thank you for dark mode.


The steps are detailed in the Github repo.

  • Install and run Docker
  • Create the json file with your printers info
  • Launch
  • View
  • Enjoy

I didn’t test this up to now, just read it.
Maybe a silly question… but will this work also in LAN only mode?

1 Like

In theory it should, haven’t tested it as my printers are running most of the time and I haven’t switched them to LAN Only Mode yet.

The bambu-farm app is 100% local, it doesn’t talk to the cloud at all. The only resources it uses from the internet are standard CSS/JS included files in the webpage itself.

The bambu-cli only talks to the cloud once during login to fetch the machine information from their API and grab their IP addresses from the global mqtt server. From there on, it’s 100% local communication with the printers. So if while in LAN Only Mode those things still work, then it should “just work”.

Cool. Does it require the printer to be local network only?

It does not. (extra characters)


Hmm, I’ll have to try it and see how to make it work…

It just requires you to be able to connect to the printer. They don’t have to be on the same network but they have to be accessible since it doesn’t use the cloud.

I meant I dont know how to get started trying to interrogate the MQTT responses from the printer and having an ESP8266 act on them to set colors.

Good thing someone already figured it out and shared it.


This is great. I am going to get another X1C tomorrow, so I will have two. Hopefully I can help with bugs, etc

1 Like

Great. Thank you. So basically you’re the number one reason for a lot of disgruntled families right now because all of us are going to spend the holidays with your freaking awesome tool :smile: Thank you!