added receiveData() , still WIP