Skip to content

Getting Assigned Addresses

After ENTDAA, our controller will keep the assigned address table for user to get. The assigned address table will be reset while a RSTDAA is received.

User can get the target assigned address by:

assigned_address = i3c_target.assigned_address
print(f"I3C target assigned address: 0x{assigned_address:02x}")

Or get the assigned address table by:

for i in range(64):
    if i3c_controller.state.assigned_addresses_l & (1 << i):
        print(f"Got device at address {i}")
# assigned_addresses_h (which is for high64) will be updated soon