Schnippsche / solarreader

Solarreader
GNU General Public License v3.0
2 stars 2 forks source link

solarreader

solarreader was inspired by the solaranzeige project from Ulrich Kunz, which is written in php and has some limitations.

solarreader is a java daemon for collecting measurement data from smart meters and grid inverters with a multi language gui for easy configuration. All collected data can be exported to influx databases v1 / v2 and MQTT clients. A buffer for Influx and mqtt requests exists; it can hold the request for 30 minutes ore more in memory. So you didn't loose any data if influxdb is currently busy or unreachable.

Modbus communication is possible over RS485 connections as well as TCP sockets.

solarreader can also import data from Openweather, aWattar and Solarprognose. The output of solarreader is compatible with the solaranzeige project.

You can use multiple devices, influx databases and mqtt destinations.

Requirements

You'll need:

Installation on Linux

solarreader needs java 8 or higher, and works well with openjdk. To install openjdk, type the following in your terminal:

sudo apt install default-jdk

After installation, verifiy it with the following command:

java -version

Note for Linux users: Serial port access is limited to certain users and groups in Linux. To enable user access, you must open a terminal and enter the following commands before solarreader will be able to access the ports on your system. Don't worry if some of the commands fail. All of these groups may not exist on every Linux distro. (Note, this process must only be done once for each user):

sudo usermod -a -G uucp pi
sudo usermod -a -G dialout pi
sudo usermod -a -G lock pi
sudo usermod -a -G tty pi

Replace the username parameter with your current username. (If you are not sure what your username is, type whoami and it will tell you.) If you are using SUSE 11.3 or higher, replace the '-a -G' flags with a single '-A' flag.

Note for Synology users and RS485-USB adapters with FTDI chipset: Activate the build-in FTDI drivers with following commands:

sudo insmod /lib/modules/usbserial.ko
sudo insmod /lib/modules/ftdi_sio.ko
sudo chmod 777 /lib/modules/usbserial.ko
sudo chmod 777 /lib/modules/ftdi_sio.ko

You have to do that after every reboot, so it is recommended to put it in a start script.

Download the archive and unzip the files. Then run the start_solarreader.sh (Linux) or start_solarreader.bat (Windows). To show the GUI type "locahost:8080" in your browser (or the ip of your computer)

Supported devices

Using the precompiled binaries

Precompiled release packages are available. Download the jar and optional the start script for your platform

Building from source

solarreader is written in java and requires java 8 or higher. To build from source:

Contribute

Feel free to add new devices! You need the specification protocol from your device.

For version change history have a look at the ChangeLog.

Build Requirements

You can build solarreader.jar with all tests with:

mvn clean package

Main Screenshot Solarreader Screenshot