send and receive data working