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.
giovannelucas:
fqbn
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
system
Closed
January 14, 2024, 4:04am
4
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.