updated opo interface to provide more clarity
added some checks to avoid transmit and recieving colliding