Get board name in your code
Sometimes you write your application for different ESP32 boards and have to assign e.g. GPIO’s different depending on the board your app is compiled for and running on.
The easiest way is the use the #define ARDUINO_BOARD which is created by the toolchain from the board name in the boards .json file.
So in your platformio.ini file you might have defined the different boards like
[env:featheresp32]
.....
[env: esp32dev]
.....
The boards names are defined in
[YOUR_PATH_TO_PLATFORMIO].platformio\platforms\espressif32\boards. Open
the .json file for your boards and look for “name”: “Adafruit ESP32
Feather”
For the esp32dev board you find in esp32dev.json
the name Espressif ESP32 Dev Module
for the featheresp32 you find in
featheresp32.json the name Adafruit ESP32
Feather
So in your code you might use this like:
String thisBoard= ARDUINO_BOARD;
Serial.println(thisBoard);
if (thisBoard.compareTo("Espressif ESP32 Dev Module") == 0) {
Serial.println("Compiled for Espressif ESP32 Dev Module");
relayPort = 0;
} else if (thisBoard.compareTo("Adafruit ESP32 Feather") == 0) {
Serial.println("Compiled for Adafruit ESP32 Feather");
relayPort = 16;
} else {
Serial.println("Compiled for another board");
relayPort = 5;
}