 void setup()
 {
     Serial.begin(115200);
-    // i2c_scanner();
+    i2c_scanner();
     Wire.begin(); // master
     delay(1);
     Wire.beginTransmission(0x52);

void loop()
{
    byte cnt;
    byte buf[6];
    while (1) {
        cnt=0;
        send_zero();

        while (Wire.available()) {
            buf[cnt++]=Wire.read();
        }
        // make everything zero based, -127 -> 127
        buf[0]-=128;
        buf[1]-=128;
        buf[2]-=128;
        buf[3]-=128;
        buf[4]-=128;
        // scale joystick from -127->127 to -10->10
        buf[0]=(abs(buf[0])/13)*((buf[0]<0)?-1:1);
        buf[1]=(abs(buf[1])/13)*((buf[1]<0)?-1:1);
        // build string
        putval(buf[0], 2);
        putval(buf[1], 7);
        putval(buf[2],16);
        putval(buf[3],25);
        putval(buf[4],34);
        putval((buf[5]&2)==0,43);
        putval((buf[5]&1)==0,52);
        Serial.print(str);
        delay(100);
    }
}
