Implementation of the Wireless GPIO Application.
The application uses 1 key for input and two LEDs for signalling the output, where LED0 represents the actor and LED1 gives status information, e.g. if a key press is received by another node.
After power up, the application is in state APP_RUNNING and is waiting for input events. When the key is pressed shortly, the local actor (if enabled) is processed and frame indicating a CMD_SWITCH is sent. If this frame is received by another node, the actor of this node is updated and a CMD_STATUS frame is sent.
Each node can enter the configuration mode, when long pressing of the key is detected. In the configuration the node can be adjusted to be STANDBY (0), SWITCH (1), ACTOR (2) or SWACTOR (switch and actor, 3).