How to figure out which board I am using on Arduino-CLI

Hello everyone,

I'd like to request help with how to figure out which board I'm using.

I have a ESP32 WROOM 32 board and I' like to know what's the fqbn in order to flash the code to the board using the raspberry pi ssh connection.

I got error: OSError: [Errno 25] Inappropriate ioctl for device
Failed uploading: uploading error: exit status 1. I read that it could be due to improper fqbn selection.

Does anyone know what's the appropriate fqbn?

Thank you.

Not sure what it is indicating. Acronyms are generally all uppercase. is this what you meant to type: FQBN (Fully Qualified Board Name)

Hi @giovannelucas. You can learn the full list of FQBNs with the board listall command:

$ ./arduino-cli board listall esp32
Board Name                                                              FQBN
AI Thinker ESP32-CAM                                                    esp32:esp32:esp32cam
ALKS ESP32                                                              esp32:esp32:alksesp32
ATMegaZero ESP32-S2                                                     esp32:esp32:atmegazero_esp32s2
Adafruit ESP32 Feather                                                  esp32:esp32:featheresp32
Adafruit Feather ESP32 V2                                               esp32:esp32:adafruit_feather_esp32_v2
Adafruit Feather ESP32-S2                                               esp32:esp32:adafruit_feather_esp32s2
Adafruit Feather ESP32-S2 Reverse TFT                                   esp32:esp32:adafruit_feather_esp32s2_reversetft
Adafruit Feather ESP32-S2 TFT                                           esp32:esp32:adafruit_feather_esp32s2_tft
Adafruit Feather ESP32-S3 2MB PSRAM                                     esp32:esp32:adafruit_feather_esp32s3
Adafruit Feather ESP32-S3 No PSRAM                                      esp32:esp32:adafruit_feather_esp32s3_nopsram
Adafruit Feather ESP32-S3 Reverse TFT                                   esp32:esp32:adafruit_feather_esp32s3_reversetft
Adafruit Feather ESP32-S3 TFT                                           esp32:esp32:adafruit_feather_esp32s3_tft
Adafruit FunHouse                                                       esp32:esp32:adafruit_funhouse_esp32s2
Adafruit ItsyBitsy ESP32                                                esp32:esp32:adafruit_itsybitsy_esp32
Adafruit MagTag 2.9"                                                    esp32:esp32:adafruit_magtag29_esp32s2
Adafruit MatrixPortal ESP32-S3                                          esp32:esp32:adafruit_matrixportal_esp32s3
Adafruit Metro ESP32-S2                                                 esp32:esp32:adafruit_metro_esp32s2
Adafruit QT Py ESP32                                                    esp32:esp32:adafruit_qtpy_esp32_pico
Adafruit QT Py ESP32-C3                                                 esp32:esp32:adafruit_qtpy_esp32c3
Adafruit QT Py ESP32-S2                                                 esp32:esp32:adafruit_qtpy_esp32s2
Adafruit QT Py ESP32-S3 (4M Flash 2M PSRAM)                             esp32:esp32:adafruit_qtpy_esp32s3_n4r2
Adafruit QT Py ESP32-S3 No PSRAM                                        esp32:esp32:adafruit_qtpy_esp32s3_nopsram
AirM2M_CORE_ESP32C3                                                     esp32:esp32:AirM2M_CORE_ESP32C3
Arduino Nano ESP32                                                      esp32:esp32:nano_nora
BPI-BIT                                                                 esp32:esp32:bpi-bit
BPI-Leaf-S3                                                             esp32:esp32:bpi_leaf_s3
Bee Data Logger                                                         esp32:esp32:Bee_Data_Logger
Bee Motion                                                              esp32:esp32:Bee_Motion
Bee Motion Mini                                                         esp32:esp32:Bee_Motion_Mini
Bee Motion S3                                                           esp32:esp32:Bee_Motion_S3
Bee S3                                                                  esp32:esp32:Bee_S3
CNRS AW2ETH                                                             esp32:esp32:aw2eth
Connaxio's Espoir                                                       esp32:esp32:connaxio_espoir
Crabik Slot ESP32-S3                                                    esp32:esp32:crabik_slot_esp32_s3
Cytron Maker Feather AIoT S3                                            esp32:esp32:cytron_maker_feather_aiot_s3
D-duino-32                                                              esp32:esp32:d-duino-32
DFRobot Beetle ESP32-C3                                                 esp32:esp32:dfrobot_beetle_esp32c3
DFRobot Firebeetle 2 ESP32-S3                                           esp32:esp32:dfrobot_firebeetle2_esp32s3
DFRobot Romeo ESP32-S3                                                  esp32:esp32:dfrobot_romeo_esp32s3
DOIT ESP32 DEVKIT V1                                                    esp32:esp32:esp32doit-devkit-v1
DOIT ESPduino32                                                         esp32:esp32:esp32doit-espduino
DPU ESP32                                                               esp32:esp32:dpu_esp32
Deneyap Kart                                                            esp32:esp32:deneyapkart
Deneyap Kart 1A                                                         esp32:esp32:deneyapkart1A
Deneyap Kart 1A v2                                                      esp32:esp32:deneyapkart1Av2
Deneyap Kart G                                                          esp32:esp32:deneyapkartg
Deneyap Mini                                                            esp32:esp32:deneyapmini
Deneyap Mini v2                                                         esp32:esp32:deneyapminiv2
Denky                                                                   esp32:esp32:ch_denky
Department of Alchemy MiniMain ESP32-S2                                 esp32:esp32:department_of_alchemy_minimain_esp32s2
Dongsen Tech Pocket 32                                                  esp32:esp32:pocket_32
ESP-C3-M1-I-Kit                                                         esp32:esp32:esp32c3m1IKit
ESP32 Dev Module                                                        esp32:esp32:esp32
ESP32 FM DevKit                                                         esp32:esp32:fm-devkit
ESP32 PICO-D4                                                           esp32:esp32:pico32
ESP32 Wrover Kit (all versions)                                         esp32:esp32:esp32wroverkit
ESP32 Wrover Module                                                     esp32:esp32:esp32wrover
ESP32-S3-Box                                                            esp32:esp32:esp32s3box
ESP32-S3-USB-OTG                                                        esp32:esp32:esp32s3usbotg
ESP32-WROOM-DA Module                                                   esp32:esp32:esp32da
ESP32C3 Dev Module                                                      esp32:esp32:esp32c3
ESP32S2 Dev Module                                                      esp32:esp32:esp32s2
ESP32S2 Native USB                                                      esp32:esp32:esp32s2usb
ESP32S3 CAM LCD                                                         esp32:esp32:esp32s3camlcd
ESP32S3 Dev Module                                                      esp32:esp32:esp32s3
ESP32vn IoT Uno                                                         esp32:esp32:esp32vn-iot-uno
ESPea32                                                                 esp32:esp32:espea32
ESPectro32                                                              esp32:esp32:espectro32
ET-Board                                                                esp32:esp32:ET-Board
Edgebox-ESP-100                                                         esp32:esp32:Edgebox-ESP-100
Electronic SweetPeas - ESP320                                           esp32:esp32:esp320
FireBeetle 2 ESP32-E                                                    esp32:esp32:dfrobot_firebeetle2_esp32e
FireBeetle-ESP32                                                        esp32:esp32:firebeetle32
Franzininho WiFi                                                        esp32:esp32:franzininho_wifi_esp32s2
Franzininho WiFi MSC                                                    esp32:esp32:franzininho_wifi_msc_esp32s2
Frog Board ESP32                                                        esp32:esp32:frogboard
HONEYLemon                                                              esp32:esp32:honeylemon
Heltec WiFi Kit 32                                                      esp32:esp32:heltec_wifi_kit_32
Heltec WiFi Kit 32(V3)                                                  esp32:esp32:heltec_wifi_kit_32_V3
Heltec WiFi LoRa 32                                                     esp32:esp32:heltec_wifi_lora_32
Heltec WiFi LoRa 32(V2)                                                 esp32:esp32:heltec_wifi_lora_32_V2
Heltec WiFi LoRa 32(V3) / Wireless shell(V3) / Wireless stick lite (V3) esp32:esp32:heltec_wifi_lora_32_V3
Heltec Wireless Stick                                                   esp32:esp32:heltec_wireless_stick
Heltec Wireless Stick Lite                                              esp32:esp32:heltec_wireless_stick_lite
Hornbill ESP32 Dev                                                      esp32:esp32:hornbill32dev
Hornbill ESP32 Minima                                                   esp32:esp32:hornbill32minima
IMBRIOS LOGSENS_V1P1                                                    esp32:esp32:imbrios-logsens-v1p1
INEX OpenKB                                                             esp32:esp32:OpenKB
IntoRobot Fig                                                           esp32:esp32:intorobot-fig
KB32-FT                                                                 esp32:esp32:kb32
KITS ESP32 EDU                                                          esp32:esp32:kits-edu
LOLIN C3 Mini                                                           esp32:esp32:lolin_c3_mini
LOLIN D32                                                               esp32:esp32:d32
LOLIN D32 PRO                                                           esp32:esp32:d32_pro
LOLIN S2 Mini                                                           esp32:esp32:lolin_s2_mini
LOLIN S2 PICO                                                           esp32:esp32:lolin_s2_pico
LOLIN S3                                                                esp32:esp32:lolin_s3
LOLIN S3 Mini                                                           esp32:esp32:lolin_s3_mini
LOLIN S3 Pro                                                            esp32:esp32:lolin_s3_pro
Labplus mPython                                                         esp32:esp32:mPython
LilyGo T-Display-S3                                                     esp32:esp32:lilygo_t_display_s3
Lion:Bit Dev Board                                                      esp32:esp32:lionbit
LoPy                                                                    esp32:esp32:lopy
LoPy4                                                                   esp32:esp32:lopy4
M5Stack-ATOM                                                            esp32:esp32:m5stack-atom
M5Stack-ATOMS3                                                          esp32:esp32:m5stack-atoms3
M5Stack-Core-ESP32                                                      esp32:esp32:m5stack-core-esp32
M5Stack-Core2                                                           esp32:esp32:m5stack-core2
M5Stack-CoreInk                                                         esp32:esp32:m5stack-coreink
M5Stack-CoreS3                                                          esp32:esp32:m5stack-cores3
M5Stack-FIRE                                                            esp32:esp32:m5stack-fire
M5Stack-Station                                                         esp32:esp32:m5stack-station
M5Stack-Timer-CAM                                                       esp32:esp32:m5stack-timer-cam
M5Stamp-Pico                                                            esp32:esp32:m5stamp-pico
M5Stick-C                                                               esp32:esp32:m5stick-c
MGBOT IOTIK 32A                                                         esp32:esp32:mgbot-iotik32a
MGBOT IOTIK 32B                                                         esp32:esp32:mgbot-iotik32b
MH ET LIVE ESP32DevKIT                                                  esp32:esp32:mhetesp32devkit
MH ET LIVE ESP32MiniKit                                                 esp32:esp32:mhetesp32minikit
MagicBit                                                                esp32:esp32:magicbit
Metro ESP-32                                                            esp32:esp32:metro_esp-32
Microduino-CoreESP32                                                    esp32:esp32:CoreESP32
Nano32                                                                  esp32:esp32:nano32
Nebula S3                                                               esp32:esp32:nebulas3
Node32s                                                                 esp32:esp32:node32s
NodeMCU-32S                                                             esp32:esp32:nodemcu-32s
Noduino Quantum                                                         esp32:esp32:quantum
ODROID ESP32                                                            esp32:esp32:odroid_esp32
OLIMEX ESP32-DevKit-LiPo                                                esp32:esp32:esp32-DevKitLipo
OLIMEX ESP32-EVB                                                        esp32:esp32:esp32-evb
OLIMEX ESP32-GATEWAY                                                    esp32:esp32:esp32-gateway
OLIMEX ESP32-PoE                                                        esp32:esp32:esp32-poe
OLIMEX ESP32-PoE-ISO                                                    esp32:esp32:esp32-poe-iso
OROCA EduBot                                                            esp32:esp32:oroca_edubot
Onehorse ESP32 Dev Module                                               esp32:esp32:onehorse32dev
Piranha ESP-32                                                          esp32:esp32:piranha_esp-32
ProtoCentral HealthyPi 4                                                esp32:esp32:healthypi4
Pycom GPy                                                               esp32:esp32:gpy
RedPill(+) ESP32-S3                                                     esp32:esp32:redpill_esp32s3
RoboHeart Hercules                                                      esp32:esp32:roboheart_hercules
S.ODI Ultra v1                                                          esp32:esp32:S_ODI_Ultra
STAMP-S3                                                                esp32:esp32:stamp-s3
Senses's WEIZEN                                                         esp32:esp32:sensesiot_weizen
Silicognition wESP32                                                    esp32:esp32:wesp32
Sonoff DUALR3                                                           esp32:esp32:sonoff_dualr3
SparkFun ESP32 IoT RedBoard                                             esp32:esp32:sparkfun_esp32_iot_redboard
SparkFun ESP32 MicroMod                                                 esp32:esp32:esp32micromod
SparkFun ESP32 Thing                                                    esp32:esp32:esp32thing
SparkFun ESP32 Thing Plus                                               esp32:esp32:esp32thing_plus
SparkFun ESP32 Thing Plus C                                             esp32:esp32:esp32thing_plus_c
SparkFun ESP32-S2 Thing Plus                                            esp32:esp32:sparkfun_esp32s2_thing_plus
SparkFun LoRa Gateway 1-Channel                                         esp32:esp32:sparkfun_lora_gateway_1-channel
T-Beam                                                                  esp32:esp32:t-beam
TAMC Termod S3                                                          esp32:esp32:tamc_termod_s3
TTGO LoRa32-OLED                                                        esp32:esp32:ttgo-lora32
TTGO T-OI PLUS RISC-V ESP32-C3                                          esp32:esp32:ttgo-t-oi-plus
TTGO T-Watch                                                            esp32:esp32:twatch
TTGO T1                                                                 esp32:esp32:ttgo-t1
TTGO T7 V1.3 Mini32                                                     esp32:esp32:ttgo-t7-v13-mini32
TTGO T7 V1.4 Mini32                                                     esp32:esp32:ttgo-t7-v14-mini32
ThaiEasyElec's ESPino32                                                 esp32:esp32:espino32
Trueverit ESP32 Universal IoT Driver                                    esp32:esp32:esp32-trueverit-iot-driver
Trueverit ESP32 Universal IoT Driver MK II                              esp32:esp32:esp32-trueverit-iot-driver-mkii
Turta IoT Node                                                          esp32:esp32:turta_iot_node
UM FeatherS2                                                            esp32:esp32:feathers2
UM FeatherS2 Neo                                                        esp32:esp32:feathers2neo
UM FeatherS3                                                            esp32:esp32:feathers3
UM PROS3                                                                esp32:esp32:pros3
UM RMP                                                                  esp32:esp32:rmp
UM TinyPICO                                                             esp32:esp32:tinypico
UM TinyS2                                                               esp32:esp32:tinys2
UM TinyS3                                                               esp32:esp32:tinys3
VALTRACK_V4_MFW_ESP32_C3                                                esp32:esp32:VALTRACK_V4_MFW_ESP32_C3
VALTRACK_V4_VTS_ESP32_C3                                                esp32:esp32:VALTRACK_V4_VTS_ESP32_C3
VintLabs ESP32 Devkit                                                   esp32:esp32:vintlabs-devkit-v1
WEMOS D1 MINI ESP32                                                     esp32:esp32:d1_mini32
WEMOS D1 R32                                                            esp32:esp32:d1_uno32
WEMOS LOLIN32                                                           esp32:esp32:lolin32
WEMOS LOLIN32 Lite                                                      esp32:esp32:lolin32-lite
WT32-ETH01 Ethernet Module                                              esp32:esp32:wt32-eth01
Watchy                                                                  esp32:esp32:watchy
WeMos WiFi&Bluetooth Battery                                            esp32:esp32:WeMosBat
WiFiduino32                                                             esp32:esp32:wifiduino32
WiFiduino32S3                                                           esp32:esp32:wifiduino32s3
WiFiduinoV2                                                             esp32:esp32:wifiduino32c3
WiPy 3.0                                                                esp32:esp32:wipy3
Widora AIR                                                              esp32:esp32:widora-air
XIAO_ESP32C3                                                            esp32:esp32:XIAO_ESP32C3
XIAO_ESP32S3                                                            esp32:esp32:XIAO_ESP32S3
XinaBox CW02                                                            esp32:esp32:cw02
microS2                                                                 esp32:esp32:micros2
u-blox NINA-W10 series (ESP32)                                          esp32:esp32:nina_w10
u-blox NORA-W10 series (ESP32-S3)                                       esp32:esp32:nora_w10
uPesy ESP32 Wroom DevKit                                                esp32:esp32:uPesy_wroom
uPesy ESP32 Wrover DevKit                                               esp32:esp32:uPesy_wrover
unPhone 7                                                               esp32:esp32:unphone7
unPhone 8                                                               esp32:esp32:unphone8
unPhone 9                                                               esp32:esp32:unphone9

