Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
NOTE
This pull request adds initial support for the ESP32-S3 board (specifically the Heltec Wireless Stick V3) to the project. The changes include board configuration, build system updates, and multiple code modifications to ensure compatibility with the ESP32/ESP32-S3 architecture. The most significant updates are grouped below.
ESP32-S3 Board Support
_Boards/esp32s3.board.json), specifying hardware IDs, pin mappings, module limits, and other board-specific settings.platformio.inito add a new build environment ([env:mobiflight_esp32s3]) for the ESP32-S3, including necessary build flags and dependencies.Codebase Compatibility Adjustments
Updated memory allocation logic in
allocateMem.cppandallocateMem.hto useuint8_tbuffers and pointers for both AVR and ESP32 architectures, ensuring consistent memory handling.Peripheral and Pin Handling for ESP32
Updated analog pin handling in
MFAnalog.cppto clarify ESP32's analog pin usage and allow for future mapping adjustments.Updated output pin initialization in
MFOutput.cppto ensure correct pin mode is set for ESP32, matching the behavior for other architectures.Modified servo control in
MFServo.cppandMFServo.hto use theESP32Servolibrary and set appropriate pulse ranges for ESP32 boards.Build and Firmware Handling
copy_fw_files.py) to only convert.binfiles to.uf2format for Raspberry Pi Pico boards, preventing unnecessary conversion for ESP32.These changes collectively enable the project to build and run on the ESP32-S3 platform, while maintaining compatibility with existing supported architectures.