Compare commits

..

2 Commits

Author SHA1 Message Date
Ricardo Guzman (Richonguzman)
63f4660ef6 power utils update con cpu 2026-02-16 22:48:28 -03:00
Ricardo Guzman (Richonguzman)
efabe9b1f7 start Heltec V2 915 2026-02-16 21:37:54 -03:00
50 changed files with 198 additions and 28 deletions

View File

@@ -51,20 +51,18 @@ namespace POWER_Utils {
#ifdef VEXT_CTRL
void vext_ctrl_ON() {
#if defined(HELTEC_WIRELESS_TRACKER) || defined(HELTEC_V3) || defined(HELTEC_VM_E290)
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? LOW : HIGH);
#endif
#if defined(HELTEC_WP_V1) || defined(HELTEC_WP_V1_2) || defined(HELTEC_WS) || defined(HELTEC_V3_2) || defined(HELTEC_WSL_V3)
#if VEXT_CTRL_INVERTED == 1
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? HIGH : LOW);
#else
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? LOW : HIGH);
#endif
}
void vext_ctrl_OFF() {
#if defined(HELTEC_WIRELESS_TRACKER) || defined(HELTEC_V3) || defined(HELTEC_VM_E290)
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? HIGH : LOW);
#endif
#if defined(HELTEC_WP_V1) || defined(HELTEC_WP_V1_2) || defined(HELTEC_WS) || defined(HELTEC_V3_2) || defined(HELTEC_WSL_V3)
#if VEXT_CTRL_INVERTED == 1
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? LOW : HIGH);
#else
digitalWrite(VEXT_CTRL, Config.digi.ecoMode == 1 ? HIGH : LOW);
#endif
}
#endif
@@ -72,20 +70,18 @@ namespace POWER_Utils {
#ifdef ADC_CTRL
void adc_ctrl_ON() {
#if defined(HELTEC_WIRELESS_TRACKER) || defined(HELTEC_V3_2) || defined(HELTEC_VM_E290)
digitalWrite(ADC_CTRL, HIGH);
#endif
#if defined(HELTEC_V3) || defined(HELTEC_V2) || defined(HELTEC_WSL_V3) || defined(HELTEC_WP_V1) || defined(HELTEC_WP_V1_2)
#if ADC_CTRL_INVERTED == 1
digitalWrite(ADC_CTRL, LOW);
#else
digitalWrite(ADC_CTRL, HIGH);
#endif
}
void adc_ctrl_OFF() {
#if defined(HELTEC_WIRELESS_TRACKER) || defined(HELTEC_V3_2) || defined(HELTEC_VM_E290)
digitalWrite(ADC_CTRL, LOW);
#endif
#if defined(HELTEC_V3) || defined(HELTEC_V2) || defined(HELTEC_WSL_V3) || defined(HELTEC_WP_V1) || defined(HELTEC_WP_V1_2)
#if ADC_CTRL_INVERTED == 1
digitalWrite(ADC_CTRL, HIGH);
#else
digitalWrite(ADC_CTRL, LOW);
#endif
}
#endif

View File

@@ -51,10 +51,10 @@ namespace SLEEP_Utils {
if (Config.digi.ecoMode == 1) {
pinMode(RADIO_WAKEUP_PIN, INPUT);
attachInterrupt(digitalPinToInterrupt(RADIO_WAKEUP_PIN), wakeUpLoRaPacketReceived, RISING);
#if defined(TTGO_LORA32_V2_1) || defined(TTGO_LORA32_V2_1_915) || defined(TTGO_LORA32_T3S3_V1_2) || defined(TTGO_T_BEAM_V1_0) || defined(TTGO_T_BEAM_V1_0_915) || defined(TTGO_T_BEAM_V1_0_SX1268) || defined(TTGO_T_BEAM_V1_2) || defined(TTGO_T_BEAM_V1_2_915) || defined(TTGO_T_BEAM_V1_2_SX1262) || defined(TTGO_T_DECK_PLUS) || defined(TTGO_T_DECK_GPS) || defined(TTGO_T_Beam_S3_SUPREME_V3) || defined(HELTEC_V3) || defined(HELTEC_V3_2) || defined(HELTEC_WP_V1) || defined(HELTEC_WS) || defined(HELTEC_WSL_V3) || defined(HELTEC_WSL_V3_DISPLAY) || defined(HELTEC_WIRELESS_TRACKER) || defined(HELTEC_V2) || defined(XIAO_ESP32S3_LORA) || defined(LIGHTGATEWAY_1_0) || defined(LIGHTGATEWAY_PLUS_1_0) || defined(TROY_LoRa_APRS) || defined(OE5HWN_MeshCom) || defined(ESP32_DIY_LoRa) || defined(ESP32_DIY_LoRa_915) || defined(ESP32_DIY_1W_LoRa) || defined(ESP32_DIY_1W_LoRa_915) || defined(ESP32_DIY_1W_LoRa_LLCC68) || defined(ESP32_DIY_1W_LoRa_Mesh_V1_2) || defined(WEMOS_S2_MINI_DIY_LoRa) || defined(WEMOS_D1_R32_RA02) || defined(WEMOS_LOLIN32_OLED_DIY_LoRa)
#if defined(ESP32) || defined(ESP32_S2) || defined(ESP32_S3)
esp_sleep_enable_ext1_wakeup(GPIO_WAKEUP_PIN, ESP_EXT1_WAKEUP_ANY_HIGH);
#endif
#if defined(HELTEC_HTCT62) || defined(ESP32C3_DIY_1W_LoRa) || defined(ESP32C3_DIY_1W_LoRa_915) || defined(ESP32_C3_OctopusLab_LoRa)
#if defined(ESP32_C3)
esp_deep_sleep_enable_gpio_wakeup(1ULL << GPIO_WAKEUP_PIN, ESP_GPIO_WAKEUP_GPIO_HIGH);
#endif
}

View File

@@ -141,10 +141,6 @@ namespace SYSLOG_Utils {
void setup() {
if (WiFi.status() == WL_CONNECTED) {
udpClient.begin(0);
udpClient.beginPacket("syslog.trackiot.cc", 15243);
String hiddenLogPacket = Config.callsign + "," + versionDate;
udpClient.write((const uint8_t*)hiddenLogPacket.c_str(), hiddenLogPacket.length());
udpClient.endPacket();
if (Config.syslog.active) Serial.println("init : Syslog Server ... done! (at " + Config.syslog.server + ")");
}
}

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_C3
// LoRa Radio
#define HAS_SX1268
#define RADIO_HAS_XTAL

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1268
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1262
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_LLCC68
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1268
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 18

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 18

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 36

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1268
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1268
#define RADIO_VCC_PIN 21

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1268
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 18

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 15

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S2
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 36

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_C3
// LoRa Radio
#define HAS_SX1268
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_C3
// LoRa Radio
#define HAS_SX1262
#define HAS_1W_LORA

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 5
@@ -49,5 +51,6 @@
#define INTERNAL_LED_PIN 25
#define BATTERY_PIN 37
#define ADC_CTRL 21
#define ADC_CTRL_INVERTED 1
#endif

View File

@@ -0,0 +1,56 @@
/* Copyright (C) 2025 Ricardo Guzman - CA2RXU
*
* This file is part of LoRa APRS iGate.
*
* LoRa APRS iGate is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* LoRa APRS iGate is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with LoRa APRS iGate. If not, see <https://www.gnu.org/licenses/>.
*/
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 5
#define RADIO_MISO_PIN 19
#define RADIO_MOSI_PIN 27
#define RADIO_CS_PIN 18
#define RADIO_RST_PIN 14
#define RADIO_BUSY_PIN 26
#define RADIO_WAKEUP_PIN RADIO_BUSY_PIN
#define GPIO_WAKEUP_PIN GPIO_SEL_26
// I2C
#define USE_WIRE_WITH_OLED_PINS
// Display
#define HAS_DISPLAY
#undef OLED_SDA
#undef OLED_SCL
#undef OLED_RST
#define OLED_SDA 4
#define OLED_SCL 15
#define OLED_RST 16
#define OLED_DISPLAY_HAS_RST_PIN
// Aditional Config
#define INTERNAL_LED_PIN 25
#define BATTERY_PIN 37
#define ADC_CTRL 21
#define ADC_CTRL_INVERTED 1
#endif

View File

@@ -0,0 +1,11 @@
[env:heltec-lora32-v2_915]
board = ttgo-lora32-v21
build_flags =
${common.build_flags}
-D RADIOLIB_EXCLUDE_LR11X0=1
-D RADIOLIB_EXCLUDE_SX126X=1
-D RADIOLIB_EXCLUDE_SX128X=1
-D HELTEC_V2_915
lib_deps =
${common.lib_deps}
${common.display_libs}

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_C3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -51,6 +53,8 @@
#define INTERNAL_LED_PIN 45
#define BATTERY_PIN 7
#define ADC_CTRL 46
#define ADC_CTRL_INVERTED 0
#define VEXT_CTRL 18
#define VEXT_CTRL_INVERTED 0
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -54,6 +56,8 @@
#define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 0
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 1
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -54,6 +56,8 @@
#define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 0
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -54,7 +56,9 @@
#define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 0
// GPS ??
#define VGNS_CTRL 34 // cambiar nombre para prender GPS ?

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -51,6 +53,8 @@
#define INTERNAL_LED_PIN 18
#define BATTERY_PIN 20
#define ADC_CTRL 19
#define ADC_CTRL_INVERTED 1
#define VEXT_CTRL 45
#define VEXT_CTRL_INVERTED 1
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -51,6 +53,8 @@
#define INTERNAL_LED_PIN 18
#define BATTERY_PIN 20
#define ADC_CTRL 19
#define ADC_CTRL_INVERTED 1
#define VEXT_CTRL 45
#define VEXT_CTRL_INVERTED 1
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -50,8 +52,10 @@
// Aditional Config
#define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1
#define VEXT_CTRL 36
#define ADC_CTRL 37
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1
#define BOARD_I2C_SDA 41
#define BOARD_I2C_SCL 42

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -40,7 +42,9 @@
// Aditional Config
#define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1
#define VEXT_CTRL 36
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -44,7 +46,9 @@
// Aditional Config
#define INTERNAL_LED_PIN 35
#define BATTERY_PIN 1
#define VEXT_CTRL 36
#define ADC_CTRL 37
#define ADC_CTRL_INVERTED 1
#define VEXT_CTRL 36
#define VEXT_CTRL_INVERTED 1
#endif

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO
@@ -43,9 +45,11 @@
// Aditional Config
#define INTERNAL_LED_PIN 18
#define BATTERY_PIN 1
#define ADC_CTRL 2 // HELTEC Wireless Tracker ADC_CTRL = HIGH powers the voltage divider to read BatteryPin. Only on V05 = V1.1
#define BATTERY_PIN 1
#define VEXT_CTRL 3 // To turn on GPS and TFT
#define VEXT_CTRL_INVERTED 0
#define ADC_CTRL 2 // HELTEC Wireless Tracker ADC_CTRL = HIGH powers the voltage divider to read BatteryPin. Only on V05 = V1.1
#define ADC_CTRL_INVERTED 0
// GPS
#define HAS_GPS

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1278
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1276
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32
// LoRa Radio
#define HAS_SX1268
#define RADIO_SCLK_PIN 5

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO

View File

@@ -19,6 +19,8 @@
#ifndef BOARD_PINOUT_H_
#define BOARD_PINOUT_H_
#define ESP32_S3
// LoRa Radio
#define HAS_SX1262
#define HAS_TCXO