further removes repeated serial.read() calls