Compare commits

...

34 Commits

Author SHA1 Message Date
pszafer
03f572d229 redesign of esphome repo 2026-02-16 12:12:00 +01:00
pszafer
fa915bd64a Rename boneio-input24_gen2-v0_01.yaml to boneio-input24_gen2-v0_1.yaml 2026-01-30 21:26:49 +01:00
pszafer
21891245d2 input24 fixes 2026-01-30 21:26:19 +01:00
pszafer
d954fcffeb Add boneIO input24 gen2 2026-01-30 21:19:33 +01:00
pszafer
0774915d3b Add copy for backward compatibility (GitHub raw doesn't follow symlinks) 2026-01-26 14:42:52 +01:00
pszafer
8f1c3b199a fix 8x10A 2026-01-26 14:39:58 +01:00
pszafer
ef8bc33eb5 Add symlink for backward compatibility 2026-01-26 14:37:20 +01:00
pszafer
fbbd0802e0 rename packages to packages-v1.7.2 2026-01-26 14:34:29 +01:00
pszafer
07d5b661c2 fix building fw 2026-01-26 08:44:11 +01:00
pszafer
914762dd6f attempt to autodeploy esphome firmware 2026-01-26 08:36:13 +01:00
Pawel
f23f29f9a5 Merge pull request #41 from mzielinski/main
Rename dallas to dallas_temp
2026-01-24 18:25:45 +01:00
Maciej Zieliński
b1acfffe8c Rename dallas to dallas_temp 2026-01-24 18:00:45 +01:00
pszafer
f59ea698fb add status LED configuration to 32x10 lights dev config 2026-01-08 16:30:20 +01:00
pszafer
105aab5763 add boneio esp gen2 test config 2026-01-08 16:02:24 +01:00
pszafer
1c18068199 update 8x10A on_press action 2025-12-04 20:59:07 +01:00
pszafer
de0586476f fix serial_prefix 2025-11-30 11:10:54 +01:00
pszafer
b6b00c31f1 fix friendly name 2025-11-30 11:07:16 +01:00
Pawel
349972f250 Merge pull request #37 from maqlec/new_esp_compatibility
fix: update lambda return type for hostname text sensor to std::strin…
2025-11-30 11:05:16 +01:00
Pawel
7cd07c6f8c Merge pull request #36 from hubertozog/main
esphome update - Update one_wire.yaml
2025-11-30 11:05:07 +01:00
pszafer
26bae1d1f3 fix 8x10A fw 2025-11-30 11:03:26 +01:00
pszafer
a33a14bae4 rm abandoned 8x10A gen1 2025-11-30 10:59:33 +01:00
pszafer
329d3c0227 rm debug options from boneio 8x10A 2025-11-30 10:59:17 +01:00
pszafer
fcb7eb2787 fix uppercase 2025-11-26 20:35:34 +01:00
pszafer
38039f2465 add 8x10A 2025-11-26 20:29:39 +01:00
Maciej Pawłowski
a1680e9197 fix: update lambda return type for hostname text sensor to std::string. compatible with esphome 2025.11 2025-11-23 20:11:51 +00:00
pszafer
ae9c3aaf30 fix gpio for 8x10A 2025-11-23 08:52:13 +01:00
pszafer
db9e77c592 fix manifest for dimmer 2025-11-23 08:51:53 +01:00
pszafer
b86a00ee97 add dev boneio esp 8x10A 2025-11-10 09:28:50 +01:00
pszafer
b3da7d4288 fix modbus connection issues with Esphome 2025.10 2025-11-10 08:15:49 +01:00
pszafer
cbf466c5f5 add boneio dimmer gen2 rgbw and 4cct 2025-10-24 20:28:02 +02:00
hubertozog
f50b45a1c9 esphome update - Update one_wire.yaml 2025-10-22 15:59:48 +02:00
pszafer
cc0b1c9083 change fw creation 2025-09-25 13:45:56 +02:00
pszafer
9a6f5fe172 add boneio dimmer gen2 fw 2025-09-25 12:34:48 +02:00
pszafer
913bae573a add framework esp-idf as default for boneio yaml's 2025-09-01 06:30:01 +02:00
103 changed files with 4288 additions and 253 deletions

124
.github/workflows/build-firmware.yml vendored Normal file
View File

@@ -0,0 +1,124 @@
name: Build ESPHome Firmware
on:
push:
tags:
- 'v*'
workflow_dispatch:
inputs:
version:
description: 'Version tag (e.g., 2026.1.2)'
required: true
default: '2026.1.2'
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
include:
# Testing with single firmware first
- yaml_file: boneio-dimmer_gen2_8ch-v0_1.yaml
# Uncomment below after testing:
# - yaml_file: boneio-dimmer_gen2_2rgbw-v0_1.yaml
# - yaml_file: boneio-32x10_lights_v0_7.yaml
# - yaml_file: boneio-32x10_switches_v0_7.yaml
# - yaml_file: boneio-24x16_switches_v0_7.yaml
# - yaml_file: boneio-cover_v0_7.yaml
# - yaml_file: boneio-cover_mix_lights_v0_7.yaml
# - yaml_file: boneio-cover_mix_switches_v0_7.yaml
# - yaml_file: boneio-8x10A_gen2_lights-v0_1.yaml
# - yaml_file: boneio-mosfet48_lights_v0_7.yaml
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build firmware
uses: esphome/build-action@v4
id: esphome-build
with:
yaml-file: ${{ matrix.yaml_file }}
version: latest
complete-manifest: true
- name: Upload firmware artifact
uses: actions/upload-artifact@v4
with:
name: firmware-${{ steps.esphome-build.outputs.original-name }}
path: ${{ steps.esphome-build.outputs.name }}
deploy:
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
pages: write
id-token: write
steps:
- name: Download firmware artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
pattern: firmware-*
merge-multiple: true
- name: Get version
id: version
run: |
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
echo "version=${{ github.event.inputs.version }}" >> $GITHUB_OUTPUT
else
echo "version=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
fi
- name: Prepare GitHub Pages content
run: |
mkdir -p gh-pages/firmware
# esphome/build-action outputs: name/, name/manifest.json, name/*.bin
for dir in artifacts/*/; do
NAME=$(basename "$dir")
# Copy firmware binary
cp "$dir"*.bin gh-pages/firmware/
# Copy manifest and rename to firmware name
cp "$dir"manifest.json gh-pages/${NAME}.json
done
# Create version file
echo "${{ steps.version.outputs.version }}" > gh-pages/version.txt
# Create index with firmware list
cat > gh-pages/index.html << 'EOF'
<!DOCTYPE html>
<html>
<head><title>boneIO Firmware</title></head>
<body>
<h1>boneIO ESPHome Firmware</h1>
<ul>
EOF
for json in gh-pages/*.json; do
NAME=$(basename "$json" .json)
echo "<li><a href=\"${NAME}.json\">${NAME}</a></li>" >> gh-pages/index.html
done
cat >> gh-pages/index.html << 'EOF'
</ul>
</body>
</html>
EOF
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./gh-pages
force_orphan: true
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
tag_name: v${{ steps.version.outputs.version }}
name: Firmware v${{ steps.version.outputs.version }}
files: gh-pages/firmware/*.bin
generate_release_notes: true

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -10,9 +10,17 @@ esphome:
project: project:
name: boneio.32x10-lights name: boneio.32x10-lights
version: '0.7' version: '0.7'
on_boot:
- priority: 1001
then:
- lambda: |-
gpio_reset_pin((gpio_num_t)14);
gpio_reset_pin((gpio_num_t)15);
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +40,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',
@@ -655,7 +663,11 @@ binary_sensor:
# UNCOMMENT BELOW TO USE MODBUS # UNCOMMENT BELOW TO USE MODBUS
# uart: # uart:
# id: uart_pin14_15 # id: uart_pin14_15
# rx_pin: GPIO14 # rx_pin:
# number: GPIO14
# mode:
# input: true
# pullup: true
# tx_pin: GPIO15 # tx_pin: GPIO15
# baud_rate: 9600 # baud_rate: 9600
# stop_bits: 1 # stop_bits: 1

View File

@@ -0,0 +1,306 @@
substitutions:
name: boneio-8x10a-gen2-01
friendly_name: 'boneIO ESP 8x10A Gen2'
serial_prefix: 'esp8' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-8x10a-gen2-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.8x10a-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
output:
- platform: gpio
pin: GPIO18
inverted: false
id: out_01
- platform: gpio
pin: GPIO17
inverted: false
id: out_02
- platform: gpio
pin: GPIO16
inverted: false
id: out_03
- platform: gpio
pin: GPIO15
inverted: false
id: out_04
- platform: gpio
pin: GPIO7
inverted: false
id: out_05
- platform: gpio
pin: GPIO6
inverted: false
id: out_06
- platform: gpio
pin: GPIO5
inverted: false
id: out_07
- platform: gpio
pin: GPIO4
inverted: false
id: out_08
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-8x10A_gen2_lights-v0_1.yaml@latest
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
light:
- platform: binary
output: out_01
name: 'OUT 01'
id: light_01
- platform: binary
output: out_02
name: 'OUT 02'
id: light_02
- platform: binary
output: out_03
name: 'OUT 03'
id: light_03
- platform: binary
output: out_04
name: 'OUT 04'
id: light_04
- platform: binary
output: out_05
name: 'OUT 05'
id: light_05
- platform: binary
output: out_06
name: 'OUT 06'
id: light_06
- platform: binary
output: out_07
name: 'OUT 07'
id: light_07
- platform: binary
output: out_08
name: 'OUT 08'
id: light_08
debug:
update_interval: 15s
sensor:
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_08

View File

@@ -1,211 +0,0 @@
substitutions:
name: boneio-8-s-01
friendly_name: 'BoneIO ESP 8x10A Switches'
serial_prefix: 'espm' #Don't change it.
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.8_10-switches
version: '0.1'
esp32:
board: esp32dev
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-8x10A_v0_1.yaml@latest
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.7.1
files:
[
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
mcp23017:
- id: 'mcp1'
address: 0x20
# Individual outputs
switch:
- platform: gpio
name: 'OUT 1'
id: out_01
pin:
mcp23xxx: mcp1
number: 8
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 2'
id: out_02
pin:
mcp23xxx: mcp1
number: 9
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 3'
id: out_03
pin:
mcp23xxx: mcp1
number: 10
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 4'
id: out_04
pin:
mcp23xxx: mcp1
number: 11
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 5'
id: out_05
pin:
mcp23xxx: mcp1
number: 12
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 6'
id: out_06
pin:
mcp23xxx: mcp1
number: 13
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 7'
id: out_07
pin:
mcp23xxx: mcp1
number: 14
mode:
output: true
inverted: false
- platform: gpio
name: 'OUT 8'
id: out_08
pin:
mcp23xxx: mcp1
number: 15
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN 01'
id: in_01
pin:
mcp23xxx: mcp1
number: 0
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 02'
id: in_02
pin:
mcp23xxx: mcp1
number: 1
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 03'
id: in_03
pin:
mcp23xxx: mcp1
number: 2
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 04'
id: in_04
pin:
mcp23xxx: mcp1
number: 3
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 05'
id: in_05
pin:
mcp23xxx: mcp1
number: 4
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 06'
id: in_06
pin:
mcp23xxx: mcp1
number: 5
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 07'
id: in_07
pin:
mcp23xxx: mcp1
number: 6
mode:
input: true
inverted: false
- platform: gpio
name: 'IN 08'
id: in_08
pin:
mcp23xxx: mcp1
number: 7
mode:
input: true
inverted: false

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: esp32dev board: esp32dev
framework:
type: esp-idf
external_components: external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75 - source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
@@ -21,7 +23,7 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: files:
[ [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
@@ -74,7 +76,7 @@ text_sensor:
id: hostname id: hostname
entity_category: diagnostic entity_category: diagnostic
lambda: |- lambda: |-
return id(eth).get_use_address(); return std::string(id(eth).get_use_address());
update_interval: 5min update_interval: 5min
binary_sensor: binary_sensor:

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: esp32dev board: esp32dev
framework:
type: esp-idf
external_components: external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75 - source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
@@ -21,7 +23,7 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: files:
[ [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
@@ -74,7 +76,7 @@ text_sensor:
id: hostname id: hostname
entity_category: diagnostic entity_category: diagnostic
lambda: |- lambda: |-
return id(eth).get_use_address(); return std::string(id(eth).get_use_address());
update_interval: 5min update_interval: 5min
binary_sensor: binary_sensor:

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: esp32dev board: esp32dev
framework:
type: esp-idf
external_components: external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75 - source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
@@ -21,7 +23,7 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: files:
[ [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
@@ -74,7 +76,7 @@ text_sensor:
id: hostname id: hostname
entity_category: diagnostic entity_category: diagnostic
lambda: |- lambda: |-
return id(eth).get_use_address(); return std::string(id(eth).get_use_address());
update_interval: 5min update_interval: 5min
binary_sensor: binary_sensor:

View File

@@ -0,0 +1,283 @@
substitutions:
name: boneio-dr-gen2-2rgbw-01
friendly_name: 'BoneIO Dimmer Gen2'
serial_prefix: 'dim2' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-2rgbw-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
output:
- platform: ledc
pin: GPIO18
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: GPIO17
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: GPIO16
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: GPIO15
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: GPIO7
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: GPIO6
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: GPIO5
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: GPIO4
frequency: 1000Hz
inverted: false
id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_gen2_2rgbw-v0_1.yaml@main
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
light:
- platform: rgbw
id: rgbw_l
name: 'RGBW L'
red: chl01
green: chl02
blue: chl03
white: chl04
default_transition_length: 2s
gamma_correct: 0
- platform: rgbw
id: rgbw_r
name: 'RGBW R'
red: chr01
green: chr02
blue: chr03
white: chr04
default_transition_length: 2s
gamma_correct: 0
debug:
update_interval: 15s
sensor:
- platform: debug
free:
name: "Heap Free"
block:
name: "Heap Max Block"
loop_time:
name: "Loop Time"
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true

View File

@@ -0,0 +1,291 @@
substitutions:
name: boneio-dr-gen2-4cct-01
friendly_name: 'BoneIO Dimmer Gen2'
serial_prefix: 'dim2' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-4cct-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
output:
- platform: ledc
pin: GPIO18
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: GPIO17
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: GPIO16
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: GPIO15
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: GPIO7
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: GPIO6
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: GPIO5
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: GPIO4
frequency: 1000Hz
inverted: false
id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_gen2_4cct-v0_1.yaml@main
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
light:
- platform: cwww
name: 'CHL_01_02'
cold_white: chl01
warm_white: chl02
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
- platform: cwww
name: 'CHL_03_04'
cold_white: chl03
warm_white: chl04
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
- platform: cwww
name: 'CHR_01_02'
cold_white: chr01
warm_white: chr02
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
- platform: cwww
name: 'CHR_03_04'
cold_white: chr03
warm_white: chr04
cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K
debug:
update_interval: 15s
sensor:
- platform: debug
free:
name: "Heap Free"
block:
name: "Heap Max Block"
loop_time:
name: "Loop Time"
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true

View File

@@ -0,0 +1,314 @@
substitutions:
name: boneio-dr-gen2-8ch-01
friendly_name: 'BoneIO Dimmer Gen2'
serial_prefix: 'dim2' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-8ch-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
output:
- platform: ledc
pin: GPIO18
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: GPIO17
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: GPIO16
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: GPIO15
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: GPIO7
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: GPIO6
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: GPIO5
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: GPIO4
frequency: 1000Hz
inverted: false
id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_gen2_8ch-v0_1.yaml@main
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
light:
- platform: monochromatic
output: chl01
name: 'CHL 01'
id: chl_01
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl02
name: 'CHL 02'
id: chl_02
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl03
name: 'CHL 03'
id: chl_03
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl04
name: 'CHL 04'
id: chl_04
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr01
name: 'CHR 01'
id: chr_01
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr02
name: 'CHR 02'
id: chr_02
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr03
name: 'CHR 03'
id: chr_03
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr04
name: 'CHR 04'
id: chr_04
default_transition_length: 2s
gamma_correct: 0
debug:
update_interval: 15s
sensor:
- platform: debug
free:
name: "Heap Free"
block:
name: "Heap Max Block"
loop_time:
name: "Loop Time"
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true

View File

@@ -0,0 +1,370 @@
substitutions:
name: boneio-input24-gen2-01
friendly_name: 'boneIO ESP Input24 Gen2'
serial_prefix: 'esp24' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-input24-gen2-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.input24-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-input24_gen2-v0_1.yaml.yaml@latest
import_full_config: true
pcf8574:
- id: pcf_inputs_1_to_8
address: 0x38
- id: pcf_inputs_9_to_24
address: 0x20
pcf8575: true
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
sensor:
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs_1_to_8
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1_to_8
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1_to_8
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1_to_8
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1_to_8
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1_to_8
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1_to_8
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1_to_8
number: 7
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_9_to_24
number: 7
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_9_to_24
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_9_to_24
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_9_to_24
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_9_to_24
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_9_to_24
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_15'
id: in_15
pin:
pcf8574: pcf_inputs_9_to_24
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_16'
id: in_16
pin:
pcf8574: pcf_inputs_9_to_24
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_9_to_24
number: 15
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_9_to_24
number: 14
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_9_to_24
number: 13
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_9_to_24
number: 12
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_9_to_24
number: 11
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_9_to_24
number: 10
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_9_to_24
number: 9
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_9_to_24
number: 8
mode:
input: true
inverted: true

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -32,7 +34,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -14,23 +14,51 @@ cwd = os.getcwd()
pattern = r"name:\s*(\S+)" pattern = r"name:\s*(\S+)"
json_destination = "../website/public/esp" json_destination = "../website2/public/fwesp"
firmware_destination = "../website/public/esp/firmware" firmware_destination = "../website2/public/fwesp/firmware"
firmware_destination2 = "../esphome_uploader/firmware"
# Lista plików do wykluczenia z przetwarzania
exclude_files = [
"dimmer_gen2_can.yaml",
"dimmer_gen2_emc.yaml",
"dev-boneio-32x10_lights_v0_9.yaml"
"boneio-mosfet48_lights_v0_7.yaml",
"boneio-mosfet48_switches_v0_7.yaml"
"boneio-8x10A_v0_1.yaml"
"boneio-dimmer_gen2_8ch-dev0_4.yaml"
# Dodaj tutaj kolejne pliki do wykluczenia
]
include_files = [
"boneio-input24_gen2-v0_01.yaml",
# "boneio-8x10A_gen2_lights-v0_1.yaml",
# "boneio-dimmer_gen2_2rgbw-v0_1.yaml",
# "boneio-dimmer_gen2_8ch-v0_1"
]
def json_pattern(firmware_name): GITHUB_PAGES_URL = "https://boneio-eu.github.io/esphome"
FIRMWARE_VERSION = "2026.1.2"
def json_pattern(firmware_name, chip_family="ESP32"):
# GitHub Pages supports CORS - works with ESP Web Tools
firmware_path = f"{GITHUB_PAGES_URL}/firmware/{firmware_name}.bin"
return { return {
"name": "ESPHome", "name": "ESPHome",
"version": "2025.7.4", "version": FIRMWARE_VERSION,
"home_assistant_domain": "esphome", "home_assistant_domain": "esphome",
"funding_url": "https://esphome.io/guides/supporters.html", "funding_url": "https://esphome.io/guides/supporters.html",
"new_install_prompt_erase": False, "new_install_prompt_erase": False,
"builds": [ "builds": [
{ {
"chipFamily": "ESP32", "chipFamily": chip_family,
"parts": [ "parts": [
{ {
"path": f"/esp/firmware/{firmware_name}.bin", "path": firmware_path,
"offset": 0, "offset": 0,
} }
], ],
@@ -51,12 +79,21 @@ def get_boneio_name(file):
for file in glob.glob("*.yaml"): for file in glob.glob("*.yaml"):
# Pomiń pliki z listy wykluczeń
if file in exclude_files:
print(f"Skipping excluded file: {file}")
continue
if file not in include_files:
print(f"Skipping file: {file}")
continue
filename = get_boneio_name(file) filename = get_boneio_name(file)
chip_family = "ESP32-S3" if "gen2" in filename else "ESP32"
if not filename: if not filename:
print("No file found.") print("No file found.")
break break
firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware.factory.bin" firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware.factory.bin"
cmd = f'docker run --rm -p 6052:6052 -v "{cwd}":/config -it ghcr.io/esphome/esphome compile {file}' cmd = f'docker run --rm -p 6053:6052 -v "{cwd}":/config -it ghcr.io/esphome/esphome compile {file}'
print(cmd) print(cmd)
result = subprocess.run( result = subprocess.run(
cmd, cmd,
@@ -66,12 +103,14 @@ for file in glob.glob("*.yaml"):
print("Process failed, breaking.") print("Process failed, breaking.")
break break
shutil.copyfile(firmware_path, f"{firmware_destination}/{filename}.bin") shutil.copyfile(firmware_path, f"{firmware_destination}/{filename}.bin")
shutil.copyfile(firmware_path, f"{firmware_destination2}/{filename}.bin")
with open( with open(
f"{json_destination}/{filename}.json", "w", encoding="utf-8" f"{json_destination}/{filename}.json", "w", encoding="utf-8"
) as f: ) as f:
print(f"Creating JSON file: {json_destination}/{filename}.json")
json.dump( json.dump(
json_pattern(firmware_name=filename), json_pattern(firmware_name=filename, chip_family=chip_family),
f, f,
ensure_ascii=False, ensure_ascii=False,
indent=4, indent=4,

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: nodemcu-32s board: nodemcu-32s
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -33,7 +35,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
'devices_v0_4/display.yaml', 'devices_v0_4/display.yaml',

View File

@@ -0,0 +1,306 @@
substitutions:
name: boneio-8x10a-gen2-01
friendly_name: 'boneIO ESP 8x10A Gen2'
serial_prefix: 'esp8' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-8x10a-gen2-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.8x10a-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
output:
- platform: gpio
pin: GPIO18
inverted: false
id: out_01
- platform: gpio
pin: GPIO17
inverted: false
id: out_02
- platform: gpio
pin: GPIO16
inverted: false
id: out_03
- platform: gpio
pin: GPIO15
inverted: false
id: out_04
- platform: gpio
pin: GPIO7
inverted: false
id: out_05
- platform: gpio
pin: GPIO6
inverted: false
id: out_06
- platform: gpio
pin: GPIO5
inverted: false
id: out_07
- platform: gpio
pin: GPIO4
inverted: false
id: out_08
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-8x10A_gen2_lights-v0_1.yaml@latest
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
light:
- platform: binary
output: out_01
name: 'OUT 01'
id: light_01
- platform: binary
output: out_02
name: 'OUT 02'
id: light_02
- platform: binary
output: out_03
name: 'OUT 03'
id: light_03
- platform: binary
output: out_04
name: 'OUT 04'
id: light_04
- platform: binary
output: out_05
name: 'OUT 05'
id: light_05
- platform: binary
output: out_06
name: 'OUT 06'
id: light_06
- platform: binary
output: out_07
name: 'OUT 07'
id: light_07
- platform: binary
output: out_08
name: 'OUT 08'
id: light_08
debug:
update_interval: 15s
sensor:
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_08

View File

@@ -13,6 +13,8 @@ esphome:
esp32: esp32:
board: esp32-s3-devkitc-1 board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -94,7 +96,7 @@ modbus:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
# 'devices/dimmer_i2c.yaml', # 'devices/dimmer_i2c.yaml',
@@ -135,7 +137,7 @@ text_sensor:
id: hostname id: hostname
entity_category: diagnostic entity_category: diagnostic
lambda: |- lambda: |-
return id(eth).get_use_address(); return std::string(id(eth).get_use_address());
update_interval: 5min update_interval: 5min
binary_sensor: binary_sensor:

View File

@@ -25,6 +25,8 @@ esphome:
esp32: esp32:
board: esp32-s3-devkitc-1 board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet: ethernet:
id: eth id: eth
@@ -108,7 +110,7 @@ modbus:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
# 'devices/dimmer_i2c.yaml', # 'devices/dimmer_i2c.yaml',
@@ -121,7 +123,7 @@ packages:
- path: sdm630.yaml - path: sdm630.yaml
dashboard_import: dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_g2_8ch-dev0_4.yaml@main package_import_url: github://boneIO-eu/esphome/boneio-dimmer_gen2_8ch-dev0_4.yaml@main
import_full_config: true import_full_config: true
pcf8574: pcf8574:

View File

@@ -0,0 +1,314 @@
substitutions:
name: boneio-dr-gen2-8ch-01
friendly_name: 'BoneIO Dimmer Gen2'
serial_prefix: 'dim2' #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-8ch-01.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led-gen2
version: '0.1'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
output:
- platform: ledc
pin: GPIO18
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: GPIO17
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: GPIO16
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: GPIO15
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: GPIO7
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: GPIO6
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: GPIO5
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: GPIO4
frequency: 1000Hz
inverted: false
id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart:
# id: boneio_uart
# rx_pin: GPIO21
# tx_pin: GPIO14
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 80ms
# uart_id: boneio_uart
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
# boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages
# ref: main
# refresh: 1min
# files:
# - path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-dimmer_gen2_8ch-v0_1.yaml@main
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
light:
- platform: monochromatic
output: chl01
name: 'CHL 01'
id: chl_01
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl02
name: 'CHL 02'
id: chl_02
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl03
name: 'CHL 03'
id: chl_03
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chl04
name: 'CHL 04'
id: chl_04
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr01
name: 'CHR 01'
id: chr_01
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr02
name: 'CHR 02'
id: chr_02
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr03
name: 'CHR 03'
id: chr_03
default_transition_length: 2s
gamma_correct: 0
- platform: monochromatic
output: chr04
name: 'CHR 04'
id: chr_04
default_transition_length: 2s
gamma_correct: 0
debug:
update_interval: 15s
sensor:
- platform: debug
free:
name: "Heap Free"
block:
name: "Heap Max Block"
loop_time:
name: "Loop Time"
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: 'CAN Bus Switch'
pin:
number: GPIO35
mode:
output: true
inverted: false
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true

View File

@@ -30,7 +30,7 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/buzzer.yaml', 'devices/buzzer.yaml',
'devices/serial_no.yaml', 'devices/serial_no.yaml',

View File

@@ -0,0 +1,355 @@
substitutions:
name: boneio-8x10a-cover-dev01
friendly_name: 'BoneIO Relay 8x10A dev0.1'
serial_prefix: 'dim2' #Don't change it.
firmware_manifest: 'https://boneio.eu/esp/boneio-relay-8x10a-cover-dev0.3.json'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.relay-8x10a-cover
version: 'dev0.3'
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
components: [lm75]
i2c:
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
uart:
id: boneio_uart
rx_pin: GPIO21
tx_pin: GPIO14
baud_rate: 9600
stop_bits: 1
spi:
- id: spi_ade7953
mosi_pin: GPIO35
miso_pin: GPIO37
clk_pin: GPIO36
modbus:
send_wait_time: 80ms
uart_id: boneio_uart
id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
boneiopackages:
url: https://github.com/boneIO-eu/esphome_packages
ref: main
refresh: 1min
files:
- path: sdm630.yaml
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-relay-8x10a-cover-dev0.3.yaml@main
import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
# update:
# - id: update_std
# platform: http_request
# name: boneIO FW Update
# update_interval: 3 minutes
# source: ${firmware_manifest}
web_server:
port: 80
version: 3
local: true
debug:
update_interval: 15s
sensor:
- platform: debug
free:
name: "Heap Free"
block:
name: "Heap Max Block"
loop_time:
name: "Loop Time"
- platform: lm75
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
- platform: ade7953_spi
spi_id: spi_ade7953
cs_pin: GPIO40
irq_pin: GPIO15
update_interval: 10s
voltage:
name: "ADE7953 1 Voltage"
current_a:
name: "ADE7953 1 Current"
- platform: ade7953_spi
spi_id: spi_ade7953
cs_pin: GPIO41
irq_pin: GPIO16
update_interval: 10s
voltage:
name: "ADE7953 2 Voltage"
current_a:
name: "ADE7953 2 Current"
- platform: ade7953_spi
spi_id: spi_ade7953
cs_pin: GPIO42
irq_pin: GPIO17
update_interval: 10s
voltage:
name: "ADE7953 3 Voltage"
current_a:
name: "ADE7953 3 Current"
- platform: ade7953_spi
spi_id: spi_ade7953
cs_pin: GPIO45
irq_pin: GPIO18
update_interval: 10s
voltage:
name: "ADE7953 4 Voltage"
current_a:
name: "ADE7953 4 Current"
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
mode:
output: true
inverted: false
# *** POCZĄTEK AKTUALIZACJI ***
- platform: gpio
id: can_stb # Poprzednio id: can_bus_switch
name: 'CAN STB' # Poprzednio name: 'CAN Bus Switch'
pin:
number: GPIO20 # Pin dla CAN_STB
mode:
output: true
inverted: false
- platform: gpio
id: can_led
name: 'CAN LED'
pin:
number: GPIO8 # Pin dla CAN_LED
mode:
output: true
inverted: false
# *** KONIEC AKTUALIZACJI ***
- platform: gpio
name: "CAN RX"
pin: GPIO47
- platform: gpio
name: "CAN TX"
pin: GPIO48
# Przełączniki dla linii RST układów ADE7953
- platform: gpio
name: "ADE7953 RST 1"
pin: GPIO4
- platform: gpio
name: "ADE7953 RST 2"
pin: GPIO5
- platform: gpio
name: "ADE7953 RST 3"
pin: GPIO6
- platform: gpio
name: "ADE7953 RST 4"
pin: GPIO7
# !!! BRAKUJĄCA SEKCJA !!!
# Musisz tutaj dodać definicje dla 8 przekaźników.
# Na przykład:
# - platform: gpio
# name: "Relay 1"
# pin: GPIO_PIN_PRZEKAŹNIKA_1
# - platform: gpio
# name: "Relay 2"
# pin: GPIO_PIN_PRZEKAŹNIKA_2
# ... i tak 8 razy
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true
- platform: template
name: CAN Bus Button
id: can_bus_button
# canbus:
# - platform: esp32_can
# tx_pin: GPIO48
# rx_pin: GPIO47
# can_id: 4
# bit_rate: 50kbps
# on_frame:
# - can_id: 5
# then:
# - lambda: |-
# if(x.size() > 0) {
# switch(x[0]) {
# case 0x12: // button release
# id(can_bus_button).publish_state(false);
# break;
# case 0x11: // button press
# id(can_bus_button).publish_state(true);
# break;
# }
# }
# button:
# - platform: template
# name: 'CAN Sensor ON'
# on_press:
# - logger.log: Button Pressed
# - canbus.send: [0x11, 0x22, 0x33]
# - platform: template
# name: 'CAN Sensor OFF'
# on_press:
# - logger.log: Button Pressed
# - canbus.send: [0x12, 0x22, 0x33]

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,194 @@
substitutions:
name: boneio-ps-01
friendly_name: 'BoneIO PS-01 Czujnik Obecności'
serial_prefix: 'ps01' #Don't change it.
firmware_manifest: 'https://boneio.eu/esp/boneio-ps-01.json' # URL manifestu
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.presence-sensor-ps01
version: 'dev0.1' # Przykładowa wersja
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: 'return id(serial_no) != nullptr;'
then:
- component.update: serial_no
- logger.log: "Serial No updated on boot"
else:
- logger.log: "Serial No component not found"
esp32:
variant: esp32s3
flash_size: 16MB
framework:
type: esp-idf
psram:
mode: octal
speed: 80MHz
# --- NOWA SEKCJA: WiFi ---
wifi:
ssid: "TwojeSSID"
password: "TwojeHaslo"
# Tryb AP do pierwszej konfiguracji
ap:
ssid: "PS-01 Sensor Setup"
password: "boneio-setup"
captive_portal:
i2c:
id: i2c_bus # Dodano ID dla czujników
sda: GPIO10
scl: GPIO11
scan: True
frequency: 400kHz
# --- ZAKTUALIZOWANY UART (dla radaru) ---
uart:
- id: radar_uart
tx_pin: GPIO21 # ESP TX -> Radar RX
rx_pin: GPIO14 # ESP RX -> Radar TX
baud_rate: 115200 # Standard dla LD2412
- id: boneio_uart
rx_pin: GPIO47 # CAN RX wg tabeli (dla CAN Bus)
tx_pin: GPIO48 # CAN TX wg tabeli (dla CAN Bus)
baud_rate: 9600
stop_bits: 1
# --- NOWA SEKCJA: Radar LD2412 ---
ld2412:
uart_id: radar_uart
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
]
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-ps-01-presence-sensor.yaml@main # Zgadywany URL
import_full_config: true
# --- USUNIĘTY pcf8574 ---
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
# --- USUNIĘTE 'output' i 'light' ---
debug:
update_interval: 15s
sensor:
- platform: lm75b
id: boneIO_temp
name: 'Temperature'
update_interval: 30s
entity_category: diagnostic
on_value_range:
- above: 70.0
then:
- switch.turn_on: buzzer
- below: 70.0
then:
- switch.turn_off: buzzer
- platform: debug
free:
name: "Heap Free"
block:
name: "Heap Max Block"
# --- NOWA SEKCJA: Czujniki I2C ---
- platform: sht4x
i2c_id: i2c_bus
address: 0x44 # Z tabeli
temperature:
name: "Temperatura"
humidity:
name: "Wilgotność"
update_interval: 15s
- platform: veml7700
address: 0x10
update_interval: 60s
# short variant of sensor definition:
ambient_light: "Ambient light"
# longer variant of sensor definition:
actual_gain:
name: "Actual gain"
# Czujniki dla radaru LD2412 (dystans, energia)
# zostaną dodane automatycznie przez komponent 'ld2412'
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO12 # Zaktualizowany pin
mode: output
inverted: false
- platform: gpio
id: can_stb
name: 'CAN STB'
pin:
number: GPIO13 # Zaktualizowany pin
mode: output
inverted: false
# --- NOWA SEKCJA: Przełączniki ---
- platform: gpio
id: led_status
name: 'LED Status'
pin:
number: GPIO1 # Zaktualizowany pin
mode: output
inverted: false
- platform: gpio
id: relay_1
name: 'Przekaźnik 1'
pin:
number: GPIO18 # Z tabeli
mode: output
inverted: false
- platform: gpio
id: relay_2
name: 'Przekaźnik 2'
pin:
number: GPIO17 # Z tabeli
mode: output
inverted: false
binary_sensor:
- platform: gpio
name: 'Obecność (Pin OUT)'
pin:
number: GPIO41 # RADAR_OUT
mode: input
device_class: presence

View File

@@ -97,7 +97,7 @@ output:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 ref: packages-v1.7.2
files: [ files: [
'devices/serial_no.yaml', 'devices/serial_no.yaml',
# 'devices/dimmer_i2c.yaml', # 'devices/dimmer_i2c.yaml',

View File

@@ -0,0 +1,284 @@
#CAN
substitutions:
name: boneio-dr-gen2-8ch-dev04-3328f7
friendly_name: BoneIO Dimmer dev0.4 3328f7
serial_prefix: dim2 #Don't change it.
firmware_manifest: https://boneio.eu/esp/boneio-dr-gen2-8ch-dev04.json
esphome:
name: ${name}
friendly_name: ${friendly_name}
name_add_mac_suffix: false
project:
name: boneio.dimmer-led-gen2
version: dev0.4
on_boot:
priority: -100
then:
- delay: 5s
- if:
condition:
lambda: return id(serial_no) != nullptr;
then:
- component.update: serial_no
- logger.log: Serial No updated on boot
else:
- logger.log: Serial No component not found
external_components:
- source: github://mrk-its/esphome-canopen
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO13
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO12
interrupt_pin: GPIO2
reset_pin: GPIO1
clock_speed: 25MHz
# use_address: 192.168.13.107
use_address: 192.168.50.173
i2c:
sda: GPIO10
scl: GPIO11
scan: true
frequency: 400kHz
uart:
id: boneio_uart
rx_pin: GPIO21
tx_pin: GPIO14
baud_rate: 9600
stop_bits: 1
output:
- platform: ledc
pin: GPIO18
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: GPIO17
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: GPIO16
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: GPIO15
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: GPIO7
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: GPIO6
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: GPIO5
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: GPIO4
frequency: 1000Hz
inverted: false
id: chr04
##CAN gpio48 - tx, gpio47 rx, gpio35 stb
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [devices/serial_no.yaml]
dashboard_import:
package_import_url:
github://boneIO-eu/esphome/boneio-dimmer_g2_8ch-dev0_4.yaml@main
import_full_config: true
pcf8574:
- id: pcf_inputs
address: 0x38
# http_request:
# timeout: 7s
# verify_ssl: false
logger:
hardware_uart: UART0
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
version: 3
local: true
switch:
- platform: gpio
id: buzzer
name: Buzzer
pin:
number: GPIO9
mode:
output: true
inverted: false
- platform: gpio
id: can_bus_switch
name: CAN Bus Switch
pin:
number: GPIO3
mode:
output: true
inverted: false
- platform: template
id: master
name: master
optimistic: true
on_turn_on:
then:
- delay: 0ms
- lambda: id(can_open).send_entity_cmd(0x2, 1, (uint8_t)1);
on_turn_off:
then:
- delay: 0ms
- lambda: id(can_open).send_entity_cmd(0x2, 1, (uint8_t)0);
binary_sensor:
- platform: gpio
name: IN_01
id: in_01
pin:
pcf8574: pcf_inputs
number: 0
mode:
input: true
inverted: true
- platform: gpio
name: IN_02
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
- platform: gpio
name: IN_03
id: in_03
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
- platform: gpio
name: IN_04
id: in_04
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
- platform: gpio
name: IN_05
id: in_05
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: IN_06
id: in_06
pin:
pcf8574: pcf_inputs
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: IN_07
id: in_07
pin:
pcf8574: pcf_inputs
number: 6
mode:
input: true
inverted: true
- platform: gpio
name: IN_08
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true
- platform: template
name: CAN Bus Button
id: can_bus_button
canbus:
- platform: esp32_can
id: can_bus
tx_pin: GPIO48
rx_pin: GPIO47
can_id: 1
bit_rate: 50kbps
# button:
# - platform: template
# name: 'CAN Sensor ON'
# on_press:
# - logger.log: Button Pressed
# - canbus.send: [0x11, 0x22, 0x33]
# - platform: template
# name: 'CAN Sensor OFF'
# on_press:
# - logger.log: Button Pressed
# - canbus.send: [0x12, 0x22, 0x33]
canopen:
id: can_open
canbus_id: can_bus
entities: []
node_id: 1

View File

View File

@@ -1,6 +1,7 @@
one_wire: one_wire:
- platform: gpio - platform: gpio
pin: GPIO32 pin: GPIO32
# sensor: # sensor:
# - platform: dallas # - platform: dallas
# address: 0x283c01d607d4df28 # address: 0x283c01d607d4df28

View File

@@ -1,15 +1,15 @@
dallas: one_wire:
- pin: GPIO32 - platform: gpio
pin: GPIO32
# sensor: # sensor:
# - platform: dallas # - platform: dallas_temp
# address: 0x283c01d607d4df28 # address: 0x283c01d607d4df28
# name: "Dallas Sensor 1" # name: "Dallas Sensor 1"
# #
# - platform: dallas # - platform: dallas_temp
# address: 0xdfe67a061e64ff28 # address: 0xdfe67a061e64ff28
# name: "Dallas Sensor 2" # name: "Dallas Sensor 2"
# #
# - platform: dallas # - platform: dallas_temp
# address: 0xa7a89f071e64ff28 # address: 0xa7a89f071e64ff28
# name: "Dallas Sensor 3" # name: "Dallas Sensor 3"

Some files were not shown because too many files have changed in this diff Show More