mirror of
https://github.com/lumapu/ahoy.git
synced 2025-07-23 11:17:11 +02:00
set radio pointer to inverter
This commit is contained in:
parent
9b22b1017a
commit
dcd5d5a72b
2 changed files with 9 additions and 3 deletions
|
@ -60,9 +60,13 @@ void app::setup() {
|
||||||
#endif /* defined(ETHERNET) */
|
#endif /* defined(ETHERNET) */
|
||||||
|
|
||||||
mSys.setup(&mTimestamp, &mConfig->inst);
|
mSys.setup(&mTimestamp, &mConfig->inst);
|
||||||
Inverter<> *iv;
|
|
||||||
for (uint8_t i = 0; i < MAX_NUM_INVERTERS; i++) {
|
for (uint8_t i = 0; i < MAX_NUM_INVERTERS; i++) {
|
||||||
mSys.addInverter(i);
|
mSys.addInverter(i, [this](Inverter<> *iv) {
|
||||||
|
if((IV_MI == iv->ivGen) || (IV_HM == iv->ivGen))
|
||||||
|
iv->radio = &mNrfRadio;
|
||||||
|
else if((IV_HMS == iv->ivGen) || (IV_HMT == iv->ivGen))
|
||||||
|
iv->radio = &mCmtRadio;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
if (mConfig->nrf.enabled) {
|
if (mConfig->nrf.enabled) {
|
||||||
mPayload.setup(this, &mSys, &mNrfRadio, &mNrfStat, mConfig->nrf.maxRetransPerPyld, &mTimestamp);
|
mPayload.setup(this, &mSys, &mNrfRadio, &mNrfStat, mConfig->nrf.maxRetransPerPyld, &mTimestamp);
|
||||||
|
|
|
@ -20,7 +20,7 @@ class HmSystem {
|
||||||
mNumInv = 0;
|
mNumInv = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void addInverter(uint8_t id) {
|
void addInverter(uint8_t id, std::function<void(Inverter<> *iv)> cb) {
|
||||||
DPRINTLN(DBG_VERBOSE, F("hmSystem.h:addInverter"));
|
DPRINTLN(DBG_VERBOSE, F("hmSystem.h:addInverter"));
|
||||||
if(MAX_INVERTER <= mNumInv) {
|
if(MAX_INVERTER <= mNumInv) {
|
||||||
DPRINT(DBG_WARN, F("max number of inverters reached!"));
|
DPRINT(DBG_WARN, F("max number of inverters reached!"));
|
||||||
|
@ -89,6 +89,8 @@ class HmSystem {
|
||||||
|
|
||||||
if((iv->config->serial.b[5] == 0x10) && ((iv->config->serial.b[4] & 0x03) == 0x01))
|
if((iv->config->serial.b[5] == 0x10) && ((iv->config->serial.b[4] & 0x03) == 0x01))
|
||||||
DPRINTLN(DBG_WARN, F("MI Inverter are not fully supported now!!!"));
|
DPRINTLN(DBG_WARN, F("MI Inverter are not fully supported now!!!"));
|
||||||
|
|
||||||
|
cb(iv);
|
||||||
}
|
}
|
||||||
|
|
||||||
INVERTERTYPE *findInverter(uint8_t buf[]) {
|
INVERTERTYPE *findInverter(uint8_t buf[]) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue