ESP32 D2WD Development Board

onehorse
Posts: 70
Joined: Mon Feb 15, 2016 1:35 am

ESP32 D2WD Development Board

Postby onehorse » Sat Feb 17, 2018 4:11 am

I just finished assembling my first development board using the smaller (5 mm x 5 mm) QFN48 ESP32 D2DW package with embedded 2 MByte SPI flash.

[img]
ESP32.v02.top.jpg
ESP32.v02.top.jpg (232.69 KiB) Viewed 3870 times
[/img]

[img]
ESP32.v02.bottom.jpg
ESP32.v02.bottom.jpg (294.35 KiB) Viewed 3870 times
[/img]

Thanks to some help from WiFive I was able to get it just about right the first time.

The pins on the D2WD are the finest (0.18 mm width 0.35 mm pitch) I have ever worked with and it took me some time to cure all of the solder bridges;>

I did forget to connect VUSB to the battery charger (usual mistake when copying a circuit from one EAGLE project to another, donor was named VUSB and acceptor was named VBUS).

I also inadertently swapped RX/TX at the ESP32 so I couldn't load a sketch with the on-board FTDI USB-to-UART bridge and had to use an external FTDI connector.

I corrected these initial flaws and the new design is available on OSH Park shared space (https://www.oshpark.com/shared_projects/NGHyuKpJ) if anyone wants to give it a try. I will in another ten days or so.

Using the external FTDI connector I was able to verify that the ESP32 circuit would actually function. I used the ESP32 Dev Module, 80 MHz flash speed, 2 MByte flash (as it should be) and QIO before the flashed sketch would actually run (blink an led and give some serial output, like temperature and battery voltage etc).

Use of QIO is different from my first ESP32 development board (https://www.tindie.com/products/onehors ... ent-board/) which uses the 6 mm x 6 mm QFN48 Rev. 0 version and an N25Q032A 4 MByte SPI flash and requires DOUT to program.

QIO makes sense since the embedded flash uses two of the SDIO pins as well as GPIO 16 and 17 as data lines, so it is really connected as a QSPI. This in contrast to the embedded flash in the ESP8285 which requires DOUT and leaves GPIOs 9 and 10 free. This is why GPIOs 9 and 10 are available in the ESP8285. Why GPIOs 16 and 17 are used as serial data lines in the D2WD I do not know. It seems it would have been better to make use of GPIOs 9 and 10, which are designed for this. And we really can't make use of GPIOs 9 and 10 as replacements like in the ESP8285 since they function in the 1.8 V domain, and mixing 1.8 V and 3.3V tolerant pins at the board edge is a recipe for tears. So we gain two GPIOs in the ESP8285 and lose two in the ESP32D2WD. C'est la vie!

The downside of using the D2WD is the loss of two GPIOs 16 and 17. The advantage is a much smaller form factor, not only because of the ~30% reduction in the ESP32 itself but also no external flash required. The small form factor is useful for some applications where space is at a premium, like for wearables.

Who is online

Users browsing this forum: No registered users and 52 guests