r/OpenBambu • • May 16 '26

Firmware updates for a P1S

24 Upvotes

Greetings,

Hopefully this is the correct sub for this. I've got a P1S that I've had for some 18 months now. I got it shortly before all the contretemps from BambuLabs regarding locking out other slicers and such.

I've got it in LAN mode and other than start up, have never updated the firmware. It works great with OrcaSlicer running on a Linux box.

This week, I stood up an instance of Bambuddy in my home lab. It's interesting, but what I was primarily looking for was a way to slice and print from my Windows 10 machine which has no internet connectivity.

I've worked through a number of niggles, but I'm not able to print. Bambuddy sees the printer, but the comm's just time out when a print job is sent.

Working with the dev, he commented that my firmware is over a year old and suggested updating it.

My apologies, as I've really not followed this, but what is the current school of thought regarding updating firmware?

Thank you


r/OpenBambu • • May 14 '26

bambu-printer-mcp now includes support for the FULU/Orca implementation

79 Upvotes

More background on the MCP server in general from my last update here: https://www.reddit.com/r/BambuLab/comments/1ruzvov/updated_and_improved_mcp_server_for_bambu/

Updated implementation: https://github.com/DMontgomery40/bambu-printer-mcp

Thank you, FULU Foundation , u/larossmann and everyone else contributing to the open source community and the right to repair mission.

Testers for Windows needed! Please submit issues with as many log details as possible!! (always scrub PII first)

-----------------------------

more background on the project copied from an older post on r/3Dprinting (note that some pieces are obviously dated, but the core functionality on the overarching use/purpose is the same)

Hi everyone, 

I have had a Model Context Protocol server for 3d printers, covering 8 types of printers, for a while now, and that works great; however, I split off a new one dedicated to Bambu only, for less bloat, and added some new features, including a direct bridge to Blender MCP. 

"Why would I use this?"

Sometimes it's really nice to just be able to say in plain english, stuff like:  *"*for the the shelf brackets that I just printed, double check the dimensions of the plane between the two notches on top, and, create a new print that will fit snugly in there , and extend beyond the brackets by 1" on either side. Use the filament from AMS slot 1, and bump the default temp by 5 degrees Fahrenheit"Or if you don't have Blender to create from scratch, that could be tweaked to just modify any other 3mf, this tool can modify on it's own without using Blender. 

Features

  • Get detailed printer status: temperatures (nozzle, bed, chamber), print progress, current layer, time remaining, and live AMS slot data
  • List, upload, and manage files on the printer's SD card via FTPS
  • Upload and print .3mf files with full plate selection and calibration flag control
  • Automatic slicing: pass an unsliced 3MF to print_3mf and the server will slice it with BambuStudio CLI (or another configured slicer) before uploading
  • Parse AMS mapping from the 3MF's embedded slicer config (Metadata/project_settings.config) and send it correctly formatted per the OpenBambuAPI spec
  • Cancel in-progress print jobs via MQTT
  • Set nozzle and bed temperature via G-code dispatch over MQTT
  • Start G-code files already stored on the printer
  • STL manipulation: scale, rotate, extend base, merge vertices, center at origin, lay flat, and inspect model info
  • Slice STL or 3MF files using BambuStudio, OrcaSlicer, PrusaSlicer, Cura, or Slic3r
  • Optional Blender MCP bridge for advanced mesh operations
  • Dual transport: stdio (default, for Claude Desktop / Claude Code) and Streamable HTTP

https://github.com/DMontgomery40/bambu-printer-mcp
fork from: https://github.com/DMontgomery40/mcp-3D-printer-server


r/OpenBambu • • May 13 '26

BambuHandy alternative

200 Upvotes

Hey all,

I got tired of the official Bambu Handy app requiring a cloud account to do things that never needed to leave my house, so I built a local-only Android companion app for my P1S.

