58 lines
1.3 KiB
C++
58 lines
1.3 KiB
C++
#include <I2CRelay.h>
|
|
|
|
I2CRelay relay;
|
|
|
|
void setup() {
|
|
Serial.begin(115200);
|
|
delay(1000);
|
|
Serial.println("I2CRelay Master Example with 'i' command for ID");
|
|
relay.begin();
|
|
|
|
// Run test functions as before
|
|
relay.setRelay(1, 1);
|
|
relay.setRelay(8, 1);
|
|
Serial.println("Turned ON relay 1 and relay 8");
|
|
delay(500);
|
|
|
|
relay.setRelay(1, 0);
|
|
relay.setRelay(8, 0);
|
|
Serial.println("Turned OFF relay 1 and relay 8");
|
|
delay(500);
|
|
|
|
relay.setAllRelays(1);
|
|
Serial.println("Turned ON all relays");
|
|
delay(500);
|
|
|
|
relay.setAllRelays(0);
|
|
Serial.println("Turned OFF all relays");
|
|
delay(500);
|
|
|
|
relay.setDeviceName("TestPanel");
|
|
Serial.println("Device name set to 'TestPanel'");
|
|
delay(500);
|
|
|
|
String id = relay.getIdentification();
|
|
Serial.print("Identification string: ");
|
|
Serial.println(id);
|
|
delay(500);
|
|
|
|
relay.setI2CAddress(0x09);
|
|
Serial.println("Changed I2C address to 0x09");
|
|
Serial.println("** Update master address to 0x09 for further communication **");
|
|
}
|
|
|
|
void loop() {
|
|
if (Serial.available()) {
|
|
String cmd = Serial.readStringUntil('\n');
|
|
cmd.trim();
|
|
// Replace "id" with "i" here:
|
|
if (cmd == "i") {
|
|
String id = relay.getIdentification();
|
|
Serial.print("ID: ");
|
|
Serial.println(id);
|
|
} else {
|
|
relay.handleSerialCommand(cmd);
|
|
}
|
|
}
|
|
}
|