8.2 I/O Flags

The system is always host, so before any I/O transaction, the system must send an eight bit flag to the device to indicate the I/O operation that will be subsequently performed.

Table 8-1. IO Flags
Value Name Meaning
0x77 Command After this flag, the system starts sending a command group to the device. The first bit of the group can follow immediately after the last bit of the flag.
0x88 Transmit This command tells the device to wait for a bus turnaround time and then to start transmitting its response to the previously transmitted command group.
0xBB Idle Upon receipt of an idle flag, the device goes into the idle mode and remains there until the next Wake token is received.
0xCC Sleep Upon receipt of a sleep flag, the device enters the low-power sleep mode until the next Wake token is received.
Note: All other values are reserved and must not be used.
  • Transmit Flag

    The transmit flag is used to turn around the bus so that the ATECC608B-TFLXTLS can send data back to the system. The bytes that the device returns to the system depend on the current state of the device and may include status, error code, or command results.

    When the device is busy executing a command, it ignores the SDA pin and any flags that are sent by the system. See the Command Summary for each command type’s execution delays. The system must observe these delays after sending a command to the device.

  • Idle Flag

    The idle flag is used to transition the ATECC608B-TFLXTLS to the idle mode, which causes the input/output buffer to be flushed. It does not invalidate the contents of the TempKey, MessageDigest Buffer and Alt Key registers. This flag can be sent to the device at any time that it will accept a flag. When the device is in the idle mode, the watchdog timer is disabled.

  • Sleep Flag

    The sleep flag transitions the ATECC608B-TFLXTLS to the low-power sleep mode, which causes a complete reset of the device, including invalidation of the contents of the SRAM and all volatile registers. This flag can be sent to the device at any time that it will accept a flag.