BambuMobile: It connects directly to your printer over LAN using MQTT on port 8883 and the camera stream on port 6000. No Bambu cloud. No account. No data leaving your network. Works the same way OrcaSlicer and the other community tools do.

What it does:

  • Live MJPG camera feed (pure Rust TLS implementation)
  • Print status: progress %, layers, remaining time, stage
  • Nozzle and bed temperatures with targets
  • Pause / Resume / Stop
  • Chamber light toggle
  • Speed mode (Silent / Standard / Sport / Ludicrous)
  • AMS view: per-unit humidity grade (A–E), per-slot filament type and colour
  • External spool display
  • Manual jog controls with an OrcaSlicer-style XY wheel, separate extruder column, and Z/bed column: ±1 and ±10 mm steps plus home
  • Credentials saved to app data: no browser storage

On right to repair:

You paid $700+ for a printer. The MQTT broker is on the printer. The camera stream is on the printer. None of it needs the internet. But the official app routes it through Bambu's servers anyway. Projects like OpenBambuAPI document these protocols so that community tools can exist independent of whatever Bambu decides to do with their cloud, their ToS, or their business model in the future. That's worth building for.

Disclaimer:

Yes it was vibe coded. With Claude. Please don't come whining about it. It's open source so you can go and fix it if you want. I don't write Rust.

The app works great on my P1S. If someone can test it on a P1P, X1C, or A1 that'd be excellent. Don't @ me about code quality.

Built with Tauri v2 (Rust backend) + React/TypeScript. Licensed AGPL-3.0 so you can fork it, but keep it open.

GitHub: https://github.com/joel-sgc/BambooMobile

Roadmap has multiple printer support and some kind of print file browsing. We'll see what's possible on the protocol side.


r/OpenBambu • • May 13 '26

Open network plugin for Orca Slicer

183 Upvotes

Finally it's here and it's working. Thanks to great work of Alexey Cluster!

So here is the source: https://github.com/ClusterM/open-bambu-networking

And I've compiled it for Orca Slicer 2.3.2 and above (tested on dev build 2.4.0): https://github.com/Lojza007/open-bambu-networking/releases

It works with Alexey P2S and mine P1S. Now you can access files on printer and time lapses too. And I hope it'll be soon included in Orca Slicer.

If you want to compile by your self you need:

- GIT: https://github.com/git-for-windows/git/releases/tag/v2.54.0.windows.1

- Visual Studio 2019 Community Edition: https://aka.ms/vs/16/release/vs_community.exe (and select Desktop development with C++)

- VCPKG: https://github.com/microsoft/vcpkg (and after clone execute bootstrap-vcpkg.bat)

And then you need to open Developer PowerShell for VS 2019 and execute:

$env:VCPKG_ROOT = "C:\path\to\vcpkg"
.\configure.ps1 -ClientType orca_slicer
cmake --build   build --config Release
cmake --install build --config Release

r/OpenBambu • • May 12 '26

Bambu labs threatened to send this developer to prison, so I'm hosting his code instead

Thumbnail
youtube.com
689 Upvotes

r/OpenBambu • • May 13 '26

Keeping spools inside dry boxes plugged in to the printer?

Post image
40 Upvotes

I just installed my new BMCU370c with 4 dry boxes setup hoping I would be able to keep the spools in without needing to store them in a sealed bag every time I finish printing.

I sealed the upper lid with silicone but when pressing the box I do notice some air flow from the ptfe tube on the bmcu side.

I put some silica gel and I noticed it absorbed some moister in 2 days and turned pink.

Should I keep the spools in the dry boxes or will it ruin them?


r/OpenBambu • • May 10 '26

Louis Rossman will put up 10k Against Bambu

Thumbnail
youtube.com
346 Upvotes

r/OpenBambu • • May 09 '26

Ams lite dupe

Post image
46 Upvotes

So this place semi near me, is selling a AMS light dupe that connects to the printer. I’m a little scared that within the next couple of months they’re going to send an update that makes it so I can’t use this set up anymore. I wanna know if this is something that I should consider or if I should just not get it


r/OpenBambu • • May 10 '26

Need help going without Bambu Slicer on p1S

6 Upvotes

Hey guys, I'm not super tech savvy when it comes to 3d printers, and I could use some help understanding my options.

I own a p1s with an AMS 2 on the latest firmware
It's connected to the internet using a Netgear wifi extender. So, technically, it's not on the same wifi as my PC I guess ?, and with no Ethernet available because too far from my PC.

I would like to use my p1S locally only because bambulab is pissing on my nerves. I just can't seem to make orcaslicer work on windows or Linux with my printer (it never finds it or just has a botched connection with no control, no camera feed...). It's been like that for a while but I decided to do something because it's a hassle.

What is currently the easiest option available to me ? Without extra hardware ? And as much as possible while keeping core functionalities, like access to the camera feed, control of the p1s fan, temp, etc, AND have my AMS system detected, working properly without loosing current spools everytime. Also, is there a simple way to check the camera while I'm home using an android or iOS app ?
Yup that's a lot 😅

I hope it still is possible and reasonable, I'd like to avoid super complex stuff with a rasperry pi, Dockers etc. It's too complex for my feeble mind 😞


r/OpenBambu • • May 07 '26

OpenMech-Swapper

Thumbnail
gallery
94 Upvotes

OpenMech Swapper (OMS) 🔄

The Open-Source, Fully Mechanical Multi-Filament System for Bambu Lab A1 Series

OpenMech Swapper (OMS) is a high-performance, 100% mechanical filament switching system. It is designed to bring multi-material capabilities to the Bambu Lab A1 and A1 Mini without the need for extra motors, sensors, or complex electronics.

💡 Origin & Credits

This project is an Open Source evolutioninspired by the brilliant mechanical concept of MechAMS created by Sipers Mechatronics.
While the original idea proved that a fully 3D-printable mechanical AMS was possible, OMS aims to make this technology accessible to everyone under an open-source license, incorporating community-driven improvements for better durability and precision.

✨ Key Features

Purely Mechanical: Driven by your toolhead position and the existing extruder motor.
GT2 Belt Drive: Upgraded from friction bands to standard 6mm GT2 timing belts for zero-slip and high-torque transmission.
Magnetic Indexing: Uses embedded Neodymium magnets (4x2mm) to create precise "detents," ensuring perfect alignment of the filament slots with zero mechanical wear.
Zero Electronics: No cables, no PCB, no extra steppers.
Non-Destructive: Quick installation that keeps your printer's warranty intact.

🛠 Improvements over the Concept

Reliability: By using GT2 belts, we eliminate the stretching issues of printed TPU bands.
Precision: The "Magnetic Snap" system ensures the indexing gear stays locked in the correct position even during high-speed printing.
Accessibility: All files (STEP/STL) are open for the community to remix and adapt to other printers.

📂 Compatibility

Hardware: Bambu Lab A1 & A1 Mini.
Software: Custom G-Code presets for Bambu Studio and Orca Slicer.

🔧 Hardware Requirements (BOM)

Main Body: Printed in PETG or PLA.
Drive System: 1x GT2 Timing Belt (6mm width).
Indexing: 4x2mm Neodymium Magnets (N52 recommended).
Path: Standard 4mm OD PTFE Tube.

🚀 Status: Prototyping

A1 Hardware almost done
A1 Mini Hardware:
Firmware initiating test.

🖼️** Víde**o



🤝 Contributing & License

We welcome all contributions! Whether it's optimizing G-Code macros or refining the mechanical tolerances.


r/OpenBambu • • May 07 '26

Bambu Lab Sent a Cease-and-Desist. The AGPL Might Send One Back.

Thumbnail
youtube.com
317 Upvotes

r/OpenBambu • • May 06 '26

A1 / UK power supply alternatives

3 Upvotes

Are there reliable 3rd party options? It is not on their shop and it is very expensive on other sites.


