Skip to content

Commit 49d4e63

Browse files
Merge pull request #91 from TheRealMoeder/oldboys92_doc
docs: update README to include Growatt NOAH/NEXA in zero feed-in opti…
2 parents 8b7382a + 36e4a9d commit 49d4e63

1 file changed

Lines changed: 28 additions & 19 deletions

File tree

README.md

Lines changed: 28 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
### Getting started
44
This is a Shelly Pro 3EM Emulator running on ESP8266 or ESP32 using various input sources for power data.<br>
5-
This can be used for zero feed-in with Hoymiles MS-A2 and Marstek Venus (testers needed!).
5+
This can be used for zero feed-in with Hoymiles MS-A2, Growatt NOAH/NEXA and Marstek Venus (testers needed!).
66

77
Kudos to @sdeigms excellent work at https://github.com/sdeigm/uni-meter which made this port easily possible.<br>
88
SMA Multicast code is based on https://www.mikrocontroller.net/topic/559607
@@ -14,42 +14,50 @@ SMA Multicast code is based on https://www.mikrocontroller.net/topic/559607
1414
## Option 2: Flash pre-compiled binary via browser
1515
1) connect your ESP to your PC using USB and follow the instructions on the [webflasher](https://therealmoeder.github.io/Energy2Shelly_ESP/)
1616

17-
## Configuration
17+
# Configuration
1818
1) Power device and wait for a hotspot named "Energy2Shelly"
1919
2) Connect to that hotspot
2020
3) Enter wifi and configuration data using the captive portal or by opening http://192.168.4.1/
2121

22-
### On the captive portal you can currently enter:
22+
### On the captive portal you can currently set a data source for power data. The following options are available:
2323
- <code>MQTT</code>
24-
- Server IP, port and topic; power values on the MQTT topic are expected in JSON format. The are multiple fields to define the available values using a JSON Path-style syntax.
24+
- Server IP, port, username, password and topic
25+
- Power values on the MQTT topic are expected in JSON format. The are multiple fields to define available values using a JSON Path-style syntax.
2526
You can also select between monophase and triphase power data.<br>
2627

27-
examples (monophase profile):
28+
example (monophase profile):
2829
- Total power JSON path -> <code>ENERGY.Power</code> for <code>{"ENERGY":{"Power":9.99}}</code><br>
2930
- Phase 1 power JSON path -> "no definition" <br>
3031
- Phase 2 power JSON path -> "no definition" <br>
3132
- Phase 3 power JSON path -> "no definition" <br>
32-
- Energy from grid JSON path -> <code>ENERGY.Consumption</code> for <code>{"ENERGY":{"Consumption"77}}</code><br>
33-
- Energy to grid JSON path -> <code>ENERGY.Production</code> for <code>{"ENERGY":{"Production"33}}</code><br>
33+
- Energy from grid JSON path -> <code>ENERGY.Consumption</code> for <code>{"ENERGY":{"Consumption":77}}</code><br>
34+
- Energy to grid JSON path -> <code>ENERGY.Production</code> for <code>{"ENERGY":{"Production":33}}</code><br>
3435
-> Energy2Shelly_ESP responds to <br><code>{"ENERGY":{"Power": 9.99,"Consumption":77,"Production":33}}</code><br>
3536

