Ошибка: вылет при повторных включениях калибровки (M375)
ITorubarov opened this issue · 0 comments
Проблема:
После некоторого количества циклов включения-выключения калибровки (команды M375 и M370 соответственно) принтер вылетает.
Как это выглядит:
- При включении принтера калибровка у него включается автоматически. Выключаем калибровку (M370), паркуемся (G28).
- Включаем калибровку (M375). В первый раз (если не считать автоматического включения при включении принтера) калибровка всегда срабатывает мгновенно.
- Выключаем калибровку (M370), потом включаем снова. На второй раз (и последующие разы) калибровка включается не сразу, а с задержкой около 30 с, но после принтер оживает. При этом в терминал вываливается сообщение:
Send: M375
Recv: Read -0.014
Recv: Read 108.600
Recv: Read 35.803
Recv: Read 0.000
Recv: Read 0.000
Recv: Read 0.000
Recv: Read 0.000
Recv: Read 0.000
Recv: Read 0.000
Recv: Read 0.000
Recv: calibration loadedok
Communication timeout while idle, trying to trigger response from printer. Configure long running commands or increase communication timeout if that happens regularly on specific commands or long moves.
- Выключаем-включаем ещё несколько раз. При этом каждый раз калибровка включается с той же самой задержкой, и на какой-то критический раз принтер зависает. В терминал вываливается сообщение:
Send: M375
Communication timeout while idle, trying to trigger response from printer. Configure long running commands or increase communication timeout if that happens regularly on specific commands or long moves.
Send: M105
Unexpected error while reading serial port, please consult octoprint.log for details: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2793
Please see https://faq.octoprint.org/serialerror for possible reasons of this.
Changing monitoring state from "Operational" to "Offline (Error: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2793)"
Connection closed, closing down monitor
Закономерности в количестве переключений до вылета нету. Провёл пять опытов, вылеты происходили на 8-м, 14-м, 12-м, 6-м включениях калибровки и один раз прямо на 2-м.
Задержка между вводом команды M375 и "оживанием" принтера - всегда 29-30 с. Может быть, что и ровно 30 с (если учесть погрешность нажимания пальцем на секундомер).
Между включениями-выключениями калибровки двигал туда-сюда ПГ и стол, чтобы сымитировать жизнедеятельность принтера между переключениями (и так проще отсекать момент, когда принтер оживает).