This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ79656-Q1: BQ79656 Reverse Communication

Part Number: BQ79656-Q1

Tool/software:

Hello,

I'm working with a BQ79656-based daisy chain in a Ring architecture using an STM32F105VCT7 microcontroller. Forward communication (DIR_SEL = 0) works well. However, when I attempt to switch to reverse communication (DIR_SEL = 1), I am unable to get any response from the stack.

Forward Communication

  • Send WAKE tone.

  • Broadcast CONTROL1 (0x0309) with ADDR_WR = 1 (0x01).

  • Broadcast DIR0_ADDR sequentially (0x0306) for all boards.

  • Broadcast COMM_CTRL (0x0308) = 0x02 to set all as stack devices.

  • Single write to COMM_CTRL = 0x03 for the top-of-stack device.

Reverse Communication

  • Single device write to base device CONTROL1 (0x0309) = 0x80 (DIR_SEL = 1).

  • Broadcast write reverse to COMM_CTRL (0x0308) = 0x00 to clear stack settings.

  • Broadcast write reverse to CONTROL1 = 0x80 (DIR_SEL = 1) for all devices.

  • Broadcast write reverse to CONTROL1 = 0x81 (ADDR_WR = 1 | DIR_SEL = 1).

  • Broadcast DIR1_ADDR (0x0307) sequentially for all devices.

  • Broadcast COMM_CTRL = 0x02.

  • Single write to COMM_CTRL = 0x03 to mark the new ToS

     Is there anything I’m missing?

    Thank you!
  • Vaishali,

    It is outlined in the datasheet how to switch from north to south communication direction.

    It looks like you are doing this correctly. 

    Do you have ring architecture set up correctly? Meaning do you have the VIF lines connected in the south direction?

    Best,

         Quentin