finished comms emulator