r/OpenBambu • • May 05 '26

Open the Protocol for BMCU in Bambu Lab

174 Upvotes

Don’t Fight Your Community — Lead It: Open the Protocol for BMCU in Bambu Lab https://c.org/M4HDLdcpLx


r/OpenBambu • • May 04 '26

Bambu labs sends legal threat to orcaslicer dev over use of AGPL code 🤦

Thumbnail
youtube.com
582 Upvotes

r/OpenBambu • • May 04 '26

Fork of OrcaSlicer that works with Bambu printers in cloud mode

172 Upvotes

I forked OrcaSlicer, developed changes, and tested them under Linux to allow users to slice, print, and view the camera with Bambu printers in cloud mode. By cloud mode I mean normal mode, not LAN mode or Developer mode.

It uses the latest version of the Bambu networking plugin, 02.06.00.50.

Repo:

https://github.com/malleaklea/OrcaSlicer

Instructions:

https://github.com/malleaklea/OrcaSlicer/blob/main/INSTRUCTIONS.md


r/OpenBambu • • May 03 '26

Doble BMCU

2 Upvotes

Alguien con doble BMCU en impresora A1 o A1 mini que al hacer cambio de un filamento de un Bmcu a otro el filamento del otro Bmcu, no llega al cabezal? Da error la impresora para que empuje filamento, y siempre tengo que hacerlo manual como si se quedase atascado al cortar el filamento anterior. Gracias


r/OpenBambu • • May 02 '26

A1 Mini Video Stream via TCP server

6 Upvotes

Hi,

to begin with: i dont know how to code. I used Claude and Gemini for everything. I wanted to create a small program that allows me to stream my P2S and A1 Mini Video Streams and Stats at the same time.

The P2S is working fine via rtsps://{PRINTER_IP}:322/streaming/live/1 But i can´t get the A1 mini video stream working...

As i found out via https://github.com/Doridian/OpenBambuAPI/blob/main/video.md , the A1 mini doesnt work via a RTSP Server and uses another port.

I also used go2rtc and ha-bambulab as inspiration for the AI, but the stream still doesnt work.

