-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathesp32s3-example.yaml
More file actions
170 lines (151 loc) · 3.73 KB
/
Copy pathesp32s3-example.yaml
File metadata and controls
170 lines (151 loc) · 3.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
substitutions:
name: eg4-bms
device_description: "Monitor an EG4 BMS via RS485"
external_components_source: github://rar/esphome-eg4-bms@main
tx_pin: GPIO17
rx_pin: GPIO18
esphome:
name: ${name}
comment: ${device_description}
min_version: 2024.6.0
project:
name: "rar.esphome-eg4-bms"
version: 1.0.0
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
external_components:
- source: ${external_components_source}
refresh: 0s
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ota:
platform: esphome
logger:
level: DEBUG
# Enable Home Assistant API
api:
uart:
id: uart_0
# EG4 BMS default baud rate is 9600
baud_rate: 9600
tx_pin: ${tx_pin}
rx_pin: ${rx_pin}
# Increased RX buffer for Modbus frames
rx_buffer_size: 256
eg4_modbus:
id: modbus0
uart_id: uart_0
eg4_bms:
id: bms0
# Default address for master BMS is 0x10
# For individual battery modules, use addresses 0x01-0x0F
address: 0x10
eg4_modbus_id: modbus0
update_interval: 10s
binary_sensor:
- platform: eg4_bms
eg4_bms_id: bms0
online_status:
name: "${name} online status"
heating:
name: "${name} heating"
charging:
name: "${name} charging"
discharging:
name: "${name} discharging"
sensor:
- platform: eg4_bms
eg4_bms_id: bms0
# Voltage sensors
total_voltage:
name: "${name} total voltage"
min_cell_voltage:
name: "${name} min cell voltage"
max_cell_voltage:
name: "${name} max cell voltage"
delta_cell_voltage:
name: "${name} delta cell voltage"
cell_average_voltage:
name: "${name} average cell voltage"
cell_voltage_1:
name: "${name} cell voltage 1"
cell_voltage_2:
name: "${name} cell voltage 2"
cell_voltage_3:
name: "${name} cell voltage 3"
cell_voltage_4:
name: "${name} cell voltage 4"
cell_voltage_5:
name: "${name} cell voltage 5"
cell_voltage_6:
name: "${name} cell voltage 6"
cell_voltage_7:
name: "${name} cell voltage 7"
cell_voltage_8:
name: "${name} cell voltage 8"
cell_voltage_9:
name: "${name} cell voltage 9"
cell_voltage_10:
name: "${name} cell voltage 10"
cell_voltage_11:
name: "${name} cell voltage 11"
cell_voltage_12:
name: "${name} cell voltage 12"
cell_voltage_13:
name: "${name} cell voltage 13"
cell_voltage_14:
name: "${name} cell voltage 14"
cell_voltage_15:
name: "${name} cell voltage 15"
cell_voltage_16:
name: "${name} cell voltage 16"
# Current and power
current:
name: "${name} current"
power:
name: "${name} power"
charging_power:
name: "${name} charging power"
discharging_power:
name: "${name} discharging power"
# Temperatures
pcb_temperature:
name: "${name} pcb temperature"
avg_temperature:
name: "${name} avg temperature"
max_temperature:
name: "${name} max temperature"
# Capacity
remaining_capacity:
name: "${name} remaining capacity"
full_capacity:
name: "${name} full capacity"
# State
state_of_charge:
name: "${name} state of charge"
state_of_health:
name: "${name} state of health"
cycle_count:
name: "${name} cycle count"
max_charge_current:
name: "${name} max charge current"
text_sensor:
- platform: eg4_bms
eg4_bms_id: bms0
status:
name: "${name} status"
warnings:
name: "${name} warnings"
protection:
name: "${name} protection"
error:
name: "${name} error"
model:
name: "${name} model"
firmware_version:
name: "${name} firmware version"
serial_number:
name: "${name} serial number"