Example #1
0
int main()
{
    UDPReceiver receiver(PORT_RELAY_CONTROL);
    receiver.init_connection();

    DiamondPMM relayBoard;
    DiamondPMMStateRelay relays(relayBoard);

    uint16_t packet_length;
    uint8_t *array;

    //Energizing the camera-power relays by default
    relays.setRelay(0, true);
    relays.setRelay(1, true);

    while(1)
    {
        packet_length = receiver.listen();
        array = new uint8_t[packet_length];
        receiver.get_packet(array);

        if((packet_length == strlen(PASSPHRASE))+2 && (strncmp((char *)array, PASSPHRASE, strlen(PASSPHRASE)) == 0)) {
            uint8_t relay_number = array[packet_length-2];
            bool on_if_true = array[packet_length-1];
            printf("Valid relay-control passphrase received: %d %s\n", relay_number, (on_if_true ? "ON" : "OFF"));
            relays.setRelay(relay_number, on_if_true);
        } else {
            printf("Invalid relay-control passphrase received: %s\n", array);
        }
        delete array;
    }

    return 0;
}
Example #2
0
void tcp_relay2(int timeout,int s1,int d1,int s2,int d2)
{	int sdv[2][2];
	int rccs[2];

	sdv[0][0] = s1;
	sdv[0][1] = d1;
	sdv[1][0] = s2;
	sdv[1][1] = d2;
	relays(timeout,2,sdv,rccs);
}
Example #3
0
int main(int argc, char* argv[])
{
    DiamondPMM relayBoard;
    DiamondPMMStateRelay relays(relayBoard);

    int value;
    bool set;
    
    relays.setRelay(atoi(argv[1]), 1);
    sleep(10);
    relays.setRelay(atoi(argv[1]), 0);
    //sleep(10);

    //relays.setRelay(3, 0);
    //sleep(10);
   return 0;
}