If you have a well branded model of board (e.g., "Arduino Nano ESP32"), then just use the FQBN associated with that board name.

It is often less easy to determine the model-specific FQBN when using one of the many different models of generic Chinese ESP32-based development boards due to them not being well differentiated. The esp32:esp32:esp32 FQBN can be used with any of the boards based on the original ESP32 microcontroller (as opposed to the newer ESP32-C3, ESP32-S2, ESP32-S3 microcontrollers). So that will be the best choice in case you don't find the specific model of your board on that list. There are some additional "custom board options" that are used to set additional configuration parameters. You can learn those with the board details command:

$ arduino-cli board details --fqbn esp32:esp32:esp32
Board name:            ESP32 Dev Module                                                                                                
FQBN:                  esp32:esp32:esp32                                                                                               
Board version:         2.0.10                                                                                                          
Debugging supported:   ✔                                                                                                               

Package name:          esp32                                                                                                           
Package maintainer:    Espressif Systems                                                                                               
Package URL:           https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json                     
Package website:       https://github.com/espressif/arduino-esp32                                                                      
Package online help:   http://esp32.com                                                                                                

Platform name:         esp32                                                                                                           
Platform category:     ESP32                                                                                                           
Platform architecture: esp32                                                                                                           
Platform URL:          https://github.com/espressif/arduino-esp32/releases/download/2.0.10/esp32-2.0.10.zip                            
Platform file name:    esp32-2.0.10.zip                                                                                                
Platform size (bytes): 250401273                                                                                                       
Platform checksum:     SHA-256:6028cb623c838723c41000869963d95f7cb811d58643133068eed31c03c2d7c0                                        

