mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-05-09 05:35:30 +02:00
[GH-ISSUE #873] [Bug]: X1Plus - unable to connect with dev branch #592
Labels
No labels
A1
automated
automated
bug
bug
Closed due to inactivity
contrib
dependencies
dependencies
duplicate
enhancement
feedback
hold
invalid
Notes
P1S
pull-request
security
security
ThumbsUp
user-report
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/bambuddy#592
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @lightmaster on GitHub (Apr 2, 2026).
Original GitHub issue: https://github.com/maziggy/bambuddy/issues/873
Originally assigned to: @maziggy on GitHub.
Bug Description
When I try to connect to the printer while on the dev branch, I am initially told the printer is offline. If I tell it to reconnect, it will connect, but is missing information like anything to do with the AMS and that the SD Card isn't inserted. I am also unable to see any K-Profiles.
When I switch back to the main branch, I am immediately connected to the printer and the AMS and SD Card information show up correctly.
Maybe an unexpected issue of X1Plus, though the dev branch was working when I tested it the other day before reporting my previous bug.
Expected Behavior
Why does this section always feel like just a way to reiterate the description of a bug?
Bambuddy should connect to the printer and AMS the same between the main and dev branches.
Steps to Reproduce
systemctl restart bambuddy) see that Bambuddy says it's not connected to the printer.Printer Model
X1 Carbon
Bambuddy Version
dev branch as off 2026-04-02 3:30am EST
Printer Firmware Version
99.00.00.00
Installation Method
Manual (git clone)
Operating System
Linux (Ubuntu/Debian)
Relevant Logs / Support Package
Dev Branch support package:
bambuddy-support-20260402-033519.zip
Main Branch support package:
bambuddy-support-20260402-033738.zip
Screenshots
No response
Additional Context
No response
Checklist
@maziggy commented on GitHub (Apr 2, 2026):
Thanks for the detailed report and both support packages — comparing the two was very helpful.
What we found:
The crash is in the WebSocket handler — every time the frontend connects, it fails with 'str' object has no attribute 'get' when trying to read the external spool (vt_tray) data from your printer's MQTT state. This is why the UI shows the printer as offline and can't display AMS/SD card info.
The error only appears in restarts after
ae2a2625(developer mode probe) was added — your 03-30 restart was clean, but every restart from 04-01 onward crashes. The main branch doesn't have this commit, which is why switching back fixes it.What we need from you:
We can't see the actual vt_tray value your X1Plus firmware sends — the debug logs only show key names. Could you help us capture it?
mosquitto_sub -h <PRINTER_IP> -p 8883 -u bblp -P <ACCESS_CODE> -t "device//report" --cafile /dev/null --insecure -C 1 | python3 -c "import sys,json;
d=json.load(sys.stdin).get('print',{}); print('vt_tray type:', type(d.get('vt_tray')).name); print('vt_tray value:', d.get('vt_tray'))"
This will tell us exactly what format X1Plus uses for the external spool field, so we can fix it properly without breaking standard firmware.
@lightmaster commented on GitHub (Apr 2, 2026):
Yup, I'll get that when I get home in an hour or so.
@lightmaster commented on GitHub (Apr 2, 2026):
Apparently the the latest verion of mqtt client on debian requires a valid cert to connect, even with
--insecure. Ended up having to download the cert from the printer and use the commandmosquitto_sub -h <IP_ADDRES> -p 8883 -u bblp -P <ACCESS_CODE> -t "device/<SERIAL>/report" -V 311 --cafile ./bambu.crt --insecure -C 1 | python3 -c "import sys,json; d=json.load(sys.stdin).get('print',{}); print('vt_tray type:', type(d.get('vt_tray')).__name__); print('vt_tray value:', d.get('vt_tray'))" to get it to work. Also,.namedidn't work in that command, had to use.name`.Got back this from the command:
bambuddy-support-20260402-064811.zip
@maziggy commented on GitHub (Apr 2, 2026):
Oh yes, the cert. Sorry, forgot to mention that.
I think I've indentified a racing condition. Please use branch dev and let me know if ti works now.
@lightmaster commented on GitHub (Apr 2, 2026):
Dev branch is showing the printer online and pulling AMS and Printer info as expected. Thank you.
@maziggy commented on GitHub (Apr 2, 2026):
If you find Bambuddy useful, please consider giving it a ⭐ on GitHub — it helps others discover the project!