Repository navigation
Expand file tree
/
Copy pathesp32-ble.yaml
More file actions
69 lines (60 loc) · 2.5 KB
/
Copy pathesp32-ble.yaml
File metadata and controls
69 lines (60 loc) · 2.5 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
# Advanced ESP32 BLE provisioning profile.
#
# Adds the SmartESS-compatible BLE Wi-Fi pairing: the EyeBond Local integration
# can put the bridge onto Wi-Fi over Bluetooth, exactly as it would a factory
# collector (an alternative to the captive portal). BLE provisioning needs
# on-chip BLE, so it is ESP32-only, and it requires the esp32_ble_server: block
# below.
#
# IMPORTANT — image size: BLE (Bluedroid) + Wi-Fi is large, and the real flashed
# image is ~12 KB bigger than ESPHome's reported "Flash %" (IDF image header +
# padding). On the default 4 MB app slot (~1.79 MB) this profile only fits once
# api:, captive_portal: and the baud select: are dropped — otherwise the image
# silently overflows the partition and the board boot-loops
# ("Image length ... doesn't fit"). They are therefore omitted here:
# - captive_portal: BLE provisioning is the alternative, so it is redundant.
# - api:/select: the EyeBond Local integration talks to the bridge over its
# own UDP/TCP protocol, not the ESPHome API, so nothing is
# lost for the integration. (The baud select needs api: to
# show up in HA anyway.)
# OTA still works without api:. To add them back, use a board with more flash
# and a larger app-partition layout.
esphome:
name: eybond-bridge-ble
esp32:
board: esp32dev
framework:
type: arduino
logger:
level: INFO # DEBUG strings would push the BLE+Wi-Fi image over the 4 MB app slot
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Default setup network name is the synthetic collector PN, for example V00000...
# To force a custom setup AP name instead, replace the line below with:
# ap:
# ssid: "My EyeBond Bridge Setup"
ap: {}
ota:
- platform: esphome
external_components:
- source: github://groove-max/esp-eybond-collector
components: [eybond_collector]
# The BLE GATT server. eybond_collector attaches its SmartESS-compatible
# provisioning service to it at runtime; no characteristics are declared here.
esp32_ble_server:
uart:
id: inverter_uart
tx_pin: GPIO17
rx_pin: GPIO16
baud_rate: 9600
data_bits: 8
parity: NONE
stop_bits: 1
eybond_collector:
id: bridge
uart_id: inverter_uart
flow_control_pin: GPIO4 # RS485 DE+RE; leave unconnected for TTL/RS232
status_led_pin: GPIO2 # built-in LED on many ESP-WROOM-32 DevKit boards; do not add external pulls
# com_led_pin: GPIO15 # optional separate LED for inverter-comms activity (see docs/FLASHING.md)
ble_provisioning: true