Compare commits
	
		
			9 Commits
		
	
	
		
			1.02
			...
			1cf0560957
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 1cf0560957 | |||
| b66d175948 | |||
| 0967b6aa65 | |||
| 498d813624 | |||
| 268c204957 | |||
| 65d51f13aa | |||
| f727bb3247 | |||
| cd1379f90c | |||
| 0363b1eebc | 
							
								
								
									
										
											BIN
										
									
								
								Documentation/Pinout_UART_LoRa.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Documentation/Pinout_UART_LoRa.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 53 KiB  | 
@@ -1 +1 @@
 | 
				
			|||||||
1.02
 | 
					1.04
 | 
				
			||||||
@@ -45,6 +45,7 @@ typedef struct Globals_s
 | 
				
			|||||||
  bool hasDTC;
 | 
					  bool hasDTC;
 | 
				
			||||||
  int loadvoltage_mV = 0;
 | 
					  int loadvoltage_mV = 0;
 | 
				
			||||||
  int battery_level = 0;
 | 
					  int battery_level = 0;
 | 
				
			||||||
 | 
					  bool timer_disabled = false;
 | 
				
			||||||
} Globals_t;
 | 
					} Globals_t;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
extern Globals_t globals;
 | 
					extern Globals_t globals;
 | 
				
			||||||
