Comments (315)
@lucasimons
This is my actual configuration:
Thanks for the improvement,
Maybe the right config can be done at yaml level instead of .cpp,
I'll give a try and let you know the result.
from esphome-pipsolar.
I got it working, but not all values are good. Panel voltage and power are 0v and 0w, as you can see in my screenshot.
Althought it's charging batteries and powering home from PV's.
from esphome-pipsolar.
You have to connect RX, TX and GND of the RJ45 cable to the Sub-D connector / pins. This circuit could/should help:
At the pin header you've to connect RX, TX, VCC3.3 and GND.
from esphome-pipsolar.
This is the code which needs to be improved to support your device:
https://github.com/syssi/esphome-pipsolar/blob/2424mse1/components/pipsolar/pipsolar.cpp#L449-L467
I've pushed a feature branch to improve the device support of the 2424mse1. This feature branch can be easily used by adding the following lines to the yaml:
external_components:
- source: github://syssi/esphome-pipsolar@2424mse1
refresh: 0s
This overrides the official component. Let's try introduce the required changes for your device here.
from esphome-pipsolar.
I've pushed a fix for the QPIGS response:
To illustrate the QPIGS parser I've introduced some comments:
Please give it a try by adding this external/fixed component to your YAML:
external_components:
- source: github://syssi/esphome-pipsolar@2424mse1
refresh: 0s
from esphome-pipsolar.
for sure ;) have a look at https://github.com/andreashergert1984/stufftoshare/tree/main/pipsolar_dual-adapter
notes: this board is meant to be powered by 2 inverters directly. But: you need 2 of them otherwise the supplied power is not enough. If you want to power the board externaly.. just remove the stepdown and put 5V to the pinout of the step-down ;)
in this case.. you can also remove the 2 diodes as they have the purpose to protect the 2 inverter-power-rails.
Additionaly this board has a ads1115 onboard to readout (via a resistor-network) my 48V (4x12V) Battery-Cells.. you can just remove it if not needed.
enjoy
from esphome-pipsolar.
You can change to polling interval on component level only (not per sensor):
pipsolar:
uart_id: uart0
id: inverter0
update_interval: 10s
Another solution is to use a filter and throttle selected sensors.
from esphome-pipsolar.
Do we have somewhere a summary of commands and variants. so i could add them as options to the original esphome code.
thx.
I can only provide function my inverters have ;)
I also plan to make switchable things (like sourcepriority etc) native dropdown since they are now natively supported by esphome
Andi
from esphome-pipsolar.
MAX Communication Protocol20210217.pdf
Will this help?
from esphome-pipsolar.
Could you make a better photo of the rj45 connector? I want to make sure you have connected the correct pins. Ignore the color of the wires.
from esphome-pipsolar.
@avion23 Is the rs232 converter wired correctly?
from esphome-pipsolar.
I'll check again this weekend and upload photos
from esphome-pipsolar.
I use the original cable that came with the inverter and it have only 4 cable
from esphome-pipsolar.
I also have this converter but I search on internet how to connect them but I find different connections
from esphome-pipsolar.
Don't connect the blue wire. In my opinion this is 12V VCC of the inverter. We don't need this voltage. ;-)
from esphome-pipsolar.
After checking I think I have connected in the correct way but I am waiting for confirmation because it does not work even now
from esphome-pipsolar.
The blue wire is 12v, don't connect it. 12v can drive a buck converter to power the ESP. Thus no need of external power.
Try this pinout
orange-white -> pin 2
solid orange -> pin 3
solid brown -> pin 5
from esphome-pipsolar.
Which converter do you use?
from esphome-pipsolar.
Which converter do you use?
I recently buyed a Voltronic Axpert VMIII 3kw/24v but I'm still having some issues with pipsolar.
I think that is similar to yours.
It communicates but seems that protocol is not good.
from esphome-pipsolar.
I also have a 2.4kw 24v easun rebranded voltronic, but looking at the logs I don't get any response from the inverter ... Do you have any signs of life from the inverter?
from esphome-pipsolar.
Did you try the increase the log level of the UART component to VERY_VERBOSE
? This would dump every transmitted/received byte to the log. This log would help to debug protocol issues.
from esphome-pipsolar.
Yes but i see that the esp send the command but the inverter not responding
[08:50:45][D][pipsolar:757]: timeout command to poll: QMOD
[08:50:45][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:50:45][VV][uart_esp8266:111]: Wrote 0b01000110 (0x46)
[08:50:45][VV][uart_esp8266:111]: Wrote 0b01001100 (0x4C)
[08:50:45][VV][uart_esp8266:111]: Wrote 0b01000001 (0x41)
[08:50:45][VV][uart_esp8266:111]: Wrote 0b01000111 (0x47)
[08:50:45][VV][uart_esp8266:101]: Wrote 0b10011000 (0x98)
[08:50:45][VV][uart_esp8266:101]: Wrote 0b01110100 (0x74)
[08:50:45][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:50:45][D][pipsolar:840]: Sending polling command : QFLAG with length 5
[08:50:45][C][captive_portal:148]: Captive Portal:
[08:50:45][C][api:095]: API Server:
[08:50:45][C][api:096]: Address: sensor2.local:6053
[08:50:45][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=15936 (now=16938)
[08:50:46][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=16936 (now=17936)
[08:50:47][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=17936 (now=18936)
[08:50:48][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=18936 (now=19942)
[08:50:49][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=19936 (now=20938)
[08:50:50][D][pipsolar:757]: timeout command to poll: QFLAG
[08:50:50][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:50:50][VV][uart_esp8266:111]: Wrote 0b01010000 (0x50)
[08:50:50][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[08:50:50][VV][uart_esp8266:111]: Wrote 0b01010010 (0x52)
[08:50:50][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[08:50:50][VV][uart_esp8266:101]: Wrote 0b11111000 (0xF8)
[08:50:50][VV][uart_esp8266:101]: Wrote 0b01010100 (0x54)
[08:50:50][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:50:50][D][pipsolar:840]: Sending polling command : QPIRI with length 5
[08:50:50][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=20936 (now=21942)
[08:50:51][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=21936 (now=22936)
[08:50:52][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=22936 (now=23936)
[08:50:53][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=23936 (now=24936)
[08:50:54][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=24936 (now=25939)
[08:50:55][D][pipsolar:757]: timeout command to poll: QPIRI
[08:50:55][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:50:55][VV][uart_esp8266:111]: Wrote 0b01010000 (0x50)
[08:50:55][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[08:50:55][VV][uart_esp8266:111]: Wrote 0b01000111 (0x47)
[08:50:55][VV][uart_esp8266:111]: Wrote 0b01010011 (0x53)
[08:50:55][VV][uart_esp8266:101]: Wrote 0b10110111 (0xB7)
[08:50:55][VV][uart_esp8266:101]: Wrote 0b10101001 (0xA9)
[08:50:55][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:50:55][D][pipsolar:840]: Sending polling command : QPIGS with length 5
[08:50:55][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=25936 (now=26936)
[08:50:56][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=26936 (now=27943)
[08:50:57][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=27936 (now=28936)
[08:50:58][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=28936 (now=29939)
[08:50:59][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=29936 (now=30937)
[08:51:00][D][pipsolar:757]: timeout command to poll: QPIGS
[08:51:00][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:51:00][VV][uart_esp8266:111]: Wrote 0b01001101 (0x4D)
[08:51:00][VV][uart_esp8266:111]: Wrote 0b01001111 (0x4F)
[08:51:00][VV][uart_esp8266:111]: Wrote 0b01000100 (0x44)
[08:51:00][VV][uart_esp8266:101]: Wrote 0b01001001 (0x49)
[08:51:00][VV][uart_esp8266:101]: Wrote 0b11000001 (0xC1)
[08:51:00][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:51:00][D][pipsolar:840]: Sending polling command : QMOD with length 4
[08:51:00][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=30936 (now=31936)
[08:51:01][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=31936 (now=32938)
[08:51:02][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=32936 (now=33937)
[08:51:03][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=33936 (now=34939)
[08:51:04][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=34936 (now=35937)
[08:51:05][D][pipsolar:757]: timeout command to poll: QMOD
[08:51:05][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:51:05][VV][uart_esp8266:111]: Wrote 0b01000110 (0x46)
[08:51:05][VV][uart_esp8266:111]: Wrote 0b01001100 (0x4C)
[08:51:05][VV][uart_esp8266:111]: Wrote 0b01000001 (0x41)
[08:51:05][VV][uart_esp8266:111]: Wrote 0b01000111 (0x47)
[08:51:05][VV][uart_esp8266:101]: Wrote 0b10011000 (0x98)
[08:51:05][VV][uart_esp8266:101]: Wrote 0b01110100 (0x74)
[08:51:05][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:51:05][D][pipsolar:840]: Sending polling command : QFLAG with length 5
[08:51:05][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=35936 (now=36936)
[08:51:06][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=36936 (now=37939)
[08:51:07][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=37936 (now=38936)
[08:51:08][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=38936 (now=39937)
[08:51:09][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=39936 (now=40936)
[08:51:10][D][pipsolar:757]: timeout command to poll: QFLAG
[08:51:10][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:51:10][VV][uart_esp8266:111]: Wrote 0b01010000 (0x50)
[08:51:10][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[08:51:10][VV][uart_esp8266:111]: Wrote 0b01010010 (0x52)
[08:51:10][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[08:51:10][VV][uart_esp8266:101]: Wrote 0b11111000 (0xF8)
[08:51:10][VV][uart_esp8266:101]: Wrote 0b01010100 (0x54)
[08:51:10][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:51:10][D][pipsolar:840]: Sending polling command : QPIRI with length 5
[08:51:10][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=40936 (now=41936)
[08:51:11][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=41936 (now=42940)
[08:51:12][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=42936 (now=43936)
[08:51:13][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=43936 (now=44938)
[08:51:14][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=44936 (now=45936)
[08:51:15][D][pipsolar:757]: timeout command to poll: QPIRI
[08:51:15][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[08:51:15][VV][uart_esp8266:111]: Wrote 0b01010000 (0x50)
[08:51:15][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[08:51:15][VV][uart_esp8266:111]: Wrote 0b01000111 (0x47)
[08:51:15][VV][uart_esp8266:111]: Wrote 0b01010011 (0x53)
[08:51:15][VV][uart_esp8266:101]: Wrote 0b10110111 (0xB7)
[08:51:15][VV][uart_esp8266:101]: Wrote 0b10101001 (0xA9)
[08:51:15][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[08:51:15][D][pipsolar:840]: Sending polling command : QPIGS with length 5
[08:51:15][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=45936 (now=46940)
[08:51:16][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=46936 (now=47936)
from esphome-pipsolar.
Please make sure the TX LED of the RS232 converter module is flashing periodically. If the RX LED is flashing the module isn't wired correctly.
from esphome-pipsolar.
In my converter , the smallest haven't led and the biggest ha a led but seems that not blinking
from esphome-pipsolar.
That's great can you send pictures of your converter and connections on the esp? @rem72
from esphome-pipsolar.
One thing to take into account for the small RS232-TTL converter, both wires, from rs232 and ttl should be connected at the same face. This is one of my previous errors.
For the big one, check the gender of the big connector, if it's female, this are the right connections:
If it is male I think you can use the cable instead of soldering.
from esphome-pipsolar.
Now I got it working with a small one.
from esphome-pipsolar.
Now I connect the tx of the converter with the tx of wemos d1 mini and I see blinking the led but I don't see any data in the log.... the converter is the same of your converter female
from esphome-pipsolar.
Ah! And I used the hardware serial of the wemos d1 instead of a software one, this can be done if you change the logger uart.
Which pins do you use for comms?
This is my code:
esphome:
name: solar
platform: ESP8266
board: d1_mini
# Enable logging
logger:
hardware_uart: UART1
level: verbose
# Enable Home Assistant API
api:
ota:
password: !secret OTAPass
wifi:
ssid: !secret Wifi
password: !secret WifiPass
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Solar Fallback Hotspot"
password: !secret OTAPass
captive_portal:
uart:
- id: uart_bus
tx_pin: TX
rx_pin: RX
# most devices use 2400 as baud_rate
baud_rate: 2400
pipsolar:
- uart_id: uart_bus
id: inverter0
sensor:
- platform: pipsolar
pipsolar_id: inverter0
grid_rating_current:
id: inverter0_grid_rating_current
name: inverter0_grid_rating_current
ac_output_active_power:
id: inverter0_ac_output_active_power
name: inverter0_ac_output_active_power
ac_output_apparent_power:
id: inverter0_ac_output_apparent_power
name: inverter0_ac_output_apparent_power
ac_output_voltage:
id: inverter0_ac_output_voltage
name: inverter0_ac_output_voltage
battery_capacity_percent:
id: inverter0_battery_capacity_percent
name: inverter0_battery_capacity_percent
battery_charging_current:
id: inverter0_battery_charging_current
name: inverter0_battery_charging_current
battery_discharge_current:
id: inverter0_battery_discharge_current
name: inverter0_battery_discharge_current
battery_voltage:
id: inverter0_battery_voltage
name: inverter0_battery_voltage
grid_voltage:
id: inverter0_grid_voltage
name: inverter0_grid_voltage
inverter_heat_sink_temperature:
id: inverter0_inverter_heat_sink_temperature
name: inverter0_inverter_heat_sink_temperature
output_load_percent:
id: inverter0_output_load_percent
name: inverter0_output_load_percent
pv_charging_power:
id: inverter0_pv_charging_power
name: inverter0_pv_charging_power
pv_input_voltage:
id: inverter0_pv_input_voltage
name: inverter0_pv_input_voltage
text_sensor:
- platform: pipsolar
pipsolar_id: inverter0
device_mode:
id: inverter0_device_mode
name: inverter0_device_mode
last_qpigs:
id: inverter0_last_qpigs
name: inverter0_last_qpigs
last_qpiri:
id: inverter0_last_qpiri
name: inverter0_last_qpiri
switch:
- platform: pipsolar
pipsolar_id: inverter0
output_source_priority_utility:
name: inverter0_output_source_priority_utility
output_source_priority_solar:
name: inverter0_output_source_priority_solar
output_source_priority_battery:
name: inverter0_output_source_priority_battery
input_voltage_range:
name: inverter0_input_voltage_range
pv_power_balance:
name: inverter0_pv_power_balance
from esphome-pipsolar.
This is my code
esphome:
name: sensor2
platform: ESP8266
board: d1_mini
captive_portal:
# Enable logging
logger:
baud_rate: 0
level: VERY_VERBOSE
logs:
uart: VERY_VERBOSE
uart_esp8266: VERY_VERBOSE
api.service: WARN
ota: WARN
sensor: DEBUG
# Enable Home Assistant API
api:
ota:
substitutions:
name: pipsolar
uart:
id: uart0
baud_rate: 2400
tx_pin: GPIO1
rx_pin: GPIO3
pipsolar:
uart_id: uart0
id: inverter0
sensor:
- platform: pipsolar
pipsolar_id: inverter0
# QPIRI
grid_rating_voltage:
name: "Inverter grid_rating_voltage"
grid_rating_current:
name: "Inveter grid_rating_current"
ac_output_rating_voltage:
name: "Inveter ac_output_rating_voltage"
ac_output_rating_frequency:
name: "Inveter ac_output_rating_frequency"
ac_output_rating_current:
name: "Inveter ac_output_rating_current"
ac_output_rating_apparent_power:
name: "Inveter ac_output_rating_apparent_power"
ac_output_rating_active_power:
name: "Inveter ac_output_rating_active_power"
battery_rating_voltage:
name: "Inveter battery_rating_voltage"
battery_recharge_voltage:
name: "Inveter battery_recharge_voltage"
battery_under_voltage:
name: "Inveter battery_under_voltage"
battery_bulk_voltage:
name: "Inveter battery_bulk_voltage"
battery_float_voltage:
name: "Inveter battery_float_voltage"
battery_type:
name: "Inveter battery_type"
current_max_ac_charging_current:
name: "Inveter current_max_ac_charging_current"
current_max_charging_current:
name: "Inveter current_max_charging_current"
input_voltage_range:
name: "Inveter input_voltage_range"
output_source_priority:
name: "Inveter output_source_priority"
charger_source_priority:
name: "Inveter charger_source_priority"
parallel_max_num:
name: "Inveter parallel_max_num"
machine_type:
name: "Inveter machine_type"
topology:
name: "Inveter topology"
output_mode:
name: "Inveter output_mode"
battery_redischarge_voltage:
name: "Inveter battery_redischarge_voltage"
pv_ok_condition_for_parallel:
name: "Inveter pv_ok_condition_for_parallel"
pv_power_balance:
name: "Inveter pv_power_balance"
# QPIGS
grid_voltage:
name: "Inveter grid_voltage"
grid_frequency:
name: "Inveter grid_frequency"
ac_output_voltage:
name: "Inveter ac_output_voltage"
ac_output_frequency:
name: "Inveter ac_output_frequency"
ac_output_apparent_power:
name: "Inveter ac_output_apparent_power"
ac_output_active_power:
name: "Inveter ac_output_active_power"
output_load_percent:
name: "Inveter output_load_percent"
bus_voltage:
name: "Inveter bus_voltage"
battery_voltage:
name: "Inveter battery_voltage"
battery_charging_current:
name: "Inveter battery_charging_current"
battery_capacity_percent:
name: "Inveter battery_capacity_percent"
inverter_heat_sink_temperature:
name: "Inveter inverter_heat_sink_temperature"
pv_input_current_for_battery:
name: "Inveter pv_input_current_for_battery"
pv_input_voltage:
name: "Inveter pv_input_voltage"
battery_voltage_scc:
name: "Inveter battery_voltage_scc"
battery_discharge_current:
name: "Inveter battery_discharge_current"
battery_voltage_offset_for_fans_on:
name: "Inveter battery_voltage_offset_for_fans_on"
eeprom_version:
name: "Inveter eeprom_version"
pv_charging_power:
name: "Inveter pv_charging_power"
text_sensor:
- platform: pipsolar
pipsolar_id: inverter0
device_mode:
name: "Inveter device_mode"
last_qpigs:
name: "Inveter last_qpigs"
last_qpiri:
name: "Inveter last_qpiri"
last_qmod:
name: "Inveter last_qmod"
last_qflag:
name: "Inveter last_qflag"
binary_sensor:
- platform: pipsolar
pipsolar_id: inverter0
add_sbu_priority_version:
name: "Inveter add_sbu_priority_version"
configuration_status:
name: "Inveter configuration_status"
scc_firmware_version:
name: "Inveter scc_firmware_version"
load_status:
name: "Inveter load_status"
battery_voltage_to_steady_while_charging:
name: "Inveter battery_voltage_to_steady_while_charging"
charging_status:
name: "Inveter charging_status"
scc_charging_status:
name: "Inveter scc_charging_status"
ac_charging_status:
name: "Inveter ac_charging_status"
charging_to_floating_mode:
name: "Inveter charging_to_floating_mode"
switch_on:
name: "Inveter switch_on"
dustproof_installed:
name: "Inveter dustproof_installed"
silence_buzzer_open_buzzer:
name: "Inveter silence_buzzer_open_buzzer"
overload_bypass_function:
name: "Inveter overload_bypass_function"
lcd_escape_to_default:
name: "Inveter lcd_escape_to_default"
overload_restart_function:
name: "Inveter overload_restart_function"
over_temperature_restart_function:
name: "Inveter over_temperature_restart_function"
backlight_on:
name: "Inveter backlight_on"
switch:
- platform: pipsolar
pipsolar_id: inverter0
output_source_priority_utility:
name: "Inveter output_source_priority_utility"
output_source_priority_solar:
name: "Inveter output_source_priority_solar"
output_source_priority_battery:
name: "Inveter output_source_priority_battery"
input_voltage_range:
name: "Inveter input_voltage_range"
pv_ok_condition_for_parallel:
name: "Inveter pv_ok_condition_for_parallel"
pv_power_balance:
name: "Inveter pv_power_balance"
output:
- platform: pipsolar
pipsolar_id: inverter0
battery_recharge_voltage:
id: inverter0_battery_recharge_voltage_out
This are the connections
from esphome-pipsolar.
On the other hand, I think decoding of QPIGS isn't fine.
Sissy, here is the verbose log:
[10:51:33][D][text_sensor:015]: 'inverter0_last_qpigs': Sending state '(226.7 49.9 226.7 49.9 0498 0479 016 427 27.00 005 100 0035 01.9 255.1 00.00 00000 10010110 00 00 00510 110'
[10:51:33][V][sensor:037]: 'inverter0_grid_voltage': Received new state 226.699997
[10:51:33][D][sensor:131]: 'inverter0_grid_voltage': Sending state 226.70000 V with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_ac_output_voltage': Received new state 226.699997
[10:51:33][D][sensor:131]: 'inverter0_ac_output_voltage': Sending state 226.70000 V with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_ac_output_apparent_power': Received new state 498.000000
[10:51:33][D][sensor:131]: 'inverter0_ac_output_apparent_power': Sending state 498.00000 VA with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_ac_output_active_power': Received new state 479.000000
[10:51:33][D][sensor:131]: 'inverter0_ac_output_active_power': Sending state 479.00000 W with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_output_load_percent': Received new state 16.000000
[10:51:33][D][sensor:131]: 'inverter0_output_load_percent': Sending state 16.00000 % with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_battery_voltage': Received new state 27.000000
[10:51:33][D][sensor:131]: 'inverter0_battery_voltage': Sending state 27.00000 V with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_battery_charging_current': Received new state 5.000000
[10:51:33][D][sensor:131]: 'inverter0_battery_charging_current': Sending state 5.00000 A with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_battery_capacity_percent': Received new state 100.000000
[10:51:33][D][sensor:131]: 'inverter0_battery_capacity_percent': Sending state 100.00000 % with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_inverter_heat_sink_temperature': Received new state 35.000000
[10:51:33][D][sensor:131]: 'inverter0_inverter_heat_sink_temperature': Sending state 35.00000 °C with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_pv_input_voltage': Received new state 0.900000
[10:51:33][D][sensor:131]: 'inverter0_pv_input_voltage': Sending state 0.90000 V with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_battery_discharge_current': Received new state 0.000000
[10:51:33][D][sensor:131]: 'inverter0_battery_discharge_current': Sending state 0.00000 A with 1 decimals of accuracy
[10:51:33][V][sensor:037]: 'inverter0_pv_charging_power': Received new state 0.000000
[10:51:33][D][sensor:131]: 'inverter0_pv_charging_power': Sending state 0.00000 W with 1 decimals of accuracy
[10:51:33][V][app:082]: A component took a long time in a loop() cycle (0.21 s).
[10:51:33][V][app:083]: Components should block for at most 20-30ms in loop().
from esphome-pipsolar.
But if you use the hardware uart = uart0 you have to send the logger output to the secondary uart = uart1.
Check these lines:
logger:
hardware_uart: UART1
from esphome-pipsolar.
Yes i see your code and i update my code,
now i see that write ant read somethings
[11:23:14][D][pipsolar:840]: Sending polling command : QPIRI with length 5
[11:23:14][VV][uart_esp8266:132]: Read 0b10101010 (0xAA)
[11:23:14][VV][uart_esp8266:132]: Read 0b01001010 (0x4A)
[11:23:14][VV][uart_esp8266:132]: Read 0b10010101 (0x95)
[11:23:14][VV][uart_esp8266:132]: Read 0b11100001 (0xE1)
[11:23:14][VV][uart_esp8266:132]: Read 0b11111111 (0xFF)
[11:23:15][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=242368 (now=243373)
[11:23:16][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=243368 (now=244369)
[11:23:17][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=244368 (now=245372)
[11:23:18][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=245368 (now=246368)
[11:23:19][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=246368 (now=247376)
[11:23:19][D][pipsolar:757]: timeout command to poll: QPIRI
[11:23:19][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[11:23:19][VV][uart_esp8266:111]: Wrote 0b01010000 (0x50)
[11:23:19][VV][uart_esp8266:111]: Wrote 0b01001001 (0x49)
[11:23:19][VV][uart_esp8266:111]: Wrote 0b01000111 (0x47)
[11:23:19][VV][uart_esp8266:111]: Wrote 0b01010011 (0x53)
[11:23:19][VV][uart_esp8266:101]: Wrote 0b10110111 (0xB7)
[11:23:19][VV][uart_esp8266:101]: Wrote 0b10101001 (0xA9)
[11:23:19][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[11:23:19][D][pipsolar:840]: Sending polling command : QPIGS with length 5
[11:23:19][VV][uart_esp8266:132]: Read 0b10101010 (0xAA)
[11:23:19][VV][uart_esp8266:132]: Read 0b11101010 (0xEA)
[11:23:19][VV][uart_esp8266:132]: Read 0b01101010 (0x6A)
[11:23:19][VV][uart_esp8266:132]: Read 0b11110101 (0xF5)
[11:23:19][VV][uart_esp8266:132]: Read 0b11111111 (0xFF)
[11:23:20][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=247368 (now=248368)
[11:23:21][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=248368 (now=249375)
[11:23:22][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=249368 (now=250368)
[11:23:23][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=250368 (now=251371)
[11:23:24][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=251368 (now=252370)
[11:23:24][D][pipsolar:757]: timeout command to poll: QPIGS
[11:23:24][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[11:23:24][VV][uart_esp8266:111]: Wrote 0b01001101 (0x4D)
[11:23:24][VV][uart_esp8266:111]: Wrote 0b01001111 (0x4F)
[11:23:24][VV][uart_esp8266:111]: Wrote 0b01000100 (0x44)
[11:23:24][VV][uart_esp8266:101]: Wrote 0b01001001 (0x49)
[11:23:24][VV][uart_esp8266:101]: Wrote 0b11000001 (0xC1)
[11:23:24][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[11:23:24][D][pipsolar:840]: Sending polling command : QMOD with length 4
[11:23:24][VV][uart_esp8266:132]: Read 0b11111111 (0xFF)
[11:23:24][VV][uart_esp8266:132]: Read 0b11111110 (0xFE)
[11:23:24][VV][uart_esp8266:132]: Read 0b11111111 (0xFF)
[11:23:25][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=252368 (now=253370)
[11:23:26][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=253368 (now=254368)
[11:23:27][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=254368 (now=255368)
[11:23:28][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=255368 (now=256373)
[11:23:29][VV][scheduler:152]: Running interval 'update' with interval=1000 last_execution=256368 (now=257370)
[11:23:29][D][pipsolar:757]: timeout command to poll: QMOD
[11:23:29][VV][uart_esp8266:111]: Wrote 0b01010001 (0x51)
[11:23:29][VV][uart_esp8266:111]: Wrote 0b01000110 (0x46)
[11:23:29][VV][uart_esp8266:111]: Wrote 0b01001100 (0x4C)
[11:23:29][VV][uart_esp8266:111]: Wrote 0b01000001 (0x41)
[11:23:29][VV][uart_esp8266:111]: Wrote 0b01000111 (0x47)
[11:23:29][VV][uart_esp8266:101]: Wrote 0b10011000 (0x98)
[11:23:29][VV][uart_esp8266:101]: Wrote 0b01110100 (0x74)
[11:23:29][VV][uart_esp8266:101]: Wrote 0b00001101 (0x0D)
[11:23:29][D][pipsolar:840]: Sending polling command : QFLAG with length 5
[11:23:29][VV][uart_esp8266:132]: Read 0b11101010 (0xEA)
[11:23:29][VV][uart_esp8266:132]: Read 0b00001010 (0x0A)
[11:23:29][VV][uart_esp8266:132]: Read 0b01000110 (0x46)
[11:23:29][VV][uart_esp8266:132]: Read 0b11111111 (0xFF)
if i connect the TX of the converter with the RX of wemos i see that write something but doesn t read anythigs,
from esphome-pipsolar.
Good job! Please try to understand what you have changed in detail. So we can improve the configuration example at this repository.
@rem72 We can give it a try to understand and correct the QPIGS readings later the day!
from esphome-pipsolar.
I tried to put back the connections tx to tx and rx to rx but now in the log I only see something writing but it doesn't read anything, the right connection should be the inverted one so rx to tx @rem72
from esphome-pipsolar.
@syssi, these are the values for my inverter PV's
(225.8 49.9 225.8 49.9 0609 0565 020 427 27.00 005 100 0035 02.2 259.9 00.00 00000 10010110 00 00 00590 110
(aaa.a bb.b ccc.c dd.d eeee ffff ggg hhh ii.ii jjj kkk llll mm.m nnn.n oo.oo ppppp qqqqqqqq rr ss ttttt uuu
nnn.n = PV Voltage
ttttt = PV input power
But I don't know how to change them
from esphome-pipsolar.
Ah but you have the inverter that can mix the grid with the panels because I noticed the voltage of the panels at 259v but I have the version with 40a mppt regulator but maximum voltage 100v anyway it shouldn't change anything because at the time I tried through software watchpower and PC and I had qpigs with the same organization
Instead how did you connect the converter to the wemos? @rem72
from esphome-pipsolar.
Thanks now i have two wemos that the connection are correct, one is with the small converter in the first pics of this thread, one with the big converter i can use they to test the new code...
this is the log of my inverter connected with the pc
debug-watchpower.zip
from esphome-pipsolar.
@rem72 At the moment it's not possible to change the QPIGS parsing via the yaml configuration. Is soon we've created a proper parser for your device we can introduce a device toggle at the configuration layer.
from esphome-pipsolar.
@lucasimons I've created a feature branch only (without any changes). It will take some time to update the parser. You could give it a try!
from esphome-pipsolar.
unfortunately I don't know how to help in modifying the code, I currently use solpiplog and it works but I don't know if you can get something by looking at that code, one other project is that https://github.com/daromer2/InverterOfThings/
from esphome-pipsolar.
Hi, looking at the code I can see a data type mismatch, that may cause the wrong parse for my power inverter, as said before, it's a VOLTRONIC Axpert VMIII 3KW/24volt
Thank so much both, I'll wait until the device toggle.
Great work!!!
from esphome-pipsolar.
Here are the promised pictures.
I know it's difficult to see. I fanned out the network cable to 1234 from the top and then 5678 to the right.
If you build something like this then include a bulk capacitor (bottom). The ESP-Module sometimes sips 500mA
blue / white is rx / tx (I don't remember which one).
from esphome-pipsolar.
Thanks @avion23, Which inverter do you have?
from esphome-pipsolar.
Here are the promised pictures.
I know it's difficult to see. I fanned out the network cable to 1234 from the top and then 5678 to the right.
If you build something like this then include a bulk capacitor (bottom). The ESP-Module sometimes sips 500mA
remeber the ESP is NOT TTL (5V) level.
You need you uart signal at 3.3v Level. I had issues when directly connection the TTL-Level(5V). therefor perhaps the max3232 chip is better. Is made a board where i can directly connect 2 Invertes (but one works also ).. if there is the need i can make the data available.. or even let a pcb-fab do some for shipping?
from esphome-pipsolar.
Hi,
I tried with a 24v inverter from easun which however is identical to the 2424MSE1 of MPP solar looking at the esphome log I see that it sends something but receives nothing I also checked the wiring and I had reversed the red and white cable on the rj45 side, now I believe they are right
@andreashergert1984 this is my converter but seems that write something but not receive anything from the inverter
from esphome-pipsolar.
@lucasimons you also need 3.3V on the inverter side. The way it is right now, the high voltage side is not powered. The converter board has a little charge pump which generates the ~15V from your 3.3V.
Do not connect the 12V ;) Then you need a new converter.
I have some PIP-5048MS (?) Clone
from esphome-pipsolar.
@lucasimons you also need 3.3V on the inverter side. The way it is right now, the high voltage side is not powered. The converter board has a little charge pump which generates the ~15V from your 3.3V.
Do not connect the 12V ;) Then you need a new converter.
I have some PIP-5048MS (?) Clone
i actually us the ~15V to power the ESP32 Board. With a Step-Down. But it needs both inverters to deliver enough power.. so i will observe this...
from esphome-pipsolar.
This is my code
esphome: name: sensor2 platform: ESP8266 board: d1_mini captive_portal: # Enable logging logger: baud_rate: 0 level: VERY_VERBOSE logs: uart: VERY_VERBOSE uart_esp8266: VERY_VERBOSE api.service: WARN ota: WARN sensor: DEBUG # Enable Home Assistant API api: ota: substitutions: name: pipsolar uart: id: uart0 baud_rate: 2400 tx_pin: GPIO1 rx_pin: GPIO3 pipsolar: uart_id: uart0 id: inverter0 sensor: - platform: pipsolar pipsolar_id: inverter0 # QPIRI grid_rating_voltage: name: "Inverter grid_rating_voltage" grid_rating_current: name: "Inveter grid_rating_current" ac_output_rating_voltage: name: "Inveter ac_output_rating_voltage" ac_output_rating_frequency: name: "Inveter ac_output_rating_frequency" ac_output_rating_current: name: "Inveter ac_output_rating_current" ac_output_rating_apparent_power: name: "Inveter ac_output_rating_apparent_power" ac_output_rating_active_power: name: "Inveter ac_output_rating_active_power" battery_rating_voltage: name: "Inveter battery_rating_voltage" battery_recharge_voltage: name: "Inveter battery_recharge_voltage" battery_under_voltage: name: "Inveter battery_under_voltage" battery_bulk_voltage: name: "Inveter battery_bulk_voltage" battery_float_voltage: name: "Inveter battery_float_voltage" battery_type: name: "Inveter battery_type" current_max_ac_charging_current: name: "Inveter current_max_ac_charging_current" current_max_charging_current: name: "Inveter current_max_charging_current" input_voltage_range: name: "Inveter input_voltage_range" output_source_priority: name: "Inveter output_source_priority" charger_source_priority: name: "Inveter charger_source_priority" parallel_max_num: name: "Inveter parallel_max_num" machine_type: name: "Inveter machine_type" topology: name: "Inveter topology" output_mode: name: "Inveter output_mode" battery_redischarge_voltage: name: "Inveter battery_redischarge_voltage" pv_ok_condition_for_parallel: name: "Inveter pv_ok_condition_for_parallel" pv_power_balance: name: "Inveter pv_power_balance" # QPIGS grid_voltage: name: "Inveter grid_voltage" grid_frequency: name: "Inveter grid_frequency" ac_output_voltage: name: "Inveter ac_output_voltage" ac_output_frequency: name: "Inveter ac_output_frequency" ac_output_apparent_power: name: "Inveter ac_output_apparent_power" ac_output_active_power: name: "Inveter ac_output_active_power" output_load_percent: name: "Inveter output_load_percent" bus_voltage: name: "Inveter bus_voltage" battery_voltage: name: "Inveter battery_voltage" battery_charging_current: name: "Inveter battery_charging_current" battery_capacity_percent: name: "Inveter battery_capacity_percent" inverter_heat_sink_temperature: name: "Inveter inverter_heat_sink_temperature" pv_input_current_for_battery: name: "Inveter pv_input_current_for_battery" pv_input_voltage: name: "Inveter pv_input_voltage" battery_voltage_scc: name: "Inveter battery_voltage_scc" battery_discharge_current: name: "Inveter battery_discharge_current" battery_voltage_offset_for_fans_on: name: "Inveter battery_voltage_offset_for_fans_on" eeprom_version: name: "Inveter eeprom_version" pv_charging_power: name: "Inveter pv_charging_power" text_sensor: - platform: pipsolar pipsolar_id: inverter0 device_mode: name: "Inveter device_mode" last_qpigs: name: "Inveter last_qpigs" last_qpiri: name: "Inveter last_qpiri" last_qmod: name: "Inveter last_qmod" last_qflag: name: "Inveter last_qflag" binary_sensor: - platform: pipsolar pipsolar_id: inverter0 add_sbu_priority_version: name: "Inveter add_sbu_priority_version" configuration_status: name: "Inveter configuration_status" scc_firmware_version: name: "Inveter scc_firmware_version" load_status: name: "Inveter load_status" battery_voltage_to_steady_while_charging: name: "Inveter battery_voltage_to_steady_while_charging" charging_status: name: "Inveter charging_status" scc_charging_status: name: "Inveter scc_charging_status" ac_charging_status: name: "Inveter ac_charging_status" charging_to_floating_mode: name: "Inveter charging_to_floating_mode" switch_on: name: "Inveter switch_on" dustproof_installed: name: "Inveter dustproof_installed" silence_buzzer_open_buzzer: name: "Inveter silence_buzzer_open_buzzer" overload_bypass_function: name: "Inveter overload_bypass_function" lcd_escape_to_default: name: "Inveter lcd_escape_to_default" overload_restart_function: name: "Inveter overload_restart_function" over_temperature_restart_function: name: "Inveter over_temperature_restart_function" backlight_on: name: "Inveter backlight_on" switch: - platform: pipsolar pipsolar_id: inverter0 output_source_priority_utility: name: "Inveter output_source_priority_utility" output_source_priority_solar: name: "Inveter output_source_priority_solar" output_source_priority_battery: name: "Inveter output_source_priority_battery" input_voltage_range: name: "Inveter input_voltage_range" pv_ok_condition_for_parallel: name: "Inveter pv_ok_condition_for_parallel" pv_power_balance: name: "Inveter pv_power_balance" output: - platform: pipsolar pipsolar_id: inverter0 battery_recharge_voltage: id: inverter0_battery_recharge_voltage_out
This are the connections
I try the new code with the two converter but I don't see any response
from esphome-pipsolar.
This is my code
esphome: name: sensor2 platform: ESP8266 board: d1_mini captive_portal: # Enable logging logger: baud_rate: 0 level: VERY_VERBOSE logs: uart: VERY_VERBOSE uart_esp8266: VERY_VERBOSE api.service: WARN ota: WARN sensor: DEBUG # Enable Home Assistant API api: ota: substitutions: name: pipsolar uart: id: uart0 baud_rate: 2400 tx_pin: GPIO1 rx_pin: GPIO3 pipsolar: uart_id: uart0 id: inverter0 sensor: - platform: pipsolar pipsolar_id: inverter0 # QPIRI grid_rating_voltage: name: "Inverter grid_rating_voltage" grid_rating_current: name: "Inveter grid_rating_current" ac_output_rating_voltage: name: "Inveter ac_output_rating_voltage" ac_output_rating_frequency: name: "Inveter ac_output_rating_frequency" ac_output_rating_current: name: "Inveter ac_output_rating_current" ac_output_rating_apparent_power: name: "Inveter ac_output_rating_apparent_power" ac_output_rating_active_power: name: "Inveter ac_output_rating_active_power" battery_rating_voltage: name: "Inveter battery_rating_voltage" battery_recharge_voltage: name: "Inveter battery_recharge_voltage" battery_under_voltage: name: "Inveter battery_under_voltage" battery_bulk_voltage: name: "Inveter battery_bulk_voltage" battery_float_voltage: name: "Inveter battery_float_voltage" battery_type: name: "Inveter battery_type" current_max_ac_charging_current: name: "Inveter current_max_ac_charging_current" current_max_charging_current: name: "Inveter current_max_charging_current" input_voltage_range: name: "Inveter input_voltage_range" output_source_priority: name: "Inveter output_source_priority" charger_source_priority: name: "Inveter charger_source_priority" parallel_max_num: name: "Inveter parallel_max_num" machine_type: name: "Inveter machine_type" topology: name: "Inveter topology" output_mode: name: "Inveter output_mode" battery_redischarge_voltage: name: "Inveter battery_redischarge_voltage" pv_ok_condition_for_parallel: name: "Inveter pv_ok_condition_for_parallel" pv_power_balance: name: "Inveter pv_power_balance" # QPIGS grid_voltage: name: "Inveter grid_voltage" grid_frequency: name: "Inveter grid_frequency" ac_output_voltage: name: "Inveter ac_output_voltage" ac_output_frequency: name: "Inveter ac_output_frequency" ac_output_apparent_power: name: "Inveter ac_output_apparent_power" ac_output_active_power: name: "Inveter ac_output_active_power" output_load_percent: name: "Inveter output_load_percent" bus_voltage: name: "Inveter bus_voltage" battery_voltage: name: "Inveter battery_voltage" battery_charging_current: name: "Inveter battery_charging_current" battery_capacity_percent: name: "Inveter battery_capacity_percent" inverter_heat_sink_temperature: name: "Inveter inverter_heat_sink_temperature" pv_input_current_for_battery: name: "Inveter pv_input_current_for_battery" pv_input_voltage: name: "Inveter pv_input_voltage" battery_voltage_scc: name: "Inveter battery_voltage_scc" battery_discharge_current: name: "Inveter battery_discharge_current" battery_voltage_offset_for_fans_on: name: "Inveter battery_voltage_offset_for_fans_on" eeprom_version: name: "Inveter eeprom_version" pv_charging_power: name: "Inveter pv_charging_power" text_sensor: - platform: pipsolar pipsolar_id: inverter0 device_mode: name: "Inveter device_mode" last_qpigs: name: "Inveter last_qpigs" last_qpiri: name: "Inveter last_qpiri" last_qmod: name: "Inveter last_qmod" last_qflag: name: "Inveter last_qflag" binary_sensor: - platform: pipsolar pipsolar_id: inverter0 add_sbu_priority_version: name: "Inveter add_sbu_priority_version" configuration_status: name: "Inveter configuration_status" scc_firmware_version: name: "Inveter scc_firmware_version" load_status: name: "Inveter load_status" battery_voltage_to_steady_while_charging: name: "Inveter battery_voltage_to_steady_while_charging" charging_status: name: "Inveter charging_status" scc_charging_status: name: "Inveter scc_charging_status" ac_charging_status: name: "Inveter ac_charging_status" charging_to_floating_mode: name: "Inveter charging_to_floating_mode" switch_on: name: "Inveter switch_on" dustproof_installed: name: "Inveter dustproof_installed" silence_buzzer_open_buzzer: name: "Inveter silence_buzzer_open_buzzer" overload_bypass_function: name: "Inveter overload_bypass_function" lcd_escape_to_default: name: "Inveter lcd_escape_to_default" overload_restart_function: name: "Inveter overload_restart_function" over_temperature_restart_function: name: "Inveter over_temperature_restart_function" backlight_on: name: "Inveter backlight_on" switch: - platform: pipsolar pipsolar_id: inverter0 output_source_priority_utility: name: "Inveter output_source_priority_utility" output_source_priority_solar: name: "Inveter output_source_priority_solar" output_source_priority_battery: name: "Inveter output_source_priority_battery" input_voltage_range: name: "Inveter input_voltage_range" pv_ok_condition_for_parallel: name: "Inveter pv_ok_condition_for_parallel" pv_power_balance: name: "Inveter pv_power_balance" output: - platform: pipsolar pipsolar_id: inverter0 battery_recharge_voltage: id: inverter0_battery_recharge_voltage_out
I try the new code with the two converter but I don't see any response
could you provide a schematic of your connections?
from esphome-pipsolar.
@lucasimons If your inverter always responds with a very short answer you could try to increase the baud rate (4800, 9600, 19200).
from esphome-pipsolar.
@lucasimons If your inverter always responds with a very short answer you could try to increase the baud rate (4800, 9600, 19200).
good point. i would first try to directly connect a PC to the inverter.. and check if there an answer gets out at least an error (NACK) or else.
from esphome-pipsolar.
I am also using an rp4 with solpiplog and that works but it is connected via usb, however now I try to see if the esp sends something by connecting it to the PC via a ttl to usb converter
from esphome-pipsolar.
I am also using an rp4 with solpiplog and that works but it is connected via usb, however now I try to see if the esp sends something by connecting it to the PC via a ttl to usb converter
i would do a step by step check.. does you esp send the commands correctly out ? just loop your rx and tx pin on esp.. to another/same/arduino and listen to uart data.
Then check the level shifter.. i also had some dead on arrival.
from esphome-pipsolar.
@lucasimons Which baudrate do you use at solpiplog?
from esphome-pipsolar.
i connect pc to the wemos and i think that works,
i don t know the baudrate of solpiplog baudrate i think that is 2400
from esphome-pipsolar.
@lucasimons If you type something into the putty terminal do you receive these bytes at the ESP?
from esphome-pipsolar.
yes i try to write something and the esp recive the data
from esphome-pipsolar.
The received exception on the left doesn't look good! ;-)
from esphome-pipsolar.
it actually doesn't look good but I clicked a few letters and / or numbers then hit enter,,,,could i write something like test?
from esphome-pipsolar.
If you press "space" your ESP should receive 20
each time. Receiving an exception means your ESP crashed.
from esphome-pipsolar.
@syssi , I've changed whatever I need to get all values from qpigs.
Need to redefine this variable to float in pipsolar.h:
PIPSOLAR_SENSOR(battery_voltage_scc, QPIGS, float)
At the parser in pipsolar.cpp
sscanf( // NOLINT tmp, // NOLINT "(%f %f %f %f %d %d %d %d %f %d %d %d %f %f %f %d %1d%1d%1d%1d%1d%1d%1d%1d %d %d %d %1d%1d%1d", // NOLINT &value_grid_voltage_, &value_grid_frequency_, &value_ac_output_voltage_, // NOLINT &value_ac_output_frequency_, // NOLINT &value_ac_output_apparent_power_, &value_ac_output_active_power_, &value_output_load_percent_, // NOLINT &value_bus_voltage_, &value_battery_voltage_, &value_battery_charging_current_, // NOLINT &value_battery_capacity_percent_, &value_inverter_heat_sink_temperature_, // NOLINT &value_pv_input_current_for_battery_, &value_pv_input_voltage_, &value_battery_voltage_scc_, // NOLINT &value_battery_discharge_current_, &value_add_sbu_priority_version_, // NOLINT &value_configuration_status_, &value_scc_firmware_version_, &value_load_status_, // NOLINT &value_battery_voltage_to_steady_while_charging_, &value_charging_status_, // NOLINT &value_scc_charging_status_, &value_ac_charging_status_, // NOLINT &value_battery_voltage_offset_for_fans_on_, &value_eeprom_version_, &value_pv_charging_power_, // NOLINT &value_charging_to_floating_mode_, &value_switch_on_, // NOLINT &value_dustproof_installed_);
Thank you so much for your help.
from esphome-pipsolar.
I've pushed a fix for the QPIGS response:
To illustrate the QPIGS parser I've introduced some comments:
Please give it a try by adding this external/fixed component to your YAML:
external_components: - source: github://syssi/esphome-pipsolar@2424mse1 refresh: 0s
@rem72 Did you see this message? You changed the type of pv_input_current_for_battery
, right?
from esphome-pipsolar.
@rem72 At the moment it's not possible to change the QPIGS parsing via the yaml configuration. Is soon we've created a proper parser for your device we can introduce a device toggle at the configuration layer.
Thank so much for your effort, Contact me if u need testing the configuration selector.
I finally get the component installed as local, and updated the code to obtain my data. Had to modify the header pipsolar.h too:
pipsolar.h:
line 70 PIPSOLAR_SENSOR(battery_voltage_scc, QPIGS, float)
-> int to float
pipsolar.cpp:
starting at line 451
sscanf( // NOLINT tmp, // NOLINT "(%f %f %f %f %d %d %d %d %f %d %d %d %f %f %f %d %1d%1d%1d%1d%1d%1d%1d%1d %d %d %d %1d%1d%1d", // NOLINT &value_grid_voltage_, &value_grid_frequency_, &value_ac_output_voltage_, // NOLINT &value_ac_output_frequency_, // NOLINT &value_ac_output_apparent_power_, &value_ac_output_active_power_, &value_output_load_percent_, // NOLINT &value_bus_voltage_, &value_battery_voltage_, &value_battery_charging_current_, // NOLINT &value_battery_capacity_percent_, &value_inverter_heat_sink_temperature_, // NOLINT &value_pv_input_current_for_battery_, &value_pv_input_voltage_, &value_battery_voltage_scc_, // NOLINT &value_battery_discharge_current_, &value_add_sbu_priority_version_, // NOLINT &value_configuration_status_, &value_scc_firmware_version_, &value_load_status_, // NOLINT &value_battery_voltage_to_steady_while_charging_, &value_charging_status_, // NOLINT &value_scc_charging_status_, &value_ac_charging_status_, // NOLINT &value_battery_voltage_offset_for_fans_on_, &value_eeprom_version_, &value_pv_charging_power_, // NOLINT &value_charging_to_floating_mode_, &value_switch_on_, // NOLINT &value_dustproof_installed_);
This is my code, but sure it can be improved.
The final result:
from esphome-pipsolar.
Is there a possibility to use the rj45 port to test with watchpower if there is a problem with that port? Do you need an rj45 to rs232 and rs232 to usb cable or is there a direct rj45 to usb cable?
from esphome-pipsolar.
I have bought this cable from amazon and i have tried to connect the pc to the inverter with the rj45 port but it don t send any data, how i can do a test ? now i m using the solpiplog connected with usb and it works i have tried to connect the rp4 at th rj45 port but not work, so i think that the rj45 port of my inverter doesn t work ... Can i use the usb port to connect with the esp?
from esphome-pipsolar.
RS232 is pretty simple. You have +15V and -15V. The voltages alternate rapidly while sending or receiving data.
The idle voltage is -15V. So you can just troubleshoot the connections with a multimeter.
I've added a picture to #3 (comment) where the top of the connector is Pin 1
from esphome-pipsolar.
I believe that my inverter is not sending anything, but I can try, do you know if the two rj45 and usb outputs work in parallel or if one disables the other?
from esphome-pipsolar.
from esphome-pipsolar.
Today I tried via pc but nothing the inverter seems to send nothing, but if I connect the usb to the raspberry with solpiplog it works, I wanted to see if the serial port works but via pc with watch power I could not do it there are other software?
from esphome-pipsolar.
Here are the promised pictures.
I know it's difficult to see. I fanned out the network cable to 1234 from the top and then 5678 to the right.
If you build something like this then include a bulk capacitor (bottom). The ESP-Module sometimes sips 500mA
blue / white is rx / tx (I don't remember which one).
remeber the ESP is NOT TTL (5V) level. You need you uart signal at 3.3v Level. I had issues when directly connection the TTL-Level(5V). therefor perhaps the max3232 chip is better. Is made a board where i can directly connect 2 Invertes (but one works also ).. if there is the need i can make the data available.. or even let a pcb-fab do some for shipping?
@andreashergert1984
Are you willing to share the schematics for your custom made dual inverter board?
I have my inverter running perfect with a pref board and a max3232 but I must admit it don't look good.
Thanx
from esphome-pipsolar.
for sure ;) have a look at https://github.com/andreashergert1984/stufftoshare/tree/main/pipsolar_dual-adapter notes: this board is meant to be powered by 2 inverters directly. But: you need 2 of them otherwise the supplied power is not enough. If you want to power the board externaly.. just remove the stepdown and put 5V to the pinout of the step-down ;) in this case.. you can also remove the 2 diodes as they have the purpose to protect the 2 inverter-power-rails. Additionaly this board has a ads1115 onboard to readout (via a resistor-network) my 48V (4x12V) Battery-Cells.. you can just remove it if not needed.
enjoy
Thank you
from esphome-pipsolar.
I believe that my inverter is not sending anything, but I can try, do you know if the two rj45 and usb outputs work in parallel or if one disables the other?
Did You solve problem in Your case ? I have EASUN SMV 3k inverter and also cannot connect via pipsolar addon. I tried ESP8266, ESP32, RS232-TTL (mini) different connections and still no anwser from inveter ...
from esphome-pipsolar.
I believe that my inverter is not sending anything, but I can try, do you know if the two rj45 and usb outputs work in parallel or if one disables the other?
Did You solve problem in Your case ? I have EASUN SMV 3k inverter and also cannot connect via pipsolar addon. I tried ESP8266, ESP32, RS232-TTL (mini) different connections and still no anwser from inveter ...
Can I connect LED with 1kOhm resistor to TX signal to check if inverter try to communicate ? It will work ?
from esphome-pipsolar.
from esphome-pipsolar.
you can do that. I think it's active low, so the TX line gets pulled to ground on signal. You can also sniff with a second usb-ttl converter and a pc
Than I will give a try.
from esphome-pipsolar.
In my case problem was power supply of RS232-TTL (mini). It looks like 3,3V is not enoght, I put 5V and all problems gone :-)
BTW: it is possible to use "update interval" of sensors ? I tried to put it into code (under " - platform: pipsolar" but cannot compile it ...
from esphome-pipsolar.
Hello, I have successfully integrated this inverter in home assistant with pipsolar in a esp8266, but i have two problems, one with the temperature sensor, and another is that the SBU I can not activate, the other two modes work without problem, I can activate either of the two and they automatically switch between them.
What can I do?
thanks a lot, syssi and all colleagues
from esphome-pipsolar.
Can you send a Pic of your converter and esp8266?
from esphome-pipsolar.
I have used a wemos mini and rs232 to ttl converter, I have tried two models, same result
I doubt very much that it is the fault of the Converter or the esp8266, because everything else works perfectly
from esphome-pipsolar.
Could you increase the log level of the pipsolar component to VERY_VERBOSE
and capture some traffic (while trying to toggle the different modes)? Do you know the correct temperature (f.e. 44.7 degrees)?
from esphome-pipsolar.
ok, I test and send the results, I can't get the temperature data any other way right now, because the original software of this inverter is the watch power, which says nothing about the temperature. I'm going to try to extract it in another way, soon I update, thanks
from esphome-pipsolar.
first two satisfactory example
When change USB to SBU:
[10:36:59][V][text_sensor:016]: 'pipsolar last_qflag': Received new state (EbDajkuvxyz
[10:36:59][D][text_sensor:067]: 'pipsolar last_qflag': Sending state '(EbDajkuvxyz'
[10:37:00][D][switch:013]: 'pipsolar output_source_priority_solar' Turning ON.
[10:37:00][D][pipsolar:856]: got command: POP01
[10:37:00][D][pipsolar:848]: Command queued successfully: POP01 with length 5 at position 0
[10:37:00][D][pipsolar:807]: Sending command from queue: POP01 with length 5
[10:37:00][D][pipsolar:042]: response length for command OK
[10:37:00][D][pipsolar:772]: checking crc on incoming message
[10:37:00][D][pipsolar:775]: CRC OK
[10:37:00][D][pipsolar:046]: command successful
[10:37:00][D][pipsolar:838]: Sending polling command : QPIRI with length 5
[10:37:00][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=2209126 (now=2210132)
[10:37:01][D][pipsolar:772]: checking crc on incoming message
[10:37:01][D][pipsolar:775]: CRC OK
[10:37:01][D][pipsolar:429]: Decode QPIRI
[10:37:01][V][text_sensor:016]: 'pipsolar last_qpiri': Received new state (230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 1 2 - 01 1 0 24.0 0 0
[10:37:01][D][text_sensor:067]: 'pipsolar last_qpiri': Sending state '(230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 1 2 - 01 1 0 24.0 0 0'
[10:37:01][D][sensor:113]: 'pipsolar grid_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar grid_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar ac_output_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar ac_output_rating_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar ac_output_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar ac_output_rating_apparent_power': Sending state 3000.00000 VA with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar ac_output_rating_active_power': Sending state 2400.00000 W with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_rating_voltage': Sending state 24.00000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_recharge_voltage': Sending state 23.50000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_under_voltage': Sending state 23.00000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_bulk_voltage': Sending state 27.80000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_float_voltage': Sending state 27.20000 V with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_type': Sending state 2.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar current_max_ac_charging_current': Sending state 30.00000 A with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar current_max_charging_current': Sending state 50.00000 A with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar input_voltage_range': Sending state 0.00000 with 1 decimals of accuracy
**[10:37:01][D][sensor:113]: 'pipsolar output_source_priority': Sending state 1.00000 with 1 decimals of accuracy
[10:37:01][D][switch:037]: 'pipsolar output_source_priority_utility': Sending state OFF
[10:37:01][D][switch:037]: 'pipsolar output_source_priority_solar': Sending state ON**
[10:37:01][D][sensor:113]: 'pipsolar charger_source_priority': Sending state 2.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar parallel_max_num': Sending state 0.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar machine_type': Sending state 0.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar topology': Sending state 0.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar output_mode': Sending state 0.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar battery_redischarge_voltage': Sending state 0.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar pv_ok_condition_for_parallel': Sending state 0.00000 with 1 decimals of accuracy
[10:37:01][D][sensor:113]: 'pipsolar pv_power_balance': Sending state 0.00000 with 1 decimals of accuracy
When change SUB to USB:
[10:43:36][V][text_sensor:016]: 'pipsolar last_qpiri': Received new state (230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0
[10:43:36][D][text_sensor:067]: 'pipsolar last_qpiri': Sending state '(230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0'
[10:43:36][D][sensor:113]: 'pipsolar grid_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar grid_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar ac_output_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar ac_output_rating_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar ac_output_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar ac_output_rating_apparent_power': Sending state 3000.00000 VA with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar ac_output_rating_active_power': Sending state 2400.00000 W with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_rating_voltage': Sending state 24.00000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_recharge_voltage': Sending state 23.50000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_under_voltage': Sending state 23.00000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_bulk_voltage': Sending state 27.80000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_float_voltage': Sending state 27.20000 V with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_type': Sending state 2.00000 with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar current_max_ac_charging_current': Sending state 30.00000 A with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar current_max_charging_current': Sending state 50.00000 A with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar input_voltage_range': Sending state 0.00000 with 1 decimals of accuracy
**[10:43:36][D][sensor:113]: 'pipsolar output_source_priority': Sending state 0.00000 with 1 decimals of accuracy
[10:43:36][D][switch:037]: 'pipsolar output_source_priority_utility': Sending state ON
[10:43:36][D][switch:037]: 'pipsolar output_source_priority_solar': Sending state OFF**
[10:43:36][D][sensor:113]: 'pipsolar charger_source_priority': Sending state 2.00000 with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar parallel_max_num': Sending state 0.00000 with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar machine_type': Sending state 0.00000 with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar topology': Sending state 0.00000 with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar output_mode': Sending state 0.00000 with 1 decimals of accuracy
[10:43:36][D][sensor:113]: 'pipsolar battery_redischarge_voltage': Sending state 0.00000 with 1 decimals of accuracy
[10:43:36][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=2605126 (now=2606132)
[10:43:37][D][pipsolar:838]: Sending polling command : QPIGS with length 5
[10:43:37][D][pipsolar:772]: checking crc on incoming message
[10:43:37][D][pipsolar:775]: CRC OK
[10:43:37][D][pipsolar:448]: Decode QPIGS
[10:43:37][V][text_sensor:016]: 'pipsolar last_qpigs': Received new state (001.0 00.0 229.0 50.0 0000 0000 000 415 27.29 000 100 0479 0000 000.0 00.00 00001 10010000 00 04 00000 000
[10:43:37][D][text_sensor:067]: 'pipsolar last_qpigs': Sending state '(001.0 00.0 229.0 50.0 0000 0000 000 415 27.29 000 100 0479 0000 000.0 00.00 00001 10010000 00 04 00000 000'
[10:43:37][D][sensor:113]: 'pipsolar grid_voltage': Sending state 1.00000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar grid_frequency': Sending state 0.00000 Hz with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar ac_output_voltage': Sending state 229.00000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar ac_output_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar ac_output_apparent_power': Sending state 0.00000 VA with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar ac_output_active_power': Sending state 0.00000 W with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar output_load_percent': Sending state 0.00000 % with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar bus_voltage': Sending state 415.00000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar battery_voltage': Sending state 27.29000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar battery_charging_current': Sending state 0.00000 A with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar battery_capacity_percent': Sending state 100.00000 % with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar inverter_heat_sink_temperature': Sending state 479.00000 °C with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar pv_input_current_for_battery': Sending state 0.00000 A with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar pv_input_voltage': Sending state 0.00000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar battery_voltage_scc': Sending state 0.00000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar battery_discharge_current': Sending state 1.00000 A with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar battery_voltage_offset_for_fans_on': Sending state 0.00000 V with 1 decimals of accuracy
[10:43:37][D][sensor:113]: 'pipsolar pv_charging_power': Sending state 0.00000 W with 1 decimals of accuracy
[10:43:37][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=2606126 (now=2607132)
[10:43:38][D][pipsolar:838]: Sending polling command : QMOD with length 4
[10:43:38][D][pipsolar:772]: checking crc on incoming message
[10:43:38][D][pipsolar:775]: CRC OK
[10:43:38][D][pipsolar:471]: Decode QMOD
[10:43:38][V][text_sensor:016]: 'pipsolar last_qmod': Received new state (B
[10:43:38][D][text_sensor:067]: 'pipsolar last_qmod': Sending state '(B'
[10:43:38][V][text_sensor:016]: 'pipsolar device_mode': Received new state B
[10:43:38][D][text_sensor:067]: 'pipsolar device_mode': Sending state 'B'
[10:43:38][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=2607126 (now=2608126)
[10:43:39][D][pipsolar:838]: Sending polling command : QFLAG with length 5
[10:43:39][D][pipsolar:772]: checking crc on incoming message
[10:43:39][D][pipsolar:775]: CRC OK
[10:43:39][D][pipsolar:479]: Decode QFLAG
[10:43:39][V][text_sensor:016]: 'pipsolar last_qflag': Received new state (EbDajkuvxyz
[10:43:39][D][text_sensor:067]: 'pipsolar last_qflag': Sending state '(EbDajkuvxyz'
[10:43:39][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=2608126 (now=2609126)
[10:43:40][D][pipsolar:838]: Sending polling command : QPIRI with length 5
[10:43:40][D][pipsolar:772]: checking crc on incoming message
[10:43:40][D][pipsolar:775]: CRC OK
[10:43:40][D][pipsolar:429]: Decode QPIRI
[10:43:40][V][text_sensor:016]: 'pipsolar last_qpiri': Received new state (230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0
[10:43:40][D][text_sensor:067]: 'pipsolar last_qpiri': Sending state '(230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0'
[10:43:40][D][sensor:113]: 'pipsolar grid_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar grid_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar ac_output_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar ac_output_rating_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar ac_output_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar ac_output_rating_apparent_power': Sending state 3000.00000 VA with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar ac_output_rating_active_power': Sending state 2400.00000 W with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_rating_voltage': Sending state 24.00000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_recharge_voltage': Sending state 23.50000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_under_voltage': Sending state 23.00000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_bulk_voltage': Sending state 27.80000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_float_voltage': Sending state 27.20000 V with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_type': Sending state 2.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar current_max_ac_charging_current': Sending state 30.00000 A with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar current_max_charging_current': Sending state 50.00000 A with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar input_voltage_range': Sending state 0.00000 with 1 decimals of accuracy
**[10:43:40][D][sensor:113]: 'pipsolar output_source_priority': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar charger_source_priority': Sending state 2.00000 with 1 decimals of accuracy**
[10:43:40][D][sensor:113]: 'pipsolar parallel_max_num': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar machine_type': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar topology': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar output_mode': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar battery_redischarge_voltage': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar pv_ok_condition_for_parallel': Sending state 0.00000 with 1 decimals of accuracy
[10:43:40][D][sensor:113]: 'pipsolar pv_power_balance': Sending state 0.00000 with 1 decimals of accuracy
from esphome-pipsolar.
Could you provide the external_components
section of you yaml? Do you use the official component or the feature branch 2424mse1
?
from esphome-pipsolar.
Could you provide the
external_components
section of you yaml? Do you use the official component or the feature branch2424mse1
?
I think that I use official component, because don't have any external components section
from esphome-pipsolar.
Alright. Do you know your inverter model has something in common with the 2424MSE1?
from esphome-pipsolar.
Alright. Do you know your inverter model has something in common with the 2424MSE1?
I don't know, I think my model is something different, or an older model/version, but if you want I will try what you tell me to see if it works
from esphome-pipsolar.
from esphome-pipsolar.
Hi I bought a new 2424mse and this should work the rj45 port so in the next few days I will do a test as it seems to work with the 24v version of @diybateriaslifepo4
from esphome-pipsolar.
Could you provide the
external_components
section of you yaml? Do you use the official component or the feature branch2424mse1
?
I have tried putting the external_components but it doesn't work with my current configuration, I don't know how to do it
from esphome-pipsolar.
Hi I bought a new 2424mse and this should work the rj45 port so in the next few days I will do a test as it seems to work with the 24v version of @diybateriaslifepo4
I see that both have the same screen model, although they are not the same inside, I hope it works, thanks
from esphome-pipsolar.
@diybateriaslifepo4 inside I think that are different !
from esphome-pipsolar.
@diybateriaslifepo4 inside I think that are different !
they are definitely different, they are still similar, when you try it let me know, thank you
from esphome-pipsolar.
I have tried putting the external_components but it doesn't work with my current configuration, I don't know how to do it
I've fixed the issue. Please try again.
from esphome-pipsolar.
I will prepare a new feature branch for your device. It looks like your device isn't 2424MSE1 compatible. Could you create a new issue?
from esphome-pipsolar.
I will prepare a new feature branch for your device. It looks like your device isn't 2424MSE1 compatible. Could you create a new issue?
sorry for the last message, the device was not properly connected, it does read the data with the external component, but everything remains the same
[09:12:07][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=237879 (now=238889)
[09:12:08][D][pipsolar:890]: Sending polling command : QMOD with length 4
[09:12:08][D][switch:013]: 'pipsolar output_source_priority_battery' Turning ON.
[09:12:08][D][pipsolar:908]: got command: POP02
[09:12:08][D][pipsolar:900]: Command queued successfully: POP02 with length 5 at position 3
[09:12:08][D][pipsolar:824]: checking crc on incoming message
[09:12:08][D][pipsolar:827]: CRC OK
[09:12:08][D][pipsolar:523]: Decode QMOD
[09:12:08][V][text_sensor:016]: 'pipsolar last_qmod': Received new state (B
[09:12:08][D][text_sensor:067]: 'pipsolar last_qmod': Sending state '(B'
[09:12:08][V][text_sensor:016]: 'pipsolar device_mode': Received new state B
[09:12:08][D][text_sensor:067]: 'pipsolar device_mode': Sending state 'B'
[09:12:08][D][pipsolar:859]: Sending command from queue: POP02 with length 5
[09:12:08][D][pipsolar:042]: response length for command OK
[09:12:08][D][pipsolar:824]: checking crc on incoming message
[09:12:08][D][pipsolar:827]: CRC OK
[09:12:08][D][pipsolar:048]: command not successful
[09:12:08][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=238879 (now=239879)
[09:12:09][D][pipsolar:890]: Sending polling command : QFLAG with length 5
[09:12:09][D][pipsolar:824]: checking crc on incoming message
[09:12:09][D][pipsolar:827]: CRC OK
[09:12:09][D][pipsolar:531]: Decode QFLAG
[09:12:09][V][text_sensor:016]: 'pipsolar last_qflag': Received new state (EbDajkuvxyz
[09:12:09][D][text_sensor:067]: 'pipsolar last_qflag': Sending state '(EbDajkuvxyz'
[09:12:09][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=239879 (now=240879)
[09:12:10][D][pipsolar:890]: Sending polling command : QPIRI with length 5
[09:12:10][D][pipsolar:824]: checking crc on incoming message
[09:12:10][D][pipsolar:827]: CRC OK
[09:12:10][D][pipsolar:429]: Decode QPIRI
[09:12:10][V][text_sensor:016]: 'pipsolar last_qpiri': Received new state (230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0
[09:12:10][D][text_sensor:067]: 'pipsolar last_qpiri': Sending state '(230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0'
[09:12:10][D][sensor:113]: 'pipsolar grid_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar grid_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar ac_output_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar ac_output_rating_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar ac_output_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar ac_output_rating_apparent_power': Sending state 3000.00000 VA with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar ac_output_rating_active_power': Sending state 2400.00000 W with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_rating_voltage': Sending state 24.00000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_recharge_voltage': Sending state 23.50000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_under_voltage': Sending state 23.00000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_bulk_voltage': Sending state 27.80000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_float_voltage': Sending state 27.20000 V with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_type': Sending state 2.00000 with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar current_max_ac_charging_current': Sending state 30.00000 A with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar current_max_charging_current': Sending state 50.00000 A with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar input_voltage_range': Sending state 0.00000 with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar output_source_priority': Sending state 0.00000 with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar charger_source_priority': Sending state 2.00000 with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar output_mode': Sending state 0.00000 with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar battery_redischarge_voltage': Sending state 0.00000 with 1 decimals of accuracy
[09:12:10][D][sensor:113]: 'pipsolar pv_power_balance': Sending state 0.00000 with 1 decimals of accuracy
[09:12:10][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=240879 (now=241879)
[09:12:11][D][pipsolar:890]: Sending polling command : QPIGS with length 5
[09:12:11][D][pipsolar:824]: checking crc on incoming message
[09:12:11][D][pipsolar:827]: CRC OK
[09:12:11][D][pipsolar:448]: Decode QPIGS
[09:12:11][V][text_sensor:016]: 'pipsolar last_qpigs': Received new state (001.0 00.0 229.0 50.0 0000 0000 000 413 27.23 000 100 0672 0000 000.0 00.00 00001 10010000 00 04 00000 000
[09:12:11][D][text_sensor:067]: 'pipsolar last_qpigs': Sending state '(001.0 00.0 229.0 50.0 0000 0000 000 413 27.23 000 100 0672 0000 000.0 00.00 00001 10010000 00 04 00000 000'
[09:12:11][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=241879 (now=242879)
[09:12:11][D][sensor:113]: 'pipsolar grid_voltage': Sending state 1.00000 V with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar grid_frequency': Sending state 0.00000 Hz with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar ac_output_voltage': Sending state 229.00000 V with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar ac_output_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar ac_output_apparent_power': Sending state 0.00000 VA with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar ac_output_active_power': Sending state 0.00000 W with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar output_load_percent': Sending state 0.00000 % with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar bus_voltage': Sending state 413.00000 V with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar battery_voltage': Sending state 27.23000 V with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar battery_charging_current': Sending state 0.00000 A with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar battery_capacity_percent': Sending state 100.00000 % with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar inverter_heat_sink_temperature': Sending state 672.00000 °C with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar pv_input_current_for_battery': Sending state 0.00000 A with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar pv_input_voltage': Sending state 0.00000 V with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar battery_voltage_scc': Sending state 0.00000 V with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar battery_discharge_current': Sending state 1.00000 A with 1 decimals of accuracy
[09:12:11][D][sensor:113]: 'pipsolar pv_charging_power': Sending state 0.00000 W with 1 decimals of accuracy
[09:12:12][D][pipsolar:890]: Sending polling command : QMOD with length 4
[09:12:12][D][pipsolar:824]: checking crc on incoming message
[09:12:12][D][pipsolar:827]: CRC OK
[09:12:12][D][pipsolar:523]: Decode QMOD
[09:12:12][V][text_sensor:016]: 'pipsolar last_qmod': Received new state (B
[09:12:12][D][text_sensor:067]: 'pipsolar last_qmod': Sending state '(B'
[09:12:12][V][text_sensor:016]: 'pipsolar device_mode': Received new state B
[09:12:12][D][text_sensor:067]: 'pipsolar device_mode': Sending state 'B'
[09:12:12][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=242879 (now=243879)
[09:12:13][D][pipsolar:890]: Sending polling command : QFLAG with length 5
[09:12:13][D][pipsolar:824]: checking crc on incoming message
[09:12:13][D][pipsolar:827]: CRC OK
[09:12:13][D][pipsolar:531]: Decode QFLAG
[09:12:13][V][text_sensor:016]: 'pipsolar last_qflag': Received new state (EbDajkuvxyz
[09:12:13][D][text_sensor:067]: 'pipsolar last_qflag': Sending state '(EbDajkuvxyz'
[09:12:13][VV][scheduler:185]: Running interval 'update' with interval=1000 last_execution=243879 (now=244881)
[09:12:14][D][pipsolar:890]: Sending polling command : QPIRI with length 5
[09:12:14][D][pipsolar:824]: checking crc on incoming message
[09:12:14][D][pipsolar:827]: CRC OK
[09:12:14][D][pipsolar:429]: Decode QPIRI
[09:12:14][V][text_sensor:016]: 'pipsolar last_qpiri': Received new state (230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0
[09:12:14][D][text_sensor:067]: 'pipsolar last_qpiri': Sending state '(230.0 13.0 230.0 50.0 13.0 3000 2400 24.0 23.5 23.0 27.8 27.2 2 30 50 0 0 2 - 01 1 0 24.0 0 0'
[09:12:14][D][sensor:113]: 'pipsolar grid_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[09:12:14][D][sensor:113]: 'pipsolar grid_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[09:12:14][D][sensor:113]: 'pipsolar ac_output_rating_voltage': Sending state 230.00000 V with 1 decimals of accuracy
[09:12:14][D][sensor:113]: 'pipsolar ac_output_rating_frequency': Sending state 50.00000 Hz with 1 decimals of accuracy
[09:12:14][D][sensor:113]: 'pipsolar ac_output_rating_current': Sending state 13.00000 A with 1 decimals of accuracy
[09:12:14][D][sensor:113]: 'pipsolar ac_output_rating_apparent_power': Sending state 3000.00000 VA with 1 decimals of accuracy
I active SBU but nothing happens
from esphome-pipsolar.
Я выдвинул исправление для ответа QPIGS:
Чтобы проиллюстрировать синтаксический анализатор QPIGS, я добавил несколько комментариев:
Пожалуйста, попробуйте, добавив этот внешний/фиксированный компонент в свой YAML:
external_components: - source: github://syssi/esphome-pipsolar@2424mse1 refresh: 0s
Hello! Спасибо за работу! I used the standard esphome pipsolar and got a problem with determining the data, nothing worked after the temperature data, the data itself came to yuart regularly (judging by the logs). I had to spend a lot of time until I found this tip about pipsolar@2424mse1, I think it would be great to add this information to the main page.
I use Voltronic Axpert_MAX_3600 24 volt.
P.S. Is it possible to get generation data in kWh like WatchPower using QED, QEM, QEY commands? After the transition, a QMOD, QPIRI, QPIGS request is sent to the inverter. Is it possible to leave only QPIGS as it was before?
from esphome-pipsolar.
I intercepted the communication between WatchPower and the inverter, all the codes are there. I will post if needed
from esphome-pipsolar.
I intercepted the communication between WatchPower and the inverter, all the codes are there. I will post if needed
Post them please [
from esphome-pipsolar.
If I can comment on some, but I think you will understand.
I am interested in QED, QEM, QEY, sensors of output W per day, month and year, respectively.
I will help with I can!
from esphome-pipsolar.
Related Issues (20)
- inverter suddenly stopped working HOT 2
- Add measurement
- Conection lost
- pipsolar + jk_bms HOT 1
- esphome reports "unknown" when inverter shuts down or on its own sometimes HOT 1
- Pooling command for P18 wrong HOT 1
- Question regarding ttl RS485 adapter HOT 4
- set_level action expects a percentage and clips values above 1.0 HOT 4
- Qoltec 6KW (PI30) - timeout QPIGS other works HOT 3
- Adding external componen not found HOT 4
- MPI 10k integration
- pipsolar ac_output_active_power HOT 1
- Effecta AX-P1 whit USB2.0 typ B COM port HOT 11
- Apiconnectionerror HOT 2
- Inverter Log HOT 1
- Component jk_modbus took a long time for an operation.... and cause esp to halt after sometime HOT 2
- Add/verify Phocos Any-Grid support HOT 33
- Axpert Max 11 add PCVT command.
- Daxtromn 6.2kW issue HOT 6
- Add Voltronic MK KING PIP30 support HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esphome-pipsolar.