RepetierServer + Marlin : echo:Unknown command: "k"
I'm not sure if this fits in the Repetier forum or if I sould ask in the Marlin forum?
Before I elaborate my issue in detail, let me ask you where I should ask this.
Thing is I got the error described below when I started to use Repetier Server via a RPi Zero W + Repetier Host.
I had no issues with direct serial connection from Repetier-Host to Ramps 1.4 but when printing via repetier server, this started.
Repetier wrote some settings to modify in Marlin. I am not sure though what I should do. I found some settings but I don't know if they are the right ones.
Repetier said:The problem here is caused by
N49 M109 S200.000000
which is a slow command taking longer then timeout seconds. Server knows this and as long as it thinks it is not finished will not cause the timeout. It is not that visible now if the M109 got a matching ok and 5 more commands so run out of the test scope for slow commands, but somehow this is exactly what has happened.
What firmware exactly are you using? I have seen that marlin was working on a system of extra buffer so that is what could cause the "ok" to confuse server.
On the other side if you use such a new marlin version, it also has nice additions that help hosts to fix/detect problems much better and would have prevented this:
- Enable busy protocol or however they call it. This tells server when firmware is running a slow command so you can even reduce timeout to 3 seconds.
- Enable line numbers in ok. This allows detecting missed "ok" on the fly without needing to hit timeout. Also keeps performance up to a good level.
- Enable sending "wait" when idle. This informs server that all commands are processed.
I have no idea why they do not enable these by default. These are very big adds to stable communication.
My config is:
RAMPS 1.4 with RPi Zero W
Repetier Server 0.90.7
Repetier Host 2.1.3
Marlin 1.1.1 (don't want to change firmware. Never change a running system. At least with USB connection an printing directly from repetier host worked like a charm.)
I'm getting these errors:
...21:28:44.113 : X:87.43 Y:117.73 Z:1.30 E:0.00 Count X:8484 Y:10513 Z:5200
21:28:45.757 : X:66.69 Y:117.18 Z:1.30 E:0.00 Count X:8480 Y:11708 Z:5200
21:28:45.758 : echo:Unknown command: "k"
21:28:45.758 : Error:No Line Number with checksum, Last Line: 19307
21:28:45.759 : Error:Line Number is not Last Line Number+1, Last Line: 19307
21:28:45.759 : Resend: 19308
21:28:49.150 : X:71.45 Y:94.18 Z:1.30 E:0.00 Count X:4995 Y:8283 Z:5200
21:28:50.463 : X:84.66 Y:87.18 Z:1.30 E:0.00 Count X:6800 Y:9444 Z:5200
21:28:51.768 : X:113.77 Y:80.95 Z:1.30 E:0.00 Count X:8459 Y:8708 Z:5200
21:28:52.427 : X:114.98 Y:102.36 Z:1.30 E:0.00 Count X:10500 Y:7218 Z:5995
21:28:53.630 : X:149.99 Y:117.17 Z:1.30 E:0.00 Count X:11498 Y:10236 Z:5200
21:28:57.770 : X:125.42 Y:125.43 Z:1.30 E:0.00 Count X:14169 Y:13235 Z:5200
21:29:00.729 : X:143.56 Y:62.76 Z:1.30 E:0.00 Count X:14343 Y:7021 Z:5990N194ok
21:29:31.582 : Warning: Communication timeout - resetting communication buffer.
21:29:31.582 : Connection status: Buffered:47, Manual Commands: 2, Job Commands: 5000
21:29:31.582 : Buffer used:47 Enforced free byte:40 lines stored:2
21:29:47.872 : X:49.95 Y:72.68 Z:1.30 E:0.00 Count X:5727 Y:6953 Z:5200
21:29:50.058 : X:64.40 Y:137.62 Z:1.30 E:0.00 Count X:5654 Y:13762 Z:5200
21:29:50.281 : X:54.93 Y:137.74 Z:1.30 E:0.00 Count X:6185 Y:13759 Z:5200
Before cluttering the repetier forum I wanted know if I am at the correct place to ask.