Skip to content

Conversation

@kzsolt3141
Copy link

Tried to build the esp32c3_super_mini platform for my ESP32C3-SuperMini. The defined pinout was not compatible with my version.
Added new variant, with the correct pinout.
Tested with my own ESP32C3-SuperMini, LLCC68 LoRa, SSD1306, works correctly.

@kzsolt3141 kzsolt3141 force-pushed the tenstar-esp32c3-supermini branch from 049a53b to 7a5a2ab Compare October 24, 2025 18:14
@kzsolt3141 kzsolt3141 force-pushed the tenstar-esp32c3-supermini branch from 7a5a2ab to 18fc821 Compare October 26, 2025 13:59
Copy link
Contributor

@NomDeTom NomDeTom left a comment

Choose a reason for hiding this comment

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

Generally I can see what you're trying to do here - using the named pins for their described purpose rather than using the existing pinout. However, I've left some notes for you.

If you're going to raise a new variant, perhaps consider trying to match the ESP32S3 zero, which has an almost-identical-but-mirrored pinout, and could therefore share boards (with adjustment for buttons).

#define GPS_TX_PIN (21)

// Button, active LOW
#define BUTTON_PIN (10)
Copy link
Contributor

Choose a reason for hiding this comment

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

I traced the boot button through to pin 9 on my boards, and the very-difficult-to-read schematic on the Tenstar Robot store Aliexpress page also seems to indicate that it is linked to GPIO9.

Copy link
Author

Choose a reason for hiding this comment

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

I tried PIN8 and PIN9 for button but in both cases the I2C got stuck: display, sensors, nothing communicates. So I moved to an other pin, in this case PIN10. Maybe I should change the comments: "Connect Button to this pin, active LOW"

Copy link
Contributor

Choose a reason for hiding this comment

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

See my comment below. Io9 is a strapping pin, and also connected to a button, so using it for anything other than a user button doesn't make sense.

// Button, active LOW
#define BUTTON_PIN (10)

// LoRa
Copy link
Contributor

Choose a reason for hiding this comment

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

Can you expand on why you chose these pins?

For reference, the ones in the original super_mini were chosen because they matched the existing Heltec HT-CT62 internal pins, and were therefore known to be usable.

Copy link
Author

Choose a reason for hiding this comment

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

In my understanding on this board, UART, SPI, I2C are fixed, so only pins 0, 1, 2, 3 and 10 are available. Did I missed something?
Or should I rearrange these four values?
#define LORA_RESET (0)
#define LORA_DIO1 (1)
#define LORA_RXEN (2)
#define LORA_BUSY (3)

image

Copy link
Contributor

Choose a reason for hiding this comment

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

Ah, on the esp32c3 they're not fixed functions. I'm not sure why they've used them in this way.

I'd strongly suggest rethinking the use of io9 for anything other than the button that it is connected to.

@NomDeTom
Copy link
Contributor

@kzsolt3141 have you tried the other pinout for the supermini? You said that it's not compatible, but if you try it you may find that it works.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants