Device is offline in Arduino IoT cloud

I'm using "Doit ESP32 devkit V1" device, I want to connect it to the Arduino IoT cloud so I added it as a device in my thing but it is offline although it is plugged to my laptop. How I can make it online or ready to connect?
Is there something I should do with the Arduino IDE or Arduino Create Agent?

Hi @haidar_bazzoun. Did you upload your Thing sketch to the ESP32 board yet?

No I didn't because the device is offline, I can't upload.

You got it backwards. The device is offline because you didn't upload. It won't show up as online until you have uploaded a Thing sketch and the board starts to communicate with the Arduino IoT Cloud servers via the network.

The reason you can't upload has nothing to do with offline or online status. The reason you can't upload is because the Arduino IoT Cloud editor only works with the official Arduino boards (e.g., Arduino Nano 33 IoT). Those boards have a dedicated USB VID/PID pair owned by Arduino that allows the editor to automatically detect which port the board is connected to on your computer.

The manufacturer of your "Doit ESP32 devkit V1" board did not purchase a custom USB VID. Instead, they use the generic VID/PID pair provided by the manufacturer of the board's general purpose USB to serial adapter chip (e.g., WCH CH340, Silicon Labs CP2103). There is no way to identify a board from that VID/PID pair because the chip might be on any type of Arduino board, or even just some random consumer electronic device that happens to be attached to your computer.

But this is not really a problem because you can also use Arduino Web Editor to upload your Thing sketch and Arduino Web Editor does not require that the board can be automatically detected. The Arduino IoT Cloud editor is just a stripped down variant of Arduino Web Editor. The idea is to remove all but the absolutely essential functionality to make things less confusing for the user. But in the case of the ESP32 and ESP8266 boards, that stripping down went a bit too far by making it impossible to use!

So just click that </> Open full editor button and your Thing sketch will open in Arduino Web Editor. Once there, you can select the port of your ESP32 board from the menu at the top of the Arduino Web Editor window and then upload the sketch to the board. Once that is done, you can click the Go to IoT Cloud button to return to Arduino IoT Cloud. If everything was configured correctly, you should now see that your Thing is online.

1 Like

I'm really grateful for your help, you helped me understand the issue and fix it.

You are welcome. I'm glad to hear it is working now. Enjoy!