CYBT-483056-EVAL smp_delete_bond does not delete device address from bond query list ?

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

cross mob
edOfTheInfineon
Level 3
Level 3
First solution authored 10 replies posted 25 sign-ins
  • CYBT-483056-EVAL arrived from factory with latest EZ-Serial 1.0.10 installed.
  • My CYBT device has reached the limit of four (4) bonded devices. 
  • I cannot bond with new devices before removing a device from the bond list. 
  • This issue is easily reproduced after Bluetooth Classic RFCOMM pairing to a CYBT-483056-02 device from a Windows or Android device. 
  • Multiple people, on multiple CYBT-483056-02 devices, using various pairing devices have reproduced this issue of not being able to delete bonds once a RFCOMM pairing has been made to the CYBT-483056-02 device.

 

 

 

 

 

# EZSerial 1.0.10 (build 21)
@E,0040,BOOT,E=01000A15,S=02072276,P=0100,H=E8,C=00,A=E6BF3B0F0C3C,T=01
@E,000E,ASC,S=03,R=01

 

 

 

Using smp_delete_bond (/BD, ID=7/2) does not work.  After /BD command sent, a /QB command displays count is still 4.

Am I using the '/BD' command properly?

 

 

 

 

# Query bond list displays 4 devices bonded, 3 duplicates, 1 unique
/QB
@R,000E,/QB,0000,C=04
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01	// Win11
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01	// Win11
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01	// Win11
@E,0020,B,C=00,A=58CB523B58FA,T=FF,D=01	// Android Pixel 3A

# Remove address for Windows 11 bond
/BD,A=C403A8CF7884,T=FF
@R,000E,/BD,0403,C=04

# Remove address for Android Pixel 3A 11 bond
/BD,A=58CB523B58FA,T=FF
@R,000E,/BD,0403,C=04

# Query bond list is unchanged ??
/QB
@R,000E,/QB,0000,C=04
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01
@E,0020,B,C=00,A=58CB523B58FA,T=FF,D=01

 

 

 

I have tried:

  • Removing a bonded device by using smp_delete_bond "/BD" and specifying a MAC address does not change bond list
  • Factory reset "/RFAC" does NOT erase bonding
  • Device reset does not erase bonding.  This is correct expected behavior.
  • Attempt to remove a bonded device by telling Windows or Android to forget the device does not change CYBT bond list

Re-flashing is not an option for clearing a bond list for our end customers. 

Can you please recommend a working API method to remove bonded devices on CYBT-483056-02 modules?

Thank you,

-Ed

0 Likes
1 Solution

Hi @edOfTheInfineon 

Sorry for the delayed response.

We are able to reproduce this issue at our end and it is a bug. we have escalated the issue to FW team to fix this.

 

Thanks & Regards

Pratiksha V

View solution in original post

0 Likes
14 Replies
PratikshaV
Moderator
Moderator
Moderator
100 solutions authored 5 likes given 250 sign-ins

Hi @edOfTheInfineon 

I will test at my end come back to you as soon as possible.

 

Thanks & Regards

Pratiksha V

0 Likes
edOfTheInfineon
Level 3
Level 3
First solution authored 10 replies posted 25 sign-ins

@PratikshaV thank you for responding quickly.

  • We can reproduce delete bonds not working, on multiple devices using CYBT-483056-EVAL and CYBT-483056-02 modules
  • While re-flashing with 1.0.10 clears  bond list, it does NOT fix problem.  The "/BD" command  does not work after re-flashing to 1.0.10. 
  • Re-flashing is not a solution for freeing up bond list.
  • Are both A and T arguments required?
    • I tried "/BD" command with A argument only, and both A and T arguments without success.
    • A type of "FF" is not documented as a bond entry type.  I assume type must match the "FF" type in "/QB" response.
    • I also tried T=0 and T=1 without success.

 

# Delete using both A and T arguments, returns C=00
# Note: FF is not a documented type?
/BD,A=F4F1E1A52353,T=FF
@R,000E,/BD,020C,C=00

