UART timeout implemented - untested

Also adjusted the polling timer to happen slightly faster than IR reads