1.4 Dynamic Address Assignment
The Target device participates in Dynamic Address Assignment procedure depending on whether or not the device has been configured as Hot-Join capable while using the HJCAP bit.
When the Target is configured as Hot-Join capable (HJCAP = 1
), the I3C
module responds to an Enter Dynamic Address Assignment (ENTDAA) CCC only after a
Hot-Join is requested first. Refer to Hot-Join
Transaction for more information.
When the Target is configured as not Hot-Join capable (HJCAP = 0
), the
I3C module responds to an ENTDAA CCC and participates in the Dynamic Address Assignment
process if it does not have a Dynamic Address assigned. The entire Dynamic Address
Assignment process happens automatically without any software intervention. Once the
controller assigns the Target a Dynamic Address, it is stored in the I3CxDADR register,
and the Dynamic Address Changed DACHIF flag is set as a notification.
Before a Dynamic Address is assigned, the module typically operates in I2C
mode (OPMD = 0b00
). In this mode, the module can perform Legacy I2C
Transactions and respond to certain Broadcast CCCs
only. Once the Target device is assigned a Dynamic Address, the module begins operating
in I3C SDR mode (OPMD = 0b01
). In this mode, the module can participate
in all types of SDR transactions (except Legacy I2C Transactions).
0b01
) even before a Dynamic Address is assigned.The controller can clear the Dynamic Address stored in the Target device by sending the Reset Dynamic Address Assignment (RSTDAA) CCC. The controller can also assign a new Dynamic Address to the Target using the Set New Dynamic Address (SETNEWDA) CCC.