#include const int led = 4; void setup() { Serial.begin(9600); Serial.println("\nI2C Scanner"); Wire.begin(); pinMode(led, OUTPUT); digitalWrite(led, LOW); } float readUS() { uint32_t data; Wire.beginTransmission(0x57); //Transfer data to 0x57. Wire.write(0x01); Wire.endTransmission(); //Stop data transmission with the Ultrasonic Unit. Ultrasonic Unit delay(20); Wire.requestFrom(0x57,3); //Request 3 bytes from Ultrasonic Unit. data = Wire.read();data <<= 8; data |= Wire.read();data <<= 8; data |= Wire.read(); return float(data) / 1000; } void loop() { static float newvalue = 0; newvalue = readUS(); Serial.println(String(newvalue)); if (newvalue < 100) { digitalWrite(led, HIGH); delay(200); } else { digitalWrite(led, LOW); } delay(200); }