Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add ESP32-S3 support #2410

Merged
merged 8 commits into from Sep 19, 2023
Merged

Add ESP32-S3 support #2410

merged 8 commits into from Sep 19, 2023

Conversation

pkendall64
Copy link
Collaborator

Using an S3 allows us to have more GPIO pins available, 45 of them, 9 of them are reserved for Flash & PSRAM, leaving 37 usable IO pins!

The following features are available all at the same time!

  1. Direct USB for updates and serial output (2 pins)
  2. RGB LED (1 pin)
  3. 16 PWM/IO pins configurable as DShot or other IO things (16 pins)
  4. VBatt ADC input (1 pin)
  5. Separate CRSF serial pins, for FC or CRSF sensors (2 pins)
  6. Separate I2C pins, for Vario/Gyro etc (2 pins)
  7. True Diversity/Gemini (11 pins)

And still 2 pins available!

@hydra
Copy link
Contributor

hydra commented Sep 18, 2023

It should be noted that a 2nd UART is also available to be used, in addition to the usual RX uart, which is useful for things like a GPS connection, or a UART based OSD which downstream projects like @MUSTARDTIGERFPV 's FormationFlight will find useful.

And also, that unlike the PicoD4, the JTAG pins can be used as PWM pins as they're not 'strapping pins'.

@hydra
Copy link
Contributor

hydra commented Sep 18, 2023

Also, for people not following along with my new hardware design on discord, I'd like to say that I've been using the changes in this PR for a while now. The PWM changes in this PR are especially helpful.

Copy link
Collaborator

@wvarty wvarty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems pretty harmless to the existing ESP32 platform (the changes are mostly all behind #defines so shouldn't have too much of an impact). LGTM!

@pkendall64 pkendall64 merged commit 611b147 into ExpressLRS:master Sep 19, 2023
40 checks passed
@pkendall64 pkendall64 deleted the next/esp32s3 branch September 19, 2023 04:27
@ZZ-Cat ZZ-Cat mentioned this pull request Oct 8, 2023
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement 🪄 New feature or request V3.4 🍟
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants