The first stage to determine the AC phase is to
utilize the built-in loopback mode to determine the reference value for the phase
measurement. This reference nullifies any phase offset in the device and measure
only the phase of the load. This is measured for channel 1 and 3 only. Channel 2 uses the results of channel 1 for the
calculations. Channel 4 uses the results of channel 3 for the calculations. Measure channel
1 and channel 3 sequentially, they cannot be measured at the same time.
For loopback delay detection, use the following test procedure for either BTL mode or PBTL mode:
- BTL mode
- Set the AC_DIAGS_LOOPBACK bit (bit 7 in register 0x16) to 1 to enable AC loopback mode.
- Apply a 0-dBFS 19 kHz signal and enable AC load diagnostics. CH1 and CH2 reuse
the AC sensing loop of CH1 (set bit 3 in register 0x15 to 1). CH3, CH4 reuse the AC sensing loop of CH3 (set bit 1 in
register 0x15 to 1).
- Read back the 16bit hexadecimal, AC_LDG_PHASE1 value. Register 0x1B holds the MSB and register 0x1C holds the LSB.
- For channel 1/2 set bit 3 in register 0x15 to 0. For channel 3/4 set bit 1 in register 0x15 to 0.
- PBTL mode
- Set the AC_DIAGS_LOOPBACK bit (bit 7 in register 0x16) to 1 to enable AC loopback mode.
- Set the PBTL CH12 and PBTL CH34 bits (see register 0x00) to 0 without
toggling SDz pin to enter BTL mode only for load diagnostics.
- Apply a 0 dBFS 19 kHz signal and enable AC load diagnostics. For PBTL_12,
enable the AC sensing loop of CH1 (set bit 3 in register 0x15 to
1). For PBTL_34, enable the AC sensing loop of CH3 (set bit 1 in
register 0x15 to 1).
- Read back the AC_LDG_PHASE1 value. Register 0x1B holds the MSB and register 0x1C holds the LSB.
- Set the PBTL CH12 and PBTL CH34 bits (see register 0x00) to 1 to go back to
PBTL mode for load diagnostics.
- For PBTL_12 set bit 3 in register 0x15 to 0. For PBTL_34 set bit 1 in register 0x15 to 0.
When the test is complete, the channel reporting register indicates the status change from the AC diagnostic mode to the Hi-Z state. The detected impedance is stored in the appropriate I2C register.