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.

USB2ANY: BQ79600EVM: UART Communication Issues with BQ79600EVM via USB2ANY

Part Number: USB2ANY
Other Parts Discussed in Thread: BQ79600EVM, , BQ79600-Q1

Dear TI support staff,

I am currently attempting to Communicate with a BQ79718EVM using the BQ79600EVM as the bridge device. The GUI Tool works without any issue. 

the Connection layout is: PC -> USB2ANY (FW 3.1.1.14) -> BQ79600EVM -> BQ79718EVM

Communicating with the USB2ANY works fine (calling the USB2ANY.dll ver. 2.8.2.0). However attempting to communicate with the BQ79600EVM fails - presumably due to UART baudrate incompability. The USB2ANY 2.8.2.0 API Reference (USB2ANY API Specification ) lists the max baud rate configurable at 230400 bps while the BQ79600EVM Documentation (BQ79600-Q1 Evaluation Module User's Guide (Rev. B) ) lists the EVM's Baudrate at 1Mbps.

Trying to use the firmware version 3.1.1.14 on the USB2ANY causes the u2a_Open function call to throw an error and ask for a downgrade to firmware version 2.8.2.0. 

This leads me to an impasse where i cannot find a viable way to communicate via UART with the BQ79600EVM. 

My questions regarding this are:
- How can i achieve UART communication with the BQ79600EVM via USB2ANY sucessfully? Is there a dll for 3.1.1.14 or am i missing something else entirely?

Thank you very much for your help in this matter.

With best regards, 


Florian Bahn

  • Hi Florian, 

    The GUI uses a custom interface to be able to support 1Mbps UART for BQ79600, so unfortunately the best way to support communication to the BQ79600 is using a micro controller and the sample code given to support custom communication to the device outside of the GUI. 

    Sincerely,

    Michelle W. 

  • Hello Michelle,

    Using a micro controller: Can the micro controller be the USB2ANY in any way? (e.g. by utilizing the custom interface you mentioned)?

    Regarding the baud rate (apologies if this is a repeat question): Is the 1 Mbps the internal baud rate between the BQ79600 and daisy chained boards (e.g 79718EVM) or between the micro controller (e.g. USB2ANY) and the BQ79600?

    The GUI Tool also uses a different firmware for the USB2ANY (3.1.1.14 instead of 2.8.2.0) - might this be relevant and if so is the USB2ANY.dll for FW 3.1.1.14 available for testing?

    Are there any recommendations for micro controllers if the USB2ANY is not feasible?

    I would also like to ask how the wake up sequence of the BQ79600 has to be implemented. 

    Thank you very much for your assistance in this matter.

    With best regards, Florian Bahn

  • Hi Florian, 

    You have a couple of different options: 

    1) If you are wanting to keep using UART with the BQ79600 with the USB2ANY: An issue that I see if the USB2ANY.DLL changing the firmware version back from 3.1.1.14 to 2.8.2.0. There is a way to suppress the change in firmware by using u2aSuppressFirewareCheck(bool) to suppress the firmware change since 3.1.1.14 is vital to be able to support the 1 Mbps UART. See if that change allows you to change the baud rate of the UART to 1Mbps with the DLL. If you try this option and are still having issues, please let me know as this is something we want to be able to support. 

    2) If you want to use SPI on the BQ79600 with the USB2ANY, the DLL and the 2.8.2.0 firmware should work as expected since the USB2ANY SPI can support 1Mbps. For the MOSI pulse, you should be able to use the GPIO_WritePulse on the respective GPIO that's on the MOSI line to wake the BQ79600. 

    3) A third option if you want to continue using UART but are open to a different cable: some of our internal team uses an FTDI cable (TTL-232R-5V or TTL-232R-3V3) to support PC communication to the BQ79600/BQ79718. The BQ79600 EVM has a 6 pin header that supports the connection of the FTDI cable. 

    To answer your question on the baudrate, the 1Mbps communication is for both the MCU to the BQ79600 and communication between the BQ79600 and the BQ79718. That's why the 1Mbps baud rate is critical for communication with the stack. 

    For the wakeup sequence for the BQ79600, you would have to pull RX/MOSI low for 2.5-3 ms to create the wakeup pulse as specified in the datasheet. From there, you can follow the communication protocol on the datasheet to write or read from any registers on the BQ79600 or BQ79718 as needed. 

    Hopefully this gives you some options to be able to control the BQ79600 through a PC. Let me know if you are still having issues or need further clarification! 

    Sincerely,

    Michelle W. 

  • Hello Michelle,

    Your response is very helpful thank you very much!

    I will test my options and mark this issue resolved asap.

    One additional question regarding UART arose to my mind: The USB2ANY.dll for 2.8.2.0 does not support baud rates over 230400 as per the API specification (u2aUART_Control having UART_230400_bps = 5 as the highest value). Is there a 3.1.1.14 USB2ANY.dll available or an other way to achieve that? 

    Thank  you very much again for your help in this matter!

    Best regards, Florian Bahn

  • Let me get you someone from our internal software team that would be able to help with your request. 

    Sincerely,

    Michelle W.