From f8af98a38965690e0b695a1577456a3005717543 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 12 Aug 2026 12:50:26 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=B0=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B8=20=D0=B7=D0=B0=20=D0=B2=D1=81=D0=B5=20=D0=B2=D1=80?= =?UTF-8?q?=D0=B5=D0=BC=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/extensions.json | 5 +- variants/esp32/diy/hydra_868m/platformio.ini | 17 ++++++ variants/esp32/diy/hydra_868m/variant.h | 55 ++++++++++++++++++++ 3 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 variants/esp32/diy/hydra_868m/platformio.ini create mode 100644 variants/esp32/diy/hydra_868m/variant.h diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 66d8356e5..0287eda27 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,7 +1,10 @@ { + // See http://go.microsoft.com/fwlink/?LinkId=827846 + // for the documentation about the extensions.json format "recommendations": [ "Jason2866.esp-decoder", - "pioarduino.pioarduino-ide" + "pioarduino.pioarduino-ide", + "platformio.platformio-ide" ], "unwantedRecommendations": [ "ms-vscode.cpptools-extension-pack", diff --git a/variants/esp32/diy/hydra_868m/platformio.ini b/variants/esp32/diy/hydra_868m/platformio.ini new file mode 100644 index 000000000..ee37ee084 --- /dev/null +++ b/variants/esp32/diy/hydra_868m/platformio.ini @@ -0,0 +1,17 @@ +; Hydra - Meshtastic DIY v1 hardware with some specific changes +[env:hydra_868m] +custom_meshtastic_hw_model = 39 +custom_meshtastic_hw_model_slug = HYDRA +custom_meshtastic_architecture = esp32 +custom_meshtastic_actively_supported = true +custom_meshtastic_support_level = 3 +custom_meshtastic_display_name = Hydra +custom_meshtastic_tags = DIY + +extends = esp32_base +board = esp32doit-devkit-v1 +build_flags = + ${esp32_base.build_flags} + -D DIY_V1 + -I variants/esp32/diy/hydra_868m + -D EBYTE_E22P_868M30S diff --git a/variants/esp32/diy/hydra_868m/variant.h b/variants/esp32/diy/hydra_868m/variant.h new file mode 100644 index 000000000..27a93752d --- /dev/null +++ b/variants/esp32/diy/hydra_868m/variant.h @@ -0,0 +1,55 @@ +// For OLED LCD +#define I2C_SDA 21 +#define I2C_SCL 22 + +// For GPS, 'undef's not needed +#define GPS_TX_PIN 15 +#define GPS_RX_PIN 12 +#define PIN_GPS_EN 4 + +#define BUTTON_PIN 39 // The middle button GPIO on the T-Beam +// Note: On the ESP32 base version, gpio34-39 are input-only, and do not have internal pull-ups. +// If 39 is not being used for a button, it is suggested to remove the #define. +#define BATTERY_PIN 35 // A battery voltage measurement pin, voltage divider connected here to measure battery voltage +#define ADC_CHANNEL ADC1_GPIO35_CHANNEL +#define ADC_MULTIPLIER 1.85 // (R1 = 470k, R2 = 680k) +#define EXT_PWR_DETECT 4 // Pin to detect connected external power source for LILYGO® TTGO T-Energy T18 and other DIY boards +#define EXT_NOTIFY_OUT 12 // Overridden default pin to use for Ext Notify Module (#975). +#define LED_POWER 2 // add status LED (compatible with core-pcb and DIY targets) + +// Radio +#define USE_SX1262 // E22-900M30S uses SX1262 +#define USE_SX1268 // E22-400M30S uses SX1268 +#define SX126X_MAX_POWER \ + 22 // Outputting 22dBm from SX1262 results in ~30dBm E22-900M30S output (module only uses last stage of the YP2233W PA) +#define SX126X_DIO3_TCXO_VOLTAGE 1.8 // E22 series TCXO reference voltage is 1.8V + +#define SX126X_CS 18 // EBYTE module's NSS pin +#define SX126X_SCK 5 // EBYTE module's SCK pin +#define SX126X_MOSI 27 // EBYTE module's MOSI pin +#define SX126X_MISO 19 // EBYTE module's MISO pin +#define SX126X_RESET 23 // EBYTE module's NRST pin +#define SX126X_BUSY 32 // EBYTE module's BUSY pin +#define SX126X_DIO1 33 // EBYTE module's DIO1 pin + +//#define SX126X_TXEN 13 // Schematic connects EBYTE module's TXEN pin to MCU + +//#if defined(EBYTE_E22P_868M30S) // For Ebyte E22P-868M30S and E22P-915M30S modules - pin 14 always HIGH + #define SX126X_TXEN RADIOLIB_NC + #define SX126X_RXEN RADIOLIB_NC + #define SX126X_POWER_EN 14 + #define SX126X_DIO2_AS_RF_SWITCH +//#else +// #define SX126X_RXEN 14 // Schematic connects EBYTE module's RXEN pin to MCU +//#endif + +#define LORA_CS SX126X_CS // Compatibility with variant file configuration structure +#define LORA_SCK SX126X_SCK // Compatibility with variant file configuration structure +#define LORA_MOSI SX126X_MOSI // Compatibility with variant file configuration structure +#define LORA_MISO SX126X_MISO // Compatibility with variant file configuration structure +#define LORA_DIO1 SX126X_DIO1 // Compatibility with variant file configuration structure +#define LORA_TXEN SX126X_TXEN // Compatibility with variant file configuration structure +#define LORA_RXEN SX126X_RXEN // Compatibility with variant file configuration structure +#define LORA_RESET SX126X_RESET // Compatibility with variant file configuration structure +#define LORA_DIO2 SX126X_BUSY // Compatibility with variant file configuration structure +#define LORA_POWER_EN SX126X_POWER_EN \ No newline at end of file