Do any error messages appear or does the program just stop sending period? It sounds like the sockets aren't closing properly which...I don't understand. I'll write some more code to try and kill it completely.
Wkdcritz: I have no idea what's wrong except that the USB might be messing with things somehow. I don't know sadly It's nearly identical code to that of HyperGTS, just with some rewrites to make it function better and look cleaner.