mirror of
https://github.com/lumapu/ahoy.git
synced 2025-05-10 23:46:37 +02:00
bugfix pointer to power limit
This commit is contained in:
parent
ef520b65ec
commit
03879d6aed
2 changed files with 10 additions and 9 deletions
|
@ -22,7 +22,7 @@
|
|||
//
|
||||
// #define __MQTT_TEST__ // MQTT Interval wird auf 10 Sekunden verkürzt ( nur für testzwecke )
|
||||
#define __MQTT_AFTER_RX__ // versendet die MQTT Daten sobald die WR daten Aufbereitet wurden ( gehört eigentlich ins Setup )
|
||||
// #define __MQTT_NO_DISCOVERCONFIG__ // das versenden der MQTTDiscoveryConfig abschalten ( gehört eigentlich ins Setup )
|
||||
#define __MQTT_NO_DISCOVERCONFIG__ // das versenden der MQTTDiscoveryConfig abschalten ( gehört eigentlich ins Setup )
|
||||
|
||||
typedef CircularBuffer<packet_t, PACKET_BUFFER_SIZE> BufferType;
|
||||
typedef HmRadio<RF24_CE_PIN, RF24_CS_PIN, RF24_IRQ_PIN, BufferType> RadioType;
|
||||
|
|
|
@ -172,16 +172,17 @@ class HmRadio {
|
|||
// 4 bytes control data
|
||||
// Power Limit fix point 10 eg. 30 W --> 0d300 = 0x012c
|
||||
// -1 = 0xffff --> no limit
|
||||
if (data[0] == 0xffff){
|
||||
data[0] &= 0xffff; // ToDo: unlimit value is needed and is inverter specific! --> get it via RF from inverter or via user interface
|
||||
uint16_t powerLimit = data[0];
|
||||
uint16_t powerLimitSetting = data[1];
|
||||
if (powerLimit == 0xffff){
|
||||
powerLimit &= 0xffff; // ToDo: unlimit value is needed and is inverter specific! --> get it via RF from inverter or via user interface
|
||||
} else {
|
||||
data[0] *= 10; // will overwrite the data bc it is a pointer
|
||||
powerLimit *= 10; // will overwrite the data bc it is a pointer
|
||||
}
|
||||
mTxBuf[10 + (++cnt)] = (data[0] >> 8) & 0xff; // power limit
|
||||
mTxBuf[10 + (++cnt)] = (data[0] ) & 0xff; // power limit
|
||||
mTxBuf[10 + (++cnt)] = (data[1] >> 8) & 0xff; // setting for persistens handling
|
||||
mTxBuf[10 + (++cnt)] = (data[1] ) & 0xff; // setting for persistens handling
|
||||
data[0] /= 10; // UGLY!
|
||||
mTxBuf[10 + (++cnt)] = (powerLimit >> 8) & 0xff; // power limit
|
||||
mTxBuf[10 + (++cnt)] = (powerLimit ) & 0xff; // power limit
|
||||
mTxBuf[10 + (++cnt)] = (powerLimitSetting >> 8) & 0xff; // setting for persistens handling
|
||||
mTxBuf[10 + (++cnt)] = (powerLimitSetting ) & 0xff; // setting for persistens handling
|
||||
}
|
||||
// crc control data
|
||||
uint16_t crc = crc16(&mTxBuf[10], cnt+1);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue