The main problem is that the primary error mechanism is dropped bytes due to interrupts being held off leading to overflows in the 1-byte MCU FIFO. The "checksum" is extremely primitive: // Calc checksum.Ĭhecksum = checksum^instruction If the checksum doesn't match or the line number is out of sequence the firmware will reply Resend: nnn where nnn is the last successful N plus 1. The line number must be sequential (but can be reset with M110). This method is not very robust and I am looking for ideas about how the driver could modify its behavior to get the most out of it.Ĭommands are gcode with a line number and a checksum: N3 T0*57 There are many different flavors of firmware for the MCU but they all share a common method of trying to ensure link integrity. I'm working on an existing driver that controls an 8-bit MCU over a serial port.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |