#include #include #include #include #include RF24 radio(A5, A4); // CE, CSN const byte address[6] = "00001"; //Byte of array representing the address. This is the address where we will send the data. This should be same on the receiving side. boolean button_state = 0; VL53L0X sensor; VL53L0X sensor2; void setup() { radio.begin(); //Starting the Wireless communication radio.openWritingPipe(address); //Setting the address where we will send the data radio.setPALevel(RF24_PA_MIN); //You can set it as minimum or maximum depending on the distance between the transmitter and receiver. radio.stopListening(); //This sets the module as transmitter pinMode(A7, OUTPUT); pinMode(A6, OUTPUT); digitalWrite(A7, LOW); digitalWrite(A6, LOW); delay(10); Wire.begin(); Serial.begin (9600); //SENSOR pinMode(A7, INPUT); delay(1); Serial.println("00"); sensor.init(true); Serial.println("01"); delay(1); sensor.setAddress((uint8_t)22); Serial.println("02"); //SENSOR 2 pinMode(A6, INPUT); delay(1); sensor2.init(true); Serial.println("03"); delay(1); sensor2.setAddress((uint8_t)25); Serial.println("04"); Serial.println(""); Serial.println("addresses set"); Serial.println(""); Serial.println(""); sensor.setTimeout(500); sensor2.setTimeout(500); } void loop() { if (sensor.readRangeSingleMillimeters() < 300){ button_state = HIGH;} else if (sensor2.readRangeSingleMillimeters() < 300) {button_state = HIGH;} else { button_state = LOW;} if(button_state == HIGH) { const char text[] = "Your Button State is HIGH"; radio.write(&text, sizeof(text)); //Sending the message to receiver } else { const char text[] = "Your Button State is LOW"; radio.write(&text, sizeof(text)); //Sending the message to receiver } radio.write(&button_state, sizeof(button_state)); //Sending the message to receiver Serial.println("__________________________________________________________________"); Serial.println(""); Serial.println("================================="); Serial.println ("I2C scanner. Scanning ..."); byte count = 0; //for (byte i = 1; i < 120; i++) for (byte i = 1; i < 30; i++) { Wire.beginTransmission (i); if (Wire.endTransmission () == 0) { Serial.print ("Found address: "); Serial.print (i, DEC); Serial.print (" (0x"); Serial.print (i, HEX); Serial.println (")"); count++; } // end of good response } // end of for loop Serial.println ("Done."); Serial.print ("Found "); Serial.print (count, DEC); Serial.println (" device(s)."); Serial.println("================================="); //CHECK DISTANCES long DISTANCE_FWD = (sensor.readRangeSingleMillimeters()/25.4001); long DISTANCE_FLT = (sensor2.readRangeSingleMillimeters()/25.4001); //FWD OR SENSOR if (sensor.timeoutOccurred()) { Serial.println("_________________________________"); Serial.print("Distance FWD (READING): "); Serial.println(" TIMEOUT"); Serial.println("_________________________________"); Serial.println(""); } else { Serial.println("_________________________________"); Serial.print("Distance FWD (feet): "); Serial.println(DISTANCE_FWD/12); Serial.print("Distance FWD (inches): "); Serial.println(DISTANCE_FWD); Serial.println("_________________________________"); Serial.println(""); } //FLT OR SENSOR2 if (sensor2.timeoutOccurred()) { Serial.println("_________________________________"); Serial.print("Distance FLT (READING): "); Serial.println(" TIMEOUT"); Serial.println("_________________________________"); Serial.println(""); } else { Serial.println("_________________________________"); Serial.print("Distance FLT (feet): "); Serial.println(DISTANCE_FLT/12); Serial.print("Distance FLT (inches): "); Serial.println(DISTANCE_FLT); Serial.println("_________________________________"); Serial.println(""); } Serial.println("__________________________________________________________________"); Serial.println(); Serial.println(); Serial.println(); Serial.println(); delay(10);//can change to a lower time like 100 }