This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Bonding problem

Hello guys,

I'm working in a project which requires from me to bond to certain devices and refuse the bonding from others, I mean at certain input, connect to anyone and accept pairing from any device and at certain input, connect only to previously paired devices only, My problem is that the behaviour of the development kit is good but when I'm using this module PTR51822A, I faced a lot of issues and I cannot understand why its doing like that and it's totally random,it's not depending on the condition I'm putting because when I checked it with ble sniffer, it gives me weird results , for example: image description

image description

image description

why the telephone keeps sending too much packets with no waiting for the module to respond to it? these cases never ever happened with the development kit and it's the same code running in both chips.

and also sometimes after trying to bond, master is not responding to the slave and after timeout it looses the connection and start advertising again which is not expected to do.

I'm saying it's really weird because all my devices are able connecting to the same module and they are also at certain time with the same conditions, didn't connect to the module, I don't know why but I'm attaching six sniffer files, one is the working case and the others are not working for different reasons.

snifferResults.rar

I'm trying my module with LG , Hauwei mediapad m2, Iphone 4s, Ipad 10.

thanks for help.

Regards,

Mohamed Osama

  • Please point me to the exact trace (file name) and if possible the packet number where I should check. The "workingnonworkingcase.pcapng" file showing your device crashed when it's trying to store encryption keys and then worked again after that meaning it's managed to store but for some reason it crashed after that.

    Please state your SDK version, if you use pstorage or device manager.

    Please point me to the schematic of the PTR51822a.

    Depends on which SDK you use, re-bonding with a already bonded central could be rejected (for security reason) but it's not the case here, I don't see any rejecting. I suspect corrupted flash area, an erase all may help.

  • yeah, the sdk version I'm using is nRF51_SDK_10.0.0_dc26b5e, I'm using device manager to handle bonding and connection

    you can look for example at packet 570 1st case, the slave is asking the master and then the master didn't respond for no reason, I guess something weird may be. may be an info is missed in the middle

    here is the picture of module I'm using, it's name is PTR5518 eng V1.4 link text

  • Could you explain this: "the slave is asking the master and then the master didn't respond for no reason" ? What I see is the master try to transmit but the the slave didn't response, so the master retransmit.

    Another thing you have to check is which revision the chip is on the module. Could be that the chip was with revision 2 and won't support S130 v2.0 , please have a look here.

  • I'm using S110 anyways, but at the workingcase file, at packet 263, it's the same behaviour and the response of the master was different,

    I don't understand what the revision will do with supporting s130 or something else.

    another thing, I'm debugging the case again with nordic development kit, an arbitrarily crash pop up at file name in hexadecimal view(0x0001AB9C) which means that most probably the arbitrarily behaviour may be because of that crash.

  • @mohamed: How often do you see the PTR51822A can bond and can not ?

    It's not possible guess what could be wrong if you don't have access to the board and do some debugging, either using breakpoint or printing out trace on UART or RTT (SWD interface)

Related