# Delete using A argument only, returns C=04
/BD,A=F4F1E1A52353
@R,000E,/BD,0403,C=04

# Query bond results still display 4 bonded devices
# Note: FF is not a documented type?
/QB
@R,000E,/QB,0000,C=04
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01
@E,0020,B,C=00,A=C403A8CF7884,T=FF,D=01
@E,0020,B,C=00,A=F4F1E1A52353,T=FF,D=01

In documentation, what does the red asterisk character indicate?

edOfTheInfineon_0-1663855401223.png

 

 

 

Thank you again for your quick response,

-Ed

 

 

 

 

0 Likes
edOfTheInfineon
Level 3
Level 3
First solution authored 10 replies posted 25 sign-ins

@PratikshaV Were you able to test and find a working solution to delete bonds?

# Delete bond does not delete a bond from query bond list?
/BD,A=F4F1E1A52353,T=FF

Thank you,

-Ed

0 Likes

Hi @edOfTheInfineon 

Sorry for the delayed response

I tested at my end and did not face issues with the smp_delete_bond command.But I had some observations in your previous logs shared.

1) if you observe in your logs all 3 are same addresses saved

2)And also I am not observing T=FF in my logs it should be either 0 or 1.

Capture.PNG

3) if you check the response of smp_delete_bond command ideally after /BD it should be 0000 but in your response it is 0403. if you check error code in user guide it mentions EZS_ERR_LL_NOT_IN_BOND_LIST.

Capture1.PNG

 

So please can you share your all logs from first to understand the issue better.

 

Thanks & Regards

Pratiksha V

 

0 Likes

@PratikshaV yes, I noted that there were three duplicates in my posting.  I do not understand cause.

To start testing from a clean state, I reprogrammed my CYBT-483056-EVAL.  Reprogramming clears the bond list as my other coworkers have discovered . 

However, after reprogramming bond delete still does not work.  I cannot delete any items in the bond list.  The problem for our customers is that once four devices have been paired, there is no way to clear the bond list except  to reprogram.  This is not unusual behavior for our customers who may share a device with coworkers, or be training new users, or demonstrating to customers.  Our customers will have to return the product to our factory for reprogramming.

Attempts to bond delete do not change anything.  Response return 020C this time rather than 0403. 

020c is EZS_ERR_PROTOCOL_INVALID_PARAMETER_VALUE.  What is wrong with my /BD command?

Please see attached new logs below with comment inserted.

Steps to Reproduce

Initiate Bluetooth classic pairing from an Android or Windows 10/11 device.  Do NOT use BLE pairing.

 

# 1) After reprogramming with EZ Serial 1.0.10, bond list is emoty
# 2) Pair Android device to CYBT
# 3) Attempt to delete bond does not change bond list count

@E,0040,BOOT,E=01000A15,S=02072276,P=0100,H=E8,C=00,A=DBA0B965FA7B,T=01
@E,000E,ASC,S=03,R=01

/QB
@R,000E,/QB,0000,C=00

# Pairing initiated from Android device 58CB523B58FA
@E,000E,ASC,S=04,R=01
@E,001F,BTCON,C=01,A=58CB523B58FA,B=00
@E,000F,PR,C=01,R=0000
@E,0012,BTDIS,C=01,R=1300

# After paired to EZ Serial from Android device 58CB523B58FA
# Android device displays unsupported type FF
/QB
@R,000E,/QB,0000,C=01
@E,0020,B,C=00,A=58CB523B58FA,T=FF,D=01

@E,0035,C,C=01,A=62748E2800D2,T=01,I=0024,L=0000,O=01F4,B=00
@E,000E,ASC,S=06,R=00
@E,001D,CU,C=01,I=0006,L=0000,O=01F4
@E,001D,CU,C=01,I=0024,L=0000,O=01F4
@E,0010,DIS,C=01,R=0913
@E,000E,ASC,S=03,R=00

# Attempt to delete Android device displayed in bond list fails to change bond list
# Response is 020C this time, not 0403
/BD,A=58CB523B58FA,T=FF
@R,000E,/BD,020C,C=00

