I think I’m right is saying that this is an ESP32-DevKitC board fitted with the ESP32-WRover-E processor.
There are a bewildering number of ESP32 options in the Arduino IDE (2.3.6) Board Manager - several for DevKits, and a couple that include the word WRover.
Which one is the best to use for this board?
As an aside, I’ve always just used ESP32 Dev Module in the past with more ‘normal’ ESP32 boards but is there a reason why the Arduino IDE can’t automatically recognise the board that is connected?
Arduino IDE does have an automatic board model recognition capability. This relies on the port of the board having properties that are unique to a given board model.
The official Arduino boards (as well as some 3rd party boards) have a USB interface that has a USB VID/PID owned by the company, which is specific to the board model. Arduino IDE will automatically identify these boards.
Other boards use a general purpose USB interface chip which produces a port that has properties that will be present for the port of any device that uses that chip. In this case, it is impossible for Arduino IDE to identify the board model. This is the case for the ESP32-DevKitC board. The board uses the general purpose Silicon Labs CP2104 USB to serial bridge chip, and thus has the USB VID/PID pair programmed into all these chips by Silicon Labs.
I guess Espressif will have their own way of storing the model of board electronically within the board, it just isn’t the same way that Arduino do it. It would be great if a way to display it could be included in the future - there’s a lot more boards than there used to be!
Not in a table, nor in any other type of human friendly format, but will find the source code of the board definitions in the "esp32" platform's boards.txt file. The file can be viewed online here (this is as it is in version 3.3.4 of the platform):
You can find the location of the file on your computer by the following procedure:
Select File > Examples > 01.Basics > BareMinimum from the Arduino IDE menus. ⓘ This sketch was chosen arbitrarily; any sketch will serve for this purpose.
Select File > Preferences... (or Arduino IDE > Settings... for macOS users) from the Arduino IDE menus.
The "Preferences" dialog will open.
Check the box next to "Show verbose output during: ☐ compile" in the "Preferences" dialog.
Click the "OK" button.
The "Preferences" dialog will close.
Select any board from Arduino IDE's Tools > Board > esp32 menu.
Select Sketch > Verify/Compile from the Arduino IDE menus.
Wait for the compilation to finish.
Scroll up all the way to the top in the black "Output" panel at the bottom of the Arduino IDE window.
Now examine the first few lines of the output produced by the compilation. There you will see something like this:
Using board 'esp32' from platform in folder: C:\Users\per\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.3.4
The board definitions of your installation of the "esp32" boards platform are in the boards.txt file you will find under that folder.
There is documentation for the general data structure of boards.txt in the Arduino Platform Specification: