From 40a64daf8a5db53138fd5f035bb5aae73e3333f8 Mon Sep 17 00:00:00 2001 From: willem Date: Tue, 12 Jan 2021 16:53:11 +0100 Subject: [PATCH] added ttgo board en pins --- .DS_Store | Bin 6148 -> 6148 bytes CAD/t18_v3.0.pdf | Bin 0 -> 85607 bytes platformio.ini | 25 +++++++------- src/display.cpp | 14 +++++++- src/display.h | 2 ++ src/hal.h | 7 +++- src/mailbox.cpp | 14 ++++++++ src/main.cpp | 6 ++-- src/power.cpp | 83 ++++++++++++++++++++++++++++++----------------- src/sleep.cpp | 6 ++++ 10 files changed, 108 insertions(+), 49 deletions(-) create mode 100644 CAD/t18_v3.0.pdf diff --git a/.DS_Store b/.DS_Store index 5172429f264de2441865cb4700216d4256da9242..918c73cc154599aea846dc7c2304941837a6b673 100644 GIT binary patch delta 454 zcmZoMXfc=|#>B)qu~3YagMop8V`8C*EEA9c0_;G{$iN`LP+X9dlb;0SolGj&Sh$?A z9wfue;LPC2;F461ESr;ATw-8woso%|g_Vt+gM*8Miq2I zNG!=ng0e&M^K;81l9=$!yp;TMr~3TTyp&?F zLBS9i4h~KZ&UgWd>S_y9GaUtUW0P7Pg=$M9104kuW3$>?P7ZNZLtD>;+{&uzn%cUV zK=%UyBhYtXzz?Ni)GQza>c5`~2R8>WmNpiCXP(S2qR0x0A%)3? MBGQ`!M7A&k01{koB>(^b delta 80 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 + //display->displayOff(); +} + +void displayOn(void) +{ + //display->displayOn(); +} + void displayDrawBatt(uint16_t voltage, bool sleep) { + Serial.println("get vbatt"); voltage = powerGetVbatt(); uint16_t xstart = 104; uint16_t ystart = 30; @@ -131,7 +143,7 @@ void displayInit(void) return; } initOK = display->init(); - display->setBrightness(255); + display->setBrightness(128); display->flipScreenVertically(); display->setFont(ArialMT_Plain_10); display->drawString(0, 0, "OLED initial done!"); diff --git a/src/display.h b/src/display.h index 4f7d097..b8a9ef3 100644 --- a/src/display.h +++ b/src/display.h @@ -6,6 +6,8 @@ void displayInit(void); void displayUpdate(void); void displayDrawBatt(uint16_t voltage, bool sleep); void displayDrawShutdown(void); +void displayOff(void); +void displayOn(void); diff --git a/src/hal.h b/src/hal.h index 936edb1..7e262cf 100644 --- a/src/hal.h +++ b/src/hal.h @@ -56,11 +56,16 @@ #define SCL_OLED 4 #define RST_OLED 17 +#define US100 //alternative sonar #define TRIGGER 13 #define ECHO 14 -#define VBATT ADC2_CHANNEL_1 +#define VBATT ADC1_CHANNEL_7 #define VEXT 21 + +#define MAILLED 21 +#define BUTTON 22 +#define DOORSW 23 #endif #endif //HALH \ No newline at end of file diff --git a/src/mailbox.cpp b/src/mailbox.cpp index 05a74b4..e77dae3 100644 --- a/src/mailbox.cpp +++ b/src/mailbox.cpp @@ -1,6 +1,7 @@ #include "Arduino.h" #include "mailbox.h" #include "sensor.h" +#include "hal.h" #define MAILCOUNTERFILTER 10 //minimum samples should be equal before triggering mail alert #define MAILCOUNTERTHRESHOLT 2 //minimum delta distance in cm @@ -10,6 +11,14 @@ uint8_t mailcounter = 0; bool mailFlag = false; bool mailDetected = false; +void mailboxInit(void) +{ + + pinMode(MAILLED, OUTPUT); + pinMode(BUTTON, INPUT_PULLUP); + pinMode(DOORSW, INPUT_PULLUP); +} + void mailboxhandler(void) { uint8_t currentDistance = sensorGetDistance(); @@ -43,4 +52,9 @@ void mailboxhandler(void) bool mailboxGetMailDetected(void) { return mailDetected; +} + +void mailboxCleared(void) +{ + } \ No newline at end of file diff --git a/src/main.cpp b/src/main.cpp index 7da367f..488989e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7,7 +7,7 @@ #include "power.h" #include "mailbox.h" -#define TIME_TO_SLEEP 1 /* Time ESP32 will go to sleep (in seconds) */ +#define TIME_TO_SLEEP 10 /* Time ESP32 will go to sleep (in seconds) */ void serialInit(void) { @@ -24,7 +24,7 @@ void setup() sensorInit(); //netInit(); powerInit(); - //sleepInit(TIME_TO_SLEEP); + sleepInit(TIME_TO_SLEEP); displayUpdate(); } @@ -34,6 +34,6 @@ void loop() sensorUpdateDistance(); displayUpdate(); mailboxhandler(); - //sleepStart(); + sleepStart(); delay(1000); } diff --git a/src/power.cpp b/src/power.cpp index 66bc41a..50a1124 100644 --- a/src/power.cpp +++ b/src/power.cpp @@ -5,7 +5,15 @@ #include #include "display.h" -#define VOLTAGE_DIVIDER 2.08 // Lora has 220k/100k voltage divider so need to reverse that reduction via (220k+100k)/100k on vbat GPIO37 or ADC1_1 (early revs were GPIO13 or ADC2_4 but do NOT use with WiFi.begin()) +#if (ENVIRONMENT == TTGO_T18) + #define VOLTAGE_DIVIDER 2 // ttgo has 100/100k voltage divider so need to reverse that reduction via (220k+100k)/100k on vbat GPIO37 or ADC1_1 (early revs were GPIO13 or ADC2_4 but do NOT use with WiFi.begin()) + #define VOLTAGEREF 3787 // measured 2,0474 / 2214 ticks (mv) +#else + + #define VOLTAGE_DIVIDER 2.08 // Lora has 220k/100k voltage divider so need to reverse that reduction via (220k+100k)/100k on vbat GPIO37 or ADC1_1 (early revs were GPIO13 or ADC2_4 but do NOT use with WiFi.begin()) + +#endif + #define DEFAULT_VREF 1100 // Default VREF use if no e-fuse calibration #define VBATT_SAMPLE 500 // Battery sample rate in ms #define VBATT_SMOOTH 20 // Number of averages in sample @@ -15,7 +23,6 @@ uint16_t Sample(); - esp_adc_cal_characteristics_t *adc_chars; uint16_t voltage = 666; @@ -27,6 +34,11 @@ void powerInit(void) esp_adc_cal_value_t val_type = esp_adc_cal_characterize(ADC_UNIT_1, ADC_ATTEN_DB_6, ADC_WIDTH_BIT_12, DEFAULT_VREF, adc_chars); adc1_config_width(ADC_WIDTH_BIT_12); adc1_config_channel_atten(VBATT, ADC_ATTEN_DB_6); +#elif (ENVIRONMENT == TTGO_T18) + //nothing + adc_chars = (esp_adc_cal_characteristics_t *)calloc(1, sizeof(esp_adc_cal_characteristics_t)); + esp_adc_cal_value_t val_type = esp_adc_cal_characterize(ADC_UNIT_1, ADC_ATTEN_DB_6, ADC_WIDTH_BIT_12, DEFAULT_VREF, adc_chars); + adc1_config_channel_atten(VBATT, ADC_ATTEN_DB_6); #else // Use this for older V2.0 with VBatt reading wired to GPIO13 adc_chars = (esp_adc_cal_characteristics_t *)calloc(1, sizeof(esp_adc_cal_characteristics_t)); @@ -64,7 +76,6 @@ void powerInit(void) Serial.println("Power init done"); } - uint16_t powerGetVbatt(void) { return voltage; @@ -75,31 +86,30 @@ void powerHandler(void) voltage = Sample(); //displayDrawBatt(voltage, voltage < LIGHT_SLEEP_VOLTAGE); - if (voltage < MINBATT) - { // Low Voltage cut off shut down to protect battery as long as possible - displayDrawShutdown(); - delay(2000); -#if defined(__DEBUG) && __DEBUG > 0 - Serial.printf(" !! Shutting down...low battery volotage: %dmV.\n", voltage); - delay(10); -#endif - esp_sleep_enable_timer_wakeup(LO_BATT_SLEEP_TIME); - esp_deep_sleep_start(); - } - else if (voltage < LIGHT_SLEEP_VOLTAGE) - { // Use light sleep once on battery - uint64_t s = VBATT_SAMPLE; -#if defined(__DEBUG) && __DEBUG > 0 - Serial.printf(" - Light Sleep (%dms)...battery volotage: %dmV.\n", (int)s, voltage); - delay(20); -#endif - esp_sleep_enable_timer_wakeup(s * 1000); // Light Sleep does not flush buffer - esp_light_sleep_start(); - } +// if (voltage < MINBATT) +// { // Low Voltage cut off shut down to protect battery as long as possible +// displayDrawShutdown(); +// delay(2000); +// #if defined(__DEBUG) && __DEBUG > 0 +// Serial.printf(" !! Shutting down...low battery volotage: %dmV.\n", voltage); +// delay(10); +// #endif +// esp_sleep_enable_timer_wakeup(LO_BATT_SLEEP_TIME); +// esp_deep_sleep_start(); +// } +// else if (voltage < LIGHT_SLEEP_VOLTAGE) +// { // Use light sleep once on battery +// uint64_t s = VBATT_SAMPLE; +// #if defined(__DEBUG) && __DEBUG > 0 +// Serial.printf(" - Light Sleep (%dms)...battery volotage: %dmV.\n", (int)s, voltage); +// delay(20); +// #endif +// esp_sleep_enable_timer_wakeup(s * 1000); // Light Sleep does not flush buffer +// esp_light_sleep_start(); +// } delay(ADC_READ_STABILIZE); } - // Heltec WiFi LoRa V2 battery read example // by Jeff McClain jeff@themcclains.net // @@ -107,27 +117,40 @@ void powerHandler(void) // Poll the proper ADC for VBatt on Heltec Lora 32 with GPIO21 toggled uint16_t ReadVBatt() { + Serial.println("start read batt"); int reading = 666; + uint16_t rawVoltage; +#if (defined(HELTEC_V2_1)) digitalWrite(VEXT, LOW); // ESP32 Lora v2.1 reads on GPIO37 when GPIO21 is low delay(ADC_READ_STABILIZE); // let GPIO stabilize -#if (defined(HELTEC_V2_1)) pinMode(VBATT, OPEN_DRAIN); // ADC GPIO37 reading = adc1_get_raw(VBATT); pinMode(VBATT, INPUT); // Disconnect ADC before GPIO goes back high so we protect ADC from direct connect to VBATT (i.e. no divider) -#else + uint16_t rawVoltage = esp_adc_cal_raw_to_voltage(reading, adc_chars); + +#elif (ENVIRONMENT == TTGO_T18) + pinMode(VBATT, ANALOG); // ADC GPIO13 + reading = analogRead(35); + Serial.printf("battery analogread = %i\n", reading); + rawVoltage = float(VOLTAGEREF / 4096) * reading; + Serial.printf("raw voltage = %i\n", rawVoltage); + + //pinMode(VBATT, INPUT); // Disconnect ADC before GPIO goes back high so we protect ADC from direct connect to VBATT (i.e. no divider +#elif (ENVIRONMENT == LOLIN32) + digitalWrite(VEXT, LOW); // ESP32 Lora v2.1 reads on GPIO37 when GPIO21 is low + delay(ADC_READ_STABILIZE); // let GPIO stabilize pinMode(VBATT, OPEN_DRAIN); // ADC GPIO13 adc2_get_raw(VBATT, ADC_WIDTH_BIT_12, &reading); pinMode(VBATT, INPUT); // Disconnect ADC before GPIO goes back high so we protect ADC from direct connect to VBATT (i.e. no divider + rawVoltage = esp_adc_cal_raw_to_voltage(reading, adc_chars); #endif - uint16_t rawVoltage = esp_adc_cal_raw_to_voltage(reading, adc_chars); //Serial.printf("battery rawvoltage = %i\n", rawVoltage); rawVoltage *= VOLTAGE_DIVIDER; - //Serial.printf("battery sample = %i\n", rawVoltage); + Serial.printf("battery sample = %i\n", rawVoltage); //digitalWrite(VEXT, HIGH); // ESP32 Lora v2.1 reads on GPIO37 when GPIO21 is low return rawVoltage; - } // Use a buffer to average/sample ADC diff --git a/src/sleep.cpp b/src/sleep.cpp index a2551b7..005ee04 100644 --- a/src/sleep.cpp +++ b/src/sleep.cpp @@ -1,5 +1,6 @@ #include "arduino.h" #include "sleep.h" +#include "display.h" #define uS_TO_S_FACTOR 1000000 /* Conversion factor for micro seconds to seconds */ @@ -65,7 +66,12 @@ void sleepStart() Serial.flush(); Serial.println("Going to sleep now"); Serial.flush(); + displayOff(); delay(100); esp_light_sleep_start(); + + + displayOn(); Serial.println("Woke"); + } \ No newline at end of file