QT Py ESP32 Pico

Adafruit QT Py ESP32 Pico

The Adafruit QT Py ESP32 Pico [1] features the ESP32-Pico-V3-02, an all-in-one chip that has an ESP32 chip with dual-core 240MHz Tensilica processor, WiFi and Bluetooth classic + BLE, 8 MB of Flash memory and 2 MB of PSRAM:


It has the following additional features:

  • NeoPixel RGB LED.
  • Two I2C ports, one on the edge connector, and one on the Stemma QT connector.
  • RESET and BOOT buttons.

Because the ESP32 doesn't include native USB the board includes a UART chip. Early boards featured the CP2102N, but due to supply issues current boards are shipping with the pin-compatible CH9102F which needs the installation of a driver from the Chinese manufacturer's website.

Installing uLisp from the Arduino IDE

  • Install the ESP32 Arduino core.
  • Select ESP32 Arduino from the Board menu.
  • Select the Adafruit QT Py ESP32 board option.

You can leave all the other options at their defaults.

Upload uLisp

  • Download the latest ESP version of uLisp from the Download uLisp page.
  • Select the board's USB port from the Port menu
  • Upload uLisp to the board.

If you are having problems uploading, and you have the CH9102F version of the board, make sure you have installed the CH9102F driver (even on Mac); see Arduino IDE setup.

Putting the board into upload mode

If the upload fails you may need to put the board into upload mode first.

  • Press and hold the BOOT button (the one not labelled RESET).
  • Press the RESET button.
  • Release the BOOT button.

Using uLisp

  • You may need to press the RESET button again.
  • Select Serial Monitor from the Tools menu.
  • Enter Lisp commands.


For details of the pin connections see Adafruit QT Py ESP32 Pico.

NeoPixel RGB display

The Adafruit QT Py ESP32 Pico doesn't have a built-in LED, but it does have a NeoPixel on pin 5, with power to the NeoPixel on pin 8.

Analogue inputs

The Adafruit QT Py ESP32 has 11 analogue inputs, on pins 4, 7, 12 to 15, 25 to 27, and 32 to 33.

Analogue outputs

The Adafruit QT Py ESP32 has two DAC analogue outputs on pins 25 and 26.


The Adafruit QT Py ESP32 has one serial port on pin numbers 7 (RX) and 32 (TX). By default the baud rate is 9600.


The Adafruit QT Py ESP32 has one SPI port on pin numbers 12 (MISO), 13 (MOSI), and 14 (SCK).


The Adafruit QT Py ESP32 has two I2C ports. Port 0 is available on the edge connector on pin numbers 4 (SDA) and 33 (SCL). Port 1 is available on the STEMMA QT connector on pin numbers 22 (SDA) and 19 (SCL).

  1. ^ QT Py ESP32 Pico on Adafruit.