Facing issue while loading Bluetooth firmware on imx8

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Facing issue while loading Bluetooth firmware on imx8

783 Views
Ram2
Contributor II

Hi Team

While trying to load the BT firmware , we are observing the timed-out error

root@imx8qxpc0mek:~# fw_loader_linux /dev/ttyLP3 115200 0 /etc/bt-fwimage/uartspi_n61x_v1.bin.se 3000000
Protocol: NXP Proprietary
FW Loader Version: M350
Serial: UART interface
Device: /dev/ttyLP3
DumpFrame: No
Timeout: 4000
BaudRate: 115200
FlowControl: 0
Filename: /etc/bt-fwimage/uartspi_n61x_v1.bin.se
Second BaudRate: 3000000
Sent Pulse on CTS Line
Timeout for waiting header signature in fw_Change_Timeout function

Download Error
Error code is -1

Our BT is connected to lpuart3 

dtsi changes made for bluetooth

&lpuart3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lpuart3>;
status = "okay";
};
pinctrl_lpuart3: lpuart3grp {
fsl,pins = <
IMX8QXP_USDHC1_CLK_ADMA_UART3_RX 0x06000041
IMX8QXP_USDHC1_DATA1_ADMA_UART3_TX 0x00000021
IMX8QXP_USDHC1_DATA2_ADMA_UART3_CTS_B 0x00000021
IMX8QXP_USDHC1_DATA3_ADMA_UART3_RTS_B 0x00000021
>;

After flashing the images we are able to see the 
on target as
imx8qxpc0mek# ls -l /dev/tty
LP0 LP1 LP2 LP3

we are following the steps for validation 
gpio_test -n 52 -o 1
seting direction as out 52
root@imx8qxpc0mek:~# fw_loader_linux /dev/ttyLP3 115200 0 /etc/bt-fwimage/uartspi_n61x_v1.bin.se 3000000

When I run above steps its showing as 

root@imx8qxpc0mek:~# fw_loader_linux /dev/ttyLP3 115200 0 /etc/bt-fwimage/uartspi_n61x_v1.bin.se 3000000
Protocol: NXP Proprietary
FW Loader Version: M350
Serial: UART interface
Device: /dev/ttyLP3
DumpFrame: No
Timeout: 4000
BaudRate: 115200
FlowControl: 0
Filename: /etc/bt-fwimage/uartspi_n61x_v1.bin.se
Second BaudRate: 3000000
Sent Pulse on CTS Line
Timeout for waiting header signature in fw_Change_Timeout function

Download Error
Error code is -1

Please could you help us and share any inputs to resolve

What could be the root cause behind for this issue 

Thanks 







0 Kudos
Reply
6 Replies

762 Views
Ram2
Contributor II

Hi Team

After changing few parameters in dtsi file now we are seeing as below logs from dmesg

root@imx8qxpc0mek:~# dmesg | grep -i "bluetooth"
[ 0.585146] Bluetooth: Core ver 2.22
[ 0.588425] NET: Registered PF_BLUETOOTH protocol family
[ 0.593689] Bluetooth: HCI device and connection manager initialized
[ 0.600035] Bluetooth: HCI socket layer initialized
[ 0.604900] Bluetooth: L2CAP socket layer initialized
[ 0.609953] Bluetooth: SCO socket layer initialized
[ 1.800883] Bluetooth: HCI UART driver ver 2.3
[ 1.805384] Bluetooth: HCI UART protocol H4 registered
[ 1.810544] Bluetooth: HCI UART protocol BCSP registered
[ 1.815913] Bluetooth: HCI UART protocol LL registered
[ 1.821070] Bluetooth: HCI UART protocol ATH3K registered
[ 1.826504] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 1.833163] Bluetooth: HCI UART protocol Broadcom registered
[ 1.838874] Bluetooth: HCI UART protocol QCA registered
[ 2.187163] Bluetooth: RFCOMM TTY layer initialized
[ 2.192070] Bluetooth: RFCOMM socket layer initialized
[ 2.197270] Bluetooth: RFCOMM ver 1.11
[ 2.201054] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 2.206382] Bluetooth: BNEP filters: protocol multicast
[ 2.211644] Bluetooth: BNEP socket layer initialized
[ 2.216625] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 2.222581] Bluetooth: HIDP socket layer initialized
[ 12.214729] Bluetooth: hci0: Opcode 0x0c03 failed: -110
[ 44.250669] Bluetooth: hci0: Setting wake-up method failed (-110)
root@imx8qxpc0mek:~# gpio_test -n 52
geting value
gpio:52, value:0
root@imx8qxpc0mek:~# gpio_test -n 52 -o 1
seting direction as out 52
root@imx8qxpc0mek:~# gpio_test -n 52
geting value
gpio:52, value:1
root@imx8qxpc0mek:~# hciconfig hci0 up
Can't init device hci0: Connection timed out (110)

Any help here from respective team. 

Tags (1)
0 Kudos
Reply

748 Views
Chavira
NXP TechSupport
NXP TechSupport

Hi @Ram2!

Thank you for contacting NXP Support!

 

What board are you using?

What wifi module are you trying to use?

What BSP version are you using?

 

If you are using our wifi modules you have to activate the wifi module first.

I recommend to download the Linux User Guide of the BSP Version that you are using and see the chapter 11 to activate and use the bluetooth module correctly.

 

https://www.nxp.com/design/design-center/software/embedded-software/i-mx-software/embedded-linux-for...X

 

Best Regards!

Chavira

0 Kudos
Reply

742 Views
Ram2
Contributor II

Hi @Chavira 

 

What board are you using?  --> Imx8qxpc0mek

WiFi-BTand BLE BLuetooth chip                   ---> IW611 [ Its Murata Chip]

What BSP version are you using?  --> Nanbield [L6.6.3 kernel ]

 

But with out WiFi-BT , we need to enable only BT-BLE first and later WiFi-BT 

Could you please help how to validate if user wants to validate only BT-BLE ?

 

Thanks

 

 

0 Kudos
Reply

732 Views
Chavira
NXP TechSupport
NXP TechSupport

Hi @Ram2!

 

To enable the bluetooth module you have to load manually the kernel modules.

Please refer to our Linux User Guide on chapter 11 or the UM11675.

 

https://www.nxp.com/docs/en/user-guide/IMX_LINUX_USERS_GUIDE.pdf

https://www.nxp.com/webapp/Download?colCode=UM11675

 

Best Regrads!

Chavira

 

 

0 Kudos
Reply

729 Views
Ram2
Contributor II

Hi @Chavira 

I have followed the same steps as mentioned in doc  and tried to load the driver dynamically

But still I see same issue I am frequently observing the below error

[ 12.214729] Bluetooth: hci0: Opcode 0x0c03 failed: -110
[ 44.250669] Bluetooth: hci0: Setting wake-up method failed (-110)

 

Could you please let us know in which case we will observe above error , 
Steps I followed 
$ bluetoothctl
[bluetooth]# default-agent
[bluetooth]# agent on
Nothings comes up and shows up 


Please could you help here with your inputs for us move ahead for validation BLE

 

Thanks

0 Kudos
Reply

726 Views
Chavira
NXP TechSupport
NXP TechSupport

Hi @Ram2!

Do you use the commands below?

$ modprobe moal mod_para=nxp/wifi_mod_para.conf
$ modprobe btnxpuart
$ hciconfig hci0 up
$ bluetoothctl

[bluetooth]# default-agent
[bluetooth]# agent on
[bluetooth]# scan on
[bluetooth]# pair xx:xx:xx:xx:xx:xx
[BT dev]# connect xx:xx:xx:xx:xx:xx
[BT dev]# quit

 

If yes, please attach a log file of the entire boot.

 

Best Regards!

Chavira

0 Kudos
Reply