Печать на 3D-принтерах без согласия — предостерегающая история об облачной зависимости
Шэрон Хардинг - 22 августа 2023 г., 18:25 UTC
Представьте, что вы просыпаетесь посреди ночи от звука печатающего 3D-принтера. Вы знаете, что не просили распечатку. На самом деле, вы в этом уверены, ведь ваш предыдущий проект все еще находится на принтере. Это звучит как жуткое технологическое привидение или как будто машины наконец-то обрели самосознание. К счастью, проблема связана с чем-то менее жутким, но, возможно, не менее страшным: сбоем в работе облака.
Как сообщало The Verge, 15 августа многочисленные владельцы 3D-принтеров Bambu Lab сообщили, что их устройство начало печатать без их согласия. Не имело значения, привела ли указанная печать к погнутым или сломанным соплам или другим компонентам, или же речь шла о печати одного проекта поверх другого. Не имело значения, было ли это безбожное время, например, 4 утра; принтеры стоимостью от 599 до 1449 долларов печатали.
«Начала печать в 23:00. Замедленная съемка показывает, что она успешно завершилась незадолго до 2:00. Примерно в 2:30 ночи, пока я спал, аппарат снова запустился, причем последний отпечаток все еще лежал на кровати. Я вижу время с отметкой времени. Видео с замедленной съемкой, которое начинается примерно в 2:30 ночи», — пожаловался пользователь Reddit под ником u/beehphy в сабреддите r/BambuLab.
Пользователь продолжил, сказав: «Нить высыпалась сбоку и свернулась внутри камеры, и она прекратила подачу только после того, как датчик температуры был вырван».
Компания объявила о «сбое облачной печати» на странице состояния своей системы и написала в блоге от 16 августа сообщение о том, что рассмотрит проблему.
Бамбу подробно рассказал об «отключении облака» 18 августа, заявив:
Основная причина проблемы была связана с MQTT SDK, используемым в облачном соединении. Один из двух клиентов MQTT SDK был отключен из-за тайм-аута. Обычно служба автоматически восстанавливает соединение, но в этом случае служба вернула отчет об успешном подключении, хотя на самом деле соединение не было восстановлено. За это время накопилось некоторое количество сообщений о начале печати.
Был обнаружен второй сбой подключения, и на этот раз службе удалось успешно повторно подключиться, но в результате система отправила накопленные сообщения о начале печати на несколько принтеров, которые получили информацию и начали печать, если принтер простаивает.
Также проблему усугубляло «большое количество запросов доступа к API», выполняемых одновременно, что не позволяло обеспечить своевременный ответ. Это связано с тем, что программное обеспечение Bambu Studio для принтеров использует логику, которая «повторно инициирует запрос на печать сразу после доступа к облаку».