Other Parts Discussed in Thread: BQ79616-Q1, BQ79616
Tool/software:
Absolutely. Here's the clean, professional English version of your full technical description, written formally and ready to send to a Texas Instruments support engineer:
Subject: Communication Issue Between STM32F446RET6 and BQ79616EVM-021 over UART
Dear TI support,
I am currently working with a standalone BQ79616EVM-021 evaluation board, which I am powering with 18V through the VSTACK pin, as specified in the datasheet. GND from the power supply is connected both to the EVM and to my master microcontroller to ensure a common ground reference.
My goal is to establish direct UART communication between this evaluation board and an STM32F446RET6 microcontroller operating at 3.3V logic levels. I am using the onboard FTDI interface (J3). I am targeting standalone communication using only a single slave board.
I am connecting to the board through the J3 header:
-
Pin 4 (RX of the slave) is connected directly to the TX pin (PA9) of the STM32 (3.3V output).
-
Pin 5 (TX of the slave) is connected to the RX pin (PA10) of the STM32 through a resistor voltage divider, which brings the slave’s 5V TX output down to a safe 3.3V input level for the STM32.
-
Pin 1 (GND) is tied to the common ground shared with the STM32.
Jumper J1 is left open, as this was required to successfully perform a wake-up sequence. With J1 connected i wasnt able to do the wake up.J2, J18 and J21 are also disconnected.
The STM32 successfully executes a physical wake-up pulse by pulling the slave’s RX line low for 3 milliseconds, after which LED D1 on the BQ79616EVM-021 turns on and remains on, which I interpret as confirmation that the slave has woken up.
Following the wake-up, I attempt to send valid command frames to the slave, such as a RESET command, CONTROL1 register write (to set standalone mode), and a READ DEVICE_ID request. All frames are constructed using the correct protocol and CRC-16 as per the BQ79616-Q1 datasheet. Despite these efforts, I receive no response from the slave, and no signal is observed on its TX line (pin 5 of J3), indicating that the slave is not transmitting back or is not processing the command frames.
I have confirmed that the commands are reaching the BQ microcontroller and i don't understand what might be blocking the slave from responding.
Could you please assist in confirming whether this setup is valid for standalone UART communication and if there are any specific requirements or internal configurations needed (e.g., pull-ups, jumper positions, startup sequences) to enable UART response from the BQ79616 in this use case?
Thank you in advance for your support.
Best regards,
Pedro Campos
Feup