Compare commits
2 Commits
c593b8a546
...
c8f5cda4ba
Author | SHA1 | Date | |
---|---|---|---|
c8f5cda4ba | |||
0bc7d0862b |
@ -3,7 +3,7 @@
|
|||||||
DebugStatus_t DebuggerStatus[dbg_cntElements];
|
DebugStatus_t DebuggerStatus[dbg_cntElements];
|
||||||
|
|
||||||
String IpAddress2String(const IPAddress &ipAddress);
|
String IpAddress2String(const IPAddress &ipAddress);
|
||||||
void processCmdDebug();
|
void processCmdDebug(String command);
|
||||||
void Debug_formatCFG();
|
void Debug_formatCFG();
|
||||||
void Debug_formatPersistence();
|
void Debug_formatPersistence();
|
||||||
void Debug_printSystemInfo();
|
void Debug_printSystemInfo();
|
||||||
@ -13,6 +13,7 @@ void Debug_dumpConfig();
|
|||||||
void Debug_dumpPersistance();
|
void Debug_dumpPersistance();
|
||||||
void Debug_ShowDTCs();
|
void Debug_ShowDTCs();
|
||||||
void Debug_dumpGlobals();
|
void Debug_dumpGlobals();
|
||||||
|
void Debug_printHelp();
|
||||||
|
|
||||||
void initDebugger()
|
void initDebugger()
|
||||||
{
|
{
|
||||||
@ -22,15 +23,84 @@ void initDebugger()
|
|||||||
Serial.setDebugOutput(false);
|
Serial.setDebugOutput(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Debug_Process()
|
||||||
|
{
|
||||||
|
typedef enum InputProcessed_e
|
||||||
|
{
|
||||||
|
IDLE,
|
||||||
|
CMD_COMPLETE,
|
||||||
|
CMD_ABORT,
|
||||||
|
CMD_OVERFLOW
|
||||||
|
} InputProcessed_t;
|
||||||
|
|
||||||
|
static int inputCnt = 0;
|
||||||
|
static char inputBuffer[32];
|
||||||
|
InputProcessed_t InputProcessed = IDLE;
|
||||||
|
|
||||||
|
if (Serial.available())
|
||||||
|
{
|
||||||
|
char inputChar = Serial.read();
|
||||||
|
|
||||||
|
switch (inputChar)
|
||||||
|
{
|
||||||
|
case '\n':
|
||||||
|
inputBuffer[inputCnt] = 0; // terminate the String
|
||||||
|
inputCnt = 0;
|
||||||
|
InputProcessed = CMD_COMPLETE;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 0x1B: // Esc
|
||||||
|
inputBuffer[0] = 0;
|
||||||
|
inputCnt = 0;
|
||||||
|
InputProcessed = CMD_ABORT;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 0x21 ... 0x7E: // its a real letter or sign and not some control-chars
|
||||||
|
inputBuffer[inputCnt] = inputChar;
|
||||||
|
inputCnt++;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (inputCnt > sizeof(inputBuffer))
|
||||||
|
{
|
||||||
|
inputCnt = 0;
|
||||||
|
inputBuffer[sizeof(inputBuffer) - 1] = 0; // terminate the String
|
||||||
|
InputProcessed = CMD_OVERFLOW;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (InputProcessed)
|
||||||
|
{
|
||||||
|
case CMD_ABORT:
|
||||||
|
Debug_pushMessage("Abort\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
case CMD_COMPLETE:
|
||||||
|
processCmdDebug(String(inputBuffer));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case CMD_OVERFLOW:
|
||||||
|
Debug_pushMessage("input Buffer overflow\n");
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
InputProcessed = IDLE;
|
||||||
|
}
|
||||||
|
|
||||||
void SetDebugportStatus(DebugPorts_t port, DebugStatus_t status)
|
void SetDebugportStatus(DebugPorts_t port, DebugStatus_t status)
|
||||||
{
|
{
|
||||||
if (status == disabled)
|
if (status == disabled)
|
||||||
Debug_pushMessage("disable DebugPort %s", sDebugPorts[port]);
|
Debug_pushMessage("disable DebugPort %s\n", sDebugPorts[port]);
|
||||||
|
|
||||||
DebuggerStatus[port] = status;
|
DebuggerStatus[port] = status;
|
||||||
|
|
||||||
if (status == enabled)
|
if (status == enabled)
|
||||||
Debug_pushMessage("enabled DebugPort %s", sDebugPorts[port]);
|
Debug_pushMessage("enabled DebugPort %s\n", sDebugPorts[port]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_pushMessage(const char *format, ...)
|
void Debug_pushMessage(const char *format, ...)
|
||||||
@ -81,7 +151,9 @@ void pushCANDebug(uint32_t id, uint8_t dlc, uint8_t *data)
|
|||||||
|
|
||||||
void processCmdDebug(String command)
|
void processCmdDebug(String command)
|
||||||
{
|
{
|
||||||
if (command == "sysinfo")
|
if (command == "help")
|
||||||
|
Debug_printHelp();
|
||||||
|
else if (command == "sysinfo")
|
||||||
Debug_printSystemInfo();
|
Debug_printSystemInfo();
|
||||||
else if (command == "netinfo")
|
else if (command == "netinfo")
|
||||||
Debug_printWifiInfo();
|
Debug_printWifiInfo();
|
||||||
@ -107,87 +179,91 @@ void processCmdDebug(String command)
|
|||||||
Debug_ShowDTCs();
|
Debug_ShowDTCs();
|
||||||
else if (command == "dumpGlobals")
|
else if (command == "dumpGlobals")
|
||||||
Debug_dumpGlobals();
|
Debug_dumpGlobals();
|
||||||
|
else if (command == "sdbg")
|
||||||
|
SetDebugportStatus(dbg_Serial, enabled);
|
||||||
|
else
|
||||||
|
Debug_pushMessage("unknown Command\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_formatCFG()
|
void Debug_formatCFG()
|
||||||
{
|
{
|
||||||
Debug_pushMessage("Formatting Config-EEPROM and reseting to default");
|
Debug_pushMessage("Formatting Config-EEPROM and reseting to default\n");
|
||||||
FormatConfig_EEPROM();
|
FormatConfig_EEPROM();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_formatPersistence()
|
void Debug_formatPersistence()
|
||||||
{
|
{
|
||||||
Debug_pushMessage("Formatting Persistence-EEPROM and reseting to default");
|
Debug_pushMessage("Formatting Persistence-EEPROM and reseting to default\n");
|
||||||
FormatPersistence_EEPROM();
|
FormatPersistence_EEPROM();
|
||||||
}
|
}
|
||||||
|
|
||||||
void RemotDebug_printSystemInfo()
|
void Debug_printSystemInfo()
|
||||||
{
|
{
|
||||||
Debug_pushMessage("Souko's ChainOiler Mk1");
|
Debug_pushMessage("Souko's ChainOiler Mk1\n");
|
||||||
Debug_pushMessage("Hostname: %s", globals.DeviceName);
|
Debug_pushMessage("Hostname: %s\n", globals.DeviceName);
|
||||||
|
|
||||||
FlashMode_t ideMode = ESP.getFlashChipMode();
|
FlashMode_t ideMode = ESP.getFlashChipMode();
|
||||||
Debug_pushMessage("Sdk version: %s", ESP.getSdkVersion());
|
Debug_pushMessage("Sdk version: %s\n", ESP.getSdkVersion());
|
||||||
Debug_pushMessage("Core Version: %s", ESP.getCoreVersion().c_str());
|
Debug_pushMessage("Core Version: %s\n", ESP.getCoreVersion().c_str());
|
||||||
Debug_pushMessage("Boot Version: %u", ESP.getBootVersion());
|
Debug_pushMessage("Boot Version: %u\n", ESP.getBootVersion());
|
||||||
Debug_pushMessage("Boot Mode: %u", ESP.getBootMode());
|
Debug_pushMessage("Boot Mode: %u\n", ESP.getBootMode());
|
||||||
Debug_pushMessage("CPU Frequency: %u MHz", ESP.getCpuFreqMHz());
|
Debug_pushMessage("CPU Frequency: %u MHz\n", ESP.getCpuFreqMHz());
|
||||||
Debug_pushMessage("Reset reason: %s", ESP.getResetReason().c_str());
|
Debug_pushMessage("Reset reason: %s\n", ESP.getResetReason().c_str());
|
||||||
Debug_pushMessage("Flash Size: %d", ESP.getFlashChipRealSize());
|
Debug_pushMessage("Flash Size: %d\n", ESP.getFlashChipRealSize());
|
||||||
Debug_pushMessage("Flash Size IDE: %d", ESP.getFlashChipSize());
|
Debug_pushMessage("Flash Size IDE: %d\n", ESP.getFlashChipSize());
|
||||||
Debug_pushMessage("Flash ide mode: %s", (ideMode == FM_QIO ? "QIO" : ideMode == FM_QOUT ? "QOUT"
|
Debug_pushMessage("Flash ide mode: %s\n", (ideMode == FM_QIO ? "QIO" : ideMode == FM_QOUT ? "QOUT"
|
||||||
: ideMode == FM_DIO ? "DIO"
|
: ideMode == FM_DIO ? "DIO"
|
||||||
: ideMode == FM_DOUT ? "DOUT"
|
: ideMode == FM_DOUT ? "DOUT"
|
||||||
: "UNKNOWN"));
|
: "UNKNOWN"));
|
||||||
Debug_pushMessage("OTA-Pass: %s", QUOTE(ADMIN_PASSWORD));
|
Debug_pushMessage("OTA-Pass: %s\n", QUOTE(ADMIN_PASSWORD));
|
||||||
Debug_pushMessage("Git-Revison: %s", constants.GitHash);
|
Debug_pushMessage("Git-Revison: %s\n", constants.GitHash);
|
||||||
Debug_pushMessage("Sw-Version: %d.%02d", constants.FW_Version_major, constants.FW_Version_minor);
|
Debug_pushMessage("Sw-Version: %d.%02d\n", constants.FW_Version_major, constants.FW_Version_minor);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_dumpConfig()
|
void Debug_dumpConfig()
|
||||||
{
|
{
|
||||||
Debug_pushMessage("DistancePerLube_Default: %d", LubeConfig.DistancePerLube_Default);
|
Debug_pushMessage("DistancePerLube_Default: %d\n", LubeConfig.DistancePerLube_Default);
|
||||||
Debug_pushMessage("DistancePerLube_Rain: %d", LubeConfig.DistancePerLube_Rain);
|
Debug_pushMessage("DistancePerLube_Rain: %d\n", LubeConfig.DistancePerLube_Rain);
|
||||||
Debug_pushMessage("tankCapacity_ml: %d", LubeConfig.tankCapacity_ml);
|
Debug_pushMessage("tankCapacity_ml: %d\n", LubeConfig.tankCapacity_ml);
|
||||||
Debug_pushMessage("amountPerDose_microL: %d", LubeConfig.amountPerDose_microL);
|
Debug_pushMessage("amountPerDose_microL: %d\n", LubeConfig.amountPerDose_microL);
|
||||||
Debug_pushMessage("TankRemindAtPercentage: %d", LubeConfig.TankRemindAtPercentage);
|
Debug_pushMessage("TankRemindAtPercentage: %d\n", LubeConfig.TankRemindAtPercentage);
|
||||||
Debug_pushMessage("PulsePerRevolution: %d", LubeConfig.PulsePerRevolution);
|
Debug_pushMessage("PulsePerRevolution: %d\n", LubeConfig.PulsePerRevolution);
|
||||||
Debug_pushMessage("TireWidth_mm: %d", LubeConfig.TireWidth_mm);
|
Debug_pushMessage("TireWidth_mm: %d\n", LubeConfig.TireWidth_mm);
|
||||||
Debug_pushMessage("TireWidthHeight_Ratio: %d", LubeConfig.TireWidth_mm);
|
Debug_pushMessage("TireWidthHeight_Ratio: %d\n", LubeConfig.TireWidth_mm);
|
||||||
Debug_pushMessage("RimDiameter_Inch: %d", LubeConfig.RimDiameter_Inch);
|
Debug_pushMessage("RimDiameter_Inch: %d\n", LubeConfig.RimDiameter_Inch);
|
||||||
Debug_pushMessage("DistancePerRevolution_mm: %d", LubeConfig.DistancePerRevolution_mm);
|
Debug_pushMessage("DistancePerRevolution_mm: %d\n", LubeConfig.DistancePerRevolution_mm);
|
||||||
Debug_pushMessage("BleedingPulses: %d", LubeConfig.BleedingPulses);
|
Debug_pushMessage("BleedingPulses: %d\n", LubeConfig.BleedingPulses);
|
||||||
Debug_pushMessage("SpeedSource: %d", LubeConfig.SpeedSource);
|
Debug_pushMessage("SpeedSource: %d\n", LubeConfig.SpeedSource);
|
||||||
#ifdef FEATURE_ENABLE_GPS
|
#ifdef FEATURE_ENABLE_GPS
|
||||||
Debug_pushMessage("GPSBaudRate: %d", LubeConfig.GPSBaudRate);
|
Debug_pushMessage("GPSBaudRate: %d\n", LubeConfig.GPSBaudRate);
|
||||||
#endif
|
#endif
|
||||||
#ifdef FEATURE_ENABLE_CAN
|
#ifdef FEATURE_ENABLE_CAN
|
||||||
Debug_pushMessage("CANSource: %d", LubeConfig.CANSource);
|
Debug_pushMessage("CANSource: %d\n", LubeConfig.CANSource);
|
||||||
#endif
|
#endif
|
||||||
Debug_pushMessage("checksum: 0x%08X", LubeConfig.checksum);
|
Debug_pushMessage("checksum: 0x%08X\n", LubeConfig.checksum);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_dumpGlobals()
|
void Debug_dumpGlobals()
|
||||||
{
|
{
|
||||||
Debug_pushMessage("systemStatus: %d", globals.systemStatus);
|
Debug_pushMessage("systemStatus: %d\n", globals.systemStatus);
|
||||||
Debug_pushMessage("resumeStatus: %d", globals.resumeStatus);
|
Debug_pushMessage("resumeStatus: %d\n", globals.resumeStatus);
|
||||||
Debug_pushMessage("systemStatustxt: %s", globals.systemStatustxt);
|
Debug_pushMessage("systemStatustxt: %s\n", globals.systemStatustxt);
|
||||||
Debug_pushMessage("purgePulses: %d", globals.purgePulses);
|
Debug_pushMessage("purgePulses: %d\n", globals.purgePulses);
|
||||||
Debug_pushMessage("requestEEAction: %d", globals.requestEEAction);
|
Debug_pushMessage("requestEEAction: %d\n", globals.requestEEAction);
|
||||||
Debug_pushMessage("DeviceName: %s", globals.DeviceName);
|
Debug_pushMessage("DeviceName: %s\n", globals.DeviceName);
|
||||||
Debug_pushMessage("FlashVersion: %s", globals.FlashVersion);
|
Debug_pushMessage("FlashVersion: %s\n", globals.FlashVersion);
|
||||||
Debug_pushMessage("eePersistanceAdress: %d", globals.eePersistanceAdress);
|
Debug_pushMessage("eePersistanceAdress: %d\n", globals.eePersistanceAdress);
|
||||||
Debug_pushMessage("TankPercentage: %d", globals.TankPercentage);
|
Debug_pushMessage("TankPercentage: %d\n", globals.TankPercentage);
|
||||||
Debug_pushMessage("hasDTC: %d", globals.hasDTC);
|
Debug_pushMessage("hasDTC: %d\n", globals.hasDTC);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_dumpPersistance()
|
void Debug_dumpPersistance()
|
||||||
{
|
{
|
||||||
Debug_pushMessage("writeCycleCounter: %d", PersistenceData.writeCycleCounter);
|
Debug_pushMessage("writeCycleCounter: %d\n", PersistenceData.writeCycleCounter);
|
||||||
Debug_pushMessage("tankRemain_microL: %d", PersistenceData.tankRemain_microL);
|
Debug_pushMessage("tankRemain_microL: %d\n", PersistenceData.tankRemain_microL);
|
||||||
Debug_pushMessage("TravelDistance_highRes_mm: %d", PersistenceData.TravelDistance_highRes_mm);
|
Debug_pushMessage("TravelDistance_highRes_mm: %d\n", PersistenceData.TravelDistance_highRes_mm);
|
||||||
Debug_pushMessage("checksum: %d", PersistenceData.checksum);
|
Debug_pushMessage("checksum: %d\n", PersistenceData.checksum);
|
||||||
Debug_pushMessage("PSD Adress: 0x%04X", globals.eePersistanceAdress);
|
Debug_pushMessage("PSD Adress: 0x%04X\n", globals.eePersistanceAdress);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Debug_printWifiInfo()
|
void Debug_printWifiInfo()
|
||||||
@ -247,7 +323,19 @@ void Debug_ShowDTCs()
|
|||||||
else
|
else
|
||||||
strcpy(buff_active, "none");
|
strcpy(buff_active, "none");
|
||||||
|
|
||||||
Debug_pushMessage("%s \t %6d \t %s \t %d", buff_timestamp, DTCStorage[i].Number, buff_active, DTCStorage[i].severity);
|
Debug_pushMessage("%s \t %6d \t %s \t %d\n", buff_timestamp, DTCStorage[i].Number, buff_active, DTCStorage[i].severity);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Debug_printHelp()
|
||||||
|
{
|
||||||
|
char buff[64];
|
||||||
|
|
||||||
|
for (int i = sizeof(helpCmd) / 63; i < sizeof(helpCmd) / 63; i++)
|
||||||
|
{
|
||||||
|
memcpy_P(buff, (helpCmd + (i * 63)), 63);
|
||||||
|
buff[63] = 0;
|
||||||
|
Debug_pushMessage(buff);
|
||||||
|
}
|
||||||
|
}
|
@ -4,19 +4,19 @@
|
|||||||
#include <Arduino.h>
|
#include <Arduino.h>
|
||||||
#include "webui.h"
|
#include "webui.h"
|
||||||
|
|
||||||
const char helpCmd[] = "sysinfo - System Info\r\n"
|
const char PROGMEM helpCmd[] = "sysinfo - System Info\n"
|
||||||
"netinfo - WiFi Info\r\n"
|
"netinfo - WiFi Info\n"
|
||||||
"formatPDS - Format Persistence EEPROM Data\r\n"
|
"formatPDS - Format Persistence EEPROM Data\n"
|
||||||
"formatCFG - Format Configuration EEPROM Data\r\n"
|
"formatCFG - Format Configuration EEPROM Data\n"
|
||||||
"checkEE - Check EEPROM with checksum\r\n"
|
"checkEE - Check EEPROM with checksum\n"
|
||||||
"dumpEE1k - dump the first 1kb of EEPROM to Serial\r\n"
|
"dumpEE1k - dump the first 1kb of EEPROM to Serial\n"
|
||||||
"dumpEE - dump the whole EPPROM to Serial\r\n"
|
"dumpEE - dump the whole EPPROM to Serial\n"
|
||||||
"resetPageEE - Reset the PersistenceData Page\r\n"
|
"resetPageEE - Reset the PersistenceData Page\n"
|
||||||
"dumpCFG - print Config struct\r\n"
|
"dumpCFG - print Config struct\n"
|
||||||
"dumpPDS - print PersistanceStruct\r\n"
|
"dumpPDS - print PersistanceStruct\n"
|
||||||
"saveEE - save EE-Data\r\n"
|
"saveEE - save EE-Data\n"
|
||||||
"showdtc - Show all DTCs\r\n"
|
"showdtc - Show all DTCs\n"
|
||||||
"dumpGlobals - print globals\r\n";
|
"dumpGlobals - print globals\n";
|
||||||
|
|
||||||
typedef enum DebugStatus_e
|
typedef enum DebugStatus_e
|
||||||
{
|
{
|
||||||
@ -41,5 +41,6 @@ void initDebugger();
|
|||||||
void pushCANDebug(uint32_t id, uint8_t dlc, uint8_t *data);
|
void pushCANDebug(uint32_t id, uint8_t dlc, uint8_t *data);
|
||||||
void Debug_pushMessage(const char *format, ...);
|
void Debug_pushMessage(const char *format, ...);
|
||||||
void SetDebugportStatus(DebugPorts_t port, DebugStatus_t status);
|
void SetDebugportStatus(DebugPorts_t port, DebugStatus_t status);
|
||||||
|
void Debug_Process();
|
||||||
|
|
||||||
#endif
|
#endif
|
@ -198,6 +198,7 @@ void loop()
|
|||||||
EEPROM_Process();
|
EEPROM_Process();
|
||||||
Webserver_Process();
|
Webserver_Process();
|
||||||
DTC_Process();
|
DTC_Process();
|
||||||
|
Debug_Process();
|
||||||
|
|
||||||
ArduinoOTA.handle();
|
ArduinoOTA.handle();
|
||||||
EEPROMCyclicPDSTicker.update();
|
EEPROMCyclicPDSTicker.update();
|
||||||
@ -609,8 +610,9 @@ void SystemShutdown()
|
|||||||
|
|
||||||
uint32_t Process_Impulse_WheelSpeed()
|
uint32_t Process_Impulse_WheelSpeed()
|
||||||
{
|
{
|
||||||
uint32_t add_milimeters;
|
uint32_t add_milimeters = 0;
|
||||||
// Calculate traveled Distance in mm
|
// Calculate traveled Distance in mm
|
||||||
|
if (LubeConfig.PulsePerRevolution != 0)
|
||||||
add_milimeters = (wheel_pulse * (LubeConfig.DistancePerRevolution_mm / LubeConfig.PulsePerRevolution));
|
add_milimeters = (wheel_pulse * (LubeConfig.DistancePerRevolution_mm / LubeConfig.PulsePerRevolution));
|
||||||
|
|
||||||
if (globals.measurementActive == true)
|
if (globals.measurementActive == true)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user