如何将 ESP32 设置为最大 BLE 功率?

时间:2021-03-11 16:50:19

标签: esp32 arduino-esp32

您如何将 ESP32 BLE 增加到最大功率,以获得最大距离?似乎默认设置为索引 5,仅为 +3dbm。 (ESP_PWR_LVL_P3 = index 5,对应+3dbm){​​{3}}

1 个答案:

答案 0 :(得分:0)

曾经有一个 More Details,现在看起来已经修复了。如上所示,ESP_PWR_LVL_P9 = index 7,表示+9dbm。

在"BLEDevice::init("ESP32");"之后,添加这个以获得最大输出:

esp_ble_tx_power_set(ESP_BLE_PWR_TYPE_DEFAULT, ESP_PWR_LVL_P9); 
esp_ble_tx_power_set(ESP_BLE_PWR_TYPE_ADV, ESP_PWR_LVL_P9);
esp_ble_tx_power_set(ESP_BLE_PWR_TYPE_SCAN ,ESP_PWR_LVL_P9);

通过这个检查:

int pwrAdv  = esp_ble_tx_power_get(ESP_BLE_PWR_TYPE_ADV);
int pwrScan = esp_ble_tx_power_get(ESP_BLE_PWR_TYPE_SCAN);
int pwrDef  = esp_ble_tx_power_get(ESP_BLE_PWR_TYPE_DEFAULT);
Serial.println("Power Settings: (ADV,SCAN,DEFAULT)");         //all should show index7, aka +9dbm
Serial.println(pwrAdv);
Serial.println(pwrScan);
Serial.println(pwrDef);

还可以通过 nRF Connect 等 Android 手机应用程序确认 Tx 功率电平现在为 9dBm。