This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSPM0G3507: I2C use on early samples

Part Number: MSPM0G3507
Other Parts Discussed in Thread: SYSCONFIG

Hello,

I am trying to make I2C run over a board with early sample of the microcontroler in the tittle

I have I2C on pins 7 ans 8 of 32 pins package, Slave is powered and there are 4.7k resistors on SCL and SDA lines

I tried with the 2 examples (master and pooling), just redirect the I2C pins to the one of my hardware and activate the slave

I see no communication on I2C bus, both lines are at 1 (VDD voltage, ie 3.3V)

Any idea what I could be missing?

I found a working example on another TI microcontroler that sets at transmit bit in the master register but it seems not to exist in the I2C library

Is there more informations I shall communicate to get an answer? I can make screenshots of the syscfg fule if needed

Thanks

  • Hi Thomas,

    I recommend looking at the i2c_controller_rw_multibyte_fifo_interrupts example, the function DL_I2C_fillControllerTXFIFO will fill and transmit the data across. If you peer into the function more it is setting the i2c MTXDATA bit with the data and that will cause the peripheral to send the data on the next transaction.

    The pin 7 and pin 8 I2C pins are not available on the pre-production device but they are added on the official production version of the device. I recommend changing those pins to the pre-production available I2C pins, these will be the available options in sysconfig.

    Regards,

    Luke

  • Hello Luke,

    thanks, it's what I just found as I just got the access to secure ressources and datasheet for early samples - tomorrow I try to reroute to pins 20/21

    Thanks

  • Hello,

    I rerouted HS, now I work with CCS 12.0 and SDK 0.58

    Syscfg seems not to be correct, I set 100kHz and scl is 250kHz - like for CAN module I assume that oscillator input shall be changed

    I cut the example to have only the write to the I2C slave and I see SCL SDA lines moving

    Next step is to adapt the driver to the slave, it's a little bit particular for the slave condition

    BR

    T.

  • I rerouted I2C pins (glitch when I wrote the message)

  • Hi Thomas,

    Are you saying using Sysconfig you adjusted the I2C clock to be 100kHz but you were getting 250kHz instead? I can verify this on my end a bit later this week.

    Regards,

    Luke

  • Hello Luke,

    yes I do - but with 125kHz it's fine, I2C is working thus no need to spend efforts on it

    I also see that with more recent CCS and SDK it's solved, I guess it's an old bug

    BR

    T.