There is a side effect with the pyxid library that is documented on GitHub, which is that the timer stops after about 4 hours and pyxid will stop reporting keypresses. The solution is simple, if that’s the issue: send a command to reset the built-in timer at least once every four hours.
See also the pyxid read me file.
pyxid can be used with the response pad only in XID mode. If you want to use another, simpler mode like ASCII, then you want to consider using pyserial instead and use it to simply open the serial port and wait for a single byte to arrive on the port, then close the port when you’re done at the end of the experiment.