From 29c72d359d1f6adec32459ec944c6fb37b88add2 Mon Sep 17 00:00:00 2001 From: norbert-walter Date: Tue, 25 Jan 2022 21:51:44 +0100 Subject: [PATCH] Add direction pin function for NMEA0183 --- lib/obp60task/GwOBP60Task.cpp | 13 ++++++++++++- platformio.ini | 3 ++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/lib/obp60task/GwOBP60Task.cpp b/lib/obp60task/GwOBP60Task.cpp index f4f8a17..8173c1e 100644 --- a/lib/obp60task/GwOBP60Task.cpp +++ b/lib/obp60task/GwOBP60Task.cpp @@ -119,7 +119,7 @@ void OBP60Init(GwApi *api){ GwLog *logger=api->getLogger(); // Define timer interrupts -// Timer1.attach_ms(1, underVoltageDetection); // Maximum speed with 1ms + Timer1.attach_ms(1, underVoltageDetection); // Maximum speed with 1ms Timer2.attach_ms(40, readKeypad); // Timer value nust grater than 30ms Timer3.attach_ms(500, blinkingFlashLED); @@ -159,6 +159,17 @@ void OBP60Init(GwApi *api){ else{ LOG_DEBUG(GwLog::DEBUG,"1Wire Mode is Off"); } + + // Settings for NMEA0183 + String nmea0183Mode = api->getConfig()->getConfigItem(api->getConfig()->serialDirection,true)->asString(); + LOG_DEBUG(GwLog::DEBUG,"NMEA0183 Mode is: %s", nmea0183Mode); + pinMode(OBP_DIRECTION_PIN, OUTPUT); + if(String(nmea0183Mode) == "receive" || String(nmea0183Mode) == "off"){ + digitalWrite(OBP_DIRECTION_PIN, false); + } + if(String(nmea0183Mode) == "send"){ + digitalWrite(OBP_DIRECTION_PIN, true); + } // Settings for backlight String backlightMode = api->getConfig()->getConfigItem(api->getConfig()->backlight,true)->asString(); diff --git a/platformio.ini b/platformio.ini index b39dc56..658c082 100644 --- a/platformio.ini +++ b/platformio.ini @@ -58,8 +58,9 @@ lib_deps = ${env.lib_deps} build_flags = -D BOARD_M5ATOM_CANUNIT ${env.build_flags} -upload_port = /dev/esp32 +upload_port = COM13 upload_protocol = esptool +monitor_speed = 115200 [env:m5stickc-atom-canunit] board = m5stick-c