Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BLE advertisement channel 39 is not working on Bluedroid on ESP32S3 (IDFGH-13802) #14659

Open
3 tasks done
aircable opened this issue Oct 1, 2024 · 1 comment
Open
3 tasks done
Assignees
Labels
Status: Opened Issue is new Type: Bug bugs in IDF

Comments

@aircable
Copy link

aircable commented Oct 1, 2024

Answers checklist.

  • I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
  • I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
  • I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.

IDF 5.4

Espressif SoC revision.

ESP32S3

Operating System used.

Linux

How did you build your project?

Command line with idf.py

If you are using Windows, please specify command line type.

None

Development Kit.

Seeed ESP32S3 module

Power Supply used.

USB

What is the expected behavior?

I configured the advertisement like this:

static esp_ble_adv_params_t adv_params = {
    .adv_int_min        = 0x20, // fastest, very 20ms
    .adv_int_max        = 0x20,
    .adv_type           = ADV_TYPE_NONCONN_IND, 
    .own_addr_type      = BLE_ADDR_TYPE_RANDOM,  
    .channel_map        = ADV_CHNL_39,         // bitmap 0x07, ADV_CHNL_ALL
    .adv_filter_policy  = ADV_FILTER_ALLOW_SCAN_ANY_CON_ANY,
};

After setting the advertisement data esp_ble_gap_config_adv_data_raw() it starts advertising.
Confirming with a spectrum analyzer as well as a BLE scanner app on the phone (LightBlue) the chip is not advertising.
There are no error reports, all events are occurring correctly.

Chainging the channel_map to either ADV_CHNL_38 or ADV_CHNL_ALL works ok. I can see the advertisments.

Unfortunately I have no way to control the receiving channels to listen only on channel 39 for example. There is no API, unless you know how to do that. I would appreciate it. So I use external instruments and receivers to check for any channel 39 only advertisements and there are none.

What is the actual behavior?

no error, just does not do what it suppose to do

Steps to reproduce.

I only tested Bluedroid, not Nimble.
To reproduce, use the iBeacon demo app in the IDF examples and change the advertisement config to channel 39 only.

Debug Logs.

No logs, no errors, just not doing what it should.

More Information.

No response

@aircable aircable added the Type: Bug bugs in IDF label Oct 1, 2024
@github-actions github-actions bot changed the title BLE advertisement channel 39 is not working on Bluedroid on ESP32S3 BLE advertisement channel 39 is not working on Bluedroid on ESP32S3 (IDFGH-13802) Oct 1, 2024
@espressif-bot espressif-bot added the Status: Opened Issue is new label Oct 1, 2024
@aircable
Copy link
Author

aircable commented Oct 6, 2024

This hardware bug seems to be on a ESP32S3 chip with revision v0.1. I was successfully working with only channel 39 on revision v0.2 on a ESP32-S3-WROOM-1 module, not on a XIAO-ESP32-S3 module.
If you can verify, it's probably ok to close this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Opened Issue is new Type: Bug bugs in IDF
Projects
None yet
Development

No branches or pull requests

3 participants