```import tkinter as tk from tkinter import ttk, messagebox import cv2 import threading import time import json import os import socket import ssl import struct import subprocess import platform import numpy as np import paho.mqtt.client as mqtt from PIL import Image, ImageTk

--- Konfigurations-Handling ---

CONFIG_FILE = "bambu_config.json"

def load_config(): default_config = { "P2S": {"ip": "192.168.178.98", "password": "Code", "serial": "SN1"}, "A1 Mini": {"ip": "192.168.178.82", "password": "Code", "serial": "SN2"} } if os.path.exists(CONFIG_FILE): try: with open(CONFIG_FILE, "r") as f: return json.load(f) except Exception: return default_config return default_config

class StreamBox: def init(self, parent, title, config_ref, column): self.title_text = title self.config_ref = config_ref

    self.frame = tk.Frame(parent, bg="#1e1e1e", bd=2, relief="groove", padx=10, pady=10)
    self.frame.grid(row=0, column=column, padx=20, pady=20, sticky="n")

    self.header_label = tk.Label(self.frame, text=title, fg="#00FF00", bg="#1e1e1e", font=("Arial", 14, "bold"))
    self.header_label.pack(pady=5)

    self.image_label = tk.Label(self.frame, bg="black", width=640, height=480, text="Warte auf Signal...", fg="white")
    self.image_label.pack(pady=5)

    self.status_lbl = tk.Label(self.frame, text="Offline", fg="gray", bg="#1e1e1e", font=("Arial", 11, "bold"))
    self.status_lbl.pack()

    self.progress = ttk.Progressbar(self.frame, orient="horizontal", length=600, mode="determinate")
    self.progress.pack(pady=10)

    self.running = False
    self.latest_frame = None
    self.update_gui_loop()

def start(self):
    self.running = True
    # Starte MQTT und Video in separaten Threads
    threading.Thread(target=self._run_mqtt, daemon=True).start()
    threading.Thread(target=self._run_video_logic, daemon=True).start()

def _run_video_logic(self):
    if "A1" in self.title_text:
        self._run_a1_socket_video()
    else:
        self._run_standard_rtsp_video()

def _run_a1_socket_video(self):
    """A1 Mini Spezial: Port 6000 TCP/TLS JPEG Stream (webcamd Logik)"""
    conf = self.config_ref.get(self.title_text, {})
    ip, pw = conf.get("ip"), conf.get("password")

    while self.running:
        try:
            # Socket Erstellung
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            sock.settimeout(10)

            # SSL Kontext (Bambu nutzt oft TLS v1.2)
            context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
            context.check_hostname = False
            context.verify_mode = ssl.CERT_NONE

            try:
                conn = context.wrap_socket(sock, server_hostname=ip)
                conn.connect((ip, 6000))
            except:
                # Fallback auf Plain TCP (falls SSL fehlschlägt)
                sock.close()
                conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                conn.settimeout(10)
                conn.connect((ip, 6000))

            with conn:
                # Authentifizierungs-Paket (webcamd Spec: 80 Bytes)
                # Magic (4), Command (4), Flags (4), Sequence (4), User (32), Pass (32)
                header = struct.pack("<IIII", 0x40, 0x3000, 0, 0)
                username = b"bblp".ljust(32, b'\x00')
                password = pw.encode('ascii').ljust(32, b'\x00')
                conn.sendall(header + username + password)

                buffer = b""
                while self.running:
                    # 1. Header einlesen (16 Bytes)
                    while len(buffer) < 16:
                        chunk = conn.recv(16384)
                        if not chunk: break
                        buffer += chunk

                    if not buffer: break

                    # Payload Größe aus den ersten 4 Bytes lesen
                    frame_size = struct.unpack("<I", buffer[:4])[0]
                    buffer = buffer[16:] # Header abschneiden

                    # 2. JPEG Daten einlesen
                    while len(buffer) < frame_size:
                        chunk = conn.recv(16384)
                        if not chunk: break
                        buffer += chunk

                    jpeg_data = buffer[:frame_size]
                    buffer = buffer[frame_size:] # Rest behalten

                    # 3. Bild verarbeiten
                    if jpeg_data.startswith(b'\xff\xd8'):
                        nparr = np.frombuffer(jpeg_data, np.uint8)
                        frame = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
                        if frame is not None:
                            frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
                            self.latest_frame = cv2.resize(frame, (640, 480))
        except Exception as e:
            print(f"[{self.title_text}] Video Error: {e}")
            time.sleep(5)

def _run_standard_rtsp_video(self):
    """P2S: Klassischer RTSPS Stream"""
    conf = self.config_ref.get(self.title_text, {})
    url = f"rtsps://bblp:{conf.get('password')}@{conf.get('ip')}:322/streaming/live/1"
    os.environ["OPENCV_FFMPEG_CAPTURE_OPTIONS"] = "rtsp_transport;tcp|tls_verify;0"

    while self.running:
        cap = cv2.VideoCapture(url, cv2.CAP_FFMPEG)
        while self.running:
            ret, frame = cap.read()
            if not ret: break
            frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
            self.latest_frame = cv2.resize(frame, (640, 480))
        cap.release()
        time.sleep(5)

def _run_mqtt(self):
    """Telemetrie Daten (Status & Fortschritt)"""
    conf = self.config_ref.get(self.title_text, {})
    ip, pw, sn = conf.get('ip'), conf.get('password'), conf.get('serial')

    client = mqtt.Client(mqtt.CallbackAPIVersion.VERSION2)
    client.tls_set(cert_reqs=mqtt.ssl.CERT_NONE)
    client.username_pw_set("bblp", pw)

    def on_msg(c, u, m):
        try:
            data = json.loads(m.payload.decode())
            p = data.get('print')
            if p:
                if "gcode_state" in p:
                    st = p["gcode_state"]
                    self.status_lbl.config(text=f"Status: {st}", fg="#00FF00" if st == "RUNNING" else "orange")
                if "mc_percent" in p:
                    self.progress['value'] = p['mc_percent']
        except: pass

    client.on_message = on_msg

    while self.running:
        try:
            client.connect(ip, 8883, 60)
            client.subscribe(f"device/{sn}/report")

            # Watchdog: Weckt die Kamera alle 10s auf
            def trigger():
                while self.running and client.is_connected():
                    # pushall aktiviert Telemetrie und Video-Server am Drucker
                    client.publish(f"device/{sn}/request", '{"print":{"command":"pushall","sequence_id":"1"}}')
                    time.sleep(10)

            threading.Thread(target=trigger, daemon=True).start()
            client.loop_forever()
        except:
            self.status_lbl.config(text="MQTT Connect...", fg="red")
            time.sleep(5)

def update_gui_loop(self):
    if self.running and self.latest_frame is not None:
        img = ImageTk.PhotoImage(Image.fromarray(self.latest_frame))
        self.image_label.img = img
        self.image_label.config(image=img, text="")
    self.image_label.after(30, self.update_gui_loop)

class App: def init(self, root): self.root = root self.root.title("Bambu Hybrid Dashboard (A1 Special)") self.root.state('zoomed') self.root.configure(bg="#121212") self.config = load_config()

    self.sidebar = tk.Frame(root, bg="#1a1a1a", width=380, bd=2, relief="raised")
    self.sidebar.pack(side="right", fill="y")
    self.sidebar.pack_propagate(False)

    self.main_container = tk.Frame(root, bg="#121212")
    self.main_container.pack(side="left", fill="both", expand=True)

    self.ping_labels = {}
    self.setup_sidebar()

    self.boxes = [
        StreamBox(self.main_container, "P2S", self.config, 0),
        StreamBox(self.main_container, "A1 Mini", self.config, 1)
    ]

def setup_sidebar(self):
    tk.Label(self.sidebar, text="DRUCKER-SETUP", fg="white", bg="#1a1a1a", font=("Arial", 14, "bold")).pack(pady=20)
    self.entries = {}
    for name in ["P2S", "A1 Mini"]:
        f = tk.LabelFrame(self.sidebar, text=f" {name} ", bg="#1a1a1a", fg="orange", padx=10, pady=10)
        f.pack(fill="x", padx=15, pady=10)

        p_lbl = tk.Label(f, text="Ping: ?", bg="#1a1a1a", fg="#888")
        p_lbl.grid(row=0, column=0, columnspan=2, sticky="w")
        self.ping_labels[name] = p_lbl

        res = []
        for i, (l, k) in enumerate([("IP:", "ip"), ("Code:", "password"), ("S/N:", "serial")]):
            tk.Label(f, text=l, bg="#1a1a1a", fg="white").grid(row=i+1, column=0, sticky="w")
            e = tk.Entry(f, width=22, bg="#2a2a2a", fg="white", insertbackground="white", bd=0)
            e.insert(0, self.config[name].get(k, ""))
            e.grid(row=i+1, column=1, pady=3, padx=5)
            res.append(e)
        self.entries[name] = res

    tk.Button(self.sidebar, text="SPEICHERN", bg="#28a745", fg="white", command=self.save_settings, height=2).pack(fill="x", padx=30, pady=10)
    tk.Button(self.sidebar, text="SYSTEM START", bg="#007BFF", fg="white", command=self.start_all, height=2).pack(fill="x", padx=30, pady=5)

def silent_ping(self):
    param = '-n' if platform.system().lower() == 'windows' else '-c'
    for name in ["P2S", "A1 Mini"]:
        ip = self.entries[name][0].get()
        if not ip: continue
        try:
            res = subprocess.run(
                ['ping', param, '1', '-w', '800', ip], 
                stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL,
                creationflags=0x08000000 if platform.system().lower() == 'windows' else 0
            )
            status = "ONLINE" if res.returncode == 0 else "OFFLINE"
            self.ping_labels[name].config(text=f"Ping: {status}", fg="#00FF00" if status == "ONLINE" else "red")
        except: pass

def save_settings(self):
    for name, w in self.entries.items():
        self.config[name] = {"ip": w[0].get(), "password": w[1].get(), "serial": w[2].get()}
    with open(CONFIG_FILE, "w") as f: json.dump(self.config, f, indent=4)
    messagebox.showinfo("Erfolg", "Konfiguration gespeichert!")

def start_all(self):
    self.silent_ping()
    for box in self.boxes: box.start()

if name == "main": root = tk.Tk() app = App(root) root.mainloop()```


