mem debugging

This commit is contained in:
Paul
2019-11-12 08:50:31 +01:00
parent 3cfa188f5e
commit cb09041279
3 changed files with 18 additions and 11 deletions

View File

@@ -3,7 +3,8 @@
; ;
[platformio] [platformio]
default_envs = release ;default_envs = release
default_envs = debug
[common] [common]
; custom build options are: ; custom build options are:
@@ -15,7 +16,8 @@ default_envs = release
custom_flags = custom_flags =
;general_flags = -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH -DVTABLES_IN_FLASH ;general_flags = -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH -DVTABLES_IN_FLASH
general_flags = -fno-exceptions -lstdc++ -DNO_GLOBAL_EEPROM -O2 -DBEARSSL_SSL_BASIC ;general_flags = -fno-exceptions -lstdc++ -DNO_GLOBAL_EEPROM -O2 -DBEARSSL_SSL_BASIC
general_flags =
[env] [env]
framework = arduino framework = arduino
@@ -42,6 +44,9 @@ monitor_speed = 115200
upload_protocol = espota upload_protocol = espota
upload_port = ems-esp.local upload_port = ems-esp.local
# These following targets are used by TravisCI to build the firmware versions on Release
# Do not modify
[env:travis] [env:travis]
board = esp12e board = esp12e
build_flags = ${common.general_flags} build_flags = ${common.general_flags}
@@ -67,6 +72,8 @@ board = nodemcu
build_flags = ${common.general_flags} build_flags = ${common.general_flags}
extra_scripts = scripts/main_script.py extra_scripts = scripts/main_script.py
# These two targets (release and debug) can be modified
[env:debug] [env:debug]
board = d1_mini board = d1_mini
build_type = debug build_type = debug

View File

@@ -709,18 +709,19 @@ void _createValidate() {
new_EMS_TxTelegram.action = EMS_TX_TELEGRAM_VALIDATE; new_EMS_TxTelegram.action = EMS_TX_TELEGRAM_VALIDATE;
// copy old Write record // copy old Write record
new_EMS_TxTelegram.type_validate = EMS_TxTelegram.type; // save the original type in the type_validate, increase we need to re-try new_EMS_TxTelegram.type_validate = EMS_TxTelegram.type; // save the original type in the type_validate, increase we need to re-try
new_EMS_TxTelegram.type = EMS_TxTelegram.type_validate; // new type is the validate type new_EMS_TxTelegram.type = EMS_TxTelegram.type_validate; // new type is the validate type
new_EMS_TxTelegram.dest = EMS_TxTelegram.dest; new_EMS_TxTelegram.dest = EMS_TxTelegram.dest;
new_EMS_TxTelegram.comparisonValue = EMS_TxTelegram.comparisonValue; new_EMS_TxTelegram.comparisonValue = EMS_TxTelegram.comparisonValue;
new_EMS_TxTelegram.comparisonPostRead = EMS_TxTelegram.comparisonPostRead; new_EMS_TxTelegram.comparisonPostRead = EMS_TxTelegram.comparisonPostRead;
new_EMS_TxTelegram.comparisonOffset = EMS_TxTelegram.comparisonOffset; new_EMS_TxTelegram.comparisonOffset = EMS_TxTelegram.comparisonOffset;
new_EMS_TxTelegram.forceRefresh = EMS_TxTelegram.forceRefresh;
// this is what is different // this is what is different
new_EMS_TxTelegram.offset = EMS_TxTelegram.comparisonOffset; // location of byte to fetch new_EMS_TxTelegram.offset = EMS_TxTelegram.comparisonOffset; // location of byte to fetch
new_EMS_TxTelegram.dataValue = 1; // fetch single byte new_EMS_TxTelegram.dataValue = 1; // fetch single byte
new_EMS_TxTelegram.length = EMS_MIN_TELEGRAM_LENGTH; // is always 6 bytes long (including CRC at end) new_EMS_TxTelegram.length = EMS_MIN_TELEGRAM_LENGTH; // is always 6 bytes long (including CRC at end)
new_EMS_TxTelegram.timestamp = millis();
// remove old telegram from queue and add this new read one // remove old telegram from queue and add this new read one
EMS_TxQueue.shift(); // remove from queue EMS_TxQueue.shift(); // remove from queue

View File

@@ -247,19 +247,18 @@ const _EMS_Device_Types EMS_Devices_Types[] = {
// for storing all recognised EMS devices // for storing all recognised EMS devices
typedef struct { typedef struct {
_EMS_DEVICE_TYPE device_type; // type _EMS_DEVICE_TYPE device_type; // type
uint8_t product_id; // product id for looking up details in _EMS_Devices uint8_t product_id; // product id for looking up details in EMS_Devices
uint8_t device_id; // the device_id uint8_t device_id; // the device_id
uint8_t device_index; // where it is in the EMS_Devices table uint8_t device_index; // where it is in the EMS_Devices table
char version[10]; // the version number XX.XX char version[10]; // the version number XX.XX
bool known; // is this a known device? bool known; // is this a known device?
} _Detected_Device; } _Detected_Device;
#define EMS_DEVICE_FLAG_NONE 0 // no flags set #define EMS_DEVICE_FLAG_NONE 0 // no flags set
#define EMS_DEVICE_FLAG_SM10 10 // solar module1
#define EMS_DEVICE_FLAG_SM100 11 // solar module2
#define EMS_DEVICE_FLAG_SM10 10 // group flags specific for thermostats
#define EMS_DEVICE_FLAG_SM100 11
// group flags for thermostats
#define EMS_DEVICE_FLAG_NO_WRITE 0x80 // top bit set if can't write yet #define EMS_DEVICE_FLAG_NO_WRITE 0x80 // top bit set if can't write yet
#define EMS_DEVICE_FLAG_EASY 1 #define EMS_DEVICE_FLAG_EASY 1
#define EMS_DEVICE_FLAG_RC10 2 #define EMS_DEVICE_FLAG_RC10 2