ESP32-DevKitC V4 – WROVER vs. WROOM Comparison

esp32

I am learning ESP32 and have a ESP32-WROVER dev board to work with. I have this board to work with and learn:

ESP32-WROVER dev board

As part of my learning journey, I found that ESP32 has many edition, and the following editions are commonly offered to purchase on Amazon or Aliexpress

  • WROVER
  • WROOM

I found ESP32-DevKitC V4 pins here:

https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-devkitc.html#start-application-development

ESP32-DevKitC V4

Questions:

  1. Considering that I am learning a WROVER DevKitC, how much of my knowledge will be applicable to WROOM?
  2. Is the code I develop for WROVER runs on WROOM when I don't use WROVER specific features?
  3. Can I use the following Breakout Board for both WROVER and WROOM DevKits?

38Pin ESP32 Breakout Board for ESP32 Development Board

Best Answer

  1. Virtually all of it; they are virtually identical except the WROVER dev board has a camera, a connector, and an extra processor for the camera.

  2. Yes 100%. However, now that WROVERs are almost or even as cheap as WROOMs, and you can simply turn off the extra processor to save memory and power, and they both have virtually identical low power modes, there is no reason I can think of to ever buy a WROOM kit again. In April 2023 you can get 4x WROVER dev boards with cameras for $25 on Amazon with free next day shipping.

  3. Yes, almost all espressif esp32 dev board pinouts are the same size (38 pins, like yours) but some people make shorter 30 pin versions, which seem rare, i.e. https://www.adafruit.com/product/5337. You will notice the WROVER dev boards almost all have a line next to every pin used for the camera (the camera will use them so don't use them for your own stuff if the camera is activated). Because anyone can make a esp32 dev board, you can't really be guaranteed the same pinouts, but 95% of board I have seen use the 38 pin package, with rare 30 pin versions. I've never personally seen anything else on a esp32 dev board.

Note, ESP32s come in a few varieties, including a RISC V varient that is very different under the hood compared to normal ESP32s (RISC V is a completely open source processor framework that is taking the world by storm, it uses totally different instructions).

RISC V variants have much less community support!

ESP32s also come with different memory amounts and different low power modes.

If you code for them directly or at a low level, these things become very important, but if you are just using arduino or micro python, and you are using it to interface with simple things like I2C devices and don't really care about putting the controller into low or ultra low power mode/etc, then instead just focus on getting the most features available while you learn, and that, as of this writing, is a VROVER dev board.

I learned esp32s on VROOMs, but now that WROVERs are out, thats what I'm using to teach my kids simply because of the added camera and instant visual feedback it provides, and all the micro python code I wrote for the VROOMs work without changing anything; temp sensors, games, control key code, you name it!

Because anyone can make a dev board, and they can put pins in different orders, you may have to change the pins you set or listen to in code, or change your hardware pin usage slightly, i.e. they may be using d2 where d1 was on the board you used with a different company. Other than that, things should work identically.

Related Topic