creating comms layer