diff --git a/src/hm/hmInverter.h b/src/hm/hmInverter.h index 65f5678b..6f6efe38 100644 --- a/src/hm/hmInverter.h +++ b/src/hm/hmInverter.h @@ -143,10 +143,10 @@ class Inverter { template void enqueCommand(uint8_t cmd) { _commandQueue.push(std::make_shared(cmd)); - DPRINTHEAD(DBG_INFO, id); - //DBGPRINTLN(F("enqueuedCmd: 0x") + String(cmd, HEX)); - DBGPRINT_TXT(TXT_ENQUCMD); - DBGHEXLN(cmd); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(id)); + DBGPRINT(F(") enqueCommand: 0x")); + DHEX(cmd); } void setQueuedCmdFinished() { @@ -157,8 +157,7 @@ class Inverter { } void clearCmdQueue() { - DPRINTHEAD(DBG_INFO, id); - DBGPRINTLN_TXT(TXT_CLRQUE); + DPRINTLN(DBG_INFO, F("clearCmdQueue")); while (!_commandQueue.empty()) { // Will destroy CommandAbstract Class Object (?) _commandQueue.pop(); diff --git a/src/hm/hmPayload.h b/src/hm/hmPayload.h index e653b2ad..7660c46b 100644 --- a/src/hm/hmPayload.h +++ b/src/hm/hmPayload.h @@ -117,13 +117,11 @@ class HmPayload { iv->setQueuedCmdFinished(); // command failed if (mSerialDebug) - DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_TIMEOUT); - //DBGPRINTLN(F("enqueued cmd failed/timeout")); + DPRINTLN(DBG_INFO, F("enqueued cmd failed/timeout")); if (mSerialDebug) { - DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("no Payload received! (retransmits: ")); - DBGPRINT_TXT(TXT_NOPYLD); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(") no Payload received! (retransmits: ")); DBGPRINT(String(mPayload[iv->id].retransmits)); DBGPRINTLN(F(")")); } @@ -136,17 +134,17 @@ class HmPayload { yield(); if (mSerialDebug) { - DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("Requesting Inv SN ")); - DBGPRINT_TXT(TXT_INVSERNO); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(") Requesting Inv SN ")); DBGPRINTLN(String(iv->config->serial.u64, HEX)); } if (iv->getDevControlRequest()) { if (mSerialDebug) { - DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("Devcontrol request 0x")); - DBGPRINT_TXT(TXT_DEVCTRL); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(") Devcontrol request 0x")); DBGPRINT(String(iv->devControlCmd, HEX)); DBGPRINT(F(" power limit ")); DBGPRINTLN(String(iv->powerLimit[0])); @@ -157,9 +155,9 @@ class HmPayload { //iv->enqueCommand(SystemConfigPara); // read back power limit } else { uint8_t cmd = iv->getQueuedCmd(); - DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("prepareDevInformCmd 0x")); - DBGPRINT_TXT(TXT_GDEVINF); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(") prepareDevInformCmd 0x")); DBGPRINTLN(String(cmd, HEX)); mSys->Radio.prepareDevInformCmd(iv->radioId.u64, cmd, mPayload[iv->id].ts, iv->alarmMesIndex, false); mPayload[iv->id].txCmd = cmd; @@ -202,8 +200,9 @@ class HmPayload { mApp->setMqttPowerLimitAck(iv); else ok = false; - DPRINTHEAD(DBG_INFO,iv->id); - DBGPRINT(F("has ")); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(" has ")); if(!ok) DBGPRINT(F("not ")); DBGPRINT(F("accepted power limit set point ")); DBGPRINT(String(iv->powerLimit[0])); @@ -241,14 +240,12 @@ class HmPayload { mPayload[iv->id].retransmits++; if (iv->devControlCmd == Restart || iv->devControlCmd == CleanState_LockAndAlarm) { // This is required to prevent retransmissions without answer. - //DPRINTLN(DBG_INFO, F("Prevent retransmit on Restart / CleanState_LockAndAlarm...")); - DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_PREVSND); + DPRINTLN(DBG_INFO, F("Prevent retransmit on Restart / CleanState_LockAndAlarm...")); mPayload[iv->id].retransmits = mMaxRetrans; } else if(iv->devControlCmd == ActivePowerContr) { - //DPRINTLN(DBG_INFO, F("retransmit power limit")); - DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_RESPLIM); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DPRINTLN(DBG_INFO, F(") retransmit power limit")); mSys->Radio.sendControlPacket(iv->radioId.u64, iv->devControlCmd, iv->powerLimit, true); } else { if(false == mPayload[iv->id].gotFragment) { @@ -258,18 +255,18 @@ class HmPayload { DPRINTLN(DBG_INFO, F("(#") + String(iv->id) + F(") prepareDevInformCmd 0x") + String(mPayload[iv->id].txCmd, HEX)); mSys->Radio.prepareDevInformCmd(iv->radioId.u64, mPayload[iv->id].txCmd, mPayload[iv->id].ts, iv->alarmMesIndex, true); */ - DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_NOPYLD2); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINTLN(F(") nothing received")); mPayload[iv->id].retransmits = mMaxRetrans; } else { for (uint8_t i = 0; i < (mPayload[iv->id].maxPackId - 1); i++) { if (mPayload[iv->id].len[i] == 0) { - DPRINTHEAD(DBG_WARN,iv->id); - DBGPRINT(F("Frame ")); + DPRINT(DBG_WARN, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(") Frame ")); DBGPRINT(String(i + 1)); - //DBGPRINTLN(F(" missing: Request Retransmit")); - DBGPRINT_TXT(TXT_REQRETR); - DBGPRINT(F("\r\n")); + DBGPRINTLN(F(" missing: Request Retransmit")); mSys->Radio.sendCmdPacket(iv->radioId.u64, TX_REQ_INFO, (SINGLE_FRAME + i), true); break; // only request retransmit one frame per loop } @@ -282,29 +279,21 @@ class HmPayload { } else if(!crcPass && pyldComplete) { // crc error on complete Payload if (mPayload[iv->id].retransmits < mMaxRetrans) { mPayload[iv->id].retransmits++; - DPRINTHEAD(DBG_WARN,iv->id); - DBGPRINTLN_TXT(TXT_CRCERR); + DPRINTLN(DBG_WARN, F("CRC Error: Request Complete Retransmit")); mPayload[iv->id].txCmd = iv->getQueuedCmd(); - DPRINTHEAD(DBG_INFO,iv->id); - DBGPRINT_TXT(TXT_GDEVINF); - //DBGPRINTLN(String(mPayload[iv->id].txCmd, HEX)); - DBGHEXLN(mPayload[iv->id].txCmd); + DPRINT(DBG_INFO, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINT(F(") prepareDevInformCmd 0x")); + DHEXLN(mPayload[iv->id].txCmd); mSys->Radio.prepareDevInformCmd(iv->radioId.u64, mPayload[iv->id].txCmd, mPayload[iv->id].ts, iv->alarmMesIndex, true); } } else { // payload complete DPRINT(DBG_INFO, F("procPyld: cmd: 0x")); - //DBGPRINTLN(String(mPayload[iv->id].txCmd, HEX)); - //DPRINT_INIT(DBG_INFO,TXT_PPYDCMD); - DBGHEXLN(mPayload[iv->id].txCmd); + DHEXLN(mPayload[iv->id].txCmd); DPRINT(DBG_INFO, F("procPyld: txid: 0x")); - //DPRINT_INIT(DBG_INFO,TXT_PPYDTXI); - //DBGPRINTLN(String(mPayload[iv->id].txId, HEX)); - DBGHEXLN(mPayload[iv->id].txId); - //DPRINT_INIT(DBG_DEBUG,TXT_PPYDMAX); - //DBGPRINTLN(String(mPayload[iv->id].maxPackId)); - DPRINT(DBG_DEBUG, F("procPyld: max: ") + String(mPayload[iv->id].maxPackId)); - - + DHEXLN(mPayload[iv->id].txId); + DPRINTLN(DBG_DEBUG, F("procPyld: max: ")); + DBGPRINT(String(mPayload[iv->id].maxPackId)); record_t<> *rec = iv->getRecordStruct(mPayload[iv->id].txCmd); // choose the parser mPayload[iv->id].complete = true; @@ -328,7 +317,7 @@ class HmPayload { } if (NULL == rec) { - DPRINTLN_TXT(DBG_ERROR, TXT_NULLREC); + DPRINTLN(DBG_ERROR, F("record is NULL!")); } else if ((rec->pyldLen == payloadLen) || (0 == rec->pyldLen)) { if (mPayload[iv->id].txId == (TX_REQ_INFO + ALL_FRAMES)) mStat->rxSuccess++; @@ -381,8 +370,6 @@ class HmPayload { bool build(uint8_t id, bool *complete) { DPRINTLN(DBG_VERBOSE, F("build")); - //DPRINTLN_TXT(DBG_VERBOSE, TXT_BUILD); - uint16_t crc = 0xffff, crcRcv = 0x0000; if (mPayload[id].maxPackId > MAX_PAYLOAD_ENTRIES) mPayload[id].maxPackId = MAX_PAYLOAD_ENTRIES; @@ -411,8 +398,8 @@ class HmPayload { } void reset(uint8_t id) { - DPRINTHEAD(DBG_INFO,id); - DBGPRINTLN_TXT(TXT_RSTPYLD); + DPRINT(DBG_INFO, "resetPayload: id: "); + DBGPRINTLN(String(id)); memset(mPayload[id].len, 0, MAX_PAYLOAD_ENTRIES); mPayload[id].txCmd = 0; mPayload[id].gotFragment = false; diff --git a/src/hm/miPayload.h b/src/hm/miPayload.h index 61e6b174..c5a6eb9a 100644 --- a/src/hm/miPayload.h +++ b/src/hm/miPayload.h @@ -95,12 +95,10 @@ class MiPayload { iv->setQueuedCmdFinished(); // command failed if (mSerialDebug) DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINTLN(F("enqueued cmd failed/timeout")); - DBGPRINTLN_TXT(TXT_TIMEOUT); + DBGPRINTLN(F("enqueued cmd failed/timeout")); if (mSerialDebug) { DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("no Payload received! (retransmits: ")); - DBGPRINT_TXT(TXT_NOPYLD); + DBGPRINT(F("no Payload received! (retransmits: ")); DBGPRINT(String(mPayload[iv->id].retransmits)); DBGPRINTLN(F(")")); } @@ -114,16 +112,14 @@ class MiPayload { yield(); if (mSerialDebug){ DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("Requesting Inv SN ")); - DBGPRINT_TXT(TXT_INVSERNO); + DBGPRINT(F("Requesting Inv SN ")); DBGPRINTLN(String(iv->config->serial.u64, HEX)); } if (iv->getDevControlRequest()) { if (mSerialDebug) { DPRINTHEAD(DBG_INFO, iv->id); - //DBGPRINT(F("Devcontrol request 0x")); - DBGPRINT_TXT(TXT_DEVCTRL); + DBGPRINT(F("Devcontrol request 0x")); DHEX(iv->devControlCmd); DBGPRINT(F(" power limit ")); DBGPRINTLN(String(iv->powerLimit[0])); @@ -137,8 +133,8 @@ class MiPayload { } else { uint8_t cmd = iv->getQueuedCmd(); DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINT_TXT(TXT_GDEVINF); - DBGHEXLN(cmd); + DBGPRINT(F("prepareDevInformCmd 0x")); + DHEXLN(cmd); uint8_t cmd2 = cmd; if ( cmd == SystemConfigPara ) { //0x05 for HM-types if (!mPayload[iv->id].limitrequested) { // only do once at startup @@ -149,7 +145,7 @@ class MiPayload { } } - if (cmd == 0x1 || cmd == SystemConfigPara ) { //0x1 and 0x05 for HM-types + if (cmd == 0x01 || cmd == SystemConfigPara ) { //0x1 and 0x05 for HM-types cmd = 0x0f; // for MI, these seem to make part of the Polling the device software and hardware version number command cmd2 = cmd == SystemConfigPara ? 0x01 : 0x00; //perhaps we can only try to get second frame? mSys->Radio.sendCmdPacket(iv->radioId.u64, cmd, cmd2, false); @@ -270,20 +266,19 @@ const byteAssign_t InfoAssignment[] = { } } else if ( p->packet[0] == (TX_REQ_INFO + ALL_FRAMES) // response from get information command - || p->packet[0] == 0xB6 && mPayload[iv->id].txCmd != 0x36) { // strange short response from MI-1500 3rd gen; might be missleading! + || (p->packet[0] == 0xB6 && mPayload[iv->id].txCmd != 0x36)) { // strange short response from MI-1500 3rd gen; might be missleading! // atm, we just do nothing else than print out what we got... // for decoding see xls- Data collection instructions - #147ff //mPayload[iv->id].txId = p->packet[0]; - //DPRINTLN(DBG_DEBUG, F("Response from info request received")); - DBGPRINTLN_TXT(TXT_RXDIREQ); + DPRINTLN(DBG_DEBUG, F("Response from info request received")); uint8_t *pid = &p->packet[9]; if (*pid == 0x00) { - //DPRINT(DBG_DEBUG, F("fragment number zero received")); - DBGPRINTLN_TXT(TXT_FRAGM0); + DPRINT(DBG_DEBUG, F("fragment number zero received")); iv->setQueuedCmdFinished(); } else if (p->packet[9] == 0x81) { // might need some additional check, as this is only ment for short answers! - DPRINTHEAD(DBG_WARN, iv->id); - DBGPRINTLN_TXT(TXT_NO2NDG); + DPRINT(DBG_WARN, F("(#")); + DBGPRINT(String(iv->id)); + DBGPRINTLN(F(") seems to use 3rd gen. protocol - switching ivGen!")); iv->ivGen = IV_HM; iv->setQueuedCmdFinished(); iv->clearCmdQueue(); @@ -307,8 +302,7 @@ const byteAssign_t InfoAssignment[] = { } else if (p->packet[0] == (TX_REQ_DEVCONTROL + ALL_FRAMES ) // response from dev control command || p->packet[0] == (TX_REQ_DEVCONTROL + ALL_FRAMES -1)) { // response from DRED instruction DPRINTHEAD(DBG_DEBUG, iv->id); - DBGPRINTLN_TXT(TXT_RXCTRREQ); - //DBGPRINTLN(F("Response from devcontrol request received")); + DBGPRINTLN(F("Response from devcontrol request received")); mPayload[iv->id].txId = p->packet[0]; iv->clearDevControlRequest(); @@ -326,14 +320,12 @@ const byteAssign_t InfoAssignment[] = { } iv->devControlCmd = Init; } else { // some other response; copied from hmPayload:process; might not be correct to do that here!!! - //DPRINTLN(DBG_INFO, F("procPyld: cmd: 0x") + String(mPayload[iv->id].txCmd, HEX)); - //DPRINTLN(DBG_INFO, F("procPyld: txid: 0x") + String(mPayload[iv->id].txId, HEX)); - //DPRINTLN(DBG_DEBUG, F("procPyld: max: ") + String(mPayload[iv->id].maxPackId)); - DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINT_TXT(TXT_PPYDCMD); - DBGHEXLN(mPayload[iv->id].txCmd); - DBGPRINT_TXT(TXT_PPYDTXI); - DBGHEXLN(mPayload[iv->id].txId); + DPRINT(DBG_INFO, F("procPyld: cmd: 0x")); + DHEXLN(mPayload[iv->id].txCmd); + DPRINT(DBG_INFO, F("procPyld: txid: 0x")); + DHEXLN(mPayload[iv->id].txId); + //DPRINT(DBG_DEBUG, F("procPyld: max: ")); + //DBGPRINTLN(String(mPayload[iv->id].maxPackId)); record_t<> *rec = iv->getRecordStruct(mPayload[iv->id].txCmd); // choose the parser mPayload[iv->id].complete = true; @@ -355,7 +347,7 @@ const byteAssign_t InfoAssignment[] = { } if (NULL == rec) { - DPRINTLN_TXT(DBG_ERROR, TXT_NULLREC); + DPRINTLN(DBG_ERROR, F("record is NULL!")); } else if ((rec->pyldLen == payloadLen) || (0 == rec->pyldLen)) { if (mPayload[iv->id].txId == (TX_REQ_INFO + ALL_FRAMES)) mStat->rxSuccess++; @@ -429,11 +421,11 @@ const byteAssign_t InfoAssignment[] = { if (iv->devControlCmd == Restart || iv->devControlCmd == CleanState_LockAndAlarm) { // This is required to prevent retransmissions without answer. DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_PREVSND); + DBGPRINTLN(F("Prevent retransmit on Restart / CleanState_LockAndAlarm...")); mPayload[iv->id].retransmits = mMaxRetrans; } else if(iv->devControlCmd == ActivePowerContr) { DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_RESPLIM); + DBGPRINTLN(F("retransmit power limit")); mSys->Radio.sendControlPacket(iv->radioId.u64, iv->devControlCmd, iv->powerLimit, true, false); } else { uint8_t cmd = mPayload[iv->id].txCmd; @@ -441,7 +433,7 @@ const byteAssign_t InfoAssignment[] = { mPayload[iv->id].retransmits++; if( !mPayload[iv->id].gotFragment ) { DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINTLN_TXT(TXT_NOPYLD2); + DBGPRINTLN(F("nothing received")); mPayload[iv->id].retransmits = mMaxRetrans; } else if ( cmd == 0x0f ) { //hard/firmware request @@ -477,11 +469,10 @@ const byteAssign_t InfoAssignment[] = { //mPayload[iv->id].skipfirstrepeat = 0; } else { DBGPRINT(F("sth.")); - DBGPRINT_TXT(TXT_REQRETR); + DBGPRINT(F(" missing: Request Retransmit")); } - //DBGPRINTLN(String(cmd, HEX)); DBGPRINT(F(" 0x")); - DBGHEXLN(cmd); + DHEXLN(cmd); //mSys->Radio.sendCmdPacket(iv->radioId.u64, cmd, cmd, true); mSys->Radio.prepareDevInformCmd(iv->radioId.u64, cmd, mPayload[iv->id].ts, iv->alarmMesIndex, true, cmd); mPayload[iv->id].txCmd = cmd; @@ -494,14 +485,12 @@ const byteAssign_t InfoAssignment[] = { if (mPayload[iv->id].retransmits < mMaxRetrans) { mPayload[iv->id].retransmits++; DPRINTHEAD(DBG_WARN, iv->id); - DBGPRINTLN_TXT(TXT_CRCERR); - //DBGPRINTLN(F("CRC Error: Request Complete Retransmit")); + DBGPRINTLN(F("CRC Error: Request Complete Retransmit")); mPayload[iv->id].txCmd = iv->getQueuedCmd(); DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINT_TXT(TXT_GDEVINF); - //DBGPRINTLN(F("prepareDevInformCmd 0x") + String(mPayload[iv->id].txCmd, HEX)); - DBGPRINTLN(String(mPayload[iv->id].txCmd, HEX)); + DBGPRINT(F("prepareDevInformCmd 0x")); + DHEXLN(mPayload[iv->id].txCmd); mSys->Radio.prepareDevInformCmd(iv->radioId.u64, mPayload[iv->id].txCmd, mPayload[iv->id].ts, iv->alarmMesIndex, true); } } @@ -617,7 +606,7 @@ const byteAssign_t InfoAssignment[] = { iv->alarmMesIndex = rec->record[iv->getPosByChFld(0, FLD_EVT, rec)]; // seems there's no status per channel in 3rd gen. models?!? DPRINTHEAD(DBG_INFO, iv->id); - DBGPRINT_TXT(TXT_INCRALM); + DBGPRINT(F("alarm ID incremented to ")); DBGPRINTLN(String(iv->alarmMesIndex)); } /*if(AlarmData == mPayload[iv->id].txCmd) { @@ -796,7 +785,7 @@ const byteAssign_t InfoAssignment[] = { void reset(uint8_t id, bool clrSts = false) { DPRINTHEAD(DBG_INFO, id); - DBGPRINTLN_TXT(TXT_RSTPYLD); + DBGPRINTLN(F("resetPayload")); memset(mPayload[id].len, 0, MAX_PAYLOAD_ENTRIES); mPayload[id].gotFragment = false; /*mPayload[id].maxPackId = MAX_PAYLOAD_ENTRIES; diff --git a/src/utils/dbg.h b/src/utils/dbg.h index eee9c7c9..cae96447 100644 --- a/src/utils/dbg.h +++ b/src/utils/dbg.h @@ -61,7 +61,7 @@ } } - inline void DBGHEXLN(uint8_t b) { + inline void DHEXLN(uint8_t b) { DHEX(b); DBGPRINT(F("\r\n")); } @@ -151,16 +151,6 @@ }\ }) -#define DPRINT_INIT(level,text) ({\ - DPRINT(level,F(""));\ - DBGPRINT_TXT(text);\ -}) - -#define DPRINTLN_TXT(level,text) ({\ - DPRINT(level,F(""));\ - DBGPRINTLN_TXT(text);\ -}) - #define DPRINTHEAD(level, id) ({\ DPRINT(level, F("(#")); DBGPRINT(String(id)); DBGPRINT(F(") "));\ }) @@ -176,84 +166,6 @@ }) -// available text variables -#define TXT_ENQUCMD 6 -#define TXT_INVSERNO 2 -#define TXT_REQRETR 7 -#define TXT_PPYDMAX 10 -#define TXT_NOPYLD 1 -#define TXT_GDEVINF 3 -#define TXT_DEVCTRL 4 -#define TXT_INCRALM 5 -#define TXT_PPYDCMD 8 -#define TXT_PPYDTXI 9 - - -/* DBGPRINT(F(" power limit ")); -DPRINTLN(DBG_DEBUG, F("Response from info request received")); - -DBGPRINTLN(F("Response from devcontrol request received")); - DBGPRINT(F("has accepted power limit set point ")); - DBGPRINT(F(" with PowerLimitControl ")); - DPRINT(DBG_INFO, F("Payload (") + String(payloadLen) + "): "); - DPRINTLN(DBG_ERROR, F("plausibility check failed, expected ") + String(rec->pyldLen) + F(" bytes")); - - DPRINTLN(DBG_VERBOSE, F("incomlete, txCmd is 0x") + String(txCmd, HEX)); // + F("cmd is 0x") + String(cmd, HEX)); -*/ - - - -#define DBGPRINT_TXT(text) ({\ - switch(text) {\ - case TXT_NOPYLD: DBGPRINT(F("no Payload received! (retransmits: ")); break; \ - case TXT_INVSERNO: DBGPRINT(F("Requesting Inv SN ")); break; \ - case TXT_GDEVINF: DBGPRINT(F("prepareDevInformCmd 0x")); break; \ - case TXT_DEVCTRL: DBGPRINT(F("Devcontrol request 0x")); break; \ - case TXT_INCRALM: DBGPRINT(F("alarm ID incremented to ")); break; \ - case TXT_ENQUCMD: DBGPRINT(F("enqueuedCmd: 0x")); break; \ - case TXT_REQRETR: DBGPRINT(F(" missing: Request Retransmit")); break; \ - case TXT_PPYDCMD: DBGPRINT(F("procPyld: cmd: 0x")); break; \ - case TXT_PPYDTXI: DBGPRINT(F("procPyld: txid: 0x")); break; \ - case TXT_PPYDMAX: DBGPRINT(F("procPyld: max: ")); break; \ - default: ; break; \ - }\ -}) - - -// available text variables w. lf -#define TXT_BUILD 1 -#define TXT_TIMEOUT 2 -#define TXT_NOPYLD2 3 -#define TXT_CRCERR 4 -#define TXT_RSTPYLD 5 -#define TXT_RXDIREQ 6 -#define TXT_CLRQUE 7 -#define TXT_RXCTRREQ 8 -#define TXT_NULLREC 9 -#define TXT_PREVSND 10 -#define TXT_RESPLIM 11 -#define TXT_FRAGM0 20 -#define TXT_NO2NDG 100 - -#define DBGPRINTLN_TXT(text) ({\ - switch(text) {\ - case TXT_TIMEOUT: DBGPRINTLN(F("enqueued cmd failed/timeout")); break; \ - case TXT_BUILD: DBGPRINTLN(F("build")); break; \ - case TXT_NOPYLD2: DBGPRINTLN(F("nothing received")); break; \ - case TXT_CRCERR: DBGPRINTLN(F("CRC Error: Request Complete Retransmit")); break; \ - case TXT_RSTPYLD: DBGPRINTLN(F("resetPayload"));break; \ - case TXT_RXDIREQ: DBGPRINTLN(F("Response from info request received")); break; \ - case TXT_CLRQUE: DBGPRINTLN(F("clearCmdQueue")); break; \ - case TXT_RXCTRREQ: DBGPRINTLN(F("Response from devcontrol request received")); break; \ - case TXT_NULLREC: DBGPRINTLN(F("record is NULL!")); break; \ - case TXT_PREVSND: DBGPRINTLN(F("Prevent retransmit on Restart / CleanState_LockAndAlarm...")); break; \ - case TXT_RESPLIM: DBGPRINTLN(F("retransmit power limit")); break; \ - case TXT_FRAGM0: DBGPRINTLN(F("fragment number zero received")); break; \ - case TXT_NO2NDG: DBGPRINTLN(F("seems to use 3rd gen. protocol - switching ivGen!")); break; \ - default: ; break; \ - }\ -}) - /*class ahoyLog { public: ahoyLog() {}