Here's the end of the serial log, noting that M155
isn't a blocking sort of command:
2019-07-24 16:30:57,318 - Recv: FIRMWARE_NAME:Marlin bugfix-2.0.x (Github) SOURCE_CODE_URL:https://github.com/MarlinFirmware/Marlin PROTOCOL_VERSION:1.0 MACHINE_TYPE:3D Printer EXTRUDER_COUNT:1 UUID:cede2a2f-41a2-4748-9b12-c55c62f367ff
...
2019-07-24 16:30:59,490 - Send: M155 S5
2019-07-24 16:30:59,492 - Recv: ok
2019-07-24 16:32:29,581 - No response from printer after 3 consecutive communication timeouts, considering it dead. Configure long running commands or increase communication timeout if that happens regularly on specific commands or long moves.
2019-07-24 16:32:29,624 - Changing monitoring state from "Operational" to "Offline (Error: Too many consecutive timeouts, printer still connected and alive?)"
2019-07-24 16:32:29,656 - Connection closed, closing down monitor
And here's the end of the octoprint log:
2019-07-24 16:23:58,579 - backoff - INFO - Backing off __get_dev_settings__(...) for 57.4s (HTTPError: 401 Client Error: Unauthorized for url: http://stream.getanywhere.io/api/dev_settings)
2019-07-24 16:24:18,405 - octoprint.util.comm - INFO - Changing monitoring state from "Offline" to "Detecting serial port"
2019-07-24 16:24:18,447 - octoprint.util.comm - INFO - Changing monitoring state from "Detecting serial port" to "Opening serial port"
2019-07-24 16:24:18,452 - octoprint.util.comm - INFO - Changing monitoring state from "Opening serial port" to "Connecting"
2019-07-24 16:24:18,463 - octoprint.util.comm - INFO - M110 detected, setting current line number to 0
2019-07-24 16:24:18,490 - octoprint.util.comm - INFO - Changing monitoring state from "Connecting" to "Operational"
2019-07-24 16:24:18,501 - octoprint.util.comm - INFO - M110 detected, setting current line number to 0
2019-07-24 16:24:18,628 - octoprint.plugins.ipOnConnect - INFO - ipOnConnectPlugin: 192.168.1.3
2019-07-24 16:24:18,636 - octoprint.util.comm - INFO - Printer reports firmware name "Marlin bugfix-2.0.x (Github)"
2019-07-24 16:24:18,668 - octoprint.plugins.ABL_Expert - INFO - self.printer_cap[eeprom] is now 1
2019-07-24 16:24:18,703 - octoprint.util.comm - INFO - Firmware states that it supports temperature autoreporting
2019-07-24 16:24:18,718 - octoprint.plugins.ABL_Expert - INFO - self.printer_cap[autolevel] is now 1
2019-07-24 16:24:18,735 - octoprint.plugins.ABL_Expert - INFO - self.printer_cap[z_probe] is now 1
2019-07-24 16:24:18,739 - octoprint.plugins.ABL_Expert - INFO - self.printer_cap[leveling_data] is now 1
2019-07-24 16:24:18,975 - octoprint.plugins.tracking - INFO - Sent tracking event printer_connected, payload: {u'printer_baudrate': 250000, u'printer_port': u'AUTO', 'firmware_name': 'Marlin bugfix-2.0.x (Github)'}
2019-07-24 16:24:20,925 - octoprint.plugins.ABL_Expert - INFO - Grid mesh size is 4
2019-07-24 16:24:56,308 - backoff - INFO - Backing off __get_dev_settings__(...) for 93.3s (HTTPError: 401 Client Error: Unauthorized for url: http://stream.getanywhere.io/api/dev_settings)
2019-07-24 16:26:09,485 - octoprint.util.comm - INFO - Printer seems to support the busy protocol, will adjust timeouts and set busy interval accordingly
2019-07-24 16:26:15,891 - octoprint.util.comm - INFO - Telling the printer to set the busy interval to our "communicationBusy" timeout - 1s = 2s
2019-07-24 16:26:29,972 - backoff - INFO - Backing off __get_dev_settings__(...) for 17.5s (HTTPError: 401 Client Error: Unauthorized for url: http://stream.getanywhere.io/api/dev_settings)
2019-07-24 16:26:47,866 - backoff - INFO - Backing off __get_dev_settings__(...) for 88.4s (HTTPError: 401 Client Error: Unauthorized for url: http://stream.getanywhere.io/api/dev_settings)
2019-07-24 16:27:23,353 - octoprint.util.comm - INFO - No response from printer after 3 consecutive communication timeouts, considering it dead.
2019-07-24 16:27:23,427 - octoprint.util.comm - INFO - Changing monitoring state from "Operational" to "Offline (Error: Too many consecutive timeouts, printer still connected and alive?)"
2019-07-24 16:27:24,087 - octoprint.plugins.tracking - INFO - Sent tracking event commerror_timeout, payload: {'commerror_text': 'Too many consecutive timeouts, printer still connected and alive?'}
Some of that "backoff" stuff suggests that there's an uphappy plugin, I'd guess. (Anywhere?)
It looks like OctoPrint tried to tell the firmware that it wants a 2-second timeout. This was followed by it not receiving any response within three attempts.
It may be worthwhile to visit OctoPrint's Settings -> Serial Connection -> Intervals & Timeouts screen. Hover over the second communication timeout field (which presumably is 3 seconds currently). Try adjusting this to something higher and see if it behaves. You'd think a 32-bit controller board would respond better, though.