# Android device displays as still paired when bond queried
/QB
@R,000E,/QB,0000,C=01
@E,0020,B,C=00,A=58CB523B58FA,T=FF,D=01

 

 

 

 

 

 

 

 

 

We have three team members who have duplicated same issue of not being able to delete bonds on different modules.  Any suggestions are much appreciated.

Could EZ Serial have a bug when bond device type is an unexpected FF ?

I tried /BD with no type argument, as well as T=0, T=1, T=00, T=01, and T=FF.  FF returns 020C, all others return 0403 even though /QB displays the address in bond list?

Thank you,

-Ed

 

 

 

0 Likes

@PratikshaV 

If you connect a SPP-only device, there is no way to delete the bond from the CYBT module without reflashing the module.

There is a major bug in EZ Serial firmware 1.0.10 when bond type is stored as FF.
- When bond type is FF, attempts to smp_delete_bond fail
- Type argument FF is not accepted with smp_delete_bond command, and returns 020c "Command parameter outside of acceptable range"

Multiple engineers have duplicated this issue on multiple CYBT-483056-02 modules, multiple CYBT-483056-EVAL boards, and multiple phones and PC devices.
- The bond delete always fails when /QB command displays type as FF
- Both text mode and binary return 020c, EZS_ERR_PROTOCOL_INVALID_PARAMETER_VALUE, "Command parameter outside of acceptable range"

Additional logs are pasted below:

 

 

 

 

# Reset
@E,0040,BOOT,E=01000A15,S=02072276,P=0100,H=E8,C=00,A=DBA0B965FA7B,T=01
@E,000E,ASC,S=03,R=01

# Bond list contains device with type FF
/QB
@R,000E,/QB,0000,C=01
@E,0020,B,C=00,A=58CB523B58FA,T=FF,D=01

# Text bond delete responds with 020C 
/BD,A=58CB523B58FA,T=FF
@R,000E,/BD,020C,C=00

# Binary bond delete responds with 020C 
C0 07 07 02 58 CB 52 3B 58 FA FF 6A 
C0 03 07 02 0C 02 00 73 

# Bond list unchanged
/QB
@R,000E,/QB,0000,C=01
@E,0020,B,C=00,A=58CB523B58FA,T=FF,D=01

 

 

 

  • We have no control over the stored bond type FF
  • When bond type is FF, smp_delete_bond fails.
  • When bond type is 01, smp_delete_bond succeeds.
  • Re-flashing devices in a shipping product is not a solution

Thank you for any advice,

-Ed

0 Likes

Hi @edOfTheInfineon ,

Sorry for the delayed response

I tried with the two devices but unfortunately not able to reproduce the issue. Is the issue is reproduced when 4 devices are bonded??.I have the attached the logs .

 

Thanks & Regards

Pratiksha V

0 Likes

Hi @PratikshaV ,

This can easily be reproduced from initiating pairing from Windows 10/11 or Android as a RFCOMM Bluetooth classic device.

This is a problem when pairing from RFCOMM BT SP classic SPP devices such as Windows or Android devices running software that require support of SPP profile.  You cannot reproduce this using BLE connections.

We have reproduced delete bond failing with both type 01 and type FF issue on multiple CYBT-483056-02 devices in multiple engineering locations in the USA.  I attached photo of the exact module that my logs were posted from in my previous replies.

No. It does not require 4 devices bonded to reproduce the problem on the CYBT-483056-02.  I can reproduce the issue after re-flashing CYBT-483056-02 with zero devices in bond list.  When a single Bluetooth Classic device initiates pairing, it results in a bond that cannot be deleted.

Please see my logs posted in September 29 and September 30 from over two weeks ago.  Pairing initiated from a single Android device 58CB523B58FA results in a bond that cannot be deleted.

  • No. It does not require 4 devices bonded to reproduce the problem on the CYBT-483056-02
  • The bond delete problem can be easily and consistently reproduced when initiate classic Bluetooth pairing  from a Windows 11 device or Google Pixel 3A Android.
  • My coworker has reproduced when bonding initiated from a Classic Bluetooth embedded device containing Silicon Labs WT-41.

