diff --git a/README.md b/README.md index f3de27b..7bd3a3d 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,30 @@ using var rxChannel = new ReceiverChannel(rxChannelSettings); rxChannel.Start(clearBuffer: true); ``` +## ESP Boards and available channels + +If you get Exception initializing TX or RX Channel, you have to set the channel based on your ESP32 board version: + +- The ESP32 has 8 channels, each of them can be either receiver or transmitter (this is ok for no channel specification, first free channel is ok) +- The ESP32-C3 has 4 channels, Channel<0> and Channel<1> hardcoded for transmitting signals and Channel<2> and Channel<3> hardcoded for receiving signals. +- The ESP32-C6 has 4 channels, Channel<0> and Channel<1> hardcoded for transmitting signals and Channel<2> and Channel<3> hardcoded for receiving signals. +- The ESP32-H2 has 4 channels, Channel<0> and Channel<1> hardcoded for transmitting signals and Channel<2> and Channel<3> hardcoded for receiving signals. +- The ESP32-S2 has 4 channels, each of them can be either receiver or transmitter. +- The ESP32-S3 has 8 channels, Channel<0>-Channel<3> hardcoded for transmitting signals and Channel<4>-Channel<7> hardcoded for receiving signals. +Based on this you can specify the channel in settings: + +``` +rxChannelSettings = new ReceiverChannelSettings(0) + { + Channel = 3, //2,3 ESP32-C3 ESP32-C6 ESP32-H2 | 4-7 ESP32-S3 + ... + +txChannelSettings = new TransmitChannelSettings(0) + { + Channel=1, //0,1 ESP32-C3 ESP32-C6 ESP32-H2 | 1-3 ESP32-S3 + ... +``` + ## Build status | Component | Build Status | NuGet Package |