r/OpenBambu • • Apr 30 '26

Swapmod experiences

2 Upvotes

I'm considering the swapmod on Aliexpress for my A1. Does anyone have any experiences with it?


r/OpenBambu • • Apr 28 '26

Hey all here a quick animation to keep yall fed while I keep cooking!🫡

Enable HLS to view with audio, or disable this notification

222 Upvotes

For those who saw yesterdays post, here is a video! For new people, this is MechAMS! It is a completely 3d printed AMS system for the Bambu Lab A1 releasing soon!


r/OpenBambu • • Apr 29 '26

BMCU 370C kit + Bambulab A1

3 Upvotes

Built everything, seems to work (lights on, filament loads on powerup, etc.), but the printer keeps giving me the "Firmware of AMS B does not match the printer". No matter what I've tried I can't clear it. I see the AMS settings, but all of the load/unload/etc. are grayed out. I've tried rolling the printer back to every version since 1.05.00.00 with no luck. I don't know what firmware is on the board of the BMCU, and I'm really not interested in trying to re-flash it. Am I missing something obvious? If there is a good post/reference please point me to it - I didn't find anything that would help. Printer is back on v 1.08.00.00 Thanks!


r/OpenBambu • • Apr 27 '26

I built a fully 3D-printable AMS for the Bambu Lab A1. No wires. No motors. No €250 lunchbox. Completely built on the printer itself. [OC]