After 4 devices are bonded, no more classic Bluetooth device may be paired  the CYBT-483056-02.  This is a major problem.

It is a major problem because bond cannot be deleted on the CYBT-483056-02.  Our customers will NOT be able to pair the CYBT-483056-02 to any new Bluetooth classic device because none of previous bonds can be deleted to make room for new devices.

cybt-483056-02.png

Thank you,

-Ed

 

0 Likes

(This is one of edOfTheInfineon's coworkers) We've only reproduced the issue when using a classic Bluetooth RFCOMM connection, not a BLE one. To reproduce the issue, you need to initiate a connection with the /BTC command or have a Bluetooth BR/EDR device initiate a connection with the module. 

QB
/QB
@R,000E,/QB,0000,C=00
/BTC,A=CDF9D5D40089,P=00
/BTC,A=CDF9D5D40089,P=00
@R,000A,/BTC,0000
@E,001F,BTCON,C=01,A=CDF9D5D40089,B=00
@E,000F,PR,C=01,R=0000
@E,000E,ENC,C=01,S=01
@E,002C,BTPCON,C=02,A=CDF9D5D40089,P=00,B=00,H=0003

 After disconnecting...

/QB
/QB
@R,000E,/QB,0000,C=01
@E,0020,B,C=00,A=CDF9D5D40089,T=FF,D=01
/BD,A=CDF9D5D40089,T=01
/BD,A=CDF9D5D40089,T=01
@R,000E,/BD,0403,C=01
/BD,A=CDF9D5D40089,T=FF
/BD,A=CDF9D5D40089,T=FF
@R,000E,/BD,020C,C=00
0 Likes

Yes, the bond cannot be deleted when pairing is completed from a Bluetooth Classic RFCOMM device when pairing is initialed from Windows, Android, or other Bluetooth BR/EDR devices.  This issue is a RFCOMM issue and not a BLE issue.   We understand this. 

If bond type is 01, as seen in @awkward_duck logs, then delete bond returns 0403.  If bond type is FF,  as seen in my log files, then delete bond returns 020c. In either case bond cannot be deleted.

The use of BLE is not an option.  Over the past several years we have multiple partners who have invested substantial resources to develop Android applications to communicate with our Bluetooth RFCOMM products.  These customer's currently have multiple Android apps in production that require use of Android RFCOMM Bluetooth Classic APIs

Also, we have existing embedded Bluetooth RFCOMM BR/EDR products (no operating system) that need to pair to this CYBT-483056-02 product that also result in bond delete problems even though type is a valid 01.  It seems like a bug in both bonding and deleting.

Forcing our partners and ourselves to rewrite multiple applications to use the Android BLE  ( in addition to RFCOMM SPP) APIs because the CYBT-483056-02 does not handle RFCOMM pair and delete properly would be a major problem.  Other low power versions of CYBT modules delete bonds correctly.  Unfortunately, we need extended high power long-range and the CYBT-483056-02 has a bug with deleting bonds.

Thank you,

-Ed

0 Likes

Hi @edOfTheInfineon 

Sorry for the delayed response.

We are able to reproduce this issue at our end and it is a bug. we have escalated the issue to FW team to fix this.

 

Thanks & Regards

Pratiksha V

0 Likes

@PratikshaV Please let us know if there are any short-term workarounds.

This bug in EZ Serial 1.0.10 is expected to  shut down  production lines in two weeks on November 1st.

Thank you,

-Ed

0 Likes

@PratikshaV 

As another clue, the delete bond bug can also be reproduced with a different CYBT module, the CYBT-483039-EVAL containing EZ Serial 1.0.04, build 15.

We are not using the CYBT-483039 except for development.  I am only posting this in case it may help you understand the CYBT-483056-02 delete bond issue.

Thank you,

-Ed

 

0 Likes
AnjanaM_61
Moderator
Moderator
Moderator
5 comments on KBA First comment on KBA 5 questions asked

Summary : 

Issue is fixed and new Ez-Serial binary will be updated on Ez-serial platform web page.

Regards,
Anjana

0 Likes