Need QN9020 documentation

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

Need QN9020 documentation

5,110 Views
ChrisDarrow
Contributor III

I am evaluating the QN902X BLE part from NXP, but I have not been able to find the Software Manual, or any indepth discussion on the stack etc. I am also a little wary due to it being a fairly new part, but have had very good success with NXP over the years so I am willing to do my due diligence. Can you get me the User/Software manual and more info about the Stack for this part?

The Dev Kit manual also refers to other documents that would be useful:

QN902x Driver Tools Manual

QBlue NVDS Configurator Manual

QBlue ISP Studio Manual

None of which are searchable on NXP’s website.

12 Replies

3,524 Views
mohitchawla
Contributor I

Hello Friends,

Any answer to the above query. I am facing similar problem.

Regards,

Mohit

0 Kudos
Reply

3,524 Views
antonioconcio
NXP Employee
NXP Employee

Hello Mohit and Abhishek,

The project to be used for putting the device in "Controller Mode" is prj_controller_mode available at the following path: C:\QBlue\QN9020\QBlue-1.3.9\Projects\BLE\prj_controller_mode. The relative pre-compiled binary is controller.bin.

It supports all of the LE HCI commands + some Vendor commands.

I would suggest to go through the "Software Developer's Guide" document available here http://www.nxp.com/documents/user_manual/UM10995.pdf to get a clear understanding on how the firmware is organized.

I hope it helps,

Antonio

3,524 Views
abhishekarora
Contributor II

Hi Antonio,
I have tried to integrate Qn9021 with bluez stack and i get to know that many commands are not supported by QN9021 which are required by Bluez linux bluetooth stack. One of these command is Read Device Class. Yes, i have gone through Qn9020 documentation and came accross the list of supported commands. 

Can you guide us how to add support for some non-supported commands for QN9021. Also, if you have any driver for Qn9021 which can help us in integrating it with bluez, please provide us those drivers/kernel modules.

0 Kudos
Reply

3,524 Views
antonioconcio
NXP Employee
NXP Employee

Hello Abhishek,

QN902x is BLE only and therefore supports BLE related HCI commands.

 

For the LE HCI commands, please refer to Core spec v4.0

  • Vol 2, Part E, 3.19
  • Vol 2, Part E, 7.8

 

The command “Read Class of Device command” you mentioned is actually supported only in BT Classic, which is shown as “BR/EDR”. The BLE controller is supposed to support “All” or “LE” as noted in the BT Core Spec.

Cheers,

Antonio

3,524 Views
abhishekarora
Contributor II

Hello Antonio,

Thanks for your reply.

I have successfully integrated QN902x with Linux Bluez stack. The problem was in the response returned by QN902x command Read Local Feature. I am aware that QN902x supports both Read local features and Read LE local features. The Linux kernel first asks for Read Local features. However, the response to this command should atleast specify that QN902x doesn't support BR/EDR and it support only LE. For that, it should set atleast two bits in the response of READ LOCAL FEATURE. However, it returns an array of 8 bytes and all bits set to zero in it's response. That's why kernel bluez stack were asking for Read Device Class command.

That was the origin of the problem i faced for a week. I had conservation with a kernel developer over IRC channel. He pointed out that QN902x is buggy. For now, i have resolved the problem by modifying the kernel source code and hard coding features of bluetooth. Please, tell me the response that QN902x is supposed to return for command Read Local supported features.

I would also like to know how many simultaneous connections the QN902x HCI Controller mode can support? 

0 Kudos
Reply

3,524 Views
abhishekarora
Contributor II

Hello Antonio,

Thanks for your reply.

Please ignore my previous reply.

 

I have successfully integrated QN902x with Linux Bluez stack. The problem was in the response returned by QN902x for the command Read Local Feature. I am aware that QN902x supports both Read Local Features and Read LE Local Features HCI command. The Linux kernel first request for supported local features and after that it sends all other HCI commands.  The response of this command should specify the type of controller and for QN902x, the response to this command should atleast specify that it doesn't support BR/EDR and supports only LE. For LE only controller, it should set atleast two bits in the response of READ LOCAL FEATURE HCI command. However, it returns an array of 8 bytes and all bits set to zero in it's response. That's why kernel bluetooth stack start sending all HCI commands to the controller. It assumes that controller is Classic Bluetooth only.

I have configured the kernel for LE only controller. I assumed that the commands that will be send by bluetooth stack will be LE supported.

 

That was the origin of the problem i faced for a week. I had conversation with a kernel developer over IRC channel. He pointed out that QN902x is buggy. For now, i have resolved the problem by modifying the kernel source code and hard coding features of bluetooth. Please, tell me the response that QN902x is supposed to return for command Read Local supported features.

 

I would also like to know how many simultaneous connections the QN902x HCI Controller mode can support? 

0 Kudos
Reply

3,524 Views
abhishekarora
Contributor II

I have a question for these chips. I tried to reach out by posting a separate question but didn't get any reply. 

I have been working on QN9021 BLE SoC solution of NXP. I found few pre-compiled files under QBlue/QN9020/QBlue-1.3.9/BinFiles_B2. I am looking for documentation of these files. 

 

I am also interested in running QN9021 in controller mode. Can someone direct me in finding correct binary files for it?
Is HCI provided by these binary files standard?
Can i integrate it with Host protocol stack running in Linux system (via BlueZ) via HCI interface?

0 Kudos
Reply

3,524 Views
DavidS
NXP Employee
NXP Employee

Hi Camilo,

I found a link to SDK at Firefly | Focus on establish an open source platform based on cutting-edge technology .

It links to a google drive.

I'll try to find where on nxp.com it should be located.

Regards,

David

0 Kudos
Reply

3,524 Views
abhishekarora
Contributor II

I have a question for these chips. I tried to reach out by posting a separate question but didn't get any reply. 

I have been working on QN9021 BLE SoC solution of NXP. I found few pre-compiled files under QBlue/QN9020/QBlue-1.3.9/BinFiles_B2. I am looking for documentation of these files. 

 

I am also interested in running QN9021 in controller mode. Can someone direct me in finding correct binary files for it?
Is HCI provided by these binary files standard?
Can i integrate it with Host protocol stack running in Linux system (via BlueZ) via HCI interface?

0 Kudos
Reply

3,524 Views
wenxue
NXP Employee
NXP Employee

Now, we can download sdk and docs from Ultra Low Power BLE System-on-Chip Solution|NXP

I suggest to add a QN902x BLE group in community. What do you think about it?

0 Kudos
Reply

3,524 Views
vlad_a
Contributor I

There is some mistery around those chips. I'm trying my best to find any info about them. All links from PDFs to npx.com have been deleted.

If you found any info, please share.

Thanks.

3,524 Views
rcamilo
Contributor II

Hi Vlad,

Do you have any updates on this?

We've receive the QN9020 for evaluation but we can't access the SDK software from NXP site.

According to the doccumentation:

"The Software Development Kit (SDK) is named as QBlue-1.x.xx-setup.exe. After ordering, visit SDK customer support website https://www.collabnet.nxp.com to obtain the latest SDK package."

Best Regards,

0 Kudos
Reply