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

Why does this particular flag involve an "or" operation?

uint8_t flags = BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED |
                BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE;

And then when I look up "BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE;", I got this:

(BLE_GAP_ADV_FLAG_LE_GENERAL_DISC_MODE | BLE_GAP_ADV_FLAG_BR_EDR_NOT_SUPPORTED)   /**< LE General Discoverable Mode, BR/EDR not supported. */

I'm having a bit of brain stall right now and can't figure it out. I know it's a trick to make the whole thing a "switch" of some sort but really don't know how.

Related