Skip to content

Commit

Permalink
doc(bt/bluedroid): Add readme files for BLE examples
Browse files Browse the repository at this point in the history
  • Loading branch information
esp-zbw committed Jul 16, 2024
1 parent 5ca9f2a commit b3082e2
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 0 deletions.
24 changes: 24 additions & 0 deletions examples/bluetooth/bluedroid/ble/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Bluedroid host Examples for BLE

Note: To use examples in this directory, you need to have BLE enabled in configuration and Bluedroid selected as the host stack.

# Example Layout

The examples are grouped into subdirectories by category. Each category directory contains one or more example projects:
* `ble_ancs` Demonstrates how to use the ESP-IDF BLE ANCS (Apple Notification Center Service) on ESP32 series chips to access notifications generated on iOS devices via a Bluetooth low-energy link, and includes instructions for setting the correct chip target, authorizing access to ANCS characteristics, and building, flashing, and monitoring the project. See the [ble_ancs](./ble_ancs/README.md) about example.
* `ble_compatibility_test` Demonstrates how to use the ESP32 series chips to perform Eddystone-compatible BLE scanning of eddystone frames, including UID and URL, aimed at improving proximity-based experiences on both Android and iOS platforms. See the [ble_compatibility_test](./ble_compatibility_test/README.md) about example.
* `ble_eddystone` Demonstrates how to use the ESP32 series chips to perform Eddystone-compatible BLE scanning of eddystone frames, including UID and URL, aimed at improving proximity-based experiences on both Android and iOS platforms. See the [ble_eddystone](./ble_eddystone/README.md) about example.
* `ble_hid_device_demo` Demonstrates how to implement a BLE HID device profile with four different reports (Mouse, Keyboard and LED, Consumer Devices, Vendor devices) on ESP32 series chips, allowing users to set the correct chip target and configure the project according to their application scenarios. See the [ble_hid_device_demo](./ble_hid_device_demo/README.md) about example.
* `ble_ibeacon` Demonstrates how to use the ESP32's Bluetooth capabilities to create an iBeacon sender and receiver, which can be used for location awareness and interactivity between iOS devices and iBeacon hardware. See the [ble_ibeacon](./ble_ibeacon/README.md) about example.
* `ble_spp_client` Demonstrates how to emulate a serial port connection over a Bluetooth wireless connection using a vendor-specific custom profile, with two demos, the ble spp server and ble spp client, that connect and exchange data wirelessly, creating a virtual serial link over the air. See the [ble_spp_client](./ble_spp_client/README.md) about example.
* `ble_spp_server` Demonstrates how to set up and use the ESP-IDF GATT server with various ESP32 chip targets, including instructions on hardware requirements, project configuration, building, flashing, and monitoring the project. See the [ble_spp_server](./ble_spp_server/README.md) about example.
* `throughput_client` Demonstrates how to test the BLE throughput on ESP32 boards, with a potential to reach up to 720-767 Kbps, by setting up the correct chip target, configuring the project settings, and using a development board with ESP32 SoC. See the [throughput_client](./ble_throughput/throughput_client/README.md) about example.
* `throughput_server` Demonstrates how to test the BLE throughput on various ESP32 boards, with the ability to reach up to 720-767 Kbps, by setting up a GATT server and configuring the project to maximize throughput. See the [throughput_server](./ble_throughput/throughput_server/README.md) about example.
* `gatt_client` Demonstrates how to use ESP APIs to create a GATT Client that can connect to a GATT server, enable the server's notification function, and exchange data between devices, with instructions on how to set the correct chip target, test the example, and change the UUID16 to UUID128. See the [gatt_client](./gatt_client/README.md) about example.
* `gatt_security_client` Demonstrates how to use the ESP BLE security APIs to securely connect to and encrypt with peer devices, using various ESP32 chip targets. See the [gatt_security_client](./gatt_security_client/README.md) about example.
* `gatt_security_server` Demonstrates how to use APIs to connect to and encrypt with peer devices, set security parameters, start encryption with a peer device, and handle encryption completion events on various ESP32 chip targets. See the [gatt_security_server](./gatt_security_server/README.md) about example.
* `gatt_server_service_table` Demonstrates how to create a GATT service with an attribute table defined in one place, releasing the user from adding attributes individually as implemented in BLUEDROID, for various ESP32 targets. See the [gatt_server_service_table](./gatt_server_service_table/README.md) about example.
* `gatt_server` Demonstrates how to create a GATT service by adding attributes individually or using an attribute table, start advertising, and connect to a GATT client, with additional instructions on setting the correct chip target, required hardware, building and flashing the project, and changing from UUID16 to UUID128. See the [gatt_server](./gatt_server/README.md) about example.
* `gattc_multi_connect` Demonstrates how to use APIs to create a GATT client that can simultaneously connect to three GATT servers, with the potential to modify the code to connect to more devices. See the [gattc_multi_connect](./gattc_multi_connect/README.md) about example.

See the [README.md](../README.md) file in the upper level [examples](../) directory for more information about examples.
14 changes: 14 additions & 0 deletions examples/bluetooth/bluedroid/ble_50/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Bluedroid host Examples for BLE_50

Note: To use examples in this directory, you need to have BLE enabled in configuration and Bluedroid selected as the host stack.

# Example Layout

The examples are grouped into subdirectories by category. Each category directory contains one or more example projects:
* `ble50_security_client` Demonstrates how to use the ESP BLE5.0 security APIs to securely connect with a peer device and encrypt data exchanges. See the [ble50_security_client](./ble50_security_client/README.md) about example.
* `ble50_security_server` Demonstrates how to securely connect with a peer device and use encryption for data exchange using ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, and ESP32-S3 targets. See the [ble50_security_server](./ble50_security_server/README.md) about example.
* `multi-adv` Demonstrates how to support both legacy and extended advertisement for all phy on various ESP32 chips, including ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, and ESP32-S3. See the [multi-adv](./multi-adv/README.md) about example.
* `peroidic_adv` Demonstrates how to support periodic advertisement, allowing a scanner to sync with an advertiser, and supports extended adv with 2M phy in connectable mode on ESP32-C2, ESP32-C3, ESP32-C6, ESP32-H2, and ESP32-S3 targets. See the [peroidic_adv](./peroidic_adv/README.md) about example.
* `peroidic_sync` Demonstrates how to conduct a periodic extended scan for extended advertisements on various ESP32 chips, providing instructions for project configuration, building, and flashing, as well as troubleshooting tips. See the [peroidic_sync](./peroidic_sync/README.md) about example.

See the [README.md](../README.md) file in the upper level [examples](../) directory for more information about examples.

0 comments on commit b3082e2

Please sign in to comment.