USB connection issue only resolved with a server reboot

Here's my setup:
I'm running 15 delta printers on a Windows 10 machine all running through USB. Sometimes I get connection issues with a printer which is understandable with all the cables running everywhere. The symptoms are the printer no longer responding to server commands and the server console for the printer showing 'Seems like we missed an ok, continue sending' Nothing I try seems to get it to recover from this state except rebooting the server. The issue with rebooting the server is the other 14 printers are constantly running and so its better to leave one off then mess with the others. I have found that I can 'add' a new printer to the server, give it the same COM port and it runs without issue. By adding a printer I just mean creating a new printer profile but using the same physical printer that was having issue.

So to my question: Is there a way to get the server to forget, delete, or remove the prior connection so that it can establish a new one without being restarted? 

I've tried deactivating-activating; turning the printer off and on; plugging it into a different USB port so that it has a new COM port and every combination sequence between the three. The fact that by using a new printer config(slug) and then the printer works fine, leads me to believe the issue resides somewhere with the servers connection tied to the printer config(slug). Thats what I'm trying to reset. 

Comments

  • If a new printer works I would expect deactivate/activate to also work. I will have an extra look on deactivate if it does not reset a variable that might prevent reconnecting, also I often do this e.g. for uploading a new firmware for testing.

    Can you say what happens if you deactivate and activate? Does it start a connection loop that constantly fails or does it not try to reconnect at all?
  • When I deactivate/activate it does connect to it as far as the server shows the green link in the top left by the Printer name. However the temperature for the hotend doesnt update and the printer wont respond to any commands. On the console page it shows:
    23:30:44.731: Free RAM:1156
    23:30:44.731: Autoretract:0
    23:30:44.731: X:0.00 Y:0.00 Z:0.000 E:0.0000
    23:30:44.731: SelectExtruder:0
    23:31:04.748: Warning: Seems like we missed a ok - continue sending. (3)

    here is the log showing me change the printer configs from 'K8' to 'K1'
    2019-07-06 23:29:45: Port closed for K8
    2019-07-06 23:29:45: Connection closed: K8
    2019-07-06 23:29:46: Reset printer K8
    2019-07-06 23:29:46: Opened virtual port VirtualDelta
    2019-07-06 23:30:10: Closed virtual port COM22
    2019-07-06 23:30:11: Connection started: K1
    2019-07-06 23:30:11: Reset printer K1
    2019-07-06 23:30:30: Port closed for K1
    2019-07-06 23:30:30: Connection closed: K1
    2019-07-06 23:30:41: Connection started: K1
    2019-07-06 23:30:41: Reset printer K1

    In the above situation both printer names K8 and K1 were the same physical printer. Everything works fine using K8 config but hangs using the K1 config. And both configs are the same except for printer name and slug name. And if I restarted repetier-server K1 would work again. 
  • I think that was helpful. I checked what is going on and saw that activate/deactivate is reusing the first port created - the one that has failed somehow. So reusing that one is then likely to continue the failed state. I rewrote that part to now always create a new port object so it should behave like with adding a new printer.
  • Awesome thanks for the support.

Sign In or Register to comment.