Required tool: arduino:dfu-util                              0.11.0-arduino5        
Required tool: esp32:esptool_py                              4.5.1                  
Required tool: esp32:mklittlefs                              3.0.0-gnu12-dc7f933    
Required tool: esp32:mkspiffs                                0.2.3                  
Required tool: esp32:openocd-esp32                           v0.11.0-esp32-20221026 
Required tool: esp32:riscv32-esp-elf-gcc                     esp-2021r2-patch5-8.4.0
Required tool: esp32:riscv32-esp-elf-gdb                     11.2_20220823          
Required tool: esp32:xtensa-esp-elf-gdb                      11.2_20220823          
Required tool: esp32:xtensa-esp32-elf-gcc                    esp-2021r2-patch5-8.4.0
Required tool: esp32:xtensa-esp32s2-elf-gcc                  esp-2021r2-patch5-8.4.0
Required tool: esp32:xtensa-esp32s3-elf-gcc                  esp-2021r2-patch5-8.4.0

Option:        Upload Speed                                                          UploadSpeed                     
               921600                                        ✔                       UploadSpeed=921600              
               115200                                                                UploadSpeed=115200              
               256000                                                                UploadSpeed=256000              
               230400                                                                UploadSpeed=230400              
               512000                                                                UploadSpeed=512000              
