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.

WL1837MOD: WL1837MOD: Bluetopia stack - HCI DRIVER ERROR

Part Number: WL1837MOD
Other Parts Discussed in Thread: WL1837

As per: https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/973741/wl1837mod-bluetopia-stack/3598125

We continue to experience issues in using the last supported service pack (3.9). Often in regular BLE connections where our device is acting as the Peripheral, there seems to be issues where the system gets into a state where it does not disconnect from the Central (an App for iOS or Android), and subsequent forced calls to GAP_LE_Disconnect and GAP_LE_Advertising_Enable (which should be done after a disconnect is handled) result in the error code (-14) BTPS_ERROR_HCI_DRIVER_ERROR being returned.

Currently the only way we have to remedy this is to reset our device either manually by cutting power or telling our MSP to reset when the error state is triggered.

It's not easily repeatable, but with 5 second intervals of connect->disconnect from our Central, within a few minutes eventually we'll get into the bad state. Of course this is bad for our users as they fail to see our device in the scan results we present.

Not sure this sounds like something the latest SP would help with, or if there's likely another underlying issue based on error (-14).

If the latter - what could be the next steps to continue debugging?

If the former - can we try and move to another modern stack (like Bluekitchen) to load with the latest service packs on our Wilink8 - as Bluetopia for MSP has been stale for 5+ years now?

  • Hi Kris,

    Can you confirm that you are still using the MSP430F5438A as your Bluetooth host? How are you connecting the WL1837MOD to the MSP430? To my knowledge, the MSP430 Bluetopia Stack only supports the CC256X devices. 

    Best,
    Jacob

  • Correct, MSP430F5438A - connected via UART. I guess clarity on the BTPS_ERROR_HCI_DRIVER_ERROR error code would be helpful, since SS1 doesn't have a lot of documentation around return codes. My assumption is this could be related to the UART communications failing, but not 100% sure.

    As for the service pack (ie. beyond 3.9), wondering if the rationale behind us not being able to load the latter ones is because of:

    1. The WL1837MOD is not compatible

    2. The SS1 Bluetopia stack is not compatible.

    If #2, we would look at an alternate stack that we have more clarity around and can debug the inner workings.

  • Hi Kris,

    The BTPS_ERROR_HCI_DRIVER_ERROR is related to the HCI communication failing between the host and controller.

    The MSP430 only supports CC256x devices. To make the WL1837MOD compatible with the MSP430, you would need to connect the UART lines of the WL1837 to the MSP430 and modify the HAL and HCITRANS files to correctly setup the HCI communication. You would also need to use the latest WL1837 service pack. However, I do not recommend this solution as it would require significant development effort. Additionally, the Host and Profile Subsystem used to qualify the MSP430 stack is deprecated (see QDID 37180 and QDID 42849 on the Bluetooth Launch Studio), meaning that you would not be able to qualify your product according to Bluetooth SIG standards.

    If you can change the host, I recommend transitioning from the MSP430 to a Sitara processor, like the AM335x

    Here is more information on the MSP430 stack:

    CC256x MSP430 TI Bluetooth Stack - Texas Instruments Wiki.pdf

    Best,
    Jacob

  • Okay sound like TI misrepresented themselves when they recommended we use MSP430 with the Wilink1837MOD. As we have been using this architecture for 7 years and have 100,000 devices on the market, I guess we did get it working, but the short answer is, "this should not have worked, and don't expect support or service pack updates" - makes sense, thanks.