Thanks for the replies.
Yes, I am aware of the “Radio Data” setting and I keep it at “On”. (I have tried “off” too, out of frustration). Anyway, I can’t get the brain to even initiate a connection (the first thing it would need to do to actually find out if the peripheral isn’t a controller).
Brain ID: 56134, 0xdb46
Today I made few more observations, using BT sniffer and the “nRF Connect” tool on an Android phone as a simulator and a debugging aid.
First I’ve got a trace of a paired controller advertising and a connection event to have a baseline to compare with. Connected, check.
The controller was using this AdvData: 02 01 06 0b ff 11 11 01 03 46 db 00 00 01 06
Next, I have tried simulating the controller advertising (manufacturer-specific-data way) with nRF Connect. The brain has initiated a connection, looked for some services and (expectedly) gave up, since the VeX services weren’t present. The AdvData I used were: 02 01 1a 0b ff 11 11 01 03 46 db 00 00 01 06
- the flags were wider, 0x1a as the phone is BR/EDR capable, but otherwise the format was the same, so the brain had little reason to not try that
To get closer to my use case, I switched to the name-based advertising with nRF Connect. I have renamed my phone to “56134-1-6-1-1” and advertised the name instead of mfg. data from nRF app.
The full format was: 02 01 1a 0e 09 35 36 31 33 34 2d 31 2d 36 2d 31 2d 31
The brain still tried to connect to such an advertisement, so the name-based advertisement is not the problem either.
Last, I have compared to my device’s advertisement data: 0e 09 35 36 31 33 34 2d 31 2d 36 2d 31 2d 31 03 19 34 12 02 01 05
As you see, my advertisement packet contained one more field, tag 0x19: Appearance, set to 0x1234 (phony value, eh?).
It turned out the brain didn’t like that at all. Once I have modified my firmware to omit appearance in AdvData, the brain now connects happily.
So I have a solution, though the brain, with VEXos and v1.3 BTLE firmware is now little more picky than what it used to be. It used to ignore the Appearance value before…