commit - e7535f5b332088f166ebf551f9bad4bcce0d5a5e
commit + 2beaf2036cde877d59c46ffb33878539fd14fe34
blob - /dev/null
blob + 2b517d2e15ff60165618a7a44c1b8c86f1874efe (mode 644)
--- /dev/null
+++ README.md
+# esp32-ble-throughput
+
+Test throughput of Bluetooth Low Energy (BLE) using an ATT_MTU of 517 bytes, Data
+Packet Length Extension (DLE) of 251 bytes, and 2M PHY.
+
+## Compiling
+
+Install the dependencies:
+
+- Rust
+- cargo-espflash
+- cargo-espmonitor
+
+### Flashing
+
+Flash the program with the following command, replacing `/dev/ttyACM0` with the
+tty where your microcontroller is connected:
+
+```sh
+cargo espflash --partition-table partitions.csv --flash-size 4MB --speed 921600 --monitor /dev/ttyACM0
+```
+
+This not only flashes but also activates monitoring. If monitoring is not
+desired, simply remove the `--monitor` flag.
+Building and flashing in release mode can be achieved with `--release`.
+
+Other options should be adjusted as needed.
+
+### Monitoring
+
+To monitor the device and its output, use the following command, again replacing
+`/dev/ttyACM0` with your microcontroller:
+
+```sh
+cargo espmonitor --chip esp32c3 --reset --speed 921600 /dev/ttyACM0
+```
+
+If automatically resetting the chip on connect is not desired, remove the
+`--reset` flag.
+Monitoring the binary in release mode can be achieved with `--release`.
+
+Other options should be adjusted as needed.