Missing pulses!

Or, put another way, at 400 characters per second, the readBytes takes a minimum of 12.5 milliseconds filling the buffer, and now you only print once.
This will work until the cord starts going faster, up to about 625 pulses per second, or just over 1.5 metres per second.