make gate work, change to serial protocol