SLUAAM4 December 2023 BQ76905 , BQ76907
Subcommands use a different format from direct commands and are accessed indirectly using the 7-bit command address space. They also provide the capability for block transfers. To issue a subcommand, the command address is written to 0x3E/0x3F. If data is to be read back, it will be populated in the 32-byte transfer buffer which uses addresses 0x40 - 0x5F.
Certain subcommands write data to a register and must be followed by a write to 0x60/0x61 with the checksum and length. This only applies to the CB_ACTIVE_CELLS, PROG_TIMER, PROT_RECOVERY, and SECURITY_KEYS subcommands. Examples for calculating checksum and length are provided in the next section since this is also required when writing to RAM registers.