ProS3 - ESP32-S3

by Unexpected Maker

The Ultimate Pro ESP32-S3 Development Board

packed with amazing features and peripherals, ESD protection, castellated headers, wireless connectivity and stacks of Flash and PSRAM, and it's TinyPICO/ProS3 compatible!

Features

  • Dual 32bit Xtensa LX7 cores @ up to 240Mhz
  • RISC-V Ultra Low Power Co-processor
  • 2.4GHz Wifi - 802.11b/g/n
  • Bluetooth 5, BLE + Mesh
  • 16MB QSPI Flash
  • 8MB of extra QSPI PSRAM
  • 2x 700mA 3.3V LDO Regulators
  • LDO2 is user controlled & auto-shuts down in deep-sleep
  • Low power RGB LED
  • ULTRA LOW Deep Sleep Current
  • USB-C Connector with back-feed protection
  • USB ESD protection
  • Native USB + USB Serial JTAG
  • LiPo Battery Charging + PicoBlade connector
  • VBAT and 5V Sense Pins
  • 3D High Gain Antenna
  • STEMMA connector powered by LDO1
  • 27x GPIO including castellated headers
  • JTAG pins on the header
  • TinyPICO/ProS3 compatibility
  • Board Dimensions: 53mm x 17.8mm
  • Max Thickness: 5.4mm at the vertical STEMMA connector

2x 3.3V Regulators? Really?

Yup! The first one is for the general operation of the board and the ESP32-S3, PSRAM and Flash.

The second LDO is for you to use to connect external 3V3 modules, sensors and peripherals, and it has programmable EN control tied to IO17 + it’s connected to the deep sleep capabilities of the ESP32-S3, so if the ESP32-S3 goes into deep sleep, the 2nd LDO is automatically shut down for you!

Both regulators are ultra low noise and have ultra low quiescent current, and both support a maximum of 700mA output.

CircuitPython

The ProS3 ships with the latest version of CircuitPython with ESP32-S3 support.

It also ships with the UF2 bootloader, so you can easily update your ProS3 with the latest CircuitPython firmware, whenever you desire.

Just plug your ProS3 into your computer and it will appear in your filesystem as a USB flash drive! Just copy your code over, or edit your code directly on the drive. Coding a microcontroller has never been easier!

As newer versions of CircuitPython are released, you are able to update as you require from circuitpython.org

If you need to grab the shipping CircuitPython code that comes with the ProS3, you can grab the latest here

MicroPython

MicroPython has early support for the ESP32-S3 and I'm currently waiting for the PR for my ESP32-S3 boards to be merged, so they'll be included in the automatic firmware building and downloads page with the rest of my boards.

Until then, you can grab the firmware from my github repo using the following instructions for your OS:

Flashing MicroPython on to your ProS3

If you would like to put MicroPython on your FeatherS2, please follow these steps:

  • Download the latest MicroPython firmware for the ProS3 from the link above
  • Put your ProS3 into download mode by holding [BOOT], clicking [RESET] and then releasing [BOOT]
  • Erase the flash on your ProS3 to give you a clean start
    • Windows
      esptool --chip esp32s3 -p COM(X) erase_flash
    • Mac
      Please execute ls /dev/cu.usbm* to determine the port your board has enumerated as
      esptool.py --chip esp32s3 -p /dev/cu.usbmodem01 erase_flash
    • Linux
      esptool.py --chip esp32s3 -p /dev/ttyACM0 erase_flash
  • Flash the downloaded firmware to your ProS3
    • Windows
      esptool --chip esp32s3 -p COM(X) write_flash -z 0x0 pros3_firmware_1_18.bin
    • Mac
    • Please execute ls /dev/cu.usbm* to determine the port your board has enumerated as
      esptool.py --chip esp32s3 -p /dev/cu.usbmodem01 write_flash -z 0x0 pros3_firmware_1_18.bin
    • Linux
      esptool.py --chip esp32s3 -p /dev/ttyACM0 write_flash -z 0x0 pros3_firmware_1_18.bin
  • Restart your ProS3 by pressing the [RESET] button
  • And that’s it! Your’e done! Happy coding!

For more information about using MicroPython, visit this link.

ESP-IDF

ESP32-S3 support in the IDF is part of the v4.4 release. The latest IDF is v5.0, but it's in early development, so I recommend you stick to the v4.4 release branch for the time being as there are some low level breaking changes in v5.

Check out the ESP32-S3 IDF docs for information on how to install it and develop for the ESP32-S3

Arduino

There is no ESP32-S3 support in Arduino yet, but work has started on it! You can follow along with the progress by watching this branch of the repo

Arduino support for the ESP32-S3 is scheduled for release in v2.10 of the ESP32 Arduino Core.

Downloads

ProS3 Schematic

github

The Unexpected Maker ESP32-S3 github Repo includes the following items:

  • 3D STEP file for the ProS3
  • KiCAD 6 symbol file for the ProS3 that you can use when integrating one of them into one of your PCB design
  • KiCAD 6 footprint files for the ProS3 including a TH and SMD variant
  • PDF Schematic for the ProS3
  • Hi-res pinout reference card for the ProS3
  • Fritzing parts (soon)