Browse Source

0.8.30

* merge PR #1293
* merge PR #1295 fix ESP8266 pin settings
pull/1298/head
lumapu 1 year ago
parent
commit
9c074b9814
  1. 2
      src/CHANGES.md
  2. 26
      src/hm/Communication.h
  3. 2
      src/hm/hmRadio.h
  4. 6
      src/web/html/setup.html

2
src/CHANGES.md

@ -2,6 +2,8 @@
## 0.8.30 - 2023-12-28
* added info if grid profile was not found
* merge PR #1293
* merge PR #1295 fix ESP8266 pin settings
## 0.8.29 - 2023-12-27
* fix MqTT generic topic `comm_disabled` #1265 #1286

26
src/hm/Communication.h

@ -59,7 +59,7 @@ class Communication : public CommQueue<> {
mLastEmptyQueueMillis = millis();
mPrintSequenceDuration = true;
uint16_t timeout = (q->iv->ivGen == IV_MI) ? MI_TIMEOUT : (((q->iv->mGotFragment && q->iv->mGotLastMsg) || mIsRetransmit) ? SINGLEFR_TIMEOUT : ((q->cmd != AlarmData) && q->cmd != GridOnProFilePara ? DEFAULT_TIMEOUT : (1.5 * DEFAULT_TIMEOUT)));
uint16_t timeout = (q->iv->ivGen == IV_MI) ? MI_TIMEOUT : (((q->iv->mGotFragment && q->iv->mGotLastMsg) || mIsRetransmit) ? SINGLEFR_TIMEOUT : ((q->cmd != AlarmData) && (q->cmd != GridOnProFilePara) ? DEFAULT_TIMEOUT : (1.5 * DEFAULT_TIMEOUT)));
uint16_t timeout_min = (q->iv->ivGen == IV_MI) ? MI_TIMEOUT : ((q->iv->mGotFragment || mIsRetransmit)) ? SINGLEFR_TIMEOUT : FRSTMSG_TIMEOUT;
/*if(mDebugState != mState) {
@ -113,35 +113,13 @@ class Communication : public CommQueue<> {
mIsRetransmit = false;
mlastTO_min = timeout_min;
setAttempt();
if(q->cmd == AlarmData || q->cmd == GridOnProFilePara)
if((q->cmd == AlarmData) || (q->cmd == GridOnProFilePara))
incrAttempt(q->cmd == AlarmData? 5 : 3);
mState = States::WAIT;
break;
case States::WAIT:
/*if(millis() > mWaitTimeout_min) {
if(mIsRetransmit) { // we already have been through...
mWaitTimeout = mWaitTimeout_min;
} else if(q->iv->mGotFragment) { // nothing received yet?
if(q->iv->mGotLastMsg) {
//mState = States::CHECK_FRAMES;
mWaitTimeout = mWaitTimeout_min;
}
} else if(mFirstTry) {
if(*mSerialDebug) {
DPRINT_IVID(DBG_INFO, q->iv->id);
DBGPRINT(String(millis() - mWaitTimeout_min + mlastTO_min));
DBGPRINTLN(F("ms - second try"));
}
mFirstTry = false;
mlastTO_min = timeout_min;
q->iv->radioStatistics.retransmits++; // got nothing
mState = States::START;
break;
}
}*/
if(millis() < mWaitTimeout)
return;
mState = States::CHECK_FRAMES;

2
src/hm/hmRadio.h

@ -124,7 +124,7 @@ class HmRadio : public Radio {
uint32_t outerLoopTimeout = (mLastIv->mIsSingleframeReq) ? 100 : ((mLastIv->mCmd != AlarmData) && (mLastIv->mCmd != GridOnProFilePara)) ? 400 : 600;
while ((millis() - loopMillis) < outerLoopTimeout) {
uint32_t startMicros = micros();
startMicros = micros();
while ((micros() - startMicros) < 5110) { // listen (4088us or?) 5110us to each channel
if (mIrqRcvd) {
mIrqRcvd = false;

6
src/web/html/setup.html

@ -900,7 +900,7 @@
var pinList = esp8266pins;
/*IF_ESP32*/
var pinList = esp32pins;
if ("ESP32-S3" == system["chip_model"]) pinList = esp32s3pins;
if ("ESP32-S3" == system.chip_model) pinList = esp32s3pins;
else if("ESP32-C3" == system["chip_model"]) pinList = esp32c3pins;
/*ENDIF_ESP32*/
pins = [['led0', 'pinLed0', 'At least one inverter is producing'], ['led1', 'pinLed1', 'MqTT connected']];
@ -932,7 +932,7 @@
var pinList = esp8266pins;
/*IF_ESP32*/
var pinList = esp32pins;
if ("ESP32-S3" == system["chip_model"]) pinList = esp32s3pins;
if ("ESP32-S3" == system.chip_model) pinList = esp32s3pins;
else if("ESP32-C3" == system["chip_model"]) pinList = esp32c3pins;
/*ENDIF_ESP32*/
@ -999,7 +999,7 @@
var pinList = esp8266pins;
/*IF_ESP32*/
var pinList = esp32pins;
if ("ESP32-S3" == system["chip_model"]) pinList = esp32s3pins;
if ("ESP32-S3" == system.chip_model) pinList = esp32s3pins;
else if("ESP32-C3" == system["chip_model"]) pinList = esp32c3pins;
/*ENDIF_ESP32*/

Loading…
Cancel
Save