36-
examples (triphase profile):
37+
example (triphase profile):
3738
- Total power JSON path -> <code>ENERGY.Power</code> for <code>{"ENERGY":{"Power":7.3}}</code><br>
3839
- Phase 1 power JSON path -> <code>ENERGY.Pow1</code> for <code>{"ENERGY":{"Pow1":98}}</code><br>
3940
- Phase 2 power JSON path -> <code>ENERGY.Pow2</code> for <code>{"ENERGY":{"Pow2":196}}</code><br>
4041
- Phase 3 power JSON path -> <code>ENERGY.Pow3</code> for <code>{"ENERGY":{"Pow3":294}}</code><br>
41-
- Energy from grid JSON path -> <code>ENERGY.Consumption</code> for <code>{"ENERGY":{"Consumption"98}}</code>
42-
- Energy to grid JSON path -> <code>ENERGY.Production</code> for <code>{"ENERGY":{"Production"131}}</code><br>
42+
- Energy from grid JSON path -> <code>ENERGY.Consumption</code> for <code>{"ENERGY":{"Consumption":98}}</code>
43+
- Energy to grid JSON path -> <code>ENERGY.Production</code> for <code>{"ENERGY":{"Production":131}}</code><br>
4344
-> Energy2Shelly_ESP responds to <br><code>{"ENERGY":{"Power":7.3,"Pow1":98,"Pow2":196,"Pow3":294,"Consumption":98,"Production":131}}</code><br>
4445

4546
- <code>SMA</code>
46-
- SMA Energy Meter or Home Manager UDP multicast data; if you have multiple SMA energy meters you can optionally provide the serial number of the source you want to use in the configuration options
47+
- SMA Energy Meter or Home Manager UDP multicast data
48+
- if you have multiple SMA energy meters you can optionally provide the serial number of the source you want to use in the configuration options
4749
- <code>SHRDZM</code>
48-
- SHRDZM smart meter interface (common in Austria) with UDP unicast data; please enable UDP broadcasts to the IP of the ESP and port 9522 within SHRDZM
50+
- SHRDZM smart meter interface (common in Austria) with UDP unicast data
51+
- please enable UDP broadcasts to the IP of the ESP and port 9522 within SHRDZM
4952
- <code>HTTP</code>
50-
- a generic HTTP input; enter a query URL in the second parameter field which delivers JSON data and define at least the JSON Path for total power. For full details on JSONPath configuration, check the section on MQTT above.<br>
53+
- a generic HTTP input
54+
- enter a query URL in the second parameter field which delivers JSON data and define at least the JSON Path for total power.
55+
- for full details on JSONPath configuration, check the section on MQTT above.<br>
5156
- <code>SUNSPEC</code>
52-
- generic SUNSPEC register data polling via Modbus TCP; use server for address of Modbus device (e.g. Kostal Smart energy meter), port for Modbus TCP port (usually 502) and Modbus device ID for the unit ID (71 for KSEM)
57+
- generic SUNSPEC register data polling via Modbus TCP
58+
- you can setup host ip of Modbus device (e.g. Kostal Smart energy meter)
59+
- Modbus TCP port (usually 502)
60+
- Modbus Device ID of the unit ID (71 for KSEM)
5361

5462
### Here are some sample generic HTTP query paths for common devices:
5563
- Fronius: <code>http://IP-address/solar_api/v1/GetMeterRealtimeData.cgi?Scope=System</code>
@@ -68,13 +76,14 @@ SMA Multicast code is based on https://www.mikrocontroller.net/topic/559607
6876

6977
# You found a bug
7078
First, sorry. This software is not perfect.
71-
1. Open a issue
72-
-With helpful title - use descriptive keywords in the title and body so others can find your bug (avoiding duplicates).
79+
1. Open an issue
80+
- With helpful title - use descriptive keywords in the title and body so others can find your bug (avoiding duplicates).
7381
- Which branch, what microcontroller, what setup
7482
- Steps to reproduce the problem, with actual vs. expected results
7583
- If you find a bug in our code, post the files and the lines.
76-
<br>
77-
<br>
84+
2. Open a PR 😻
85+
- Explain in detail your changes
86+
- Ask for a review
7887

7988
# some screenshots from project
8089
![wifi](./screenshots/screenshot_01.png)
@@ -90,4 +99,4 @@ First, sorry. This software is not perfect.
9099
![status](./screenshots/screenshot_05.png)
91100

92101
> [!NOTE]
93-
> Images may vary depending on the version. We always try to be up to date.
102+
> Images may vary depending on the version. We always try to be up to date.

0 commit comments

Comments
 (0)