Kostal Plenticore Inverter: Monitoring Device

0 46319 Easy
projectImage

Since I have a photovoltaic system with a Kostal inverter, I wanted a small display that shows me the current charging and consumption status. With this, I would like to be able to react manually in the future and use the power from the sun optimally.

projectImage
projectImage

Base Features

* Initial start creating WiFi-Hotspot to enter setup data easily

* Setup setting WiFi connection and hostname of Kostal Inverter

* On successful connection to Kostal Inverter the displays shows:

* Loading Level of Battery (SoC)

* Show animated battery icon like smartphone

* Show the three values of power consumption (directly from solar cells [PV], from Battery [Akku] or grid [Netz]

* Show smiley with sunglasses if sun is directly used, just a normal smiley if power of battery is used and an unhappy smiley if power of grid is used.

Modbus over WiFi

When I looked into the interfaces of the inverter, I found that it uses Modbus to read out the data. A protocol, since I had not used yet. But with some training time you can access the necessary data from an ESP32 via WiFi quite easily. Below there is a link reference to find data register of Kostal inverter.

The data is loaded periodically.

HARDWARE LIST
1 Fermion: Monochrome 0.96" 128x64 I2C/SPI OLED Display (Breakout)
1 Gravity: IO Shield for FireBeetle M0 and ESP32-E
1 FireBeetle ESP32-E IoT Microcontroller with Header (Supports Wi-Fi & Bluetooth)
STEP 1
Connect ESP32 with Gravity IO Shield
STEP 2
Connet OLED Display by wires to IO Shield
STEP 3
Clone Reposity: https://github.com/stritti/kostal-pv-monitor
STEP 4
Setup project using Platorm.io
STEP 5
Connect ESP32 to PC and detect associated COM-Port
STEP 6
Compile and upload project to ESP32

Used Libraries

modbus-esp8266

This library support reading data via modbus protocol.

https://github.com/emelianov/modbus-esp8266

U8g2

This is a very common lib to show data on several display like the 128x64 I2C/SPI OLED Display of DFRobot.

https://github.com/olikraus/u8g2

ESP-WiFiSettings

This is a simple WiFi configuration manager for ESP32 and ESP8266. It will allow you to configure your WiFi network name (SSID) and password via a captive portal: the ESP becomes an access point with a web based configuration page. In addition some initial settings could also be added on captive portal page.

https://github.com/Juerd/ESP-WiFiSettings

Links

 

- Source Code Repository of project on GitHub

- Platform.io

- Modbus Documentation of Kostal Inverter: https://www.kostal-solar-electric.com/en-gb/download/download/-/media/document-library-folder---kse/2020/12/15/13/38/ba_kostal-interface-description-modbus-tcp_sunspec_hybrid.pdf

 

projectImage
License
All Rights
Reserved
licensBg
0