2020-12-19 01:26 PM
Hello, I'm using STM32F446RE with X-Nucleo-IDB05A1 for a set of projects and am testing to see if these projects connect using LightBlue PunchThrough App for iOS.
I have a set of projects I have created, compiled, and uploaded to my STM32F446 that work very inconsistently and overall exhibit weird behavior:
Observation 1:
Sometimes a BLE program is able to connect and I can see it on the BLE PunchThrough App (Iphone 10) and other times I cannot see it at all.
Observation 2:
What's even weirder is that there are times where when it does work, it finally connects to the last program I tried. For example, if I tried to upload a BLE program entitled 'ChatX', it will instead connect with a program I tried to upload before it called 'Gum". More often than not, it will not upload at all.
Any thoughts or suggestions on how to fix this?
2020-12-20 08:22 PM
Observation 1:
When you cannot see it, that means
the app does not see the advertising packets --> then check the settings of advertising interval, scanning intervals, etc.
or the X-Nucleo-IDB05A1 does not advertise --> then check the commands issued to the IDB05A1 and the events responded from it
Observation 2:
Sorry that i don't quite understand. Did you mean the app connected to a different BLE device? Maybe try to use a different address.
2020-12-25 01:42 PM
Hello Winfred,
Thanks for the answer, for observation 2 it's the same device but would finally upload a project I would try before, must be some kind of delay or something a lot of these projects have the same address so maybe that's the reason why.
I'm going to try what you mentioned in observation 1, I found the intervals in the bluenrg_conf.h as shown above and will make adjustments to them. Do you have any practical book to recommend for dealing directly with the bluenrg code for ST? I anticipate I will run into more troubleshooting
Thanks
2020-12-27 06:00 PM
> for observation 2 it's the same device but would finally upload a project I would try before, must be some kind of delay or something a lot of these projects have the same address so maybe that's the reason why
Not quite understand what does it mean for "upload" a project. Does it mean to program/flash the firmware (built from the project) to the STM32? It does not make sense if you program in the application for BLE to connect to some device, but it actually connects to another one. Power down other devices when you are testing. Try to use a different address if there is another unexpected device advertising with the address you're going to test.
> I found the intervals in the bluenrg_conf.h as shown above and will make adjustments to them
In brief, configure a shorter advertising interval and longer scan window to have better successful rate of scanning.
Refer to the following diagram explaining the relationship between the advertiser (advertising interval) and the scanner (scan window, scan interval).