Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

i2c multi master

elconfa
2018-11-23
2018-11-25
  • elconfa - 2018-11-23

    Hi, I saw that you can program 2 i2c Master. How can I use them? What are the other pins for controlling the second i2c network?

    Thanks in advance for the help

    Massimo

     
  • KKempeneers - 2018-11-23

    I doubt that you can use a second I2C master since Raspberry Pi only offers one I2C interface, you can however put multiple masters on one I2C interface (i.e. two Raspberry Pi's).

    HTH,

    Koen.

     
  • eschwellinger

    eschwellinger - 2018-11-25

    Hi,
    you could add two I2C master - start here to read:
    https://www.raspberrypi.org/forums/view ... 44&t=88882
    so if you have it enabled on Linux just then in CODESYS add the second master and add
    the correct I2C file path to the device.

    BR
    Edwin

    IMG: twoI2CMaster.png

     
  • KKempeneers - 2018-11-25

    Okay ... I stand corrected.

    However, although it seems there's a second I2C interface available on RPi hardware when you issue the gpio readall command:

    pi@raspberrypi:~ $ ls /dev/i2c*
    /dev/i2c-1
    pi@raspberrypi:~ $ gpio readall
     +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
     | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
     +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
     |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |
     |   2 |   8 |   SDA.1 | ALT0 | 1 |  3 || 4  |   |      | 5v      |     |     |
     |   3 |   9 |   SCL.1 | ALT0 | 1 |  5 || 6  |   |      | 0v      |     |     |
     |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 0 | IN   | TxD     | 15  | 14  |
     |     |     |      0v |      |   |  9 || 10 | 1 | IN   | RxD     | 16  | 15  |
     |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
     |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
     |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
     |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
     |  10 |  12 |    MOSI | ALT0 | 0 | 19 || 20 |   |      | 0v      |     |     |
     |   9 |  13 |    MISO | ALT0 | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
     |  11 |  14 |    SCLK | ALT0 | 0 | 23 || 24 | 1 | OUT  | CE0     | 10  | 8   |
     |     |     |      0v |      |   | 25 || 26 | 1 | OUT  | CE1     | 11  | 7   |
     |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
     |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
     |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
     |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
     |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
     |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
     |     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
     +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
     | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
     +-----+-----+---------+------+---+---Pi 3---+---+------+---------+-----+-----+
    

    A quick search on the internet learns that at least for the RPi 3: https://www.raspberrypi.org/forums/viewtopic.php?t=167773

    Zitat:
    ID_SD and ID_SC PINS:
    These pins are reserved for ID EEPROM.
    At boot time this I2C interface will be
    interrogated to look for an EEPROM
    that identifes the attached board and
    allows automagic setup of the GPIOs
    (and optionally, Linux drivers).
    DO NOT USE these pins for anything other
    than attaching an I2C ID EEPROM. Leave
    unconnected if ID EEPROM not required

    In fact ... I was so puzzled by Edwin's answer that I spend a day trying to get both interfaces up, what else is there to do on Sunday. Well, I ended up with a corrupt SD card and a rather time consuming reinstall

    Kind regards,

    Koen.

     

Log in to post a comment.