@@ -58,8 +59,8 @@ typedef struct Constants_s
 | 
				
			|||||||
} Constants_t;
 | 
					} Constants_t;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const Constants_t constants PROGMEM = {
 | 
					const Constants_t constants PROGMEM = {
 | 
				
			||||||
 1,2,     // Firmware_Version
 | 
					 1,5,     // Firmware_Version
 | 
				
			||||||
 1,2,     // Required Flash Version
 | 
					 1,4,     // Required Flash Version
 | 
				
			||||||
 GIT_REV  // Git-Hash-String
 | 
					 GIT_REV  // Git-Hash-String
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,10 +2,16 @@
 | 
				
			|||||||
#define _LORA_NET_H_
 | 
					#define _LORA_NET_H_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <Arduino.h>
 | 
					#include <Arduino.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef LORA_FEATURE_ENABLED
 | 
				
			||||||
#include <LoRa_E220.h>
 | 
					#include <LoRa_E220.h>
 | 
				
			||||||
 | 
					#elif defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
 | 
					#include <SoftwareSerial.h>
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// local includes
 | 
					// local includes
 | 
				
			||||||
#include "lora_messages.h"
 | 
					#include "lora_messages.h"
 | 
				
			||||||
 | 
					#include "debugger.h"
 | 
				
			||||||
#include "defaults.h"
 | 
					#include "defaults.h"
 | 
				
			||||||
#include "config.h"
 | 
					#include "config.h"
 | 
				
			||||||
#include "globals.h"
 | 
					#include "globals.h"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,6 +14,9 @@
 | 
				
			|||||||
    #error "You must define an WIFI_AP_PASSWORD for Standalone AP-Mode"
 | 
					    #error "You must define an WIFI_AP_PASSWORD for Standalone AP-Mode"
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#if defined(FEATURE_ENABLE_UARTLORA) && defined(FEATURE_ENABLE_LORA)
 | 
				
			||||||
 | 
					    #error "You cannot enable LoRa and UART-Protocol at the same time!"
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef FEATURE_ENABLE_WIFI_CLIENT
 | 
					#ifdef FEATURE_ENABLE_WIFI_CLIENT
 | 
				
			||||||
    #ifndef WIFI_CLIENT_PASSWORD
 | 
					    #ifndef WIFI_CLIENT_PASSWORD
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,7 @@ upload_speed = 921600
 | 
				
			|||||||
;upload_port = 10.0.1.48
 | 
					;upload_port = 10.0.1.48
 | 
				
			||||||
;upload_protocol = espota
 | 
					;upload_protocol = espota
 | 
				
			||||||
;upload_flags =  
 | 
					;upload_flags =  
 | 
				
			||||||
;   --auth=${wifi_cred.admin_password}
 | 
					;   --auth=${wifi_cred.ota_password}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
build_flags=
 | 
					build_flags=
 | 
				
			||||||
  !python git_rev_macro.py
 | 
					  !python git_rev_macro.py
 | 
				
			||||||
@@ -30,8 +30,9 @@ build_flags=
 | 
				
			|||||||
  ;-DFEATURE_ENABLE_WIFI_CLIENT
 | 
					  ;-DFEATURE_ENABLE_WIFI_CLIENT
 | 
				
			||||||
  ;-DFEATURE_ENABLE_LORA
 | 
					  ;-DFEATURE_ENABLE_LORA
 | 
				
			||||||
  ;-DCAPTIVE
 | 
					  ;-DCAPTIVE
 | 
				
			||||||
 | 
					  -DFEATURE_ENABLE_UARTLORA
 | 
				
			||||||
  -DWIFI_AP_IP_GW=10,0,0,1
 | 
					  -DWIFI_AP_IP_GW=10,0,0,1
 | 
				
			||||||
  -DADMIN_PASSWORD=${wifi_cred.admin_password}
 | 
					  -DADMIN_PASSWORD=${wifi_cred.ota_password}
 | 
				
			||||||
  -DWIFI_CLIENT_SSID=${wifi_cred.wifi_client_ssid}
 | 
					  -DWIFI_CLIENT_SSID=${wifi_cred.wifi_client_ssid}
 | 
				
			||||||
  -DWIFI_CLIENT_PASSWORD=${wifi_cred.wifi_client_password}
 | 
					  -DWIFI_CLIENT_PASSWORD=${wifi_cred.wifi_client_password}
 | 
				
			||||||
  -DWIFI_AP_SSID=${wifi_cred.wifi_ap_ssid}
 | 
					  -DWIFI_AP_SSID=${wifi_cred.wifi_ap_ssid}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,13 +1,19 @@
 | 
				
			|||||||
#include "lora_net.h"
 | 
					#include "lora_net.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef FEATURE_ENABLE_LORA
 | 
				
			||||||
LoRa_E220 e220ttl(GPIO_LORA_TX, GPIO_LORA_RX, GPIO_LORA_AUX, 3, 4); // Arduino RX <-- e220 TX, Arduino TX --> e220 RX AUX M0 M1
 | 
					LoRa_E220 e220ttl(GPIO_LORA_TX, GPIO_LORA_RX, GPIO_LORA_AUX, 3, 4); // Arduino RX <-- e220 TX, Arduino TX --> e220 RX AUX M0 M1
 | 
				
			||||||
 | 
					 | 
				
			||||||
void printParameters(struct Configuration configuration);
 | 
					void printParameters(struct Configuration configuration);
 | 
				
			||||||
void printModuleInformation(struct ModuleInformation moduleInformation);
 | 
					void printModuleInformation(struct ModuleInformation moduleInformation);
 | 
				
			||||||
 | 
					#elif defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
 | 
					SoftwareSerial SerialLoRa(GPIO_LORA_RX, GPIO_LORA_TX); // RX, TX
 | 
				
			||||||
 | 
					void Parse_LoRa_UartCommand(char input[], int size);
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool InitLoRa(void (*MPinHelper)(int, int))
 | 
					bool InitLoRa(void (*MPinHelper)(int, int))
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    bool returnval;
 | 
					    bool returnval = false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef FEATURE_ENABLE_LORA
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    e220ttl.setMPins = MPinHelper;
 | 
					    e220ttl.setMPins = MPinHelper;
 | 
				
			||||||
    returnval = e220ttl.begin();
 | 
					    returnval = e220ttl.begin();
 | 
				
			||||||
@@ -60,11 +66,16 @@ bool InitLoRa(void (*MPinHelper)(int, int))
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        MaintainDTC(DTC_NO_LORA_FOUND, DTC_WARN, true);
 | 
					        MaintainDTC(DTC_NO_LORA_FOUND, DTC_WARN, true);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					#elif defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
 | 
					    SerialLoRa.begin(9600);
 | 
				
			||||||
 | 
					    returnval = true;
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
    return returnval;
 | 
					    return returnval;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void LoRa_Process()
 | 
					void LoRa_Process()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					#ifdef FEATURE_ENABLE_LORA
 | 
				
			||||||
    if (e220ttl.available() > 1)
 | 
					    if (e220ttl.available() > 1)
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        ResponseContainer rc = e220ttl.receiveMessageRSSI();
 | 
					        ResponseContainer rc = e220ttl.receiveMessageRSSI();
 | 
				
			||||||
@@ -82,10 +93,45 @@ void LoRa_Process()
 | 
				
			|||||||
            Serial.println(rc.rssi, DEC);
 | 
					            Serial.println(rc.rssi, DEC);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					#elif defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    static char packageInput[32];
 | 
				
			||||||
 | 
					    static bool packageRecieved = false;
 | 
				
			||||||
 | 
					    static unsigned int bufferPtr = 0;
 | 
				
			||||||
 | 
					    int recievedSize = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    while (SerialLoRa.available() && packageRecieved == false)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        if (bufferPtr < sizeof(packageInput) - 1)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            packageInput[bufferPtr] = SerialLoRa.read();
 | 
				
			||||||
 | 
					            packageInput[bufferPtr + 1] = 0; // always terminate String
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            if (packageInput[bufferPtr] == '\n')
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                packageRecieved = true;
 | 
				
			||||||
 | 
					                recievedSize = bufferPtr;
 | 
				
			||||||
 | 
					                bufferPtr = 0;
 | 
				
			||||||
 | 
					                Debug_pushMessage("Got LoRa UART: %s\n", packageInput);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					            else if ((packageInput[bufferPtr] >= 0x30) || (packageInput[bufferPtr] <= 0x5A)) // only accept Numbers, UpperCase-Letters and some special chars
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                bufferPtr++;
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (packageRecieved) {
 | 
				
			||||||
 | 
					        Parse_LoRa_UartCommand(packageInput, recievedSize);
 | 
				
			||||||
 | 
					        packageRecieved = false;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void sendStatus_LoRa()
 | 
					void sendStatus_LoRa()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					#ifdef FEATURE_ENABLE_LORA
 | 
				
			||||||
    struct
 | 
					    struct
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        MessageType_t type = "STATUS";
 | 
					        MessageType_t type = "STATUS";
 | 
				
			||||||
@@ -101,8 +147,25 @@ void sendStatus_LoRa()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    ResponseStatus rs = e220ttl.sendFixedMessage(0xFF, 0xFF, 23, (byte *)&sendStatus, sizeof(sendStatus));
 | 
					    ResponseStatus rs = e220ttl.sendFixedMessage(0xFF, 0xFF, 23, (byte *)&sendStatus, sizeof(sendStatus));
 | 
				
			||||||
    Serial.println(rs.getResponseDescription());
 | 
					    Serial.println(rs.getResponseDescription());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#elif defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    SerialLoRa.print(PersistenceData.faction_1_timer);
 | 
				
			||||||
 | 
					    SerialLoRa.write(";");
 | 
				
			||||||
 | 
					    SerialLoRa.print(PersistenceData.faction_2_timer);
 | 
				
			||||||
 | 
					    SerialLoRa.write(";");
 | 
				
			||||||
 | 
					    SerialLoRa.print(PersistenceData.faction_3_timer);
 | 
				
			||||||
 | 
					    SerialLoRa.write(";");
 | 
				
			||||||
 | 
					    SerialLoRa.print(PersistenceData.activeFaction);
 | 
				
			||||||
 | 
					    SerialLoRa.write(";");
 | 
				
			||||||
 | 
					    SerialLoRa.print(globals.battery_level);
 | 
				
			||||||
 | 
					    SerialLoRa.write('\n');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef FEATURE_ENABLE_LORA
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void printParameters(struct Configuration configuration)
 | 
					void printParameters(struct Configuration configuration)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    Serial.println("----------------------------------------");
 | 
					    Serial.println("----------------------------------------");
 | 
				
			||||||
@@ -169,3 +232,91 @@ void printParameters(struct Configuration configuration)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    Serial.println("----------------------------------------");
 | 
					    Serial.println("----------------------------------------");
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef FEATURE_ENABLE_UARTLORA
 | 
				
			||||||
 | 
					void Parse_LoRa_UartCommand(char input[], int size)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Debug_pushMessage("Start parsing, size: %d", size);
 | 
				
			||||||
 | 
					    char delimiter[] = ";";
 | 
				
			||||||
 | 
					    char *ptr;
 | 
				
			||||||
 | 
					    char command[8];
 | 
				
			||||||
 | 
					    char value[8];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ptr = strtok(input, delimiter);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    ptr = strtok(input, delimiter);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    while (ptr != NULL)
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        strncpy(command, ptr, sizeof(command) - 1); // Platz für Nullterminator lassen
 | 
				
			||||||
 | 
					        command[sizeof(command) - 1] = '\0'; // Nullterminator setzen
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        ptr = strtok(NULL, delimiter);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (ptr != NULL)
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            strncpy(value, ptr, sizeof(value) - 1); // Platz für Nullterminator lassen
 | 
				
			||||||
 | 
					            value[sizeof(value) - 1] = '\0'; // Nullterminator setzen
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            // Wenn ptr NULL ist, setze value auf leeren String
 | 
				
			||||||
 | 
					            value[0] = '\0';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // Hier kannst du den Wert und das Kommando verarbeiten
 | 
				
			||||||
 | 
					        Debug_pushMessage("Command: %s, Value: %s", command, value);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Debug_pushMessage("Parsed LoRa UART Command:  %s Value: %s\n", command, value);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (!strcmp(command, "ENABLE"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        globals.timer_disabled = false;
 | 
				
			||||||
 | 
					        Debug_pushMessage("Enabled by LoRa");
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "DISABLE"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        globals.timer_disabled = true;
 | 
				
			||||||
 | 
					        Debug_pushMessage("Disabled by LoRa");
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "RESET"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.activeFaction = NONE;
 | 
				
			||||||
 | 
					        PersistenceData.faction_1_timer = 0;
 | 
				
			||||||
 | 
					        PersistenceData.faction_2_timer = 0;
 | 
				
			||||||
 | 
					        PersistenceData.faction_3_timer = 0;
 | 
				
			||||||
 | 
					        Debug_pushMessage("Reset by LoRa");
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "TMRSTP"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.activeFaction = NONE;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "TMR1"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.faction_1_timer = atol(value);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "TMR2"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.faction_2_timer = atol(value);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "TMR3"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.faction_3_timer = atol(value);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "EFAC1"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.activeFaction = FACTION_1;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "EFAC2"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.activeFaction = FACTION_2;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    else if (!strcmp(command, "EFAC3"))
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        PersistenceData.activeFaction = FACTION_3;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
@@ -19,7 +19,7 @@
 | 
				
			|||||||
#include "globals.h"
 | 
					#include "globals.h"
 | 
				
			||||||
#include "dtc.h"
 | 
					#include "dtc.h"
 | 
				
			||||||
#include "debugger.h"
 | 
					#include "debugger.h"
 | 
				
			||||||
#ifdef FEATURE_ENABLE_LORA
 | 
					#if defined(FEATURE_ENABLE_LORA) || defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
#include "lora_net.h"
 | 
					#include "lora_net.h"
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -49,7 +49,7 @@ void OverrideDisplay(uint32_t time, const char *message1, const char *message2,
 | 
				
			|||||||
void initGlobals();
 | 
					void initGlobals();
 | 
				
			||||||
void maintainSysStat();
 | 
					void maintainSysStat();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef FEATURE_ENABLE_LORA
 | 
					#if defined(FEATURE_ENABLE_UARTLORA) || defined(FEATURE_ENABLE_LORA)
 | 
				
			||||||
void setMPins_Helper(int pin, int status);
 | 
					void setMPins_Helper(int pin, int status);
 | 
				
			||||||
void tmrCallback_StatusSender();
 | 
					void tmrCallback_StatusSender();
 | 
				
			||||||
Ticker tmrStatusSender(tmrCallback_StatusSender, 30000, 0, MILLIS);
 | 
					Ticker tmrStatusSender(tmrCallback_StatusSender, 30000, 0, MILLIS);
 | 
				
			||||||
@@ -72,7 +72,7 @@ Ticker tmrWiFiMaintainConnection(tmrCallback_WiFiMaintainConnection, 1000, 0, MI
 | 
				
			|||||||
uint32_t DisplayOverrideFlag = 0;
 | 
					uint32_t DisplayOverrideFlag = 0;
 | 
				
			||||||
char DisplayOverrideValue[3][5] = {0};
 | 
					char DisplayOverrideValue[3][5] = {0};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef FEATURE_ENABLE_LORA
 | 
					#if defined(FEATURE_ENABLE_UARTLORA) || defined(FEATURE_ENABLE_LORA)
 | 
				
			||||||
void setMPins_Helper(int pin, int status)
 | 
					void setMPins_Helper(int pin, int status)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	i2c_io.write(pin, status);
 | 
						i2c_io.write(pin, status);
 | 
				
			||||||
@@ -119,7 +119,7 @@ void setup()
 | 
				
			|||||||
		Serial.print("INA219 not Initialized\n");
 | 
							Serial.print("INA219 not Initialized\n");
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef FEATURE_ENABLE_LORA
 | 
					#if defined(FEATURE_ENABLE_UARTLORA) || defined(FEATURE_ENABLE_LORA)
 | 
				
			||||||
	if (InitLoRa(&setMPins_Helper))
 | 
						if (InitLoRa(&setMPins_Helper))
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		Serial.print("Initialized LoRa_Transceiver\n");
 | 
							Serial.print("Initialized LoRa_Transceiver\n");
 | 
				
			||||||
@@ -229,9 +229,9 @@ void loop()
 | 
				
			|||||||
	DTC_Process();
 | 
						DTC_Process();
 | 
				
			||||||
	Debug_Process();
 | 
						Debug_Process();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef FEATURE_ENABLE_LORA
 | 
					#if defined(FEATURE_ENABLE_LORA) || defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
	tmrStatusSender.update();
 | 
					 | 
				
			||||||
	LoRa_Process();
 | 
						LoRa_Process();
 | 
				
			||||||
 | 
						tmrStatusSender.update();
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef CAPTIVE
 | 
					#ifdef CAPTIVE
 | 
				
			||||||
@@ -308,6 +308,9 @@ void SevenSeg_Output()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
void tmrCallback_FactionTicker()
 | 
					void tmrCallback_FactionTicker()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
						if (globals.timer_disabled == true)
 | 
				
			||||||
 | 
							PersistenceData.activeFaction = NONE;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	switch (PersistenceData.activeFaction)
 | 
						switch (PersistenceData.activeFaction)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
	case FACTION_1:
 | 
						case FACTION_1:
 | 
				
			||||||
@@ -349,7 +352,7 @@ void tmrCallback_InputGetter()
 | 
				
			|||||||
		return;
 | 
							return;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (btnState[0] == FAC_1_TRG_PRESSED)
 | 
						if (btnState[0] == FAC_1_TRG_PRESSED && globals.timer_disabled != true)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (PersistenceData.activeFaction != FACTION_1)
 | 
							if (PersistenceData.activeFaction != FACTION_1)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -359,7 +362,7 @@ void tmrCallback_InputGetter()
 | 
				
			|||||||
		PersistenceData.activeFaction = FACTION_1;
 | 
							PersistenceData.activeFaction = FACTION_1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (btnState[1] == FAC_2_TRG_PRESSED)
 | 
						if (btnState[1] == FAC_2_TRG_PRESSED && globals.timer_disabled != true)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (PersistenceData.activeFaction != FACTION_2)
 | 
							if (PersistenceData.activeFaction != FACTION_2)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -369,7 +372,7 @@ void tmrCallback_InputGetter()
 | 
				
			|||||||
		PersistenceData.activeFaction = FACTION_2;
 | 
							PersistenceData.activeFaction = FACTION_2;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (btnState[2] == FAC_3_TRG_PRESSED)
 | 
						if (btnState[2] == FAC_3_TRG_PRESSED && globals.timer_disabled != true)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if (PersistenceData.activeFaction != FACTION_3)
 | 
							if (PersistenceData.activeFaction != FACTION_3)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
@@ -380,7 +383,7 @@ void tmrCallback_InputGetter()
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef FEATURE_ENABLE_LORA
 | 
					#if defined(FEATURE_ENABLE_LORA) || defined(FEATURE_ENABLE_UARTLORA)
 | 
				
			||||||
void tmrCallback_StatusSender()
 | 
					void tmrCallback_StatusSender()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	sendStatus_LoRa();
 | 
						sendStatus_LoRa();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,6 @@
 | 
				
			|||||||
[wifi_cred]
 | 
					[wifi_cred]
 | 
				
			||||||
wifi_ap_ssid = wifi-ap-ssid
 | 
					wifi_ap_ssid = wifi-ap-ssid
 | 
				
			||||||
wifi_ap_password = wifiappass
 | 
					wifi_ap_password = wifiappass
 | 
				
			||||||
wifi_ssid = wifi-ssid
 | 
					wifi_client_ssid = wifi-ssid
 | 
				
			||||||
wifi_password = wifi-pass
 | 
					wifi_client_password = wifi-pass
 | 
				
			||||||
admin_password = ota-password
 | 
					ota_password = ota-password
 | 
				
			||||||
		Reference in New Issue
	
	Block a user