Option:        CPU Frequency                                                         CPUFreq                         
               240MHz (WiFi/BT)                              ✔                       CPUFreq=240                     
               160MHz (WiFi/BT)                                                      CPUFreq=160                     
               80MHz (WiFi/BT)                                                       CPUFreq=80                      
               40MHz (40MHz XTAL)                                                    CPUFreq=40                      
               26MHz (26MHz XTAL)                                                    CPUFreq=26                      
               20MHz (40MHz XTAL)                                                    CPUFreq=20                      
               13MHz (26MHz XTAL)                                                    CPUFreq=13                      
               10MHz (40MHz XTAL)                                                    CPUFreq=10                      
Option:        Flash Frequency                                                       FlashFreq                       
               80MHz                                         ✔                       FlashFreq=80                    
               40MHz                                                                 FlashFreq=40                    
Option:        Flash Mode                                                            FlashMode                       
               QIO                                           ✔                       FlashMode=qio                   
               DIO                                                                   FlashMode=dio                   
               QOUT                                                                  FlashMode=qout                  
               DOUT                                                                  FlashMode=dout                  
Option:        Flash Size                                                            FlashSize                       
               4MB (32Mb)                                    ✔                       FlashSize=4M                    
               8MB (64Mb)                                                            FlashSize=8M                    
               2MB (16Mb)                                                            FlashSize=2M                    
               16MB (128Mb)                                                          FlashSize=16M                   
