#include #include #include #include #include #include const int DHTPIN_A = 2; const int RF24_CE = 9; const int RF24_CSN = 10; DHT dht_a(DHTPIN_A, DHT22); RF24 radio(RF24_CE, RF24_CSN); const uint64_t WRITE_PIPE = 0xF0F0F0F0E1LL; void setup() { Serial.begin(9600); dht_a.begin(); radio.begin(); radio.setRetries(15,15); radio.openWritingPipe(WRITE_PIPE); } void loop() { TemperaturePacket packet = readDHT(dht_a, 'A'); Serial.print("Probe: "); Serial.print(packet.Probe); Serial.print(" Temp (C): "); Serial.print(packet.Temperature); Serial.print(" Humidity: "); Serial.println(packet.Humidity); sendPacket(packet); delay(2000); } TemperaturePacket readDHT(DHT& dht, char probe) { float dhtTemperature = dht.readTemperature(); float dhtHumidity = dht.readHumidity(); Serial.print("Probe: "); Serial.print(probe); Serial.print(" Temp (C): "); Serial.print(dhtTemperature); Serial.print(" Humidity: "); Serial.println(dhtHumidity); TemperaturePacket packet = TemperaturePacket(probe, dhtTemperature, dhtHumidity); return packet; } void sendPacket(TemperaturePacket packet) { bool ok = radio.write( &packet, sizeof(TemperaturePacket) ); Serial.print("Send Status: "); Serial.println(ok); }