Skip to content

Instantly share code, notes, and snippets.

@nadavmatalon
Last active July 13, 2018 06:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save nadavmatalon/a8025ae948730a135ae7bd33cc804468 to your computer and use it in GitHub Desktop.
Save nadavmatalon/a8025ae948730a135ae7bd33cc804468 to your computer and use it in GitHub Desktop.
// http://playground.arduino.cc/Main/I2cScanner
// -------------
// i2c_scanner
// -------------
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(9600);
while (!Serial);
Serial.println("\nI2C Scanner");
}
void loop() {
byte error, address;
int nDevices;
Serial.println("Scanning...");
nDevices = 0;
for(address=1; address<127; address++) {
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0) {
Serial.print("I2C device found at address 0x");
if (address < 16) Serial.print("0");
Serial.print(address,HEX);
Serial.println(" !");
nDevices++;
} else if (error == 4) {
Serial.print("Unknow error at address 0x");
if (address < 16) Serial.print("0");
Serial.println(address,HEX);
}
}
if (nDevices == 0) Serial.println("No I2C devices found\n");
else Serial.println("done\n");
delay(5000);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment