Single stepping or slowing down host requests

Hi  I am debuging my Gcode interpreter which works with the printer when manually sending commands through a terminal program. However it only runs for a short time with Repetier Host before it hangs and stops, waiting for acknowledge. I am trying to figure out the problem and thought that maybe there is a timing issue. I want to run repetier and not do it manually since there maybe a formating problem I am not aware of. 

Comments

  • Host only stops sending when it thinks buffe ris full and it is waiting for "ok" to free a send line. So if you have your 127 byte buffer it send some commands and as soon as they are full it stops until timeout and should continue then. Use line numbers after ok to catch "ok" that were received with communication error oke only "k".
  • The Repetier host is putting out the rs Line number sometimes when it stops and at other times it just stops and there is no ok sent from the printer even though the firmware on my end must have sent it to get back to the main loop.  I have a 64 byte receive buffer but only accept one command line at a time. I've set Repetier to use 64 bytes for receiver. So currently I dont allow stacking up of multiple commands in the Receive buffer, and I also dont accpet multiple command lines to be received until the interpretation of the current active line is complete. So this may be the hangup?  But can I step through the Gcode line by line?
  • You do not control when chars arrive. If you do not pull them they are lost! So if you say 64 buffer (btw. arduino implementation has only 63 chars working if you say 64 byte). We also do command by command but allow input buffer to fill up for faster communication. Set host to ping pong if it should wait for "ok" and not fill up buffers.

    For line by line disable temperature checks in host and send them in manual control line by line. There is no debug for this available.
  • I dont control character arrivals but the whole line representing one command line. Once the line is enabled I dont allow another command until it is parsed. Because of this I probably am loosing some short commands so I will make the changes for allowing a circular buffer arrangement.  I should have done this originally but I don't think  it will be much trouble to change it. The transmit buffer is already done this way.  How and where can you set the ping pong mode? I want to see if that's really the only problem.
  • In host printer settings in the communication tab you can set ping-pong, Same for server.
Sign In or Register to comment.