rasProject_01 / weSweetHome
R. 240
process control / RasPi software by weinert-automation
|
A CGI program for a Growatt PV inverter. More...
#include "sysBasic.h"
#include "arch/config.h"
#include "growattHome.h"
#include "weCGIajax.h"
#include "weModbus.h"
#include <fcntl.h>
Functions | |
int | main (int argc, char **argv) |
The program. More... | |
Variables | |
char const | prgNamPure [] |
The pure program name. More... | |
char const | prgSVNdat [] |
The complete SVN date string. More... | |
char const | prgSVNrev [] |
The complete SVN revision string. More... | |
A CGI program for a Growatt PV inverter.
Revision history
This program gets values from a Growatt PV inverter via a serial Modbus link.
GCI server functions
This program's output (i.e. AJAX answer) are physical readings, status values and times as JSON object, leaving selection of values and their display to the HTML page respectively its Javascript code.
In the JSON object's text delivered all numerical values (int, float) are put as strings in appropriate form and precision. The rationale is to avoid auto parsing of data, all or most of which will probably be formatted (back to text) to be put in the web page. And, alas, formatting is not Javascript's strong point, while parsing a string to a number would not be a problem, if a number is needed.
This beta version is fixed to: 9600 baud slave 1 and 1 inverter with 1 panel, 0 batteries and 1 AC-power line. All read values are put in one "reads:"[] array. This will have to be more structured (c.f. meteRead.c) in future.
GCI back-link – command by query
Not implemented yet.
Library usage
The program uses the library (lib...): pthread modbus
cross-compile by:
program by:
int main | ( | int | argc, |
char ** | argv | ||
) |
The program.
Run by (Apache) web server as (cgi) script with optional (query string) parameters.
char const prgNamPure[] |
The pure program name.
To be provided in the application's / program's source.
char const prgSVNrev[] |
The complete SVN revision string.
To be provided in the application's / program's source.
char const prgSVNdat[] |
The complete SVN date string.
To be provided in the application's / program's source.