Qwiic sensors + Lilygo T-Display S3 (ESP32S3)

Hi,

I bought 2 sensors from the store, I wanted to try something that didn’t need soldering so I chose these that have I2C Qwiic connection.

  • 1- I have a “SparkFun 9DoF IMU Breakout - ICM-20948”, I uploaded the basic example code on my device, but it keeps giving me errors, and I don’t know what to do

    https://github.com/sparkfun/SparkFun_IC … Basics.ino

    22:49:09.008 -> ICM_20948::checkID: ICM_20948_check_id returned: Data Underflow
    22:49:09.008 -> ICM_20948::startupDefault: checkID returned: Data Underflow
    22:49:09.008 -> ICM_20948_I2C::begin: startupDefault returned: Data Underflow
    22:49:09.008 -> Initialization of the sensor returned: Data Underflow
    22:49:09.008 -> Trying again...
    
  • 2- I also have a "SparkFun Qwiic Haptic Driver - DA7280", again I tried the basic example, but nothing happens

    https://github.com/sparkfun/SparkFun_Qw … C_mode.ino


  • Some info about the T-Display S3: https://github.com/Xinyuan-LilyGO/T-Display-S3

    Can anyone please help me?

    I got suggested to use

    https://github.com/sparkfun/SparkFun_IC … 1327487284

    WIRE_PORT.begin(18, 17, (uint32_t)400000);
    

    because if you check at the device pin configurations:

    LilyGO seem to use SCL 17 and SDA 18:

    https://github.com/Xinyuan-LilyGO/T-Dis … nfig.h#L47

    I actually though this would have been the solution, but for now nothing changed, unluckly the error is still the same.

    Has anyone managed to make I2C work correctly on a T-Display S3?

    I can also crosscheck with Lilygo’s support team, but they’re already working for me on another issue, and always need to wait a day or two for the response, I don’t want to add entropy :slight_smile:

    I’ve managed to find the solution!

    Thanks to this guy https://github.com/VolosR/TemperatureTD … ay.ino#L43

    The correct settings are:

    WIRE_PORT.begin(43, 44);
    

    :smiley: :smiley: :smiley:

    But why? Just for my curiosity

    The ESP32S3 module defines the I2C pins as 8 and 9:

    https://github.com/espressif/arduino-es … uino.h#L30

    LilyGO uses 17 and 18:

    https://github.com/Xinyuan-LilyGO/T-Dis … nfig.h#L47

    43 and 44 are actually the TX and RX pins for the ESP32 :confused:

    Anyway: if a mod could please set [SOLVED] as prefix on the thread title, so anyone else can be happy…

    43 and 44 are the pins on the qwiic connector.

    YellowDog:
    Screenshot_20221126-123946_Chrome.jpg

    43 and 44 are the pins on the qwiic connector.

    Dang, they even were written in plain view and I never actually looked there

    Alright, I have learned some more stuff

    Thanks