The protocol. -> 1b 04 This is probably some kind of initialisation. -> 1b 05 <- 30 03 This is a request for a 2 byte status code. Known responses are 30 03 - "0" - Initial non-moving status 31 03 - "1" - Moving 20 20 - " " - Idle? 03 is a common terminator for the commands and responses. -> "TT" 03 This moves the cutter to the left (i.e. homes it). While it is moving the 1b 05 status is 31 03. After the move is finished it reverts to 30 03. -> "FG" 03 <- "V5.00 " 03 This is a request for the version of the device (currently 5.00) -> "FW113" 03 Possibly something to do with the firmware? Or just an initilisation thing. -> "!10" 03 -> "!10" 03 "FX10,0" 03 -> "FC0" 03 -> "FY0" 03 -> "FE0" 03 I reckon some kind of zeroing. -> "TB71" 03 <- " 0, 0" 03 Possibly some kind of position request. -> "FA" 03 <- " 0, 0" 03 ? -> "FN1" 03 Maybe prepare for data. ->