Heltec HT-CT62 support - Meshtastic's future?

Hi there,

I have previously contributed some changes to the HT-C62 variant.

The I2C pins are undefined because the Heltec HT-DEV-ESP V3 breakout board for the HT-CT62 module does not specifically label any pin for I2C use.

The ESP32-C3 allows any GPIO pin to be used for I2C, with no specific recommendation either.

Looking at the pinmux in the datasheet, the free GPIOs are GPIO3 and GPIO10, but unfortunately HT-CT62 does not expose GPIO10.

The next best pin mapping, looking at the schematic of both HT-CT62 and HT-DEV-ESP V3, should be this:

GPIO (Function) ESP32-C3 Pin HT-CT62 Pin HT-DEV-ESP V3 Pin
GPIO4 (I2C SCL) 9 6 8
GPIO5 (I2C SDA) 10 5 9

I’ll go ahead and raise a PR to assign these pins.

Edit1: Looks like I spoke too soon. GPIO4 and GPIO5 are already being used for LORA_BUSY and LORA_RESET.

Looks like none of the exposed pins are free except GPIO18 and GPIO19 which are also used for the native ESP32 USBDP and USBDN.

So far it seems like neither the HT-DEV-ESP32 board nor your design are using the native USB, instead using an external USB to serial bridge to UART0.

So, I could assign GPIO18 and GPIO19 instead, but then designs which use the native USB will break.

The only design I am aware of that uses the native USB is the Heltec HRU-3601 sensor, but I’ve already spun up a different variant of the board for that.

Edit2: I drafted a PR to reassign the pins as I2C:

Also took the opportunity to clean up and comment the variant header files to give better context on why the pins were assigned as they were.