Octoprint for Bambu Lab A1 support available?

yeah, so I'm seeing these same errors in my octoprint.log, but it's not preventing me from starting a print. I think the error might be stemming from the fact that I remove the locally uploaded file once transfer is complete possibly.

Can you please share your 3mf file that you're uploading?

I've started tracking the known "issues" thus far in the repo.

1 Like

3DBenchy_PLA_57m46s.zip (761.2 KB)

At this stage I dont have a problem starting a print anymore, solved in my previous comment. (filemanager plugin) , but the issue I mentioned earlier still applies:

To me it seems like there is a mismatch in commands cancel=pause, pause=freeze, but the print continues.

Is there a difference If I send the file from Orca Slicer to the printer and than wait until it shows up in Octoprint and start the print from there, or if I export the file from the slicer and upload it through the webui?

There are quirks related to this scenario of doing a "print sliced plate" vs "sending"/uploading via OctoPrint and starting from there. I've recently learned that the connection with A1 is based on last connected device, so I'd be curious if you send from slicer, make sure the device tab isn't active and then reconnect from the OctoPrint UI does it act any different.

Yeah, never went to the device tab. I thought it might cause issues with the nature of how bambulab set this up.

I only send instead of print it from Orca Slicer.

So it seems uploading to Octoprint directly through the UI or sending the sliced file to the printer from Orca Slicer and then starting the print from Octoprint instead, doesnt make any difference. It prints. File management from the Octoprint UI also works, although not clean yet.

But pausing/canceling prints or controlling the printer is a different story...I guess Bambulab have their own approach to that as well so its not 100% compatible...yet.

Anyway, even if not that experienced, I am available for further testing/assistance in any way to aid your efforts, many thanks for your work!

I just realized something I did in firmware settings of OctoPrint to get cancel to work properly. Change the setting to use M524 instead of the default M25. In SD card printing there is no technical difference between pause and cancel, so I switched the cancel to handle the different commands properly..

Settings > Serial Connection > Firmware & Protocol > under advanced options.

Although, that cancelling is still currently bugged. It gets stuck in a cancelling state, and I have created an issue for that.

Weird. When I canceled the print in preparation phase, it did cancel in Octoprint, but when I looked at the printer it was only paused.

I will go and update the gcode setting and try again.

Running latest .10.

After I cancelled a print successfully I cannot start another. Hitting print again with an already loaded file does nothing, usually after the initial auto cancellation the printer wakes up and starts processing the file, updates the status in octoprint accordingly.

I have tried loading other files, after load it automatically changes the status to printing from sd, but same, nothing happens.

Cancel does work though.

With the recent PR to support any gcode commands, and picking up G26 S0 on print cancel, if you set SD cancel command back to M25 (or blank) the cancel command is working now and I'm able to cancel and start new prints normally. These changes are released as version 0.0.11.

Many thanks for the updates.

At this stage, the basic user I am, my only gripes would be a communication error on startup, not sure if playing with timeouts will help that, but basically with every startup Octoprint cannot autoconnect, timeout error. When connecting manually its mostly stable from what limited time I tested. (pi is connected via cable, router aint far away from printer)

The other small thing would be the slicer thumbnails, not really an issue, just miss them :slight_smile:

Would be great to have some folder management with uploads, but I guess that would need some kind of a middle-man to re-route files to specified folders on upload.

Post issue on repo with details, logs, etc. I haven't seen this issue myself.

As for the folder management and thumbnails I've considered using OctoPrint local storage and overriding the start print API, but it would take a ton of work to accomplish.

1 Like

Hi! I have been trying to get this plugin working with my X1C on a fresh install on Octopi. It looks like it appears to make a connection but after a period of time I get the following error: "INFO - Communication timeout while idle, trying to trigger response from printer." In the logs, I see a number of the following alerts from pybambu: "pybambu - WARNING - On Disconnect: Disconnected from Broker: 5" I posted my logs in the github issues as a reference. . Any help would be greatly appreciated. Thanks!

Dear [jneilliii]
I tried to connect my X1CC of the Chinese region with the X1Plus firmware (based on 01.07.02), and it worked! This is amazing! Thank you very much!

Where can I read how to connect the built-in camera to the octoprint? initially, just a black screen

I don't have any documentation on it, but the way I've set it up is by using go2rtc running in the background to transcode the rtsp stream into HLS that OctoPrint can understand. This is my config for go2rtc.

streams:
    bambu_camera: rtspx://bblp:<access_code>@<printer-ip>/streaming/live/1

Thank you, I went to study this issue
Where did you get so much information about the bambu system, is it publicly available?

There's an issue on their GitHub for bambu studio that covers the rtsp stuff. Most of the information I used for the plugin was from OpenBambuAPI/mqtt.md at 5dab0a4e79133b76203f68b6b36f244f41339027 Β· Doridian/OpenBambuAPI Β· GitHub and the home assistant integration project.

1 Like

I managed to set up a stream in this format, maybe it will be useful to someone
rtsps://bblp:"access_code"@"printer-ip":322/streaming/live/1

now I'm going to try to put this in an octoprint

When I used that before with go2rtc it would fail. rtpspx means to not validate the certificate.

If you go to the go2rtc Web interface and click links next to your steam, right click the modern day HLS one and copy, then paste that into steam URL of classic webcam settings.

Thanks again, everything is ok!
the only thing I had to leave the port in the link :322

how else would I add a Snapshot URL
the answer: is sudo apt install -y ffmpeg
and copy the ffmpeg link

I'm happy, thank you all, I'm going to print something.