1 Reply Latest reply on Nov 18, 2015 5:03 PM by PabloM_Intel

    I2C issue on Edison

    Geppettolab

      Hello,

       

      I need to use I2C protocol on the Edison platform. My setup up to now is the Edison on the Arduino breakout board programmed with the Arduino IDE. I follow the recommendations and used the available documentation and forum but still I don't get anything on the pins. My code is extremely simple up to now:

       

       

      #include <Wire.h>
      
      int led = 13;
      const byte myAdd = 8;
      int i = 0;
      
      void setup() {
        Wire.begin(myAdd); // join i2c bus (address optional for master)
        Serial.begin(9600);
        pinMode(led, OUTPUT);
      }
      
      void loop() {
        delay(100);
        digitalWrite(led, HIGH);
        delay(100);
        Wire.beginTransmission(10);  // transmit to device whose address has been saved in data[2]
        Wire.write(11);              // sends one byte
        Wire.endTransmission();           // stop transmitting
      
        Serial.println(i++);
        digitalWrite(led, LOW);
      }
      

       

      The led is blinking, the serial port is writing me, the I2c is completely silent (Both SDA and SCL pins. I checked also all the other arduino pins).

       

      What am I missing?

       

      Then I have a few question:

      I can't find a well done documentation about the circuitry on the board. For example: are the pull-up resistors already on the Edison chip, on the edison board, on the arduino board or are they not there and I have to place them?. In case they are on the chip, how can I program them through the Arduino IDE?

      Is the I2C high voltage 1.8, 2.5, 3.3, or 5? Is it settable? Where? How?

       

      On the forums there is written that possible an MRAA setting is needed. Where can I find a complete documentation on that?