From 86a5e6b87b8ec0f33a1fc7692bfeb431e54e9737 Mon Sep 17 00:00:00 2001 From: Christian OE3CJB Bauer Date: Thu, 30 Jan 2020 16:15:56 +0100 Subject: [PATCH 1/8] install doc --- INSTALL.md | 16 +++++++++++ img/img1.jpg | Bin 0 -> 116852 bytes src/TTGO_T-Beam_LoRa_APRS.ino | 49 ++++++++++++++++++++++------------ 3 files changed, 48 insertions(+), 17 deletions(-) create mode 100644 INSTALL.md create mode 100644 img/img1.jpg diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000..7ae98ff --- /dev/null +++ b/INSTALL.md @@ -0,0 +1,16 @@ +

Installation Guide for PlatformIO

+
+Press the PlatformIO HOME Button to enter the Home Screen and there the Libraries Button to add missing libraries:
+
+Search and install the following libaries:
+ +
+Check that the platformio.ini is available as it holds the board type for PlatformIO.
+After pressing the check mark the code will be compiled, after pressing the arrow it will be compiled and uploaded to a connected TTGO.
diff --git a/img/img1.jpg b/img/img1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b76c1fcc73e5913e4c79c6e219a51159534a09b7 GIT binary patch literal 116852 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 literal 0 HcmV?d00001 diff --git a/src/TTGO_T-Beam_LoRa_APRS.ino b/src/TTGO_T-Beam_LoRa_APRS.ino index 1222f02..2028c23 100644 --- a/src/TTGO_T-Beam_LoRa_APRS.ino +++ b/src/TTGO_T-Beam_LoRa_APRS.ino @@ -265,7 +265,11 @@ void setup() Serial.println("LoRa-APRS / Init / AXP192 Begin FAIL"); } axp.setPowerOutPut(AXP192_LDO2, AXP202_ON); - axp.setPowerOutPut(AXP192_LDO3, AXP202_ON); + if (tracker_mode != WX_FIXED) { + axp.setPowerOutPut(AXP192_LDO3, AXP202_ON); // switch on GPS in all modes except WX_FIXED + } else { + axp.setPowerOutPut(AXP192_LDO3, AXP202_OFF); // switch off GPS in WX_FIXED mode + } axp.setPowerOutPut(AXP192_DCDC2, AXP202_ON); axp.setPowerOutPut(AXP192_EXTEN, AXP202_ON); axp.setPowerOutPut(AXP192_DCDC1, AXP202_ON); @@ -369,6 +373,9 @@ void setup() } writedisplaytext(" "+Tcall,"","Init:","Data from GPS OK!","","",250); Serial.println("LoRa-APRS / Init / Data from GPS OK!"); + } else { + writedisplaytext(" "+Tcall,"","Init:","GPS switched OFF!","","",250); + Serial.println("LoRa-APRS / Init / GPS switched OFF!"); } #ifdef T_BEAM_V1_0 @@ -426,6 +433,9 @@ void loop() { tracker_mode = WX_FIXED; writedisplaytext("LoRa-APRS","","New Mode","WX-FIXED","","",500); Serial.println("LoRa-APRS / New Mode / WX-FIXED"); + #ifdef T_BEAM_V1_0 + axp.setPowerOutPut(AXP192_LDO3, AXP202_OFF); // switch OFF GPS at mode WX_FIXED + #endif blinker(4); break; case WX_FIXED: @@ -433,6 +443,9 @@ void loop() { tracker_mode = TRACKER; writedisplaytext("LoRa-APRS","","New Mode","TRACKER","","",500); Serial.println("LoRa-APRS / New Mode / TRACKER"); + #ifdef T_BEAM_V1_0 + axp.setPowerOutPut(AXP192_LDO3, AXP202_ON); // switch on GPS in all modes except WX_FIXED + #endif blinker(1); break; } @@ -440,6 +453,7 @@ void loop() { prefs.putChar("tracker_mode", (char)tracker_mode); prefs.end(); button_ctr=0; + // ESP.restart(); } } else { button_ctr = 0; @@ -453,8 +467,10 @@ void loop() { hum = dht.getHumidity(); } - while (ss.available() > 0) { - gps.encode(ss.read()); + if (tracker_mode != WX_FIXED) { + while (ss.available() > 0) { + gps.encode(ss.read()); + } } if (rf95.waitAvailableTimeout(100)) { @@ -475,6 +491,17 @@ void loop() { if (nextTX < min_time_to_nextTX) {nextTX=min_time_to_nextTX;} if (nextTX > max_time_to_nextTX) {nextTX=max_time_to_nextTX;} + average_course[point_avg_course] = gps.course.deg(); // calculate smart beaconing course + ++point_avg_course; + if (point_avg_course>2) { + point_avg_course=0; + new_course = (average_course[0]+average_course[1]+average_course[2])/3; + if (abs(new_course-old_course)>=30) { + nextTX = 0; + } + old_course = new_course; + } + } else { LatShown = LatFixed; LongShown = LongFixed; @@ -487,18 +514,6 @@ void loop() { nextTX = 0; } - average_course[point_avg_course] = gps.course.deg(); // calculate smart beaconing course - ++point_avg_course; - if (point_avg_course>2) { - point_avg_course=0; - new_course = (average_course[0]+average_course[1]+average_course[2])/3; - if (abs(new_course-old_course)>=30) { - nextTX = 0; - } - old_course = new_course; - } - - if ((millis() Date: Thu, 30 Jan 2020 16:25:44 +0100 Subject: [PATCH 2/8] lib added --- INSTALL.md | 1 + 1 file changed, 1 insertion(+) diff --git a/INSTALL.md b/INSTALL.md index 7ae98ff..d42102d 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -9,6 +9,7 @@ Search and install the following libaries:
  • DHT sensor library for ESPx
  • Adafruit SSD1306
  • Adafruit GFX Library
  • +
  • Adafruit Unified Sensor
  • AXP202X_Library

  • From 8248b8472af8352cc0821791c31c246f957e5acc Mon Sep 17 00:00:00 2001 From: Christian OE3CJB Bauer Date: Fri, 31 Jan 2020 14:04:08 +0100 Subject: [PATCH 3/8] restructered, DS18B20 support added --- {src => lib/BG_RF95}/BG_RF95.cpp | 0 {src => lib/BG_RF95}/BG_RF95.h | 0 src/TTGO_T-Beam_LoRa_APRS.ino | 76 ++++++++++++++++++++++++------ src/TTGO_T-Beam_LoRa_APRS_config.h | 4 +- 4 files changed, 65 insertions(+), 15 deletions(-) rename {src => lib/BG_RF95}/BG_RF95.cpp (100%) rename {src => lib/BG_RF95}/BG_RF95.h (100%) diff --git a/src/BG_RF95.cpp b/lib/BG_RF95/BG_RF95.cpp similarity index 100% rename from src/BG_RF95.cpp rename to lib/BG_RF95/BG_RF95.cpp diff --git a/src/BG_RF95.h b/lib/BG_RF95/BG_RF95.h similarity index 100% rename from src/BG_RF95.h rename to lib/BG_RF95/BG_RF95.h diff --git a/src/TTGO_T-Beam_LoRa_APRS.ino b/src/TTGO_T-Beam_LoRa_APRS.ino index 2028c23..f7fbdb0 100644 --- a/src/TTGO_T-Beam_LoRa_APRS.ino +++ b/src/TTGO_T-Beam_LoRa_APRS.ino @@ -41,7 +41,12 @@ #include #include -#include // library from https://github.com/beegee-tokyo/DHTesp +#ifdef DS18B20 + #include // libraries for DS18B20 + #include +#else + #include // library from https://github.com/beegee-tokyo/DHTesp for DHT22 +#endif #include #include @@ -142,7 +147,8 @@ const byte RX_en = 0; //TX/RX enable 1W modul // #define ModemConfig BG_RF95::Bw125Cr45Sf4096 -#define DHTPIN 25 // pin the DHT22 is connected to Pin25 +#define DHTPIN 25 // the DHT22 is connected to PIN25 +#define ONE_WIRE_BUS 25 // the DS18B20 is connected to PIN25 // Variables for APRS packaging String Tcall; //your Call Sign for normal position reports @@ -210,7 +216,13 @@ void writedisplaytext(String, String, String, String, String, String, int); void setup_data(void); -DHTesp dht; +#ifdef DS18B20 + OneWire oneWire(ONE_WIRE_BUS); + DallasTemperature sensors(&oneWire); +#else + DHTesp dht; // Initialize DHT sensor for normal 16mhz Arduino +#endif + // SoftwareSerial ss(RXPin, TXPin); // The serial connection to the GPS device HardwareSerial ss(1); // TTGO has HW serial @@ -394,10 +406,19 @@ void setup() rf95.setModemConfig(BG_RF95::Bw125Cr45Sf4096); // hard coded because of double definition rf95.setTxPower(5); - dht.setup(DHTPIN,dht.AUTO_DETECT); // initialize DHT22 + #ifdef DS18B20 + sensors.begin(); + #else + dht.setup(DHTPIN,dht.AUTO_DETECT); // initialize DHT22 + #endif delay(250); - temp = dht.getTemperature(); - hum = dht.getHumidity(); + #ifdef DS18B20 + sensors.requestTemperatures(); // Send the command to get temperature readings + temp = sensors.getTempCByIndex(0); // get temp from 1st (!) sensor only + #else + temp = dht.getTemperature(); + hum = dht.getHumidity(); + #endif writedisplaytext("LoRa-APRS","","Init:","DHT OK!","TEMP: "+String(temp,1),"HUM: "+String(hum,1),250); Serial.print("LoRa-APRS / Init / DHT OK! Temp="); Serial.print(String(temp)); @@ -461,10 +482,19 @@ void loop() { if (hum_temp) { hum_temp=false; - temp = dht.getTemperature(); + #ifdef DS18B20 + sensors.requestTemperatures(); // Send the command to get temperature readings + temp = sensors.getTempCByIndex(0); // get temp from 1st (!) sensor only + #else + temp = dht.getTemperature(); + #endif } else { hum_temp=true; - hum = dht.getHumidity(); + #ifdef DS18B20 + hum = 0; + #else + hum = dht.getHumidity(); + #endif } if (tracker_mode != WX_FIXED) { @@ -665,8 +695,14 @@ outString = ""; switch(tracker_mode) { case WX_FIXED: - hum = dht.getHumidity(); - tempf = dht.getTemperature()*9/5+32; + #ifdef DS18B20 + sensors.requestTemperatures(); // Send the command to get temperature readings + tempf = sensors.getTempFByIndex(0); // get temp from 1st (!) sensor only + hum = 0; + #else + hum = dht.getHumidity(); + tempf = dht.getTemperature()*9/5+32; + #endif for (i=0; i Date: Fri, 31 Jan 2020 14:31:01 +0100 Subject: [PATCH 4/8] Update INSTALL.md --- INSTALL.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/INSTALL.md b/INSTALL.md index d42102d..48137fa 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -11,6 +11,8 @@ Search and install the following libaries:
  • Adafruit GFX Library
  • Adafruit Unified Sensor
  • AXP202X_Library
  • +
  • OneWire
  • +
  • DallasTemperature

  • Check that the platformio.ini is available as it holds the board type for PlatformIO.
    From a3259ee259d1d6b81b2155e7640e7e3ff017d7d7 Mon Sep 17 00:00:00 2001 From: oe3cjb Date: Fri, 31 Jan 2020 14:33:37 +0100 Subject: [PATCH 5/8] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 0334d99..f3b4baf 100644 --- a/README.md +++ b/README.md @@ -33,8 +33,11 @@ The symbol can now be changed without attached display - during normal operation 1x TX LED blinks represent "no" to continue with the setup - press here the key to continue the setup - please do so if you have a display attached.

    for DHT22 I used the library from https://github.com/beegee-tokyo/DHTesp, as the standard library gives to many wrong readings
    +Now the DS18B20 is supported as well - uncomment line 31: // #define DS18B20 // use this if you use DS18B20, default ist DHT22

    new features:
    +- DS18B20 support (setable in config.h) +- GPS switched off in WX_FIXED mode (only available with boards with HW-Version >=V1.0) - immediate TX with short key press - course changes of >30° will cause a TX beacon - code optimized and cleaned From 715e332875a33c5ff157240189d1f016c521f868 Mon Sep 17 00:00:00 2001 From: oe3cjb Date: Fri, 31 Jan 2020 14:34:11 +0100 Subject: [PATCH 6/8] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f3b4baf..b78c547 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ The symbol can now be changed without attached display - during normal operation 2x TX LED blinks represent "yes" to leave the setup - press here the key to leave the setup - please do so if you don't have a display attached.
    1x TX LED blinks represent "no" to continue with the setup - press here the key to continue the setup - please do so if you have a display attached.

    +Temperature Sensor:
    for DHT22 I used the library from https://github.com/beegee-tokyo/DHTesp, as the standard library gives to many wrong readings
    Now the DS18B20 is supported as well - uncomment line 31: // #define DS18B20 // use this if you use DS18B20, default ist DHT22

    From b48fc3fea06689dfbb0d31a943b629be0dce0903 Mon Sep 17 00:00:00 2001 From: Christian OE3CJB Bauer Date: Sun, 2 Feb 2020 13:45:19 +0100 Subject: [PATCH 7/8] course calculation corrected --- INSTALL.md | 18 +++++++++++++++++- src/TTGO_T-Beam_LoRa_APRS.ino | 19 ++++++++++++++++--- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/INSTALL.md b/INSTALL.md index 48137fa..3861e95 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,5 +1,9 @@ -

    Installation Guide for PlatformIO

    +

    Installation Guide using PlatformIO


    +1. Clone all files of the respository to your local working directory
    +2. Install the missing libraries
    +There are two possibilities - either using the Library Manager of PlatformIO or the command line tool:
    +

    1. Built-In Liabrary Manager

    Press the PlatformIO HOME Button to enter the Home Screen and there the Libraries Button to add missing libraries:

    Search and install the following libaries:
    @@ -15,5 +19,17 @@ Search and install the following libaries:
  • DallasTemperature

  • +

    2. Command Line Tool

    +use the following commands
    +platformio lib install "RadioHead"
    +platformio lib install "TinyGPSPlus"
    +platformio lib install "DHT sensor library for ESPx"
    +platformio lib install "Adafruit SSD1306"
    +platformio lib install "Adafruit GFX Library"
    +platformio lib install "AXP202X_Library"
    +platformio lib install "Adafruit Unified Sensor"
    +platformio lib install "OneWire"
    +platformio lib install "DallasTemperature"
    +
    Check that the platformio.ini is available as it holds the board type for PlatformIO.
    After pressing the check mark the code will be compiled, after pressing the arrow it will be compiled and uploaded to a connected TTGO.
    diff --git a/src/TTGO_T-Beam_LoRa_APRS.ino b/src/TTGO_T-Beam_LoRa_APRS.ino index f7fbdb0..6e48997 100644 --- a/src/TTGO_T-Beam_LoRa_APRS.ino +++ b/src/TTGO_T-Beam_LoRa_APRS.ino @@ -525,9 +525,22 @@ void loop() { ++point_avg_course; if (point_avg_course>2) { point_avg_course=0; - new_course = (average_course[0]+average_course[1]+average_course[2])/3; - if (abs(new_course-old_course)>=30) { - nextTX = 0; + // new_course = (average_course[0]+average_course[1]+average_course[2])/3; + new_course = atan ((sin(average_course[0])+sin(average_course[1])+sin(average_course[2]))/(cos(average_course[0])+cos(average_course[1])+cos(average_course[2]))); + if ((old_course < 30) && (new_course > 330)) { + if (abs(new_course-old_course-360)>=30) { + nextTX = 0; + } + } else { + if ((old_course > 330) && (new_course < 30)) { + if (abs(new_course-old_course+360)>=30) { + nextTX = 0; + } + } else { + if (abs(new_course-old_course)>=30) { + nextTX = 0; + } + } } old_course = new_course; } From e0b53577fdc4bb3f557dee4dc84b3d248684067c Mon Sep 17 00:00:00 2001 From: Christian OE3CJB Bauer Date: Sun, 2 Feb 2020 16:58:19 +0100 Subject: [PATCH 8/8] further optimizations --- src/TTGO_T-Beam_LoRa_APRS.ino | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/TTGO_T-Beam_LoRa_APRS.ino b/src/TTGO_T-Beam_LoRa_APRS.ino index 6e48997..14693b4 100644 --- a/src/TTGO_T-Beam_LoRa_APRS.ino +++ b/src/TTGO_T-Beam_LoRa_APRS.ino @@ -72,7 +72,7 @@ #define SSD1306_ADDRESS 0x3C // AXP192 address -#define AXP192_SLAVE_ADDRESS 0x34 +// #define AXP192_SLAVE_ADDRESS 0x34 // already defined in axp20x.h /* for feather32u4 #define RFM95_CS 8 @@ -673,11 +673,11 @@ static void smartDelay(unsigned long ms) void recalcGPS(){ String Ns, Ew, helper; - float Tlat, Tlon; + float Tlat=48.2012, Tlon=15.6361; int i, Talt, lenalt; - float Lat; - float Lon; - float Tspeed, Tcourse; + float Lat=0.0; + float Lon=0.0; + float Tspeed=0, Tcourse=0; String Speedx, Coursex, Altx; if (tracker_mode != WX_FIXED) { @@ -1012,7 +1012,7 @@ void setup_data(void) { int8_t pos_in_string; int8_t pos_ssid; bool key_pressed = false; - int waiter, symbol_only; + int waiter; int initial_waiter = 2000; char aktueller_letter; int8_t pos_letter;