Do you have a question about the Adafruit ESP32-S3 and is the answer not in the manual?
Microcontroller/Chip | ESP32-S3 |
---|---|
Clock Speed | up to 240 MHz |
RAM | 512 KB |
Flash Memory | 8MB |
GPIO Pins | 45 |
DAC Channels | 2 |
Operating Voltage | 3.3 V |
Input Voltage | 5 V |
I2C | 2 |
I2S | 2 |
CPU | Xtensa LX7 dual-core |
Wi-Fi | 802.11 b/g/n |
Bluetooth | Bluetooth 5.0 |
Explains the different ways to power the Feather board.
Describes the board's built-in color TFT display.
Details the ESP32-S3 System-on-Chip and its capabilities.
Explains the battery monitoring chip for LiPoly/LiIon batteries.
Describes the sensor for ambient weather sensing.
Details the general-purpose pins for connecting peripherals.
Explains the onboard addressable RGB NeoPixel and red status LEDs.
Details the STEMMA QT connector for I2C devices.
Describes the onboard reset and boot buttons.
Explains the hardware UART debug pin for low-level output.
Details powering the Feather board using a USB cable or LiPoly battery.
Discusses available power supply options and pinouts.
Explains how to check battery voltage and charge percentage.
Describes using the ENable pin to turn off the 3.3V regulator.
Suggests alternative powering methods and lists what to avoid.
Provides a step-by-step guide to get CircuitPython running on the board.
Explains how to download and install the Mu editor from its website.
Covers the initial setup and mode selection when first launching Mu.
Introduces the main sections of the Mu editor interface.
Discusses alternative file transfer methods for boards without native USB.
Guides on writing and saving the first CircuitPython program.
Explains how to modify existing code and the importance of saving safely.
Demonstrates making simple code changes and observing their effects.
Lists the valid filenames CircuitPython looks for to run code.
Explains the role of import statements for modules and libraries.
Details how to initialize and configure the board's LED.
Explains the concept of `while True` loops for continuous execution.
Describes board behavior after code execution, including resets.
Discusses program exit behavior and the necessity of loops.
Details how to use Mu's built-in serial console and autodetection.
Addresses common serial connection issues and troubleshooting on Linux.
Guides on granting necessary permissions for serial console access on Linux.
Suggests alternative programs for serial console interaction.
Details how to access the REPL from the serial console.
Covers running commands and exploring modules within the REPL.
Explains how to exit the REPL and return to the serial console.
Describes using Project Bundles for easy project setup.
Explains how to download and use the library bundle.
Covers community-contributed libraries and their usage.
Details how to extract and organize downloaded library bundles.
Explains the purpose and inclusion of example files in bundles.
Guides on copying libraries and example files to the CIRCUITPY drive.
Explains how to determine which libraries are needed based on import statements.
Demonstrates how to resolve ImportError by installing missing libraries.
Provides instructions for installing libraries on specific board types.
Discusses the importance of keeping libraries and examples up-to-date.
Introduces CircUp, a command-line tool for managing libraries.
Details the extensive documentation for the CircuitPython core modules.
Explains how to find and use documentation for individual CircuitPython libraries.
Lists editors that safely write changes and are recommended for CircuitPython.
Describes editors requiring specific configurations for safe use.
Lists editors that are not recommended due to potential issues.
Covers driver installation and OS recommendations for Windows 7/8.1.
Explains how to identify the serial port your board is using on Mac.
Details using the `screen` command to establish a serial connection.
Explains how to identify the serial port your board is using on Linux.
Details using the `screen` command to establish a serial connection.
Addresses permission issues for serial port access on Linux.
Defines common acronyms used in CircuitPython documentation.
Provides guidance on using older versions of CircuitPython and libraries.
Discusses support for floating-point numbers in CircuitPython.
Explains support for arbitrary-size integers in CircuitPython.
Covers connecting to the internet using Wi-Fi with CircuitPython.
Guides on using ESP32 chipsets for Wi-Fi connectivity.
Explains BLE implementation status and capabilities for ESP32 boards.
Suggests using RFM boards for radio communication.
Discusses asyncio support and the lack of interrupt support.
Confirms asyncio support starting from version 7.1.0.
States that CircuitPython does not support interrupts directly.
Explains the function of the onboard RGB NeoPixel/DotStar LED.
Discusses memory errors and how to resolve them.
Defines MemoryError and its causes.
Provides steps to troubleshoot MemoryErrors.
Explains how import order can impact memory fragmentation.
Guides on creating custom .mpy files using mpy-cross.
Shows how to check available memory using `gc.mem_free()`.
Lists hardware that is not supported or has limited support.
Explains ESP8266 support changes and ESP32/S2/S3 support.
Addresses WINC1500 compatibility with Feather M0 boards.
Confirms that AVR microcontrollers cannot run CircuitPython.
Emphasizes the importance of using the latest versions for compatibility and support.
Guides users on finding libraries for older CircuitPython versions.
Addresses issues with the BOOT drive not appearing.
Provides specific instructions for Circuit Playground Express using MakeCode.
Discusses potential interference from macOS software.
Covers driver issues and recommendations for Windows 10.
Details driver installation requirements for Windows 7/8.1.
Identifies third-party programs that can cause Windows Explorer to freeze.
Addresses issues with copying UF2 files, potentially caused by WD utilities.
Discusses how antivirus software can affect CIRCUITPY drive visibility.
Offers solutions for Windows USB device installation confusion.
Troubleshoots issues with the serial console panel not showing output.
Explains why code.py might restart and how to disable auto-reload.
Details the function and behavior of the onboard status LED.
Describes changes to status LED behavior in CircuitPython 7.0.0 and later.
Explains status LED behavior in older CircuitPython versions.
Addresses errors caused by incompatible .mpy library files.
Discusses problems with saving files or the drive disappearing.
Explains how to enter safe mode to resolve drive or code issues.
Provides steps to enter safe mode for newer CircuitPython versions.
Provides steps to enter safe mode for older CircuitPython versions.
Describes LED behavior when the board is in safe mode.
Explains how to use `storage.erase_filesystem()` to reformat the drive.
Offers methods for erasing CIRCUITPY when REPL access is unavailable.
Provides links to specific erase files for various boards.
Guides for erasing SAMD21 non-Express boards with UF2 bootloaders.
Guides for erasing SAMD21 non-Express boards without UF2 bootloaders.
Offers tips for freeing up space on boards with limited storage.
Suggests deleting unused files to free up space.
Discusses using tabs for code indentation to save space.
Addresses macOS specific issues related to hidden files.
Provides commands to disable hidden file creation on macOS.
Explains how to copy files on macOS while avoiding hidden metadata.
Offers additional methods for saving space on macOS.
Guides on recovering boards stuck in a boot loop.
Describes Adafruit's Discord server as a hub for support and community.
Points to the official CircuitPython website for downloads and information.
Explains how to contribute to CircuitPython projects via GitHub.
Recommends Adafruit Forums for support and community interaction.
Guides users to detailed API and library documentation.
Identifies the location of the onboard red LED.
Provides code and explanation for making the LED blink.
Locates the onboard LED and button components.
Shows how to use a button press to control the LED.
Describes the ADC's role in converting analog signals to digital values.
Explains what potentiometers are and how they work as variable resistors.
Lists the necessary hardware, like a potentiometer, for the example.
Provides instructions for wiring a potentiometer as a voltage divider.
Shows how to read raw analog pin values and print them.
Demonstrates converting raw analog values to human-readable voltage readings.
Identifies the location of the onboard NeoPixel LED.
Guides on controlling the NeoPixel's color and brightness.
Explains how RGB colors are represented and combined.
Provides code to create a rainbow color cycle effect with the NeoPixel.
Identifies the location of the onboard NeoPixel LED.
Guides on creating feeds and dashboards on Adafruit IO.
Explains how to use a secrets.py file for credentials.
Provides the example code for interacting with Adafruit IO.
Explains the structure and logic of the Adafruit IO example code.
Explains how CircuitPython simplifies interaction with I2C devices.
Lists hardware required for I2C examples.
Provides wiring instructions for the MCP9808 temperature sensor.
Guides on performing an I2C scan to detect connected devices.
Shows how to read data from an I2C sensor.
Helps identify I2C pin pairings supported by different microcontrollers.
Explains the role of boot.py in managing filesystem write access.
Details the code.py file used for logging temperature data.
Guides on implementing temperature logging to a file.
Provides methods to recover a filesystem that has become read-only.
Demonstrates reading touch input from a single pin.
Identifies the location of the touch-capable pin A4.
Shows code for detecting touch on a single pin.
Demonstrates reading touch input from multiple pins simultaneously.
Identifies the location of touch-capable pins A4 and D12.
Provides code for detecting touches on multiple pins.
Lists the available touch-capable pins and their Arduino equivalents.
Explains how CircuitPython simplifies using the I2S interface.
Lists hardware needed for I2S audio examples.
Provides wiring instructions for the MAX98357A amplifier.
Guides on playing tones using I2S and the audiocore module.
Shows how to play WAV files using I2S and audiocore.
Helps identify pins compatible with I2S audio playback.
Demonstrates basic asyncio usage with NeoPixel rings and a button.
Provides wiring instructions for connecting NeoPixel rings and a button.
Presents the example code for the asyncio demonstration.
Explains the code structure, including async def, await, and tasks.
Discusses why tasks might end and how to ensure continuous execution.
Introduces the basic Blink sketch for testing uploads.
Details how to select the correct board in the Arduino IDE.
Explains how to manually enter bootloader mode if native USB fails.
Lists prerequisites for using the Arduino IDE and hardware.
Guides on launching the IDE and configuring board and port settings.
Instructs on creating and pasting the Blink sketch code.
Explains the verification (compilation) process and potential errors.
Details the process of uploading the compiled sketch to the board.
Discusses native USB functionality and manual bootloading procedures.
Provides specific steps to enter manual bootload mode.
Confirms successful upload and suggests modifying the sketch.
Lists common problems and solutions for I2C connectivity.
Details the steps to perform an I2C scan using the TestBed library.
Explains how to find and install the necessary Arduino library.
Guides on installing the Adafruit LC709203F library via the Library Manager.
Presents the Arduino example code for reading battery data.
Shows how to connect to a Wi-Fi network and test internet connectivity.
Demonstrates establishing a secure SSL connection, e.g., to Twitter API.
Explains how to parse JSON data received from APIs.
Guides on installing necessary libraries like Adafruit IO Arduino from the Library Manager.
Details creating an Adafruit IO account and setting up a dashboard.
Explains how to create and customize dashboards for data visualization.
Guides on adding a toggle button component to control the board's LED.
Shows how to add a gauge block to display button press data.
Explains how to use example code with Adafruit IO credentials.
Introduces WipperSnapper as firmware to turn WiFi boards into IoT devices.
Instructs on creating an Adafruit IO account for WipperSnapper.
Details adding a new device, like the ESP32-S3 TFT Feather, to Adafruit IO.
Troubleshoots Wi-Fi connection issues with Adafruit IO.
Addresses issues with the board getting stuck during registration.
Explains that WipperSnapper cannot be uninstalled, but rather replaced or restored.
Demonstrates controlling the built-in LED remotely via Adafruit IO.
Guides on reading a push-button state and sending it to Adafruit IO.
Shows how to configure and read data from an I2C sensor using WipperSnapper.
Guides on using the UF2 bootloader for factory reset.
Covers repairing the bootloader if it becomes damaged.
Instructs on downloading the reset file and entering the bootloader.
Provides the link to download the factory reset firmware file.
Details the button sequence to enter the ROM bootloader.
Guides on connecting the board to the WebSerial ESPTool interface.
Details the process of erasing the board's contents.
Covers programming the board with the factory reset firmware.
Provides instructions for enabling Web Serial on older Chrome versions.
Guides on installing esptool.py using pip.
Verifies the esptool.py installation.
Details connecting to the board using esptool.py.
Covers writing the UF2 bootloader using esptool.py.
Instructs on resetting the board after reprogramming.
Guides on setting up the Arduino IDE and board support packages.
Details loading the basic Blink sketch into the Arduino IDE.
Lists links to product resources, datasheets, and technical references.
Offers access to the board's schematic and fabrication files.
Addresses issues with the TFT display being misaligned due to shipping.