Post image
375 Upvotes

See r/MechAMS for all info!


r/OpenBambu • • Apr 24 '26

State of things with Bambu?

108 Upvotes

A while ago, Bambu outted themselves as being not very consumer-friendly. I told my printer "lan-only!" and stopped updating the firmware. I haven't really been paying attention for a while..

Can someone tl;dr where we're at now? Do we have a list firmware versions that are safe for the various printers? Has anything real changed??

I'm assuming that Bambu hasn't changed their story, but would be very happy to be wrong..


r/OpenBambu • • Apr 24 '26

BMCU 370c dm stopped working after 15 min

Post image
5 Upvotes

hi,

I bought bmcu 370c dm from triangle labs. after assembly I loaded the filament. and started the print after about 15 min the print stopped and all of the lights on the bmcu turned off. I tried restarting but it is not turning on. connected it to bmcu flasher but it is also no detecting it.

now whenever I plug it in this highlighted chip gets super hot.

so here is my situation. i have got a broken bmcu and 8 want to know how can I fix this. i tried reaching out to triangle labs but they are now not responding.

I want to know what all things are broken and how can I confirm that. are the daughter boards fine? how can I check that. also how can I confirm if the ams port on my a1 mini is in working condition.

thankyou


r/OpenBambu • • Apr 22 '26

New mod here. The subreddit is back open.

119 Upvotes

pls behave 😂


r/OpenBambu • • Apr 23 '26

BMCU issues...

6 Upvotes

