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.

Bluetooth UART with WL1271

Other Parts Discussed in Thread: WL1271

My company is using the IMX515 as the host processor interfaced with the WL1271.

The kernel version is 2.6.35

I have 5 uart signals hooked up: BT_EN, Tx, Rx, RTS, CTS

The powerup sequence is written into the Uboot bootloader and everything checks out good on the oscilloscope, including BT_EN.

I put the TIInit_7.2.31.bts firmware in /lib/firmware

Im running the command hciattach /dev/ttys1 texas 115200

Verified Rx from host to wl1271 to be 4 bytes of TI specific code

RTS response from the wl1271 is going high to low

CTS is staying high at all times

I am getting an error "Initialization Time Out"

I thought I would get a message "Found Texas Instruments Chip!"

What gives? Am I missing some drivers, do I need any patches for my kernel version?

 

 

  • Hi,

    Sorry for the late response, what is the clock frequency of the UART? Currently the bts file assumes it is 3Mhz (that what we use for AM37x platform) so it has to match otherwise it will not work.

    Regards,

    Eyal

     

  • Sorry for jump in on. It is related to the Bluetooth Uart.

    Eval, We have wired the Bluetooth and Wifi Uart port to a USB convert for debugging. I use PuTTY to monitor it, but it seem it is all binary steam. I was told there is a tool on window that could monitor (and decode?)  it. Could you point me to a download for it. Thanks.

    Ed

  • Hi ,

     

    We are using 115200 baud rate and frequency of 1.8 MHZ

    Is it necessary to have have 3MHZ?

    Or, can I modify TIInit_7.2.31.bts firmware to accommodate 1.8MHZ?

     

    Also, what is the default init state of the wl127x UART parameters?

     

    Thanks,

    Peter

  • Peter,

    I have worked on AM37x platform.

    I believe that the problem you are seeing is not only because of higher baud rate.

    As far as i know, the WL1271 baud rate is 115200 by default.  So when you do hciattach, the very first command sent  to the  Wl1271 is to read  the chip version and  must be sent at 115200 baud. The response is also received at 115200. Later it may be changed by the bts script. If the hciattach tool finds a TI chip it will decode the corresponding firmware and send HCI commands to setup the Wl1271. Since you do not get the first response (if successful, "Found Texas Instruments Chip!" " will be printed"), the Host-WL1271 uart interface is not functional at 115200. 

    First of all you need to verify whether the actual baud rate set by the Host processor/ kernel is 115200 or not, whether it  falls within the maximum tolerance of baud rate that the WL1271 supports and check whether flow control is operational or not. But even then you may need to verify whether the host can support 3M baud. Otherwise,  you need to tweak the hciattach command to stop sending baud rate set command.

    Hope this helps;

    Sinoj

  • Sinoj,

    We are running @ 115200.

    Analyzing the packets out of the IMX51 processor UartTx, they are both perfect 4bytes of data translating to TI device command(as specified by the Bluez Stack) and opperating at 115200 baud rate (8.6us per uart pulse width).  What is the reason that the WL1271 does not respond to our sent uart commands?

     

     

     

  • Peter,

    When the HCI command is received correctly (115.2 kbps, 8 bits, stop bit 1, parity none) at the hci_rx of the wl1271, if powered up, the wl1271 will be responding.  Can you clarify  the statement "CTS is staying high at all times"? Is it host_cts or hci_cts? Setting the hci_rts high means the wl1271 is not ready to receive from the host. When the hci_cts is set high, the wl1271 stops transmitting.  As far as i know the hci_cts must be low to sent the response by the wl1271.

    Thanks

    Sinoj

  • Sinoj,

     

    "CTS is staying high at all time" - It is host_cts (imx515 cts)

     

  • Peter,

    If the host_cts (is connected to hci_rts) is staying high at all time and the processor is sending data to the wl1271 indicate that uart flow control is not working. Am i right?

    Sinoj