Comments (16)
I will love to see charger_source_priority dropdown as well
thanks
M.
from esphome-pipsolar.
I ll love too
from esphome-pipsolar.
syssi if you, you could tell me wich files are involve, i could try to butch the files using the inverter output priority select as a template and try with my inverter.
thanks.
M.
from esphome-pipsolar.
But it already has is
Here's a piece of my config
from esphome-pipsolar.
Im using this and esphome return error, any help?
select:
- platform: pipsolar
pipsolar_id: ${id}
charger_source_priority:
id: ${id}_charger_source_priority_select
name: $(name) Charger Source Priority Select
optionsmap:
"Solar first": "PCP01"
"Solar and utility": "PCP02"
"Solar charging only": "PCP03"
statusmap:
"1": "Solar first"
"2": "Solar and utility"
"3": "Solar charging only"
ERROR
Platform not found: 'select.pipsolar'.
from esphome-pipsolar.
@hosflow I think you don't have this installed
It should be a part of ESPHome by default for a while, maybe you have a very old version?
Do sensors work, for example?
from esphome-pipsolar.
@hosflow I think you don't have this installed It should be a part of ESPHome by default for a while, maybe you have a very old version? Do sensors work, for example?
Everything works from pipsolar, it only stops working if you add this configuration, I don't know if I have to install another one, I'm new to esphome and what I used was a docker container that I uploaded less than 10 days ago, version 2024.2.1, I even tried run a clean build files, but it gives the error: Platform not found: 'select.pipsolar'. But if you remove that part everything works.
substitutions:
id: inverter0
select:
- platform: pipsolar
pipsolar_id: ${id}
charger_source_priority:
id: ${id}_charger_source_priority_select
name: $(name) Charger Source Priority Select
optionsmap:
"Solar first": "PCP01"
"Solar and utility": "PCP02"
"Solar charging only": "PCP03"
statusmap:
"1": "Solar first"
"2": "Solar and utility"
"3": "Solar charging only"
from esphome-pipsolar.
Do you use this repo?
You'll need
external_components:
- source: github://syssi/esphome-pipsolar
in your config
Or specify a branch with "@" after
from esphome-pipsolar.
Do you use this repo? You'll need
external_components: - source: github://syssi/esphome-pipsolar
in your config Or specify a branch with "@" after
Could not find components folder for source. Please check the source contains a 'components' or 'esphome/components' folder.
source: github://syssi/esphome-pipsolar@main
refresh: 0s
I tried with @main and about 5 different branches and it didn't work, it gives the error above or others with options not found. I would like to take advantage of this and thank you for taking the time to try to help me. Thank you very much
from esphome-pipsolar.
@hosflow Could you provide your complete YAML? :-)
from esphome-pipsolar.
@hosflow Could you provide your complete YAML? :-)
Of course, follow below
substitutions:
name: pipsolar
tx_pin: GPIO1
rx_pin: GPIO3
id: inverter0
esphome:
name: ${name}
esp8266:
board: esp01_1m
external_components:
- source: github://syssi/esphome-pipsolar@main
refresh: 0s
logger:
baud_rate: 0
level: INFO
api:
encryption:
key: "PInurfsFYyPLd3S4Ek2/vKdMvfjeWr/4coB2h5GD7Dc="
ota:
password: "8f2c8da7ac6d03005c844371073dd7dc"
wifi:
networks:
- ssid: !secret wifi_ssid
password: !secret wifi_password
- ssid: LIVE TIM_5201_2G
password: dazegT53
power_save_mode: none
manual_ip:
static_ip: 192.168.177.121
gateway: 192.168.177.1
subnet: 255.255.255.0
ap:
ssid: "${name} Hotspot"
password: "U1SFCinhg9jy"
# Warning:
#
# If you configure a lot of the possible sensors etc. it could be that you run
# out of memory (on esp8266). If you configure nearly all sensors etc. you run
# in a stack-size issue. In this case you have to increase stack size!
#
# https://github.com/esphome/issues/issues/855
uart:
id: uart_0
baud_rate: 2400
tx_pin: ${tx_pin}
rx_pin: ${rx_pin}
debug:
direction: BOTH
dummy_receiver: false
after:
delimiter: "\r"
sequence:
- lambda: UARTDebug::log_string(direction, bytes);
pipsolar:
uart_id: uart_0
id: inverter0
sensor:
- platform: pipsolar
pipsolar_id: inverter0
# QPIRI
# grid_rating_voltage:
# name: "${name} grid_rating_voltage"
# grid_rating_current:
# name: "${name} grid_rating_current"
# ac_output_rating_voltage:
# name: "${name} ac_output_rating_voltage"
# ac_output_rating_frequency:
# name: "${name} ac_output_rating_frequency"
# ac_output_rating_current:
# name: "${name} ac_output_rating_current"
# ac_output_rating_apparent_power:
# name: "${name} ac_output_rating_apparent_power"
# ac_output_rating_active_power:
# name: "${name} ac_output_rating_active_power"
# battery_rating_voltage:
# name: "${name} battery_rating_voltage"
# battery_recharge_voltage:
# name: "${name} battery_recharge_voltage"
# battery_under_voltage:
# name: "${name} battery_under_voltage"
# battery_bulk_voltage:
# name: "${name} battery_bulk_voltage"
# battery_float_voltage:
# name: "${name} battery_float_voltage"
# battery_type:
# name: "${name} battery_type"
current_max_ac_charging_current:
name: "${name} current_max_ac_charging_current"
current_max_charging_current:
name: "${name} current_max_charging_current"
# input_voltage_range:
# name: "${name} input_voltage_range"
output_source_priority:
name: "${name} output_source_priority"
# charger_source_priority:
# name: "${name} charger_source_priority"
# parallel_max_num:
# name: "${name} parallel_max_num"
# machine_type:
# name: "${name} machine_type"
# topology:
# name: "${name} topology"
# output_mode:
# name: "${name} output_mode"
# battery_redischarge_voltage:
# name: "${name} battery_redischarge_voltage"
# pv_ok_condition_for_parallel:
# name: "${name} pv_ok_condition_for_parallel"
# pv_power_balance:
# name: "${name} pv_power_balance"
# QPIGS
grid_voltage:
name: "${name} grid_voltage"
grid_frequency:
name: "${name} grid_frequency"
ac_output_voltage:
name: "${name} ac_output_voltage"
ac_output_frequency:
name: "${name} ac_output_frequency"
ac_output_apparent_power:
name: "${name} ac_output_apparent_power"
ac_output_active_power:
name: "${name} ac_output_active_power"
output_load_percent:
name: "${name} output_load_percent"
bus_voltage:
name: "${name} bus_voltage"
battery_voltage:
name: "${name} battery_voltage"
battery_charging_current:
name: "${name} battery_charging_current"
battery_capacity_percent:
name: "${name} battery_capacity_percent"
inverter_heat_sink_temperature:
name: "${name} inverter_heat_sink_temperature"
pv_input_current_for_battery:
name: "${name} pv_input_current_for_battery"
pv_input_voltage:
name: "${name} pv_input_voltage"
battery_voltage_scc:
name: "${name} battery_voltage_scc"
battery_discharge_current:
name: "${name} battery_discharge_current"
battery_voltage_offset_for_fans_on:
name: "${name} battery_voltage_offset_for_fans_on"
# eeprom_version:
# name: "${name} eeprom_version"
pv_charging_power:
name: "${name} pv_charging_power"
text_sensor:
- platform: pipsolar
pipsolar_id: inverter0
device_mode:
name: "${name} device_mode"
# last_qpigs:
# name: "${name} last_qpigs"
# last_qpiri:
# name: "${name} last_qpiri"
# last_qmod:
# name: "${name} last_qmod"
# last_qflag:
# name: "${name} last_qflag"
binary_sensor:
- platform: pipsolar
pipsolar_id: inverter0
add_sbu_priority_version:
name: "${name} add_sbu_priority_version"
configuration_status:
name: "${name} configuration_status"
scc_firmware_version:
name: "${name} scc_firmware_version"
load_status:
name: "${name} load_status"
# battery_voltage_to_steady_while_charging:
# name: "${name} battery_voltage_to_steady_while_charging"
charging_status:
name: "${name} charging_status"
scc_charging_status:
name: "${name} scc_charging_status"
ac_charging_status:
name: "${name} ac_charging_status"
charging_to_floating_mode:
name: "${name} charging_to_floating_mode"
switch_on:
name: "${name} switch_on"
# dustproof_installed:
# name: "${name} dustproof_installed"
silence_buzzer_open_buzzer:
name: "${name} silence_buzzer_open_buzzer"
overload_bypass_function:
name: "${name} overload_bypass_function"
lcd_escape_to_default:
name: "${name} lcd_escape_to_default"
overload_restart_function:
name: "${name} overload_restart_function"
over_temperature_restart_function:
name: "${name} over_temperature_restart_function"
backlight_on:
name: "${name} backlight_on"
switch:
- platform: pipsolar
pipsolar_id: inverter0
output_source_priority_utility:
name: "${name} output_source_priority_utility"
output_source_priority_solar:
name: "${name} output_source_priority_solar"
output_source_priority_battery:
name: "${name} output_source_priority_battery"
# input_voltage_range:
# name: "${name} input_voltage_range"
# pv_ok_condition_for_parallel:
# name: "${name} pv_ok_condition_for_parallel"
# pv_power_balance:
# name: "${name} pv_power_balance"
output:
- platform: pipsolar
pipsolar_id: inverter0
battery_recharge_voltage:
id: inverter0_battery_recharge_voltage_out
select:
- platform: pipsolar
pipsolar_id: ${id}
charger_source_priority:
id: ${id}_charger_source_priority_select
name: $(name) Charger Source Priority Select
optionsmap:
"Solar first": "PCP01"
"Solar and utility": "PCP02"
"Solar charging only": "PCP03"
statusmap:
"1": "Solar first"
"2": "Solar and utility"
"3": "Solar charging only"
# select:
# - platform: pipsolar
# pipsolar_id: ${id}
# output_source_priority:
# id: ${id}_output_source_priority_select
# name: ${name} Output Source Priority Select
# optionsmap:
# "Utility first": "POP00"
# "Solar only": "POP01"
# "Solar Battery Utility": "POP02"
# statusmap:
# "0": "Utility first"
# "1": "Solar only"
# "2": "Solar Battery Utility"
from esphome-pipsolar.
I've changed the branch to pip8084
and made some minor changes because of the updated code base. Please give it a try:
substitutions:
name: pipsolar
tx_pin: GPIO1
rx_pin: GPIO3
id: inverter0
esphome:
name: ${name}
esp8266:
board: esp01_1m
external_components:
- source: github://syssi/esphome-pipsolar@pip8048
refresh: 0s
logger:
baud_rate: 0
level: INFO
api:
encryption:
key: "PInurfsFYyPLd3S4Ek2/vKdMvfjeWr/4coB2h5GD7Dc="
ota:
password: "8f2c8da7ac6d03005c844371073dd7dc"
wifi:
networks:
- ssid: !secret wifi_ssid
password: !secret wifi_password
- ssid: LIVE TIM_5201_2G
password: dazegT53
power_save_mode: none
manual_ip:
static_ip: 192.168.177.121
gateway: 192.168.177.1
subnet: 255.255.255.0
ap:
ssid: "${name} Hotspot"
password: "U1SFCinhg9jy"
# Warning:
#
# If you configure a lot of the possible sensors etc. it could be that you run
# out of memory (on esp8266). If you configure nearly all sensors etc. you run
# in a stack-size issue. In this case you have to increase stack size!
#
# https://github.com/esphome/issues/issues/855
uart:
id: uart_0
baud_rate: 2400
tx_pin: ${tx_pin}
rx_pin: ${rx_pin}
debug:
direction: BOTH
dummy_receiver: false
after:
delimiter: "\r"
sequence:
- lambda: UARTDebug::log_string(direction, bytes);
pipsolar:
uart_id: uart_0
id: inverter0
sensor:
- platform: pipsolar
pipsolar_id: inverter0
# QPIRI
# grid_rating_voltage:
# name: "${name} grid_rating_voltage"
# grid_rating_current:
# name: "${name} grid_rating_current"
# ac_output_rating_voltage:
# name: "${name} ac_output_rating_voltage"
# ac_output_rating_frequency:
# name: "${name} ac_output_rating_frequency"
# ac_output_rating_current:
# name: "${name} ac_output_rating_current"
# ac_output_rating_apparent_power:
# name: "${name} ac_output_rating_apparent_power"
# ac_output_rating_active_power:
# name: "${name} ac_output_rating_active_power"
# battery_rating_voltage:
# name: "${name} battery_rating_voltage"
# battery_recharge_voltage:
# name: "${name} battery_recharge_voltage"
# battery_under_voltage:
# name: "${name} battery_under_voltage"
# battery_bulk_voltage:
# name: "${name} battery_bulk_voltage"
# battery_float_voltage:
# name: "${name} battery_float_voltage"
# battery_type:
# name: "${name} battery_type"
current_max_ac_charging_current:
name: "${name} current_max_ac_charging_current"
current_max_charging_current:
name: "${name} current_max_charging_current"
# input_voltage_range:
# name: "${name} input_voltage_range"
output_source_priority:
name: "${name} output_source_priority"
# charger_source_priority:
# name: "${name} charger_source_priority"
# parallel_max_num:
# name: "${name} parallel_max_num"
# machine_type:
# name: "${name} machine_type"
# topology:
# name: "${name} topology"
# output_mode:
# name: "${name} output_mode"
# battery_redischarge_voltage:
# name: "${name} battery_redischarge_voltage"
# pv_ok_condition_for_parallel:
# name: "${name} pv_ok_condition_for_parallel"
# pv_power_balance:
# name: "${name} pv_power_balance"
# QPIGS
grid_voltage:
name: "${name} grid_voltage"
grid_frequency:
name: "${name} grid_frequency"
ac_output_voltage:
name: "${name} ac_output_voltage"
ac_output_frequency:
name: "${name} ac_output_frequency"
ac_output_apparent_power:
name: "${name} ac_output_apparent_power"
ac_output_active_power:
name: "${name} ac_output_active_power"
output_load_percent:
name: "${name} output_load_percent"
bus_voltage:
name: "${name} bus_voltage"
battery_voltage:
name: "${name} battery_voltage"
battery_charging_current:
name: "${name} battery_charging_current"
battery_capacity_percent:
name: "${name} battery_capacity_percent"
inverter_heat_sink_temperature:
name: "${name} inverter_heat_sink_temperature"
pv1_input_current:
name: "${name} pv1_input_current"
pv1_input_voltage:
name: "${name} pv1_input_voltage"
battery_voltage_scc:
name: "${name} battery_voltage_scc"
battery_discharge_current:
name: "${name} battery_discharge_current"
battery_voltage_offset_for_fans_on:
name: "${name} battery_voltage_offset_for_fans_on"
# eeprom_version:
# name: "${name} eeprom_version"
pv1_charging_power:
name: "${name} pv1_charging_power"
text_sensor:
- platform: pipsolar
pipsolar_id: inverter0
device_mode:
name: "${name} device_mode"
# last_qpigs:
# name: "${name} last_qpigs"
# last_qpiri:
# name: "${name} last_qpiri"
# last_qmod:
# name: "${name} last_qmod"
# last_qflag:
# name: "${name} last_qflag"
binary_sensor:
- platform: pipsolar
pipsolar_id: inverter0
add_sbu_priority_version:
name: "${name} add_sbu_priority_version"
configuration_status:
name: "${name} configuration_status"
scc_firmware_version:
name: "${name} scc_firmware_version"
load_status:
name: "${name} load_status"
# battery_voltage_to_steady_while_charging:
# name: "${name} battery_voltage_to_steady_while_charging"
charging_status:
name: "${name} charging_status"
scc_charging_status:
name: "${name} scc_charging_status"
ac_charging_status:
name: "${name} ac_charging_status"
charging_to_floating_mode:
name: "${name} charging_to_floating_mode"
switch_on:
name: "${name} switch_on"
# dustproof_installed:
# name: "${name} dustproof_installed"
silence_buzzer_open_buzzer:
name: "${name} silence_buzzer_open_buzzer"
overload_bypass_function:
name: "${name} overload_bypass_function"
lcd_escape_to_default:
name: "${name} lcd_escape_to_default"
overload_restart_function:
name: "${name} overload_restart_function"
over_temperature_restart_function:
name: "${name} over_temperature_restart_function"
backlight_on:
name: "${name} backlight_on"
switch:
- platform: pipsolar
pipsolar_id: inverter0
output_source_priority_utility:
name: "${name} output_source_priority_utility"
output_source_priority_solar:
name: "${name} output_source_priority_solar"
output_source_priority_battery:
name: "${name} output_source_priority_battery"
# input_voltage_range:
# name: "${name} input_voltage_range"
# pv_ok_condition_for_parallel:
# name: "${name} pv_ok_condition_for_parallel"
# pv_power_balance:
# name: "${name} pv_power_balance"
output:
- platform: pipsolar
pipsolar_id: inverter0
battery_recharge_voltage:
id: inverter0_battery_recharge_voltage_out
select:
- platform: pipsolar
pipsolar_id: ${id}
charger_source_priority:
id: ${id}_charger_source_priority_select
name: $(name) Charger Source Priority Select
optionsmap:
"Solar first": "PCP01"
"Solar and utility": "PCP02"
"Solar charging only": "PCP03"
statusmap:
"1": "Solar first"
"2": "Solar and utility"
"3": "Solar charging only"
# select:
# - platform: pipsolar
# pipsolar_id: ${id}
# output_source_priority:
# id: ${id}_output_source_priority_select
# name: ${name} Output Source Priority Select
# optionsmap:
# "Utility first": "POP00"
# "Solar only": "POP01"
# "Solar Battery Utility": "POP02"
# statusmap:
# "0": "Utility first"
# "1": "Solar only"
# "2": "Solar Battery Utility"
from esphome-pipsolar.
I've changed the branch to
pip8084
and made some minor changes because of the updated code base. Please give it a try:
Many thanks, all working now, more one question if i want do set current_max_ac_charging_current i can create similar bellow? Or all options is always mapped to 1,2,3... list?
select:
- platform: pipsolar
pipsolar_id: ${id}
current_max_ac_charging_current:
id: ${id}_current_max_ac_charging_current
name: $(name) Charging AC max current
optionsmap:
"10A": "10"
"20A": "20"
"30A": "30"
statusmap:
"10": "10A"
"20": "20A"
"30": "20A"
from esphome-pipsolar.
@hosflow Could you create a new issue? Your new question is off-topic.
from esphome-pipsolar.
Im trying use:
`external_components:
- source: github://syssi/esphome-pipsolar@pip8048
refresh: 0s`
But at compiling i got error:
`INFO ESPHome 2024.3.0
INFO Reading configuration /config/test2.yaml...
INFO Updating https://github.com/syssi/esphome-pipsolar.git@pip8048
WARNING GPIO2 is a strapping PIN and should only be used for I/O with care.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Detected timezone 'Europe/Warsaw'
INFO Generating C++ source...
INFO Compiling app...
Processing test (board: esp32dev; framework: arduino; platform: platformio/[email protected])
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 2.1.3
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- noise-c @ 0.1.4
|-- ArduinoJson @ 6.18.5
Compiling .pioenvs/test/src/esphome/components/pipsolar/pipsolar.cpp.o
Compiling .pioenvs/test/src/esphome/components/pipsolar/text_sensor/pipsolar_textsensor.cpp.o
Compiling .pioenvs/test/src/esphome/components/select/select_call.cpp.o
Compiling .pioenvs/test/src/esphome/components/sensor/automation.cpp.o
In file included from src/esphome/components/pipsolar/pipsolar.cpp:1:
src/esphome/components/pipsolar/pipsolar.h:7:10: fatal error: esphome/components/pipsolar/select/pipsolar_select.h: No such file or directory
#include "esphome/components/pipsolar/select/pipsolar_select.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
*** [.pioenvs/test/src/esphome/components/pipsolar/pipsolar.cpp.o] Error 1
In file included from src/esphome/components/pipsolar/text_sensor/pipsolar_textsensor.h:3,
from src/esphome/components/pipsolar/text_sensor/pipsolar_textsensor.cpp:1:
src/esphome/components/pipsolar/text_sensor/../pipsolar.h:7:10: fatal error: esphome/components/pipsolar/select/pipsolar_select.h: No such file or directory
#include "esphome/components/pipsolar/select/pipsolar_select.h"
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
*** [.pioenvs/test/src/esphome/components/pipsolar/text_sensor/pipsolar_textsensor.cpp.o] Error 1
========================== [FAILED] Took 3.51 seconds ==========================`
....
from esphome-pipsolar.
just a bit of help, to have the syntax validated on the esphome dashboard, you shall tell which external component you retrieve on github apparently otherwise the editor will throw a lot of errors that are not real.
@syssi : i noticed that only the 8048 branch has a folder components/pipsolar. is the 8048 intended to be the future main branch ?
external_components:
- source: github://syssi/esphome-pipsolar@pip8048
components : pipsolar
thanks for this useful component.
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.