decouples gpio from socket server