Руководство
MQTT в Bambu Lab — простыми словами
Принтеры Bambu Lab сообщают свой статус по MQTT — лёгкому протоколу обмена сообщениями — напрямую приложениям в вашей сети. Вот как устроено это подключение и как его использует Bambu Bar.
Коротко
На каждом принтере Bambu Lab работает сервер MQTT в вашей локальной сети — на порту 8883 с шифрованием TLS. Приложение входит с именем пользователя bblp и кодом доступа принтера, подписывается на топик отчётов принтера и получает обновления статуса примерно раз в секунду.
Чтение статуса работает в любом режиме. Отправлять команды, например паузу и остановку, сторонние приложения могут только в режиме Только локальная сеть с включённым режимом разработчика. Так работают и подключение Bambu Studio по локальной сети, и Bambu Bar.
Подключение
| Протокол | MQTT поверх TLS |
| Порт | 8883 на принтере |
| Имя пользователя | bblp |
| Пароль | 8-значный код доступа принтера |
| Топик статуса | device/<serial>/report |
| Топик команд | device/<serial>/request |
Принтер — это сервер: приложения подключаются к нему напрямую по вашей сети, без облака Bambu Lab.
Отчёты: что отправляет принтер
После подключения приложение один раз запрашивает полный отчёт (запрос pushall), а затем получает изменения по мере их появления — во время печати примерно каждую секунду. Отчёты приходят в формате JSON и содержат задание и его этап, прогресс и слои, оставшееся время, температуры сопла, плиты и камеры печати, вентиляторы, лотки AMS с их филаментом и ошибки принтера (коды HMS).
Bambu Bar сводит эти изменения в единую картину принтера — её и показывают строка меню, окно и виджеты. Разные модели сообщают разные поля, поэтому A1 не показывает температуру камеры печати, а H2D показывает два сопла.
Запросы: что отправляют приложения
Команды отправляются в топик запросов: пауза, возобновление, остановка, скорость печати, подсветка камеры печати или запрос полного отчёта. Что принять, решает принтер: в актуальных прошивках сторонние приложения могут отправлять команды печати, только когда принтер в режиме Только локальная сеть с включённым режимом разработчика. Иначе Bambu Bar показывает на этих кнопках замок. См. почему управление заблокировано.
Сертификаты: как убедиться, что это ваш принтер
Подключение зашифровано с помощью TLS, и каждый принтер предъявляет сертификат. Bambu Bar принимает принтер, только если этот сертификат выстраивается в цепочку до собственных центров сертификации Bambu Lab, которые поставляются вместе с приложением, и выдан на серийный номер этого принтера. Так никакое другое устройство в вашей сети не сможет выдать себя за принтер и перехватить код доступа.
Обнаружение и камера
- Обнаружение: принтеры объявляют о себе в вашей сети по UDP (порт 2021). Так приложения находят принтеры без IP-адреса, и так Bambu Bar замечает, что принтер получил новый адрес.
- Камера работает не через MQTT: принтеры X1, H2, H3C, P2S и X2D передают видео по RTSPS (порт 322, при включённом LAN Only Liveview), а принтеры P1, A1 и A2L — зашифрованным потоком JPEG (порт 6000). См. камера на вашем Mac.
Посмотрите отчёты сами
Для диагностики отчёты может прочитать любой клиент MQTT. С помощью утилит командной строки Mosquitto, подставив вместо заполнителей значения своего принтера:
mosquitto_sub -h <printer-ip> -p 8883 -u bblp -P <access-code> --insecure -t "device/<serial>/report"
--insecure пропускает проверку сертификата, поэтому используйте его только в сети, которой доверяете, и только для чтения. Никогда не вставляйте свой код доступа или серийный номер в сообщения на форумах и отчёты об ошибках.
Не публичный API
Это протокол, который собственные приложения Bambu Lab используют в локальной сети, а не документированный стабильный API: поля различаются в зависимости от модели и версии прошивки, и Bambu Lab может изменить то, что принимает принтер. Bambu Bar отслеживает эти изменения, чтобы вам не приходилось. О задействованных настройках принтера читайте в статье что такое режим LAN, а также где найти код доступа.
Вопросы и ответы
Какой порт использует принтер Bambu Lab для MQTT?
Порт 8883 с TLS. Имя пользователя — bblp, пароль — код доступа принтера.
Нужен ли режим «Только локальная сеть», чтобы читать статус по MQTT?
Нет. Принтер сообщает статус локальным приложениям и в облачном режиме. Режим «Только локальная сеть» с режимом разработчика нужен, чтобы сторонние приложения могли отправлять команды печати.
Использует ли Bambu Bar облако Bambu Lab?
Нет. Он подключается напрямую к локальному серверу MQTT принтера, как Bambu Studio в режиме LAN, и сначала проверяет сертификат принтера.
Читайте также
- Что такое режим LANОблачный режим, «Только локальная сеть», LAN Only Liveview и режим разработчика: четыре разные настройки — и какие из них вам действительно нужны.
- Режим разработчика и блокировка кнопокПочему на кнопках паузы, остановки и скорости в Bambu Bar показан замок, что режим разработчика меняет на принтере и нужен ли он вам.
- Код доступа и IP-адресГде принтер показывает свой 8-значный код доступа и IP-адрес и как с их помощью подключиться с Mac.
- Конфиденциальность: данные принтера и аналитика сайтаКак Bambu Bar обрабатывает локальные данные принтеров, коды доступа, просмотр видео с камеры, лицензии сторонников и аналитику сайта.

Хватит ходить к принтеру
Следите за печатью Bambu Lab на Mac: прогресс, оставшееся время, температуры, филамент AMS и видео с камеры. Уведомления и виджеты без открытия Bambu Studio.
Прогресс печати, уведомления и филаментmacOS 26+, Apple silicon и IntelСкоро: Windows и Linux