Option:        Partition Scheme                                                      PartitionScheme                 
               Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS) ✔                       PartitionScheme=default         
               Default 4MB with ffat (1.2MB APP/1.5MB FATFS)                         PartitionScheme=defaultffat     
               8M with spiffs (3MB APP/1.5MB SPIFFS)                                 PartitionScheme=default_8MB     
               Minimal (1.3MB APP/700KB SPIFFS)                                      PartitionScheme=minimal         
               No OTA (2MB APP/2MB SPIFFS)                                           PartitionScheme=no_ota          
               No OTA (1MB APP/3MB SPIFFS)                                           PartitionScheme=noota_3g        
               No OTA (2MB APP/2MB FATFS)                                            PartitionScheme=noota_ffat      
               No OTA (1MB APP/3MB FATFS)                                            PartitionScheme=noota_3gffat    
               Huge APP (3MB No OTA/1MB SPIFFS)                                      PartitionScheme=huge_app        
               Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)                         PartitionScheme=min_spiffs      
               16M Flash (2MB APP/12.5MB FATFS)                                      PartitionScheme=fatflash        
               16M Flash (3MB APP/9.9MB FATFS)                                       PartitionScheme=app3M_fat9M_16MB
               RainMaker                                                             PartitionScheme=rainmaker       
Option:        Core Debug Level                                                      DebugLevel                      
               None                                          ✔                       DebugLevel=none                 
               Error                                                                 DebugLevel=error                
               Warn                                                                  DebugLevel=warn                 
               Info                                                                  DebugLevel=info                 
               Debug                                                                 DebugLevel=debug                
               Verbose                                                               DebugLevel=verbose              
Option:        PSRAM                                                                 PSRAM                           
               Disabled                                      ✔                       PSRAM=disabled                  
               Enabled                                                               PSRAM=enabled                   
Option:        Arduino Runs On                                                       LoopCore                        
               Core 1                                        ✔                       LoopCore=1                      
               Core 0                                                                LoopCore=0                      
Option:        Events Run On                                                         EventsCore                      
               Core 1                                        ✔                       EventsCore=1                    
               Core 0                                                                EventsCore=0                    
Option:        Erase All Flash Before Sketch Upload                                  EraseFlash                      
               Disabled                                      ✔                       EraseFlash=none                 
               Enabled                                                               EraseFlash=all                  
Option:        JTAG Adapter                                                          JTAGAdapter                     
               Disabled                                      ✔                       JTAGAdapter=default             
               FTDI Adapter                                                          JTAGAdapter=external            
               ESP USB Bridge                                                        JTAGAdapter=bridge              
Programmers:   ID                                            Name                   
               esptool                                       Esptool                
1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.