New version available: :doc:`user-guide-esp32-s2-kaluga-1-kit`
The ESP32-S2-Kaluga-1 kit v1.2 is a development kit by Espressif that is mainly created to:
- Demonstrate the ESP32-S2's human-computer interaction functionalities
- Provide the users with the tools for development of human-computer interaction applications based on the ESP32-S2
There are many ways of how the ESP32-S2's abundant functionalities can be used. For starters, the possible use cases may include:
-**Smart home**: From simplest smart lighting, smart door locks, smart sockets, to video streaming devices, security cameras, OTT devices, and home appliances
-:doc:`user-guide-esp-lyrap-cam-v1.0` - camera board
Due to the presence of multiplexed pins on ESP32-S2, certain extension board combinations have limited compatibility. For more details, please see :ref:`user-guide-esp32-s2-kaluga-1-kit-v1.2-ext-board-compatibility`.
This document is **mostly dedicated to the main board** and its interaction with the extension boards. For more detailed information on each extension board, click their respective links.
This guide covers:
-`Getting Started`_: Provides an overview of the ESP32-S2-Kaluga-1 and hardware/software setup instructions to get started.
-`Hardware reference`_: Provides more detailed information about the ESP32-S2-Kaluga-1's hardware.
-`Hardware Revision Details`_: Covers revision history, known issues, and links to user guides for previous versions of the ESP32-S2-Kaluga-1.
-`Related Documents`_: Gives links to related documentation.
Getting Started
===============
This section describes how to get started with the ESP32-S2-Kaluga-1. It begins with a few introductory sections about the ESP32-S2-Kaluga-1, then Section `Start Application Development`_ provides instructions on how to do the initial hardware setup and then how to flash firmware onto the ESP32-S2-Kaluga-1.
Overview
--------
The ESP32-S2-Kaluga-1 main board is the heart of the kit. It integrates the ESP32-S2-WROVER module and all the connectors for extension boards. This board is the key tool in prototyping human-computer interaction interfaces.
The ESP32-S2-Kaluga-1 board has connectors for boards with:
All the four extension boards are specially desgined to support the following features:
* Touch panel control
* Six touch buttons
* Supports acrylic panels up to 5 mm
* Wet hand operation
* Water rejection, ESP32-S2 can be configured to disable all touchpads automatically if multiple pads are simultaneously covered with water and to re-enable touchpads if the water is removed
* Audio playback
* Connect speakers to play audio
* Use together with the Touch panel to control audio playback and adjust volume
* LCD display
* LCD interface (8-bit parallel RGB, 8080, and 6800 interface)
* Camera image acquisition
* Supports OV2640 and OV3660 camera modules
* 8-bit DVP image sensor interface (ESP32-S2 also supports 16-bit DVP image sensors, you can design it yourself)
* Clock frequency up to 40 MHz
* Optimized DMA transmission bandwidth for easier transmission of high-resolution images
The description of components starts from the ESP32-S2 module on the left side and then goes clockwise.
**Reserved** means that the functionality is available, but the current version of the kit does not use it.
..list-table::
:widths:30 70
:header-rows:1
* - Key Component
- Description
* - ESP32-S2-WROVER Module
- Module integrating the ESP32-S2 chip that provides Wi-Fi connectivity, data processing power, and flexible data storage.
* - 4.3" LCD FPC Connector
- (Reserved) Connect to a 4.3" LCD extension board using the FPC cable.
* - ESP Prog Connector
- (Reserved) Connection for Espressif's download device (ESP-Prog) to flash ESP32-S2 system.
* - JTAG Switch
- Switch to ON to enable connection between ESP32-S2 and FT2232; JTAG debugging will then be possible using USB-UART/JTAG Port. See also :doc:`../../api-guides/jtag-debugging/index`.
* - Breakout Header 2
- Some GPIO pins of the ESP32-S2-WROVER module are broken out to this header, see labels on the board.
* - USB-to-UART/JTAG Bridge
- FT2232 adapter board allowing for communication over USB port using UART/JTAG protocols.
* - Camera Header
- Mount a camera extension board here (e.g., ESP-LyraP-CAM).
* - Extension Header
- Mount the extension boards having such connectors here.
* - Reset Button
- Press this button to restart the system.
* - Boot Button
- Holding down **Boot** and then pressing **Reset** initiates Firmware Download mode for downloading firmware through the serial port.
* - USB-UART/JTAG Port
- Communication interface (UART or JTAG) between a PC and the ESP32-S2 module.
* - USB Power Port
- Power supply for the board.
* - Battery Port
- Connect an external battery to the 2-pin battery connector.
* - Power On LED
- Turns on when the USB or an external power supply is connected to the board.
* - Power Switch
- Switch to ON to power the system.
* - RGB Jumper
- To have access to the RGB LED, place a jumper onto the pins.
* - RGB LED
- Programmable RGB LED and controlled by GPIO45. Before using it, you need to put RGB Jumper ON.
* - Power Regulator
- Regulator converts 5 V to 3.3 V.
* - I2C FPC Connector
- (Reserved) Connect to other I2C extension boards using the FPC cable.
* - Breakout Header 1
- Some GPIO pins of the ESP32-S2-WROVER module are broken out to this header, see labels on the board.
* - Touch FPC Connector
- Connect the ESP-LyraP-TouchA extension board using the FPC cable.
* - Touch Switch
- In OFF position, GPIO1 to GPIO14 are used for connection to touch sensors; switch to ON if you want to use them for other purposes.
* - 3.2" LCD FPC connector
- Connect a 3.2" LCD extension board (e.g., ESP-LyraP-LCD32) using the FPC cable.
Start Application Development
-----------------------------
Before powering up your ESP32-S2-Kaluga-1, please make sure that it is in good condition with no obvious signs of damage.
Required Hardware
^^^^^^^^^^^^^^^^^
- ESP32-S2-Kaluga-1
- Two USB 2.0 cables (Standard-A to Micro-B)
- For power supply
- For UART/JTAG communication
- Computer running Windows, Linux, or macOS
- Any extension boards of your choice
Hardware Setup
^^^^^^^^^^^^^^
1. Connect the extension board(s) of your choice (go to their respective user guides if necessary)
2. Plug in both USB cables
3. Turn the **Power Switch** to ON - the Power On LED will light up
Please proceed to :doc:`../../get-started/index`, where Section :ref:`get-started-step-by-step` will quickly help you set up the development environment.
The programming guide and application examples for your ESP32-S2-Kaluga-1 kit can be found in `esp-dev-kits <https://github.com/espressif/esp-dev-kits/tree/master/esp32-s2-kaluga-1>`_ repository on GitHub.
Contents and Packaging
----------------------
Retail orders
^^^^^^^^^^^^^
If you order one or several samples of the kit, each ESP32-S2-Kaluga-1 development kit comes in an individual package containing:
- Main Board
- ESP32-S2-Kaluga-1
- Extension Boards:
- ESP-LyraT-8311A
- ESP-LyraP-CAM
- ESP-LyraP-TouchA
- ESP-LyraP-LCD32
- Connectors
- 20-pin FPC cable (to connect ESP32-S2-Kaluga-1 to ESP-LyraP-TouchA)
If you want to use more than one extension board at the same time, please check the table given below.
..list-table::
:widths:20 10 30 40
:header-rows:1
* - Boards Used
- HW Conflict
- Limitations
- Solution
* - 8311A v1.2 + CAM v1.0
- I2S Controller, IO46
- ESP32-S2 has only one I2S interface. But both extension boards require connection via the ESP32-S2's I2S interface (ESP-LyraT-8311A in Standard mode, ESP-LyraP-CAM in Camera mode). If IO46 is used by both extension boards at the same time, ESP-LyraP-CAM experiences interferences when used.
- Touch actions cannot be triggered because of the multiplexed pin IO11. ESP-LyraP-LCD32 is also affected because its BK (BLCT) pin is connected to pin IO6.
- Do not initialize IO11 (NETWORK) and IO6 (PHOTO) for your ESP-LyraP-TouchA.
* - 8311A v1.2 + LCD32 v1.1
- IO6
- The two extension boards can be used at the same time. However, since the BK (BLCT) pin of ESP32-S2-Kaluga-1 is connected to IO6, ESP-LyraT-8311A's pin BT_ADC cannot be used and the board's six buttons will not be available.
- There is a solution that will allow you to use ESP-LyraT-8311A's pin BT_ADC, but will stop you from controlling the display background brightness with software: on your ESP-LyraP-LCD32 board, remove R39, change R41 to 100 Ohm, switch BLCT_L to on.
* - TouchA v1.1 + 8311A v1.2
- Pin BT_ADC on ESP-LyraT-8311A
- The two extension boards can be used at the same time. However, ESP-LyraP-TouchA cannot be triggered if ESP-LyraT-8311A's pin BT_ADC is used to initialize the board's six buttons.
- If you plan to use ESP-LyraT-8311A's pin BT_ADC, do not initialize pin IO6 (PHOTO) for your ESP-LyraP-TouchA.
* - TouchA v1.1 + CAM v1.0
- IO1, IO2, IO3
- Cannot be used simultaneously because of the mentioned multiplexed pins.
- For ESP-LyraP-TouchA, do not initialize IO1 (VOL_UP), IO2 (PLAY), and IO3 (VOL_DOWN).
* - TouchA v1.1 + LCD32 v1.1 + CAM v1.0
- IO1, IO2, IO3, IO6, IO11
- Conflicts on the mentioned multiplexed pins.
-**Solution 1**: For ESP-LyraP-TouchA, do not initialize IO1 (VOL_UP), IO2 (PLAY), IO3 (VOL_DOWN), IO6 (PHOTO) and IO11 (NETWORK). **Solution 2**: It will allow you to initialize IO6 (PHOTO) properly, but will stop you from controlling the background brightness with software. On your ESP-LyraP-LCD32, remove R39, change R41 to 100 Ohm, switch BLCT_L to on.
- IO11 is multiplexed; IO6 is also multiplexed stopping you from using ESP-LyraT-8311A's pin BT_ADC that is needed to initialize the board's six buttons.
-**Solution 1**: For ESP-LyraP-TouchA, do not initialize IO6 (PHOTO) and IO11 (NETWORK). Please note that the six buttons on ESP-LyraT-8311A still cannot be used. **Solution 2**: On your ESP-LyraP-LCD32, remove R39, change R41 to 100 Ohm, switch BLCT_L to on. For your ESP-LyraP-TouchA, do not initialize IO11 (NETWORK). If you want to use the six buttons on your ESP-LyraT-8311A, also do not initialize IO6 (PHOTO).
Also, all extension boards and the :ref:`JTAG interface <jtag-debugging-tip-jtag-pins-reconfigured>` share the same pins IO39, IO40, IO41 and IO42. For this reason, the following may disturb the JTAG operation:
* Plugging in any extension board
* Debugging an application that is using an extension board