@@ -200,6 +200,7 @@ const char *ESP32S3_Model_Ham = "Ham Edition"; /* 303a:818F */
200200const char *ESP32S3_Model_Midi = " Midi Edition" ; /* 303a:81A0 */
201201const char *ESP32S3_Model_Ink = " Ink Edition" ; /* 303a:820A */
202202const char *ESP32S3_Model_Gizmo = " Gizmo Edition" ; /* 303a:82D9 */
203+ const char *ESP32S3_Model_Adv = " Adventure Edition" ; /* 303a:XXXX */
203204const uint16_t ESP32SX_Device_Version = SOFTRF_USB_FW_VERSION ;
204205
205206#if defined(EXCLUDE_WIFI)
@@ -1565,6 +1566,24 @@ static void ESP32_setup()
15651566#if defined(USE_RADIOLIB)
15661567 lmic_pins.dio [0 ] = SOC_GPIO_PIN_M2_DIO1 ;
15671568#endif /* USE_RADIOLIB */
1569+
1570+ } else if (esp32_board == ESP32_ELECROW_TN_M5 ) {
1571+
1572+ hw_info.model = SOFTRF_MODEL_ADVENTURE ;
1573+ hw_info.revision = 0 ; /* TBD */
1574+
1575+ #if ARDUINO_USB_CDC_ON_BOOT
1576+ SerialOutput.begin (SERIAL_OUT_BR , SERIAL_OUT_BITS ,
1577+ SOC_GPIO_PIN_M5_CONS_RX ,
1578+ SOC_GPIO_PIN_M5_CONS_TX );
1579+ #endif /* ARDUINO_USB_CDC_ON_BOOT */
1580+
1581+ lmic_pins.nss = SOC_GPIO_PIN_M5_SS ;
1582+ lmic_pins.rst = SOC_GPIO_PIN_M5_RST ;
1583+ lmic_pins.busy = SOC_GPIO_PIN_M5_BUSY ;
1584+ #if defined(USE_RADIOLIB)
1585+ lmic_pins.dio [0 ] = SOC_GPIO_PIN_M5_DIO1 ;
1586+ #endif /* USE_RADIOLIB */
15681587#endif /* CONFIG_IDF_TARGET_ESP32S3 */
15691588
15701589#if defined(CONFIG_IDF_TARGET_ESP32C2)
@@ -1843,6 +1862,7 @@ static void ESP32_setup()
18431862 esp32_board == ESP32_HELTEC_TRACKER ? ESP32S3_Model_Midi :
18441863 esp32_board == ESP32_LILYGO_T3S3_EPD ? ESP32S3_Model_Ink :
18451864 esp32_board == ESP32_ELECROW_TN_M2 ? ESP32S3_Model_Gizmo :
1865+ esp32_board == ESP32_ELECROW_TN_M5 ? ESP32S3_Model_Adv :
18461866 ESP32SX_Model_Stand);
18471867 USB .firmwareVersion (ESP32SX_Device_Version);
18481868 USB .serialNumber (usb_serial_number);
@@ -3818,6 +3838,10 @@ static void ESP32_SPI_begin()
38183838 SPI .begin (SOC_GPIO_PIN_EHUB_SCK , SOC_GPIO_PIN_EHUB_MISO ,
38193839 SOC_GPIO_PIN_EHUB_MOSI , SOC_GPIO_PIN_EHUB_SS );
38203840 break ;
3841+ case ESP32_ELECROW_TN_M5 :
3842+ SPI .begin (SOC_GPIO_PIN_M5_SCK , SOC_GPIO_PIN_M5_MISO ,
3843+ SOC_GPIO_PIN_M5_MOSI , SOC_GPIO_PIN_M5_SS );
3844+ break ;
38213845#endif /* CONFIG_IDF_TARGET_ESP32S3 */
38223846#if defined(CONFIG_IDF_TARGET_ESP32C2)
38233847 case ESP32_C2_DEVKIT :
@@ -3958,6 +3982,10 @@ static void ESP32_swSer_begin(unsigned long baud)
39583982 Serial.println (F (" INFO: Elecrow ThinkNode M2 is detected." ));
39593983 Serial_GNSS_In.begin (baud, SERIAL_IN_BITS ,
39603984 SOC_GPIO_PIN_M2_GNSS_RX , SOC_GPIO_PIN_M2_GNSS_TX );
3985+ } else if (esp32_board == ESP32_ELECROW_TN_M5 ) {
3986+ Serial.println (F (" INFO: Elecrow ThinkNode M5 is detected." ));
3987+ Serial_GNSS_In.begin (baud, SERIAL_IN_BITS ,
3988+ SOC_GPIO_PIN_M5_GNSS_RX , SOC_GPIO_PIN_M5_GNSS_TX );
39613989 } else if (esp32_board == ESP32_EBYTE_HUB_900TB ) {
39623990 Serial.println (F (" INFO: Ebyte EoRa_HUB_900TB is detected." ));
39633991 Serial_GNSS_In.begin (baud, SERIAL_IN_BITS ,
@@ -4878,7 +4906,8 @@ static void ESP32_Battery_setup()
48784906 esp32_board == ESP32_LILYGO_T3S3_OLED ||
48794907 esp32_board == ESP32_EBYTE_HUB_900TB ) {
48804908 calibrate_voltage ((adc1_channel_t ) ADC1_GPIO1_CHANNEL );
4881- } else if (esp32_board == ESP32_BANANA_PICOW ) {
4909+ } else if (esp32_board == ESP32_BANANA_PICOW ||
4910+ esp32_board == ESP32_ELECROW_TN_M5 ) {
48824911 calibrate_voltage ((adc1_channel_t ) ADC1_GPIO8_CHANNEL ); /* TBD */
48834912 } else if (esp32_board == ESP32_ELECROW_TN_M2 ) {
48844913 adc2_calibrate_voltage ((adc2_channel_t ) ADC2_GPIO17_CHANNEL );
@@ -5091,6 +5120,10 @@ static bool ESP32_Baro_setup()
50915120
50925121 Wire.setPins (SOC_GPIO_PIN_M2_SDA , SOC_GPIO_PIN_M2_SCL );
50935122
5123+ } else if (esp32_board == ESP32_ELECROW_TN_M5 ) {
5124+
5125+ Wire.setPins (SOC_GPIO_PIN_M5_SDA , SOC_GPIO_PIN_M5_SCL );
5126+
50945127 } else if (esp32_board == ESP32_EBYTE_HUB_900TB ) {
50955128
50965129 Wire.setPins (SOC_GPIO_PIN_EHUB_SDA , SOC_GPIO_PIN_EHUB_SCL );
0 commit comments