fix example config, cpp errors, tested with voltronic 5000 and qpiri 102

This commit is contained in:
Raphael Pertl
2020-02-22 23:04:00 +01:00
parent 35a09bb538
commit b39eeb52eb
4 changed files with 9 additions and 5 deletions
+4
View File
@@ -21,3 +21,7 @@ amperage_factor=1.0
# This allos you to modify the wattage in case the inverter is giving an incorrect # This allos you to modify the wattage in case the inverter is giving an incorrect
# reading compared to measurement tools. Normally this will remain '1' # reading compared to measurement tools. Normally this will remain '1'
watt_factor=1.01 watt_factor=1.01
# This allows you to modify the buffersize for the qpiri command
# as mentioned in https://github.com/ned-kelly/docker-voltronic-homeassistant/issues/5
qpiri=97
+3 -1
View File
@@ -9,12 +9,13 @@
#include <fcntl.h> #include <fcntl.h>
#include <termios.h> #include <termios.h>
cInverter::cInverter(std::string devicename) { cInverter::cInverter(std::string devicename, int qpiri) {
device = devicename; device = devicename;
status1[0] = 0; status1[0] = 0;
status2[0] = 0; status2[0] = 0;
warnings[0] = 0; warnings[0] = 0;
mode = 0; mode = 0;
qpiri = qpiri;
} }
string *cInverter::GetQpigsStatus() { string *cInverter::GetQpigsStatus() {
@@ -153,6 +154,7 @@ bool cInverter::query(const char *cmd, int replysize) {
void cInverter::poll() { void cInverter::poll() {
int n,j; int n,j;
extern const int qpiri;
while (true) { while (true) {
+1 -3
View File
@@ -23,7 +23,7 @@ class cInverter {
uint16_t cal_crc_half(uint8_t *pin, uint8_t len); uint16_t cal_crc_half(uint8_t *pin, uint8_t len);
public: public:
cInverter(std::string devicename); cInverter(std::string devicename, int qpiri);
void poll(); void poll();
void runMultiThread() { void runMultiThread() {
std::thread t1(&cInverter::poll, this); std::thread t1(&cInverter::poll, this);
@@ -34,8 +34,6 @@ class cInverter {
string *GetQpigsStatus(); string *GetQpigsStatus();
string *GetWarnings(); string *GetWarnings();
int qpiri;
int GetMode(); int GetMode();
void ExecuteCmd(const std::string cmd); void ExecuteCmd(const std::string cmd);
}; };
+1 -1
View File
@@ -174,7 +174,7 @@ int main(int argc, char* argv[]) {
} }
bool ups_status_changed(false); bool ups_status_changed(false);
ups = new cInverter(devicename); ups = new cInverter(devicename,qpiri);
// Logic to send 'raw commands' to the inverter.. // Logic to send 'raw commands' to the inverter..
if (!rawcmd.empty()) { if (!rawcmd.empty()) {