Bug report: Bluetooth Class of Device (CoD)

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
StN__1917156
Level 4
Level 4
25 replies posted 10 replies posted 5 replies posted

Wiced 6.2.1

Chip CYW20719

Platform CYBT_413034_EVAL

Configuration parameter for CoD in hello_sensor/wiced_bt_cfg.c: wiced_bt_cfg_settings is useless

Original (as provided with examlpes): 

{0x00, 0x00, 0x00},   /**< Local device class */

Also tried:

{0x07, 0x03, 0x01},

{0x17, 0x11, 0x04},

But result from Bluetooth Scanner shows always 7936, doesn't matter what numbers are set in wiced_bt_cfg_settings Screenshot_20191003-201022.png

0 Likes
1 Solution

Hello,

CoD is part of BR/EDR. Please make sure you are testing it on an example which supports BR/EDR.

Below are my test results on SPP example .

Example:

As per the link Bluetooth - Class Of Device Lijst (CoD) ​, testing the first CoD 0x000104 , it should be added in config file as

{0x00, 0x01, 0x04}, . Below is the screenshot

scanner1.jpg

One more example,     {0x00, 0x02, 0x04},   will result as below

scanner2.jpg

Thanks,

Anjana

View solution in original post

5 Replies
AnjanaM_61
Moderator
Moderator
Moderator
5 comments on KBA First comment on KBA 5 questions asked

Hello StN._1917156

This is not a bug. 000000 means nothing defined. So its considered as UNCATEGORIZED.

Below links will be helpful:

Bluetooth - Class Of Device Lijst (CoD)

https://distriqt.github.io/ANE-Bluetooth/asdocs/com/distriqt/extension/bluetooth/BluetoothClass.html

Thanks ,

Anjana

Hello,

Unless  you could show at least one code example with properly set any CoD with CYW20719 other than than {0x00, 0x00, 0x00} that works, still will be bug

I already wrote that I tested also with other values for those 3 numbers that suppose to define CoD, but the result is the same CoD = 7936 / 0x1F00

Here are and the first four examples from the first link you gave (as there no any information how is the order of those 3 bytes, I tested both ways – Big and Little Endians) and the CoD transmited from CYW is still 7936 for all the tests :

(

const wiced_bt_cfg_settings_t wiced_bt_cfg_settings =

{

// (uint8_t*)"Hello",         /**< Local device name (NULL terminated) */

// {0x00, 0x00, 0x00},        /**< Local device class */

    (uint8_t*)"Hello1B",         /**< Local device name (NULL terminated) */

    {0x00, 0x01, 0x04},          /**< Local device class SS1 */

Screenshot_20191004-213800.png

    (uint8_t*)"Hello1L",         /**< Local device name (NULL terminated) */

    {0x04, 0x01, 0x00},          /**< Local device class SS1 */

Screenshot_20191004-213906.png

    (uint8_t*)"Hello2B",         /**< Local device name (NULL terminated) */

    {0x00, 0x01, 0x16},          /**< Local device class SS1 */

Screenshot_20191004-213639.png

     (uint8_t*)"Hello2L",         /**< Local device name (NULL terminated) */

     {0x16, 0x01, 0x00},          /**< Local device class SS1 */

Screenshot_20191004-214123.png

        (uint8_t*)"Hello3B",         /**< Local device name (NULL terminated) */

    {0x00, 0x01, 0x0c},          /**< Local device class SS1 */

Screenshot_20191004-214250.png

    (uint8_t*)"Hello3L",         /**< Local device name (NULL terminated) */

    {0x0c, 0x01, 0x00},          /**< Local device class SS1 */

Screenshot_20191004-214350.png

    (uint8_t*)"Hello4B",         /**< Local device name (NULL terminated) */

    {0x02, 0x01, 0x04},          /**< Local device class SS1 */

Screenshot_20191004-214509.png

    (uint8_t*)"Hello4L",         /**< Local device name (NULL terminated) */

    {0x04, 0x01, 0x02},          /**< Local device class SS1 */

Screenshot_20191004-214725.png

Else the Bluetooth Scanner app is fully functional regarding CoD – here is example of a other device that has CoDs in both Major and Minor Device Classes, so the problem is definitely in Cypress

Screenshot_20191004-222119.png

0 Likes

Hello,

CoD is part of BR/EDR. Please make sure you are testing it on an example which supports BR/EDR.

Below are my test results on SPP example .

Example:

As per the link Bluetooth - Class Of Device Lijst (CoD) ​, testing the first CoD 0x000104 , it should be added in config file as

{0x00, 0x01, 0x04}, . Below is the screenshot

scanner1.jpg

One more example,     {0x00, 0x02, 0x04},   will result as below

scanner2.jpg

Thanks,

Anjana

Thanks Anjana, with spp example works. Cant find yet in the specs how the CoD is transmitted in the Inquiry process, but  seems you are right and this is not a bug

0 Likes

Yea I understand.

I think you should go through Bluetooth SIG website for the details. I don't have the exact link to point out.

Hope the other two links which I shared will be helpful for now.

I will discuss this internally to add / document it anywhere in WICED docs or blog.

Regards,

Anjana

0 Likes