From Tekkotsu Wiki
You can subscribe to events on other robots by creating a remote listener. This only requires knowing the other robot's IP address. The other robot must be running Tekkotsu but needn't be executing any specific behavior; the Tekkotsu system itself will transmit events to any remote listener that requests them.
int ipaddr = string_util::stringToIntIP("172.16.1.5"); erouter->addRemoteListener(this, ipaddr, EventBase::buttonEGID);
When processEvent receives an event, you can write event.getHostID() to check whether this was a local event or an event snooped from a remote robot. The method returns -1 for local events. Currently it returns the IP address for remote events.
See the RemoteButtonEvent Demo for an example of how to use remote events with state machines.