Skip to main content
Explorer
February 13, 2025
Solved

Changing the Default I2C Address of STSAFE-A110

  • February 13, 2025
  • 1 reply
  • 956 views

I have a question regarding the use of the STSAFE-A110.

Currently, the default I2C address of the STSAFE-A110 is set to 0x20. It is possible to change this address?

If it is possible, could you please explain how to do it?

 

Thank you in advance for your assistance.

    This topic has been closed for replies.
    Best answer by Benjamin BARATTE

    Hi @y_yamamoto ,

     

    Actually, the I2C parameters can be changed by personalization.

    On evaluation part (STSAFA110xxSPL02/3), you can change the I2C address as well.

    You need to use the StSafeA_PutAttribute() command with 

    InAttributeTag to STSAFEA_TAG_I2C_PARAMETER

    pInData to a 2 bytes array with bytes 0 is the I2C address on 7 bits shifted by 1 bits.

    and bytes 1 shall be 0x04 if you want to keep the I2C address updatable or 0x05 if you want to lock the I2C address.

     

    uint8_t pInData[2] = { 0x20 << 1, 0x4};
    
    StSafeA_ResponseCode_t status;
    
    status = StSafeA_PutAttribute(pStSafeA, STSAFEA_TAG_I2C_PARAMETER, pInData, sizeof(pInData), STSAFEA_MAC_NONE);

     

    Once you have executed this command, you have to do a power cycle on the STSAFE-A to make it active.

    Best Regards,

    Benjamin

    1 reply

    ST Employee
    February 24, 2025

    Hi @y_yamamoto ,

     

    Actually, the I2C parameters can be changed by personalization.

    On evaluation part (STSAFA110xxSPL02/3), you can change the I2C address as well.

    You need to use the StSafeA_PutAttribute() command with 

    InAttributeTag to STSAFEA_TAG_I2C_PARAMETER

    pInData to a 2 bytes array with bytes 0 is the I2C address on 7 bits shifted by 1 bits.

    and bytes 1 shall be 0x04 if you want to keep the I2C address updatable or 0x05 if you want to lock the I2C address.

     

    uint8_t pInData[2] = { 0x20 << 1, 0x4};
    
    StSafeA_ResponseCode_t status;
    
    status = StSafeA_PutAttribute(pStSafeA, STSAFEA_TAG_I2C_PARAMETER, pInData, sizeof(pInData), STSAFEA_MAC_NONE);

     

    Once you have executed this command, you have to do a power cycle on the STSAFE-A to make it active.

    Best Regards,

    Benjamin

    Visitor II
    October 21, 2025

    Hi Benjamin,

     

    i am desperatly searching for a programming manual of that STSAFE-A110. Where did you find the information, which parameters the StSafeA_PutAttribute Command needs ? I could not find a detailed description of the commands or the possible responses. Would you mind sending me a link ?

     

    Thanks in advance

      Richard