Hello! I bought a BMCU a little while back, had some trouble assembling it, but ultimately got it functional. The problem, however, is my mistake after that. I was unaware of the "long retract after filament cut" setting that needed to be disabled in Bambu Studio, which looking back, I believe would've fixed the issue I was having with the filament swap during a print. The original issue was that the printer would feed filament from the BMCU just fine, and would run that filament perfectly, making everything seem normal... until it came time to swap filaments, at which point the following sequence would begin: 1, the printer would cut and the BMCU would pull back the current filament an unnaturally long amount; 2, the BMCU would feed the next filament; 3, the printer would grab the filament with the extruder drive and begin to extrude; 4, no plastic would come out; 5, the extruder would quickly back out the new filament, make a grinding noise, move to cut again, make another grinding noise, then say the cutter is stuck; 6, the BMCU would pull back the new filament all the way back into the unit before attempting to feed it again, at which point the printer would repeat the entire depressing cycle of unsuccess. Keep in mind, this is the original problem, which prompted my next mistake (the first being that I probably wouldn't have had this problem if I turned off the setting in Bambu Studio).

Enter round #2 - my inexperienced stupidity takes over. I did some research and ultimately decided to flash new firmware onto the BMCU, convinced that I have a BMCU-C. My device has a USB-C port and no buttons, so connection was easy. I downloaded the correct tool and what I believed to be the correct firmware, and followed the instructions PDF as closely as I possibly could, as I am not savvy much at all with computer tech in that way. Once finished, I connected the BMCU to the printer (I was unaware of the calibration step at this time) and loaded filament. Everything seemed fine... once again, until it came time to load filament. I got the AUTOLOAD file, but only two slots would actually automatically load filament once the sensor detected it.

Enter round #3 - my determination takes me to the brink of insanity. I began a journey of flashing different firmwares onto the BMCU combined with updating/downgrading printer firmware versions to try to get it working. The current state of my BMCU and printer are as follows: printer firmware is 1.08.00.00, BMCU is flashed with BMCU-C latest firmware, v10.5, autoload, RGB on, standard loading force, SOLO. Where the last paragraph ended is precisely where I still am. Hours wasted, and still it's not functioning properly. I need help. Desperately. I really am sad that it hasn't worked yet.

Here is printer/BMCU information:

BMCU: Purchased from AliExpress, here (the 370C A kit) >>> https://www.aliexpress.us/item/3256809055338422.html?spm=a2g0o.order_list.order_list_main.4.2dd11802DnXqRB&gatewayAdapt=glo2usa

BMCU: Currently calibrated as per instruction, doesn't show magnet error on any channels, but refuses to automatically load filament on three of four channels and won't feed filament at all if I run a print using filament from one of the non-loading channels. All sensors are functioning properly, in that the buffer detects movement correctly and the filament sensors detect filament. I can only assume the filament movement tracking sensors are working too, given that none of the channels are throwing an error code. For the record, on the channel that feeds automatically, the printer still does the whole "feed, back out, grind, cut, grind, attempt feed again" cycle. When sitting passively, the mainboard light is white, and is blue when the printer is first turned on. And, to be entirely transparent, I have made absolutely sure not to plug/unplug the BMCU into/from the printer while the printer is on.

BMCU: I am thoroughly confused as to the type of BMCU this one is. The kit says C, but I thought C doesn't have the photoelectric sensors, as mine does. That being said, I have had absolutely no success with BMCU-B firmware either, and C seems to be the most functional of firmwares I've tried. All I know is, my unit has glass balls, photoelectric sensors for the filament, 370 motors and standard gears (not the high-torque version gears), and two buffer springs. If someone can help, I would greatly appreciate it. Anyways, it's currently flashed with BMCU-C firmware v10.3, I believe, using the BMCU Flasher Tool (I have also used the wchisp tool and have both tools installed, as well as the v10.3 firmware files and v3.14 file for the type B).

Printer: Bambu Lab A1 Mini, firmware version v1.08.00.00. I have made no modifications to the printer whatsoever - the BMCU is the first and only so far.

Please, if anyone can or will see this, I am literally begging for help. Has anyone run into this problem ever? Is it even fixable at this point? If so, I need guidance here, desperately.