* Heltec CT62: sensor role (with 2 channel relay support + 1 digital input)
This commit is contained in:
@@ -8,9 +8,35 @@
|
|||||||
#include <helpers/ESP32Board.h>
|
#include <helpers/ESP32Board.h>
|
||||||
|
|
||||||
class Heltec_CT62_Board : public ESP32Board {
|
class Heltec_CT62_Board : public ESP32Board {
|
||||||
public:
|
uint32_t gpio_state = 0;
|
||||||
|
|
||||||
uint16_t getBattMilliVolts() override {
|
public:
|
||||||
|
void begin() {
|
||||||
|
ESP32Board::begin();
|
||||||
|
#if defined(PIN_BOARD_RELAY_CH1) && defined(PIN_BOARD_RELAY_CH2)
|
||||||
|
pinMode(PIN_BOARD_RELAY_CH1, OUTPUT);
|
||||||
|
pinMode(PIN_BOARD_RELAY_CH2, OUTPUT);
|
||||||
|
#endif
|
||||||
|
#if defined(PIN_BOARD_DIGITAL_IN)
|
||||||
|
pinMode(PIN_BOARD_DIGITAL_IN, INPUT);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
uint32_t getGpio() override {
|
||||||
|
#if defined(PIN_BOARD_DIGITAL_IN)
|
||||||
|
return gpio_state | (digitalRead(PIN_BOARD_DIGITAL_IN) ? 1 : 0);
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
void setGpio(uint32_t values) override {
|
||||||
|
#if defined(PIN_BOARD_RELAY_CH1) && defined(PIN_BOARD_RELAY_CH2)
|
||||||
|
gpio_state = values;
|
||||||
|
digitalWrite(PIN_BOARD_RELAY_CH1, values & 2);
|
||||||
|
digitalWrite(PIN_BOARD_RELAY_CH2, values & 4);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
uint16_t getBattMilliVolts() override {
|
||||||
#ifdef PIN_VBAT_READ
|
#ifdef PIN_VBAT_READ
|
||||||
analogReadResolution(12); // ESP32-C3 ADC is 12-bit - 3.3/4096 (ref voltage/max counts)
|
analogReadResolution(12); // ESP32-C3 ADC is 12-bit - 3.3/4096 (ref voltage/max counts)
|
||||||
uint32_t raw = 0;
|
uint32_t raw = 0;
|
||||||
|
|||||||
@@ -86,3 +86,24 @@ lib_deps =
|
|||||||
${Heltec_ct62.lib_deps}
|
${Heltec_ct62.lib_deps}
|
||||||
${esp32_ota.lib_deps}
|
${esp32_ota.lib_deps}
|
||||||
densaugeo/base64 @ ~1.4.0
|
densaugeo/base64 @ ~1.4.0
|
||||||
|
|
||||||
|
[env:Heltec_ct62_sensor]
|
||||||
|
extends = Heltec_ct62
|
||||||
|
build_flags =
|
||||||
|
${Heltec_ct62.build_flags}
|
||||||
|
-D ADVERT_NAME='"HT-CT62 Sensor"'
|
||||||
|
-D ADVERT_LAT=0.0
|
||||||
|
-D ADVERT_LON=0.0
|
||||||
|
-D ADMIN_PASSWORD='"password"'
|
||||||
|
-D PIN_BOARD_SDA=-1
|
||||||
|
-D PIN_BOARD_SCL=-1
|
||||||
|
-D PIN_BOARD_RELAY_CH1=0
|
||||||
|
-D PIN_BOARD_RELAY_CH2=1
|
||||||
|
-D PIN_BOARD_DIGITAL_IN=19
|
||||||
|
; -D MESH_PACKET_LOGGING=1
|
||||||
|
; -D MESH_DEBUG=1
|
||||||
|
build_src_filter = ${Heltec_ct62.build_src_filter}
|
||||||
|
+<../examples/simple_sensor>
|
||||||
|
lib_deps =
|
||||||
|
${Heltec_ct62.lib_deps}
|
||||||
|
${esp32_ota.lib_deps}
|
||||||
|
|||||||
Reference in New Issue
Block a user