Compare commits

..

111 Commits

Author SHA1 Message Date
Pawel
7511e98c3e Merge pull request #45 from boneIO-eu/main
Fix input24
2026-01-30 21:34:18 +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
Pawel
d1adc016b9 Merge pull request #44 from boneIO-eu/main
Add boneIO input24 gen2
2026-01-30 21:20:04 +01:00
pszafer
d954fcffeb Add boneIO input24 gen2 2026-01-30 21:19:33 +01:00
Pawel
f6bc51eb58 Merge pull request #43 from boneIO-eu/main
Add copy for backward compatibility (GitHub raw doesn't follow symlinks)
2026-01-26 14:43:22 +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
Pawel
cf174caa67 Merge pull request #42 from boneIO-eu/main
Fix 8x10A yaml link
2026-01-26 14:38: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
Pawel
ce48301993 Merge pull request #40 from boneIO-eu/main
update 8x10A on_press action
2025-12-04 20:59:28 +01:00
pszafer
1c18068199 update 8x10A on_press action 2025-12-04 20:59:07 +01:00
Pawel
fc2ef87d0b Merge pull request #39 from boneIO-eu/main
Update 8x10A
2025-11-30 11:12:03 +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
0b6d9dc1b9 Merge pull request #38 from boneIO-eu/main
Update for 8x10A
2025-11-30 11:05:51 +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
Pawel
e792df95b0 Merge pull request #34 from boneIO-eu/main
add framework esp-idf as default for boneio yaml's
2025-09-01 07:49:35 +03:00
pszafer
913bae573a add framework esp-idf as default for boneio yaml's 2025-09-01 06:30:01 +02:00
Pawel
1d1ecbe22b Merge pull request #33 from boneIO-eu/main
Update LAN component
2025-07-29 08:20:01 +02:00
pszafer
e0616ecf46 Add web server ota 2025-07-29 08:15:39 +02:00
pszafer
e4b1e36270 Update LAN component 2025-07-29 08:14:23 +02:00
pszafer
9c93a4f6fa fix modbus temp 2025-07-28 20:53:46 +02:00
Pawel
5ddb9c45d0 Merge pull request #32 from boneIO-eu/main
update to latest release
2025-07-28 20:13:07 +02:00
pszafer
0dfc3144ae update to latest release 2025-07-28 20:12:01 +02:00
Pawel
a3710a3aa0 Merge pull request #31 from boneIO-eu/main
Esphome 2025.7
2025-07-28 19:55:09 +02:00
Pawel
84baf6486a Merge pull request #30 from SQ9MDD/main
Update serial_no.yaml
2025-07-18 09:03:28 +02:00
Rysiek Labus (SQ9MDD)
0d1676a53f Update serial_no.yaml 2025-07-17 20:56:31 +02:00
pszafer
c1e24bd26f fix sdm path 2025-06-24 20:47:08 +02:00
pszafer
85b38bf32c fix to main 2025-06-24 20:36:33 +02:00
pszafer
509a1fe7c2 dimmer gen2 with can and v0_9 with can 2025-06-18 11:25:39 +02:00
pszafer
719a94d5fd fix fw creation 2025-06-18 08:53:11 +02:00
pszafer
c2f43e827a add serial_no id 2025-06-18 08:52:59 +02:00
pszafer
ebbcc61699 Dimmer gen2 dev0_4 2025-06-17 14:35:44 +02:00
pszafer
08db63a36f note about dev version 2025-03-10 09:40:33 +01:00
Pawel
98697de0cb Merge pull request #28 from boneIO-eu/main
Cover without off on action and multiclick to rgbw dimmer
2024-12-04 09:42:06 +01:00
pszafer
e050de0d4f add multiclick to rgbw 2024-12-04 09:40:56 +01:00
pszafer
5735034bbc add new cover version 2024-12-04 09:11:15 +01:00
Pawel
2981b34d1f Merge pull request #27 from boneIO-eu/main
move from single output file to multiple output files
2024-10-29 11:57:10 +01:00
pszafer
cfa89d128e move from single output file to multiple output files 2024-10-29 11:56:43 +01:00
Pawel
71a4b96bb2 Merge pull request #26 from boneIO-eu/main
Add multiclick to dimmer
2024-10-25 09:36:25 +02:00
pszafer
acfc4aea01 add multiclick on dimmer 2024-10-25 09:33:22 +02:00
pszafer
56a32dfa83 fix typo boards 2024-10-25 09:22:45 +02:00
Pawel
7a33b7b17e Merge pull request #25 from boneIO-eu/main
Fix 24x16 and move Dimmer output to external yaml
2024-10-25 09:20:27 +02:00
pszafer
c11ffdd002 move dimmer output to external file 2024-10-25 09:18:54 +02:00
pszafer
a86adfce01 fix 24x16 and cover mix 2024-10-23 14:53:36 +02:00
Pawel
93cb173520 Merge pull request #24 from boneIO-eu/main
Add testing new UI
2024-10-23 13:20:41 +02:00
pszafer
18d722454b Add testing new UI 2024-10-23 13:20:05 +02:00
Pawel
7f2a1c9b10 Merge pull request #23 from boneIO-eu/main
Add testing new UI
2024-10-23 12:51:20 +02:00
pszafer
b3f4062e9a Add testing new UI 2024-10-23 12:50:58 +02:00
Pawel
b378eb883f Merge pull request #22 from boneIO-eu/main
add reboot_timeout: 0s
2024-10-23 12:27:46 +02:00
pszafer
18a71c4371 add reboot_timeout: 0s 2024-10-23 12:27:13 +02:00
Pawel
a25b0f46ac Merge pull request #21 from boneIO-eu/main
fix v0.4
2024-10-07 14:41:01 +02:00
pszafer
40bd165cf6 v1.4.0 2024-10-07 14:40:06 +02:00
Pawel
3c9548291e Merge pull request #17 from wedr0wycz/main
Corrected pcf inputs ids
2024-10-07 12:35:19 +02:00
Pawel
5f88f5030f Merge branch 'main' into main 2024-10-07 12:35:07 +02:00
Pawel
9e95318de6 Revert to @latest and ref version 2024-10-07 12:33:58 +02:00
Pawel
7afdc3d6f0 Merge pull request #20 from boneIO-eu/main
fix ina219 devices
2024-10-07 12:21:29 +02:00
pszafer
b47b41298f fix ina219 devices 2024-10-07 12:21:06 +02:00
Pawel
8b5366356f Merge pull request #19 from boneIO-eu/main
add v1.3.0 ref
2024-10-07 12:19:51 +02:00
pszafer
77d975597e add v1.3.0 ref 2024-10-07 12:18:04 +02:00
Pawel
6ef73e9bfa Merge pull request #18 from boneIO-eu/main
merge main to latest
2024-10-06 17:23:35 +02:00
wedr0wycz
3e6e24db28 minor editorial corrections 2024-10-06 14:48:03 +02:00
wedr0wycz
9441de7db3 corrected input id name 2024-10-05 21:11:23 +02:00
wedr0wycz
1b19e7e2a9 corrected id name 2024-10-05 21:05:05 +02:00
pszafer
0509f60860 add 8x10A 2024-10-04 19:34:32 +02:00
pszafer
9df077dc8c change phy addr in v0.9 2024-09-30 09:07:55 +02:00
pszafer
5ab0ad7794 fix devices_v0_7-v0_9 2024-09-29 14:10:51 +02:00
pszafer
5ad10482c9 Add v0.9 test board 2024-09-29 14:07:25 +02:00
wedr0wycz
56801a916c Update boneio-32x10_switches_v0_4.yaml 2024-09-23 16:12:34 +02:00
wedr0wycz
fba8511135 Update pcf.yaml 2024-09-23 15:41:05 +02:00
wedr0wycz
324c55b1d3 Merge branch 'boneIO-eu:main' into main 2024-09-20 15:21:39 +02:00
wedr0wycz
b53356ee8e change id name 2024-09-19 21:25:48 +02:00
Pawel
128ce7d2c5 Merge pull request #16 from wedr0wycz/main
New format configuration for 0.4PP
2024-08-20 08:48:32 +02:00
wedr0wycz
24398e5bfd nowy katalog z konfigami dla wersji 0.4PP 2024-08-18 00:26:31 +02:00
wedr0wycz
a1aefcccf8 Create display.yaml 2024-08-17 22:28:39 +02:00
wedr0wycz
9f0bc09e32 Create pcf.yaml 2024-08-17 22:16:42 +02:00
wedr0wycz
1f484039e7 Update ina219.yaml 2024-08-17 22:04:46 +02:00
wedr0wycz
f92c1d1523 Create ina219.yaml 2024-08-17 22:04:19 +02:00
wedr0wycz
609b2ebe76 Update i2c.yaml 2024-08-17 22:03:23 +02:00
wedr0wycz
118887d7a9 Create i2c.yaml 2024-08-17 22:02:53 +02:00
wedr0wycz
91dd0d9e78 Update boneio-32x10_switches_v0_4.yaml 2024-08-17 21:53:01 +02:00
wedr0wycz
fb3a0c5308 Update boneio-32x10_switches_v0_4.yaml 2024-06-26 09:42:46 +02:00
wedr0wycz
8c4ce848f0 Create boneio-32x10_switches_v0_4.yaml 2024-06-26 09:39:07 +02:00
Pawel
37f1f57b16 Merge pull request #15 from boneIO-eu/main
Compability fix with Esphome 2024.6
2024-06-24 20:29:42 +02:00
Pawel
28e2d08829 Merge pull request #14 from boneIO-eu/main
Add Mosfet and fix CCT
2024-06-21 11:23:02 +02:00
Pawel
d6fcbca9f0 Merge pull request #13 from boneIO-eu/main
change to only esp as serial prefix
2024-05-27 21:32:08 +02:00
Pawel
ae47f019b2 Merge pull request #12 from boneIO-eu/main
add serial_prefix to config
2024-05-27 20:33:18 +02:00
Pawel
0a70b4a076 Merge pull request #11 from boneIO-eu/main
v1.0.15
2024-05-23 20:32:19 +02:00
91 changed files with 8645 additions and 1357 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

3
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,3 @@
{
"python.languageServer": "None"
}

View File

@@ -1,368 +0,0 @@
switch:
- platform: gpio
id: cover_open_01_out01
pin:
pcf8574: pcf_left
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_01 [cover_open_01_out01, cover_close_01_out02]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_01_out02
pin:
pcf8574: pcf_left
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_01
restore_mode: always off
- platform: gpio
id: cover_open_02_out03
pin:
pcf8574: pcf_left
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_02 [cover_open_02_out03, cover_close_02_out04]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_02_out04
pin:
pcf8574: pcf_left
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_02
restore_mode: always off
- platform: gpio
id: cover_open_03_out05
pin:
pcf8574: pcf_left
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_03 [cover_open_03_out05, cover_close_03_out06]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_03_out06
pin:
pcf8574: pcf_left
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_03
restore_mode: always off
- platform: gpio
id: cover_open_04_out07
pin:
pcf8574: pcf_left
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_04 [cover_open_04_out07, cover_close_04_out08]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_04_out08
pin:
pcf8574: pcf_left
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_04
restore_mode: always off
- platform: gpio
id: cover_open_05_out09
pin:
pcf8574: pcf_right
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_05 [cover_open_05_out09, cover_close_05_out10]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_05_out10
pin:
pcf8574: pcf_right
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_05
restore_mode: always off
- platform: gpio
id: cover_open_06_out11
pin:
pcf8574: pcf_right
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_06 [cover_open_06_out11, cover_close_06_out12]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_06_out12
pin:
pcf8574: pcf_right
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_06
restore_mode: always off
- platform: gpio
id: cover_open_07_out13
pin:
pcf8574: pcf_right
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_07 [cover_open_07_out13, cover_close_07_out14]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_07_out14
pin:
pcf8574: pcf_right
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_07
restore_mode: always off
- platform: gpio
id: cover_open_08_out15
pin:
pcf8574: pcf_right
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_08 [cover_open_08_out15, cover_close_08_out16]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_08_out16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_08
restore_mode: always off
- platform: gpio
id: cover_open_09_out17
pin:
pcf8574: pcf_left
number: 0
mode:
output: true
inverted: true
interlock: &cover_interlock_09 [cover_open_09_out17, cover_close_09_out18]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_09_out18
pin:
pcf8574: pcf_left
number: 1
mode:
output: true
inverted: true
interlock: *cover_interlock_09
restore_mode: always off
- platform: gpio
id: cover_open_10_out19
pin:
pcf8574: pcf_left
number: 2
mode:
output: true
inverted: true
interlock: &cover_interlock_10 [cover_open_10_out19, cover_close_10_out20]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_10_out20
pin:
pcf8574: pcf_left
number: 3
mode:
output: true
inverted: true
interlock: *cover_interlock_10
restore_mode: always off
- platform: gpio
id: cover_open_11_out21
pin:
pcf8574: pcf_left
number: 4
mode:
output: true
inverted: true
interlock: &cover_interlock_11 [cover_open_11_out21, cover_close_11_out22]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_11_out22
pin:
pcf8574: pcf_left
number: 5
mode:
output: true
inverted: true
interlock: *cover_interlock_11
restore_mode: always off
- platform: gpio
id: cover_open_12_out23
pin:
pcf8574: pcf_left
number: 6
mode:
output: true
inverted: true
interlock: &cover_interlock_12 [cover_open_12_out23, cover_close_12_out24]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_12_out24
pin:
pcf8574: pcf_left
number: 7
mode:
output: true
inverted: true
interlock: *cover_interlock_12
restore_mode: always off
- platform: gpio
id: cover_open_13_out25
pin:
pcf8574: pcf_right
number: 0
mode:
output: true
inverted: true
interlock: &cover_interlock_13 [cover_open_13_out25, cover_close_13_out26]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_13_out26
pin:
pcf8574: pcf_right
number: 1
mode:
output: true
inverted: true
interlock: *cover_interlock_13
restore_mode: always off
- platform: gpio
id: cover_open_14_out27
pin:
pcf8574: pcf_right
number: 2
mode:
output: true
inverted: true
interlock: &cover_interlock_14 [cover_open_14_out27, cover_close_14_out28]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_14_out28
pin:
pcf8574: pcf_right
number: 3
mode:
output: true
inverted: true
interlock: *cover_interlock_14
restore_mode: always off
- platform: gpio
id: cover_open_15_out29
pin:
pcf8574: pcf_right
number: 4
mode:
output: true
inverted: true
interlock: &cover_interlock_15 [cover_open_15_out29, cover_close_15_out30]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_15_out30
pin:
pcf8574: pcf_right
number: 5
mode:
output: true
inverted: true
interlock: *cover_interlock_15
restore_mode: always off
- platform: gpio
id: cover_open_16_out31
pin:
pcf8574: pcf_right
number: 6
mode:
output: true
inverted: true
interlock: &cover_interlock_16 [cover_open_16_out31, cover_close_16_out32]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_16_out32
pin:
pcf8574: pcf_right
number: 7
mode:
output: true
inverted: true
interlock: *cover_interlock_16
restore_mode: always off

View File

@@ -1,287 +0,0 @@
output:
- platform: gpio
id: out_01
pin:
pcf8574: pcf_left
number: 15
mode:
output: true
inverted: true
- platform: gpio
id: out_02
pin:
pcf8574: pcf_left
number: 14
mode:
output: true
inverted: true
- platform: gpio
id: out_03
pin:
pcf8574: pcf_left
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: out_04
pin:
pcf8574: pcf_left
number: 12
mode:
output: true
inverted: true
- platform: gpio
id: out_05
pin:
pcf8574: pcf_left
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: out_06
pin:
pcf8574: pcf_left
number: 10
mode:
output: true
inverted: true
- platform: gpio
id: out_07
pin:
pcf8574: pcf_left
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: out_08
pin:
pcf8574: pcf_left
number: 8
mode:
output: true
inverted: true
- platform: gpio
id: out_09
pin:
pcf8574: pcf_right
number: 15
mode:
output: true
inverted: true
- platform: gpio
id: out_10
pin:
pcf8574: pcf_right
number: 14
mode:
output: true
inverted: true
- platform: gpio
id: out_11
pin:
pcf8574: pcf_right
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: out_12
pin:
pcf8574: pcf_right
number: 12
mode:
output: true
inverted: true
- platform: gpio
id: out_13
pin:
pcf8574: pcf_right
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: out_14
pin:
pcf8574: pcf_right
number: 10
mode:
output: true
inverted: true
- platform: gpio
id: out_15
pin:
pcf8574: pcf_right
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: out_16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true
- platform: gpio
id: out_17
pin:
pcf8574: pcf_left
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: out_18
pin:
pcf8574: pcf_left
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: out_19
pin:
pcf8574: pcf_left
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: out_20
pin:
pcf8574: pcf_left
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: out_21
pin:
pcf8574: pcf_left
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: out_22
pin:
pcf8574: pcf_left
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: out_23
pin:
pcf8574: pcf_left
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: out_24
pin:
pcf8574: pcf_left
number: 7
mode:
output: true
inverted: true
- platform: gpio
id: out_25
pin:
pcf8574: pcf_right
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: out_26
pin:
pcf8574: pcf_right
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: out_27
pin:
pcf8574: pcf_right
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: out_28
pin:
pcf8574: pcf_right
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: out_29
pin:
pcf8574: pcf_right
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: out_30
pin:
pcf8574: pcf_right
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: out_31
pin:
pcf8574: pcf_right
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: out_32
pin:
pcf8574: pcf_right
number: 7
mode:
output: true
inverted: true

View File

@@ -1,329 +0,0 @@
switch:
- platform: gpio
id: cover_open_01_out01
pin:
pcf8574: pcf_left
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_01 [cover_open_01_out01, cover_close_01_out02]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_01_out02
pin:
pcf8574: pcf_left
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_01
restore_mode: always off
- platform: gpio
id: cover_open_02_out03
pin:
pcf8574: pcf_left
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_02 [cover_open_02_out03, cover_close_02_out04]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_02_out04
pin:
pcf8574: pcf_left
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_02
restore_mode: always off
- platform: gpio
id: cover_open_03_out05
pin:
pcf8574: pcf_left
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_03 [cover_open_03_out05, cover_close_03_out06]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_03_out06
pin:
pcf8574: pcf_left
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_03
restore_mode: always off
- platform: gpio
id: cover_open_04_out07
pin:
pcf8574: pcf_left
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_04 [cover_open_04_out07, cover_close_04_out08]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_04_out08
pin:
pcf8574: pcf_left
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_04
restore_mode: always off
- platform: gpio
id: cover_open_05_out09
pin:
pcf8574: pcf_right
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_05 [cover_open_05_out09, cover_close_05_out10]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_05_out10
pin:
pcf8574: pcf_right
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_05
restore_mode: always off
- platform: gpio
id: cover_open_06_out11
pin:
pcf8574: pcf_right
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_06 [cover_open_06_out11, cover_close_06_out12]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_06_out12
pin:
pcf8574: pcf_right
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_06
restore_mode: always off
- platform: gpio
id: cover_open_07_out13
pin:
pcf8574: pcf_right
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_07 [cover_open_07_out13, cover_close_07_out14]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_07_out14
pin:
pcf8574: pcf_right
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_07
restore_mode: always off
- platform: gpio
id: cover_open_08_out15
pin:
pcf8574: pcf_right
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_08 [cover_open_08_out15, cover_close_08_out16]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_08_out16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_08
restore_mode: always off
output:
- platform: gpio
id: out_17
pin:
pcf8574: pcf_left
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: out_18
pin:
pcf8574: pcf_left
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: out_19
pin:
pcf8574: pcf_left
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: out_20
pin:
pcf8574: pcf_left
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: out_21
pin:
pcf8574: pcf_left
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: out_22
pin:
pcf8574: pcf_left
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: out_23
pin:
pcf8574: pcf_left
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: out_24
pin:
pcf8574: pcf_left
number: 7
mode:
output: true
inverted: true
- platform: gpio
id: out_25
pin:
pcf8574: pcf_right
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: out_26
pin:
pcf8574: pcf_right
number: 1
mode:
output: true
inverted: true
- platform: gpio
id: out_27
pin:
pcf8574: pcf_right
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: out_28
pin:
pcf8574: pcf_right
number: 3
mode:
output: true
inverted: true
- platform: gpio
id: out_29
pin:
pcf8574: pcf_right
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: out_30
pin:
pcf8574: pcf_right
number: 5
mode:
output: true
inverted: true
- platform: gpio
id: out_31
pin:
pcf8574: pcf_right
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: out_32
pin:
pcf8574: pcf_right
number: 7
mode:
output: true
inverted: true

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_01_out01
pin:
pcf8574: pcf_left
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_01 [cover_open_01_out01, cover_close_01_out02]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_01_out02
pin:
pcf8574: pcf_left
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_01
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_02_out03
pin:
pcf8574: pcf_left
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_02 [cover_open_02_out03, cover_close_02_out04]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_02_out04
pin:
pcf8574: pcf_left
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_02
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_03_out05
pin:
pcf8574: pcf_left
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_03 [cover_open_03_out05, cover_close_03_out06]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_03_out06
pin:
pcf8574: pcf_left
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_03
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_04_out07
pin:
pcf8574: pcf_left
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_04 [cover_open_04_out07, cover_close_04_out08]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_04_out08
pin:
pcf8574: pcf_left
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_04
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_05_out09
pin:
pcf8574: pcf_right
number: 15
mode:
output: true
inverted: true
interlock: &cover_interlock_05 [cover_open_05_out09, cover_close_05_out10]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_05_out10
pin:
pcf8574: pcf_right
number: 14
mode:
output: true
inverted: true
interlock: *cover_interlock_05
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_06_out11
pin:
pcf8574: pcf_right
number: 13
mode:
output: true
inverted: true
interlock: &cover_interlock_06 [cover_open_06_out11, cover_close_06_out12]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_06_out12
pin:
pcf8574: pcf_right
number: 12
mode:
output: true
inverted: true
interlock: *cover_interlock_06
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_07_out13
pin:
pcf8574: pcf_right
number: 11
mode:
output: true
inverted: true
interlock: &cover_interlock_07 [cover_open_07_out13, cover_close_07_out14]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_07_out14
pin:
pcf8574: pcf_right
number: 10
mode:
output: true
inverted: true
interlock: *cover_interlock_07
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_08_out15
pin:
pcf8574: pcf_right
number: 9
mode:
output: true
inverted: true
interlock: &cover_interlock_08 [cover_open_08_out15, cover_close_08_out16]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_08_out16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true
interlock: *cover_interlock_08
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_09_out17
pin:
pcf8574: pcf_left
number: 0
mode:
output: true
inverted: true
interlock: &cover_interlock_09 [cover_open_09_out17, cover_close_09_out18]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_09_out18
pin:
pcf8574: pcf_left
number: 1
mode:
output: true
inverted: true
interlock: *cover_interlock_09
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_10_out19
pin:
pcf8574: pcf_left
number: 2
mode:
output: true
inverted: true
interlock: &cover_interlock_10 [cover_open_10_out19, cover_close_10_out20]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_10_out20
pin:
pcf8574: pcf_left
number: 3
mode:
output: true
inverted: true
interlock: *cover_interlock_10
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_11_out21
pin:
pcf8574: pcf_left
number: 4
mode:
output: true
inverted: true
interlock: &cover_interlock_11 [cover_open_11_out21, cover_close_11_out22]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_11_out22
pin:
pcf8574: pcf_left
number: 5
mode:
output: true
inverted: true
interlock: *cover_interlock_11
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_12_out23
pin:
pcf8574: pcf_left
number: 6
mode:
output: true
inverted: true
interlock: &cover_interlock_12 [cover_open_12_out23, cover_close_12_out24]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_12_out24
pin:
pcf8574: pcf_left
number: 7
mode:
output: true
inverted: true
interlock: *cover_interlock_12
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_13_out25
pin:
pcf8574: pcf_right
number: 0
mode:
output: true
inverted: true
interlock: &cover_interlock_13 [cover_open_13_out25, cover_close_13_out26]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_13_out26
pin:
pcf8574: pcf_right
number: 1
mode:
output: true
inverted: true
interlock: *cover_interlock_13
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_14_out27
pin:
pcf8574: pcf_right
number: 2
mode:
output: true
inverted: true
interlock: &cover_interlock_14 [cover_open_14_out27, cover_close_14_out28]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_14_out28
pin:
pcf8574: pcf_right
number: 3
mode:
output: true
inverted: true
interlock: *cover_interlock_14
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_15_out29
pin:
pcf8574: pcf_right
number: 4
mode:
output: true
inverted: true
interlock: &cover_interlock_15 [cover_open_15_out29, cover_close_15_out30]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_15_out30
pin:
pcf8574: pcf_right
number: 5
mode:
output: true
inverted: true
interlock: *cover_interlock_15
restore_mode: always off

View File

@@ -0,0 +1,23 @@
switch:
- platform: gpio
id: cover_open_16_out31
pin:
pcf8574: pcf_right
number: 6
mode:
output: true
inverted: true
interlock: &cover_interlock_16 [cover_open_16_out31, cover_close_16_out32]
interlock_wait_time: 5ms
restore_mode: always off
- platform: gpio
id: cover_close_16_out32
pin:
pcf8574: pcf_right
number: 7
mode:
output: true
inverted: true
interlock: *cover_interlock_16
restore_mode: always off

42
boards/dimmer_output.yaml Normal file
View File

@@ -0,0 +1,42 @@
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04

View File

@@ -0,0 +1,17 @@
output:
- platform: gpio
id: out_01
pin:
pcf8574: pcf_left
number: 15
mode:
output: true
inverted: true
- platform: gpio
id: out_02
pin:
pcf8574: pcf_left
number: 14
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_03
pin:
pcf8574: pcf_left
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: out_04
pin:
pcf8574: pcf_left
number: 12
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_05
pin:
pcf8574: pcf_left
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: out_06
pin:
pcf8574: pcf_left
number: 10
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_07
pin:
pcf8574: pcf_left
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: out_08
pin:
pcf8574: pcf_left
number: 8
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_09
pin:
pcf8574: pcf_right
number: 15
mode:
output: true
inverted: true
- platform: gpio
id: out_10
pin:
pcf8574: pcf_right
number: 14
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_11
pin:
pcf8574: pcf_right
number: 13
mode:
output: true
inverted: true
- platform: gpio
id: out_12
pin:
pcf8574: pcf_right
number: 12
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_13
pin:
pcf8574: pcf_right
number: 11
mode:
output: true
inverted: true
- platform: gpio
id: out_14
pin:
pcf8574: pcf_right
number: 10
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_15
pin:
pcf8574: pcf_right
number: 9
mode:
output: true
inverted: true
- platform: gpio
id: out_16
pin:
pcf8574: pcf_right
number: 8
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_17
pin:
pcf8574: pcf_left
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: out_18
pin:
pcf8574: pcf_left
number: 1
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_19
pin:
pcf8574: pcf_left
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: out_20
pin:
pcf8574: pcf_left
number: 3
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_21
pin:
pcf8574: pcf_left
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: out_22
pin:
pcf8574: pcf_left
number: 5
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_23
pin:
pcf8574: pcf_left
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: out_24
pin:
pcf8574: pcf_left
number: 7
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_25
pin:
pcf8574: pcf_right
number: 0
mode:
output: true
inverted: true
- platform: gpio
id: out_26
pin:
pcf8574: pcf_right
number: 1
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_27
pin:
pcf8574: pcf_right
number: 2
mode:
output: true
inverted: true
- platform: gpio
id: out_28
pin:
pcf8574: pcf_right
number: 3
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_29
pin:
pcf8574: pcf_right
number: 4
mode:
output: true
inverted: true
- platform: gpio
id: out_30
pin:
pcf8574: pcf_right
number: 5
mode:
output: true
inverted: true

View File

@@ -0,0 +1,18 @@
output:
- platform: gpio
id: out_31
pin:
pcf8574: pcf_right
number: 6
mode:
output: true
inverted: true
- platform: gpio
id: out_32
pin:
pcf8574: pcf_right
number: 7
mode:
output: true
inverted: true

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,7 +34,7 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
@@ -46,8 +50,10 @@ packages:
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,23 +34,25 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf_with_mcp.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf_with_mcp.yaml',
'boards/24x16_output.yaml',
# 'devices_v0_7/one_wire.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,7 +34,7 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
@@ -40,15 +44,32 @@ packages:
'devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml',
'boards/32x10_output.yaml',
'boards/output/out01_02.yaml',
'boards/output/out03_04.yaml',
'boards/output/out05_06.yaml',
'boards/output/out07_08.yaml',
'boards/output/out09_10.yaml',
'boards/output/out11_12.yaml',
'boards/output/out13_14.yaml',
'boards/output/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
]
logger:
baud_rate: 0 #IMPORTANT FOR V0.5-V0.6 TO GET MODBUS WORKING
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,28 +34,45 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml',
'boards/32x10_output.yaml',
# 'devices_v0_7/one_wire.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml',
'boards/output/out01_02.yaml',
'boards/output/out03_04.yaml',
'boards/output/out05_06.yaml',
'boards/output/out07_08.yaml',
'boards/output/out09_10.yaml',
'boards/output/out11_12.yaml',
'boards/output/out13_14.yaml',
'boards/output/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
local: true
version: 3
time:
- platform: homeassistant

View File

@@ -0,0 +1,676 @@
substitutions:
name: boneio-32-sw-04
friendly_name: 'BoneIO ESP 32x10 Switches'
serial_prefix: 'esp' #Don't change it.
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.32x10-switches
version: '0.4PP'
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
#use_address:
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-32x10_switches_v0_4.yaml@latest
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
'devices_v0_4/display.yaml',
'devices_v0_4/i2c.yaml',
'devices_v0_4/ina219.yaml',
'devices_v0_4/lm75b.yaml',
'devices_v0_4/pcf.yaml',
'boards/output/out01_02.yaml',
'boards/output/out03_04.yaml',
'boards/output/out05_06.yaml',
'boards/output/out07_08.yaml',
'boards/output/out09_10.yaml',
'boards/output/out11_12.yaml',
'boards/output/out13_14.yaml',
'boards/output/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_4/time.yaml',
# 'devices_v0_7/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
# disable web server - for testing only
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
switch:
- platform: output
name: 'Switch 01'
output: out_01
id: switch_01
- platform: output
name: 'Switch 02'
output: out_02
id: switch_02
- platform: output
name: 'Switch 03'
output: out_03
id: switch_03
- platform: output
name: 'Switch 04'
output: out_04
id: switch_04
- platform: output
name: 'Switch 05'
output: out_05
id: switch_05
- platform: output
name: 'Switch 06'
output: out_06
id: switch_06
- platform: output
name: 'Switch 07'
output: out_07
id: switch_07
- platform: output
name: 'Switch 08'
output: out_08
id: switch_08
- platform: output
name: 'Switch 09'
output: out_09
id: switch_09
- platform: output
name: 'Switch 10'
output: out_10
id: switch_10
- platform: output
name: 'Switch 11'
output: out_11
id: switch_11
- platform: output
name: 'Switch 12'
output: out_12
id: switch_12
- platform: output
name: 'Switch 13'
output: out_13
id: switch_13
- platform: output
name: 'Switch 14'
output: out_14
id: switch_14
- platform: output
name: 'Switch 15'
output: out_15
id: switch_15
- platform: output
name: 'Switch 16'
output: out_16
id: switch_16
- platform: output
name: 'Switch 17'
output: out_17
id: switch_17
- platform: output
name: 'Switch 18'
output: out_18
id: switch_18
- platform: output
name: 'Switch 19'
output: out_19
id: switch_19
- platform: output
name: 'Switch 20'
output: out_20
id: switch_20
- platform: output
name: 'Switch 21'
output: out_21
id: switch_21
- platform: output
name: 'Switch 22'
output: out_22
id: switch_22
- platform: output
name: 'Switch 23'
output: out_23
id: switch_23
- platform: output
name: 'Switch 24'
output: out_24
id: switch_24
- platform: output
name: 'Switch 25'
output: out_25
id: switch_25
- platform: output
name: 'Switch 26'
output: out_26
id: switch_26
- platform: output
name: 'Switch 27'
output: out_27
id: switch_27
- platform: output
name: 'Switch 28'
output: out_28
id: switch_28
- platform: output
name: 'Switch 29'
output: out_29
id: switch_29
- platform: output
name: 'Switch 30'
output: out_30
id: switch_30
- platform: output
name: 'Switch 31'
output: out_31
id: switch_31
- platform: output
name: 'Switch 32'
output: out_32
id: switch_32
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs_1to16
number: 0
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_01
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs_1to16
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_02
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs_1to16
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_03
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs_1to16
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_04
- platform: gpio
name: 'IN_05'
id: in_05
pin:
pcf8574: pcf_inputs_1to16
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_05
- platform: gpio
name: 'IN_06'
id: in_06
pin:
pcf8574: pcf_inputs_1to16
number: 5
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_06
- platform: gpio
name: 'IN_07'
id: in_07
pin:
pcf8574: pcf_inputs_1to16
number: 6
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_07
- platform: gpio
name: 'IN_08'
id: in_08
pin:
pcf8574: pcf_inputs_1to16
number: 7
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to16
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to16
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to16
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to16
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to16
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to16
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_14
- platform: gpio
name: 'IN_15'
id: in_15
pin:
pcf8574: pcf_inputs_1to16
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_15
- platform: gpio
name: 'IN_16'
id: in_16
pin:
pcf8574: pcf_inputs_1to16
number: 15
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_16
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_17to32
number: 7
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_17
- platform: gpio
name: 'IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_17to32
number: 6
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_18
- platform: gpio
name: 'IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_17to32
number: 5
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_19
- platform: gpio
name: 'IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_17to32
number: 4
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_20
- platform: gpio
name: 'IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_17to32
number: 3
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_21
- platform: gpio
name: 'IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_17to32
number: 2
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_22
- platform: gpio
name: 'IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_17to32
number: 1
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_23
- platform: gpio
name: 'IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_17to32
number: 0
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_24
- platform: gpio
name: 'IN_25'
id: in_25
pin:
pcf8574: pcf_inputs_17to32
number: 8
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_25
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_17to32
number: 9
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_26
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_17to32
number: 10
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_27
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_17to32
number: 11
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_28
- platform: gpio
name: 'IN_29'
id: in_29
pin:
pcf8574: pcf_inputs_17to32
number: 12
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_29
- platform: gpio
name: 'IN_30'
id: in_30
pin:
pcf8574: pcf_inputs_17to32
number: 13
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_30
- platform: gpio
name: 'IN_31'
id: in_31
pin:
pcf8574: pcf_inputs_17to32
number: 14
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_31
- platform: gpio
name: 'IN_32'
id: in_32
pin:
pcf8574: pcf_inputs_17to32
number: 15
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_32
- platform: gpio
name: 'IN_33'
pin:
number: GPIO33
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_34'
pin:
number: GPIO17
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_35'
pin:
number: GPIO12
mode:
input: true
pullup: true
inverted: false
######################
### MODBUS SECTION ###
######################
# UNCOMMENT BELOW TO USE MODBUS
# uart:
# id: uart_pin14_15
# rx_pin: GPIO14
# tx_pin: GPIO15
# baud_rate: 9600
# stop_bits: 1
# modbus:
# send_wait_time: 200ms
# uart_id: uart_pin14_15
# id: boneio_modbus
# modbus_controller:
# - id: YOURDEVICE ID
# address: 0x09
# modbus_id: mod_bus
# setup_priority: -10
# update_interval: 60s

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,7 +34,7 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
@@ -40,14 +44,31 @@ packages:
'devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml',
'boards/32x10_output.yaml',
'boards/output/out01_02.yaml',
'boards/output/out03_04.yaml',
'boards/output/out05_06.yaml',
'boards/output/out07_08.yaml',
'boards/output/out09_10.yaml',
'boards/output/out11_12.yaml',
'boards/output/out13_14.yaml',
'boards/output/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80

View File

@@ -10,16 +10,26 @@ esphome:
project:
name: boneio.32x10-lights
version: '0.7'
on_boot:
- priority: 1001
then:
- lambda: |-
gpio_reset_pin((gpio_num_t)14);
gpio_reset_pin((gpio_num_t)15);
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,23 +40,40 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml',
'boards/32x10_output.yaml',
# 'devices_v0_7/one_wire.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml',
'boards/output/out01_02.yaml',
'boards/output/out03_04.yaml',
'boards/output/out05_06.yaml',
'boards/output/out07_08.yaml',
'boards/output/out09_10.yaml',
'boards/output/out11_12.yaml',
'boards/output/out13_14.yaml',
'boards/output/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -636,7 +663,11 @@ binary_sensor:
# UNCOMMENT BELOW TO USE MODBUS
# uart:
# id: uart_pin14_15
# rx_pin: GPIO14
# rx_pin:
# number: GPIO14
# mode:
# input: true
# pullup: true
# tx_pin: GPIO15
# baud_rate: 9600
# stop_bits: 1

306
boneio-8x10A_gen2-v0_1.yaml Normal file
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

@@ -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,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,7 +34,7 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
@@ -40,14 +44,31 @@ packages:
'devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml',
'boards/8_covers_16_output.yaml',
'boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -66,11 +87,9 @@ cover:
name: 'Cover 01'
id: cover_01
open_action:
- switch.turn_off: cover_close_01_out02
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
@@ -81,11 +100,9 @@ cover:
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02_out04
- switch.turn_on: cover_open_02_out03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02_out03
- switch.turn_on: cover_close_02_out04
close_duration: 10s
stop_action:
@@ -96,11 +113,9 @@ cover:
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03_out06
- switch.turn_on: cover_open_03_out05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03_out05
- switch.turn_on: cover_close_03_out06
close_duration: 10s
stop_action:
@@ -111,11 +126,9 @@ cover:
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04_out08
- switch.turn_on: cover_open_04_out07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04_out07
- switch.turn_on: cover_close_04_out08
close_duration: 10s
stop_action:
@@ -126,11 +139,9 @@ cover:
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05_out10
- switch.turn_on: cover_open_05_out09
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05_out09
- switch.turn_on: cover_close_05_out10
close_duration: 10s
stop_action:
@@ -141,11 +152,9 @@ cover:
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06_out12
- switch.turn_on: cover_open_06_out11
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06_out11
- switch.turn_on: cover_close_06_out12
close_duration: 10s
stop_action:
@@ -156,11 +165,9 @@ cover:
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07_out14
- switch.turn_on: cover_open_07_out13
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07_out13
- switch.turn_on: cover_close_07_out14
close_duration: 10s
stop_action:
@@ -171,11 +178,9 @@ cover:
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08_out16
- switch.turn_on: cover_open_08_out15
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08_out15
- switch.turn_on: cover_close_08_out16
close_duration: 10s
stop_action:

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,23 +34,40 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml',
'boards/8_covers_16_output.yaml',
# 'devices_v0_7/one_wire.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml',
'boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -62,11 +83,9 @@ cover:
name: 'Cover 01'
id: cover_01
open_action:
- switch.turn_off: cover_close_01_out02
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
@@ -77,11 +96,9 @@ cover:
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02_out04
- switch.turn_on: cover_open_02_out03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02_out03
- switch.turn_on: cover_close_02_out04
close_duration: 10s
stop_action:
@@ -92,11 +109,9 @@ cover:
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03_out06
- switch.turn_on: cover_open_03_out05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03_out05
- switch.turn_on: cover_close_03_out06
close_duration: 10s
stop_action:
@@ -107,11 +122,9 @@ cover:
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04_out08
- switch.turn_on: cover_open_04_out07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04_out07
- switch.turn_on: cover_close_04_out08
close_duration: 10s
stop_action:
@@ -122,11 +135,9 @@ cover:
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05_out10
- switch.turn_on: cover_open_05_out09
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05_out09
- switch.turn_on: cover_close_05_out10
close_duration: 10s
stop_action:
@@ -137,11 +148,9 @@ cover:
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06_out12
- switch.turn_on: cover_open_06_out11
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06_out11
- switch.turn_on: cover_close_06_out12
close_duration: 10s
stop_action:
@@ -152,11 +161,9 @@ cover:
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07_out14
- switch.turn_on: cover_open_07_out13
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07_out13
- switch.turn_on: cover_close_07_out14
close_duration: 10s
stop_action:
@@ -167,11 +174,9 @@ cover:
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08_out16
- switch.turn_on: cover_open_08_out15
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08_out15
- switch.turn_on: cover_close_08_out16
close_duration: 10s
stop_action:

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,7 +34,7 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
@@ -40,14 +44,31 @@ packages:
'devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml',
'boards/8_covers_16_output.yaml',
'boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_7/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -66,11 +87,9 @@ cover:
name: 'Cover 01'
id: cover_01
open_action:
- switch.turn_off: cover_close_01_out02
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
@@ -81,11 +100,9 @@ cover:
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02_out04
- switch.turn_on: cover_open_02_out03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02_out03
- switch.turn_on: cover_close_02_out04
close_duration: 10s
stop_action:
@@ -96,11 +113,9 @@ cover:
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03_out06
- switch.turn_on: cover_open_03_out05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03_out05
- switch.turn_on: cover_close_03_out06
close_duration: 10s
stop_action:
@@ -111,11 +126,9 @@ cover:
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04_out08
- switch.turn_on: cover_open_04_out07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04_out07
- switch.turn_on: cover_close_04_out08
close_duration: 10s
stop_action:
@@ -126,11 +139,9 @@ cover:
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05_out10
- switch.turn_on: cover_open_05_out09
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05_out09
- switch.turn_on: cover_close_05_out10
close_duration: 10s
stop_action:
@@ -141,11 +152,9 @@ cover:
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06_out12
- switch.turn_on: cover_open_06_out11
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06_out11
- switch.turn_on: cover_close_06_out12
close_duration: 10s
stop_action:
@@ -156,11 +165,9 @@ cover:
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07_out14
- switch.turn_on: cover_open_07_out13
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07_out13
- switch.turn_on: cover_close_07_out14
close_duration: 10s
stop_action:
@@ -171,11 +178,9 @@ cover:
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08_out16
- switch.turn_on: cover_open_08_out15
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08_out15
- switch.turn_on: cover_close_08_out16
close_duration: 10s
stop_action:

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,23 +34,40 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml',
'boards/8_covers_16_output.yaml',
# 'devices_v0_7/one_wire.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml',
'boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -62,11 +83,9 @@ cover:
name: 'Cover 01'
id: cover_01
open_action:
- switch.turn_off: cover_close_01_out02
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
@@ -77,11 +96,9 @@ cover:
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02_out04
- switch.turn_on: cover_open_02_out03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02_out03
- switch.turn_on: cover_close_02_out04
close_duration: 10s
stop_action:
@@ -92,11 +109,9 @@ cover:
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03_out06
- switch.turn_on: cover_open_03_out05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03_out05
- switch.turn_on: cover_close_03_out06
close_duration: 10s
stop_action:
@@ -107,11 +122,9 @@ cover:
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04_out08
- switch.turn_on: cover_open_04_out07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04_out07
- switch.turn_on: cover_close_04_out08
close_duration: 10s
stop_action:
@@ -122,11 +135,9 @@ cover:
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05_out10
- switch.turn_on: cover_open_05_out09
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05_out09
- switch.turn_on: cover_close_05_out10
close_duration: 10s
stop_action:
@@ -137,11 +148,9 @@ cover:
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06_out12
- switch.turn_on: cover_open_06_out11
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06_out11
- switch.turn_on: cover_close_06_out12
close_duration: 10s
stop_action:
@@ -152,11 +161,9 @@ cover:
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07_out14
- switch.turn_on: cover_open_07_out13
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07_out13
- switch.turn_on: cover_close_07_out14
close_duration: 10s
stop_action:
@@ -167,11 +174,9 @@ cover:
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08_out16
- switch.turn_on: cover_open_08_out15
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08_out15
- switch.turn_on: cover_close_08_out16
close_duration: 10s
stop_action:

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,7 +34,7 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
@@ -40,14 +44,31 @@ packages:
'devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml',
'boards/16_cover_pcf.yaml',
'boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml',
'boards/cover/out17_18.yaml',
'boards/cover/out19_20.yaml',
'boards/cover/out21_22.yaml',
'boards/cover/out23_24.yaml',
'boards/cover/out25_26.yaml',
'boards/cover/out27_28.yaml',
'boards/cover/out29_30.yaml',
'boards/cover/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -66,11 +87,9 @@ cover:
name: 'Cover 01'
id: cover_01
open_action:
- switch.turn_off: cover_close_01_out02
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
@@ -81,11 +100,9 @@ cover:
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02_out04
- switch.turn_on: cover_open_02_out03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02_out03
- switch.turn_on: cover_close_02_out04
close_duration: 10s
stop_action:
@@ -96,11 +113,9 @@ cover:
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03_out06
- switch.turn_on: cover_open_03_out05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03_out05
- switch.turn_on: cover_close_03_out06
close_duration: 10s
stop_action:
@@ -111,11 +126,9 @@ cover:
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04_out08
- switch.turn_on: cover_open_04_out07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04_out07
- switch.turn_on: cover_close_04_out08
close_duration: 10s
stop_action:
@@ -126,11 +139,9 @@ cover:
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05_out10
- switch.turn_on: cover_open_05_out09
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05_out09
- switch.turn_on: cover_close_05_out10
close_duration: 10s
stop_action:
@@ -141,11 +152,9 @@ cover:
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06_out12
- switch.turn_on: cover_open_06_out11
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06_out11
- switch.turn_on: cover_close_06_out12
close_duration: 10s
stop_action:
@@ -156,11 +165,9 @@ cover:
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07_out14
- switch.turn_on: cover_open_07_out13
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07_out13
- switch.turn_on: cover_close_07_out14
close_duration: 10s
stop_action:
@@ -171,11 +178,9 @@ cover:
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08_out16
- switch.turn_on: cover_open_08_out15
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08_out15
- switch.turn_on: cover_close_08_out16
close_duration: 10s
stop_action:
@@ -186,11 +191,9 @@ cover:
name: 'Cover 09'
id: cover_09
open_action:
- switch.turn_off: cover_close_09_out18
- switch.turn_on: cover_open_09_out17
open_duration: 10s
close_action:
- switch.turn_off: cover_open_09_out17
- switch.turn_on: cover_close_09_out18
close_duration: 10s
stop_action:
@@ -201,11 +204,9 @@ cover:
name: 'Cover 10'
id: cover_10
open_action:
- switch.turn_off: cover_close_10_out20
- switch.turn_on: cover_open_10_out19
open_duration: 10s
close_action:
- switch.turn_off: cover_open_10_out19
- switch.turn_on: cover_close_10_out20
close_duration: 10s
stop_action:
@@ -216,11 +217,9 @@ cover:
name: 'Cover 11'
id: cover_11
open_action:
- switch.turn_off: cover_close_11_out22
- switch.turn_on: cover_open_11_out21
open_duration: 10s
close_action:
- switch.turn_off: cover_open_11_out21
- switch.turn_on: cover_close_11_out22
close_duration: 10s
stop_action:
@@ -231,11 +230,9 @@ cover:
name: 'Cover 12'
id: cover_12
open_action:
- switch.turn_off: cover_close_12_out24
- switch.turn_on: cover_open_12_out23
open_duration: 10s
close_action:
- switch.turn_off: cover_open_12_out23
- switch.turn_on: cover_close_12_out24
close_duration: 10s
stop_action:
@@ -246,11 +243,9 @@ cover:
name: 'Cover 13'
id: cover_13
open_action:
- switch.turn_off: cover_close_13_out26
- switch.turn_on: cover_open_13_out25
open_duration: 10s
close_action:
- switch.turn_off: cover_open_13_out25
- switch.turn_on: cover_close_13_out26
close_duration: 10s
stop_action:
@@ -261,11 +256,9 @@ cover:
name: 'Cover 14'
id: cover_14
open_action:
- switch.turn_off: cover_close_14_out28
- switch.turn_on: cover_open_14_out27
open_duration: 10s
close_action:
- switch.turn_off: cover_open_14_out27
- switch.turn_on: cover_close_14_out28
close_duration: 10s
stop_action:
@@ -276,11 +269,9 @@ cover:
name: 'Cover 15'
id: cover_15
open_action:
- switch.turn_off: cover_close_15_out30
- switch.turn_on: cover_open_15_out29
open_duration: 10s
close_action:
- switch.turn_off: cover_open_15_out29
- switch.turn_on: cover_close_15_out30
close_duration: 10s
stop_action:
@@ -291,11 +282,9 @@ cover:
name: 'Cover 16'
id: cover_16
open_action:
- switch.turn_off: cover_close_16_out32
- switch.turn_on: cover_open_16_out31
open_duration: 10s
close_action:
- switch.turn_off: cover_open_16_out31
- switch.turn_on: cover_close_16_out32
close_duration: 10s
stop_action:

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,23 +34,40 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf.yaml',
'boards/16_cover_pcf.yaml',
# 'devices_v0_7/one_wire.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml',
'boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml',
'boards/cover/out17_18.yaml',
'boards/cover/out19_20.yaml',
'boards/cover/out21_22.yaml',
'boards/cover/out23_24.yaml',
'boards/cover/out25_26.yaml',
'boards/cover/out27_28.yaml',
'boards/cover/out29_30.yaml',
'boards/cover/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -62,11 +83,9 @@ cover:
name: 'Cover 01'
id: cover_01
open_action:
- switch.turn_off: cover_close_01_out02
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
@@ -77,11 +96,9 @@ cover:
name: 'Cover 02'
id: cover_02
open_action:
- switch.turn_off: cover_close_02_out04
- switch.turn_on: cover_open_02_out03
open_duration: 10s
close_action:
- switch.turn_off: cover_open_02_out03
- switch.turn_on: cover_close_02_out04
close_duration: 10s
stop_action:
@@ -92,11 +109,9 @@ cover:
name: 'Cover 03'
id: cover_03
open_action:
- switch.turn_off: cover_close_03_out06
- switch.turn_on: cover_open_03_out05
open_duration: 10s
close_action:
- switch.turn_off: cover_open_03_out05
- switch.turn_on: cover_close_03_out06
close_duration: 10s
stop_action:
@@ -107,11 +122,9 @@ cover:
name: 'Cover 04'
id: cover_04
open_action:
- switch.turn_off: cover_close_04_out08
- switch.turn_on: cover_open_04_out07
open_duration: 10s
close_action:
- switch.turn_off: cover_open_04_out07
- switch.turn_on: cover_close_04_out08
close_duration: 10s
stop_action:
@@ -122,11 +135,9 @@ cover:
name: 'Cover 05'
id: cover_05
open_action:
- switch.turn_off: cover_close_05_out10
- switch.turn_on: cover_open_05_out09
open_duration: 10s
close_action:
- switch.turn_off: cover_open_05_out09
- switch.turn_on: cover_close_05_out10
close_duration: 10s
stop_action:
@@ -137,11 +148,9 @@ cover:
name: 'Cover 06'
id: cover_06
open_action:
- switch.turn_off: cover_close_06_out12
- switch.turn_on: cover_open_06_out11
open_duration: 10s
close_action:
- switch.turn_off: cover_open_06_out11
- switch.turn_on: cover_close_06_out12
close_duration: 10s
stop_action:
@@ -152,11 +161,9 @@ cover:
name: 'Cover 07'
id: cover_07
open_action:
- switch.turn_off: cover_close_07_out14
- switch.turn_on: cover_open_07_out13
open_duration: 10s
close_action:
- switch.turn_off: cover_open_07_out13
- switch.turn_on: cover_close_07_out14
close_duration: 10s
stop_action:
@@ -167,11 +174,9 @@ cover:
name: 'Cover 08'
id: cover_08
open_action:
- switch.turn_off: cover_close_08_out16
- switch.turn_on: cover_open_08_out15
open_duration: 10s
close_action:
- switch.turn_off: cover_open_08_out15
- switch.turn_on: cover_close_08_out16
close_duration: 10s
stop_action:
@@ -182,11 +187,9 @@ cover:
name: 'Cover 09'
id: cover_09
open_action:
- switch.turn_off: cover_close_09_out18
- switch.turn_on: cover_open_09_out17
open_duration: 10s
close_action:
- switch.turn_off: cover_open_09_out17
- switch.turn_on: cover_close_09_out18
close_duration: 10s
stop_action:
@@ -197,11 +200,9 @@ cover:
name: 'Cover 10'
id: cover_10
open_action:
- switch.turn_off: cover_close_10_out20
- switch.turn_on: cover_open_10_out19
open_duration: 10s
close_action:
- switch.turn_off: cover_open_10_out19
- switch.turn_on: cover_close_10_out20
close_duration: 10s
stop_action:
@@ -212,11 +213,9 @@ cover:
name: 'Cover 11'
id: cover_11
open_action:
- switch.turn_off: cover_close_11_out22
- switch.turn_on: cover_open_11_out21
open_duration: 10s
close_action:
- switch.turn_off: cover_open_11_out21
- switch.turn_on: cover_close_11_out22
close_duration: 10s
stop_action:
@@ -227,11 +226,9 @@ cover:
name: 'Cover 12'
id: cover_12
open_action:
- switch.turn_off: cover_close_12_out24
- switch.turn_on: cover_open_12_out23
open_duration: 10s
close_action:
- switch.turn_off: cover_open_12_out23
- switch.turn_on: cover_close_12_out24
close_duration: 10s
stop_action:
@@ -242,11 +239,9 @@ cover:
name: 'Cover 13'
id: cover_13
open_action:
- switch.turn_off: cover_close_13_out26
- switch.turn_on: cover_open_13_out25
open_duration: 10s
close_action:
- switch.turn_off: cover_open_13_out25
- switch.turn_on: cover_close_13_out26
close_duration: 10s
stop_action:
@@ -257,11 +252,9 @@ cover:
name: 'Cover 14'
id: cover_14
open_action:
- switch.turn_off: cover_close_14_out28
- switch.turn_on: cover_open_14_out27
open_duration: 10s
close_action:
- switch.turn_off: cover_open_14_out27
- switch.turn_on: cover_close_14_out28
close_duration: 10s
stop_action:
@@ -272,11 +265,9 @@ cover:
name: 'Cover 15'
id: cover_15
open_action:
- switch.turn_off: cover_close_15_out30
- switch.turn_on: cover_open_15_out29
open_duration: 10s
close_action:
- switch.turn_off: cover_open_15_out29
- switch.turn_on: cover_close_15_out30
close_duration: 10s
stop_action:
@@ -287,11 +278,9 @@ cover:
name: 'Cover 16'
id: cover_16
open_action:
- switch.turn_off: cover_close_16_out32
- switch.turn_on: cover_open_16_out31
open_duration: 10s
close_action:
- switch.turn_off: cover_open_16_out31
- switch.turn_on: cover_close_16_out32
close_duration: 10s
stop_action:

View File

@@ -13,6 +13,8 @@ esphome:
esp32:
board: esp32dev
framework:
type: esp-idf
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
@@ -21,12 +23,13 @@ external_components:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files:
[
'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml',
'boards/dimmer_output.yaml',
]
ethernet:
@@ -34,7 +37,9 @@ ethernet:
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -48,8 +53,10 @@ pcf8574:
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -69,7 +76,7 @@ text_sensor:
id: hostname
entity_category: diagnostic
lambda: |-
return id(eth).get_use_address();
return std::string(id(eth).get_use_address());
update_interval: 5min
binary_sensor:
@@ -81,6 +88,26 @@ binary_sensor:
mode:
input: true
inverted: true
on_multi_click:
- timing: # double click
- ON for at most 1s
- OFF for at most 0.5s
- ON for at most 1s
- OFF for at least 0.2s
then:
- light.toggle: rgbw_l
- logger.log: 'Double Click'
- timing: # single click
- ON for at most 1s
- OFF for at least 0.5s
then:
- light.toggle: rgbw_l
- logger.log: 'Single Click'
- timing: # long click
- ON for at least 1.4s
then:
- light.toggle: rgbw_r
- logger.log: 'Long Click'
- platform: gpio
name: 'IN_02'
pin:
@@ -134,51 +161,9 @@ binary_sensor:
input: true
inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light:
- platform: rgbw
id: rgbw_l
name: 'RGBW L'
red: chl01
green: chl02
@@ -187,6 +172,7 @@ light:
default_transition_length: 2s
gamma_correct: 0
- platform: rgbw
id: rgbw_r
name: 'RGBW R'
red: chr01
green: chr02

View File

@@ -13,6 +13,8 @@ esphome:
esp32:
board: esp32dev
framework:
type: esp-idf
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
@@ -21,12 +23,13 @@ external_components:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files:
[
'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml',
'boards/dimmer_output.yaml',
]
ethernet:
@@ -34,7 +37,9 @@ ethernet:
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -48,8 +53,10 @@ pcf8574:
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -69,7 +76,7 @@ text_sensor:
id: hostname
entity_category: diagnostic
lambda: |-
return id(eth).get_use_address();
return std::string(id(eth).get_use_address());
update_interval: 5min
binary_sensor:
@@ -134,49 +141,6 @@ binary_sensor:
input: true
inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
light:
- platform: cwww
name: 'CHL_01_02'

View File

@@ -13,6 +13,8 @@ esphome:
esp32:
board: esp32dev
framework:
type: esp-idf
external_components:
- source: github://boneIO-eu/esphome-LM75@main #Original source and thank you note for BTomala https://github.com/boneIO-eu/esphome-lm75
@@ -21,12 +23,13 @@ external_components:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files:
[
'devices/serial_no.yaml',
'devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml',
'boards/dimmer_output.yaml',
]
ethernet:
@@ -34,7 +37,9 @@ ethernet:
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -48,8 +53,10 @@ pcf8574:
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80
@@ -69,113 +76,310 @@ text_sensor:
id: hostname
entity_category: diagnostic
lambda: |-
return id(eth).get_use_address();
return std::string(id(eth).get_use_address());
update_interval: 5min
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_01
then:
- if:
condition:
lambda: 'return id(chl_01).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_01
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_01
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chl_01
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_02'
id: in_02
pin:
pcf8574: pcf_inputs
number: 2
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_02
then:
- if:
condition:
lambda: 'return id(chl_02).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_02
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_02
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chl_02
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_03'
id: in_03
pin:
pcf8574: pcf_inputs
number: 3
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_03
then:
- if:
condition:
lambda: 'return id(chl_03).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_03
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_03
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chl_03
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_04'
id: in_04
pin:
pcf8574: pcf_inputs
number: 4
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_04
then:
- if:
condition:
lambda: 'return id(chl_04).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chl_04
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chl_04
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chl_04
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_05'
id: in_05
pin:
number: 36
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_05
then:
- if:
condition:
lambda: 'return id(chr_01).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chr_01
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chr_01
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chr_01
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_06'
id: in_06
pin:
number: 39
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_06
then:
- if:
condition:
lambda: 'return id(chr_02).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chr_02
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chr_02
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chr_02
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_07'
id: in_07
pin:
number: 34
mode:
input: true
inverted: true
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_07
then:
- if:
condition:
lambda: 'return id(chr_03).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chr_03
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chr_03
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chr_03
invalid_cooldown: 0.5s
- platform: gpio
name: 'IN_08'
id: in_08
pin:
number: 35
mode:
input: true
inverted: true
output:
- platform: ledc
pin: 33
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: 32
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: 12
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: 14
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: 13
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: 15
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: 2
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: 17
frequency: 1000Hz
inverted: false
id: chr04
on_multi_click:
- timing:
- ON for at least 0.7s
then:
- while:
condition:
binary_sensor.is_on: in_08
then:
- if:
condition:
lambda: 'return id(chr_04).current_values.get_brightness() >= 0.90f;'
then:
- light.turn_on:
id: chr_04
brightness: 5%
transition_length: 0.2s
else:
- light.dim_relative:
id: chr_04
relative_brightness: 5%
transition_length: 0.2s
- delay: 200ms
invalid_cooldown: 0.5s
- timing: #single click
- ON for at most 0.4s
- OFF for at least 0.1s
then:
light.toggle: chr_04
invalid_cooldown: 0.5s
light:
- platform: monochromatic

390
boneio-dimmer_8ch-v0_4.yaml Normal file
View File

@@ -0,0 +1,390 @@
substitutions:
name: boneio-dr-8ch-04
friendly_name: 'BoneIO Dimmer LED'
serial_prefix: 'dim' #Don't change it.
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.dimmer-led
version: '0.4'
esp32:
board: esp32-s3-devkitc-1
framework:
type: esp-idf
ethernet:
id: eth
type: W5500
clk_pin: GPIO12
mosi_pin: GPIO14
miso_pin: GPIO13
cs_pin: GPIO39
interrupt_pin: GPIO21
reset_pin: GPIO38
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: GPIO11
scl: GPIO10
scan: True
frequency: 400kHz
uart:
id: uart_pin8_9
rx_pin: GPIO8
tx_pin: GPIO9
baud_rate: 9600
stop_bits: 1
output:
- platform: ledc
pin: GPIO4
frequency: 1000Hz
inverted: false
id: chl01
- platform: ledc
pin: GPIO5
frequency: 1000Hz
inverted: false
id: chl02
- platform: ledc
pin: GPIO6
frequency: 1000Hz
inverted: false
id: chl03
- platform: ledc
pin: GPIO7
frequency: 1000Hz
inverted: false
id: chl04
- platform: ledc
pin: GPIO15
frequency: 1000Hz
inverted: false
id: chr01
- platform: ledc
pin: GPIO16
frequency: 1000Hz
inverted: false
id: chr02
- platform: ledc
pin: GPIO17
frequency: 1000Hz
inverted: false
id: chr03
- platform: ledc
pin: GPIO18
frequency: 1000Hz
inverted: false
id: chr04
##CAN gpio1 - tx, gpio2 rx
modbus:
send_wait_time: 200ms
uart_id: uart_pin8_9
id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
# 'devices/dimmer_i2c.yaml',
# 'devices/dimmer_ina219.yaml',
# 'boards/dimmer_output.yaml',
]
# dashboard_import:
# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@latest
# import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
local: true
text_sensor:
- platform: version
name: 'boneio-dimmer- Version'
icon: mdi:cube-outline
entity_category: diagnostic
- platform: ethernet_info
ip_address:
entity_category: diagnostic
name: boneio-dimmer IP
- platform: template
name: 'Hostname'
id: hostname
entity_category: diagnostic
lambda: |-
return std::string(id(eth).get_use_address());
update_interval: 5min
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
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
sensor:
- 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: max9611
shunt_resistance: 0.005 ohm
gain: '1X'
voltage:
name: CHL Voltage
current:
name: CHLCurrent
power:
name: CHL Watts
temperature:
name: CHL Temperature
address: 0x70
update_interval: 10s
- platform: max9611
shunt_resistance: 0.005 ohm
gain: '1X'
voltage:
name: CHR Voltage
current:
name: CHR Current
power:
name: CHR Watts
temperature:
name: CHR Temperature
address: 0x73
update_interval: 10s
- platform: modbus_controller
modbus_controller_id: sht20
name: 'MTemperature'
register_type: read
address: 1
unit_of_measurement: '°C'
device_class: 'temperature'
state_class: 'measurement'
value_type: S_WORD
accuracy_decimals: 2
filters:
- multiply: 0.1
- platform: modbus_controller
modbus_controller_id: sht20
name: 'MHumidity'
register_type: read
address: 2
unit_of_measurement: '%'
device_class: 'humidity'
state_class: 'measurement'
value_type: S_WORD
accuracy_decimals: 2
filters:
- multiply: 0.1
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO42
mode:
output: true
inverted: true
modbus_controller:
- id: sht20
address: 62
modbus_id: boneio_modbus
setup_priority: -10
update_interval: 20s
canbus:
- platform: esp32_can
tx_pin: GPIO01
rx_pin: GPIO02
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]

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,374 @@
substitutions:
name: boneio-dr-gen2-8ch-dev04
friendly_name: 'BoneIO Dimmer dev0.4'
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: true
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"
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
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
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',
# 'devices/dimmer_i2c.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-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
# - platform: http_request
# 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
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: 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
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
- platform: gpio
name: "CAN RX"
pin: GPIO47
- platform: gpio
name: "CAN TX"
pin: GPIO48
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]

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,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,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,15 +34,15 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf_mosfet.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf_mosfet.yaml',
'boards/mosfet48_output.yaml',
# 'devices_v0_7/one_wire.yaml',
]
@@ -47,7 +51,8 @@ logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80

View File

@@ -13,13 +13,17 @@ esphome:
esp32:
board: nodemcu-32s
framework:
type: esp-idf
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO0_IN
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 1
power_pin: GPIO16
@@ -30,23 +34,25 @@ dashboard_import:
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.1.0
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml',
'devices_v0_7/ina219.yaml',
'devices_v0_7/lm75b.yaml',
'devices_v0_7/pcf_mosfet.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf_mosfet.yaml',
'boards/mosfet48_output.yaml',
# 'devices_v0_7/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
ota:
platform: esphome
- platform: esphome
- platform: web_server
web_server:
port: 80

5
configuration/.gitignore vendored Normal file
View File

@@ -0,0 +1,5 @@
# Gitignore settings for ESPHome
# This is an example and may include too much for your use-case.
# You can modify this file to suit your needs.
/.esphome/
/secrets.yaml

View File

@@ -0,0 +1,291 @@
substitutions:
name: boneio-dev02
friendly_name: 'BoneIO Dimmer dev0.2'
serial_prefix: 'dim' #Don't change it.
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: false
project:
name: boneio.dimmer-led
version: 'dev0.2'
esp32:
board: esp32-s3-devkitc-1
ethernet:
id: eth
type: W5500
clk_pin: GPIO12
mosi_pin: GPIO39
miso_pin: GPIO38
cs_pin: GPIO13
interrupt_pin: GPIO2
reset_pin: GPIO1
# Enable fallback hotspot (captive portal) in case wifi connection fails
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: GPIO14
tx_pin: GPIO21
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 gpio1 - tx, gpio2 rx
modbus:
send_wait_time: 200ms
uart_id: boneio_uart
id: boneio_modbus
packages:
boneio_packages:
url: "https://github.com/boneIO-eu/esphome_packages"
refresh: 1min
files:
- path: "sdm630.yaml"
vars:
device_name: "MySDM"
# dashboard_import:
# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.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
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: 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
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO9
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

@@ -1,10 +1,10 @@
#!/usr/bin/python
import subprocess
import glob
import json
import os
import re
import json
import shutil
import subprocess
from pathlib import Path
home = str(Path.home())
@@ -14,23 +14,51 @@ cwd = os.getcwd()
pattern = r"name:\s*(\S+)"
json_destination = "../website/public/esp"
firmware_destination = "../website/public/esp/firmware"
json_destination = "../website2/public/fwesp"
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 {
"name": "ESPHome",
"version": "2024.5.0",
"version": FIRMWARE_VERSION,
"home_assistant_domain": "esphome",
"funding_url": "https://esphome.io/guides/supporters.html",
"new_install_prompt_erase": False,
"builds": [
{
"chipFamily": "ESP32",
"chipFamily": chip_family,
"parts": [
{
"path": f"/esp/firmware/{firmware_name}.bin",
"path": firmware_path,
"offset": 0,
}
],
@@ -51,23 +79,38 @@ def get_boneio_name(file):
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)
chip_family = "ESP32-S3" if "gen2" in filename else "ESP32"
if not filename:
print("No file found.")
break
firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware-factory.bin"
print("CWD", cwd)
subprocess.run(
f'docker run --rm -p 6052:6052 -v "{cwd}":/config -it ghcr.io/esphome/esphome compile {file}',
firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware.factory.bin"
cmd = f'docker run --rm -p 6053:6052 -v "{cwd}":/config -it ghcr.io/esphome/esphome compile {file}'
print(cmd)
result = subprocess.run(
cmd,
shell=True,
)
if result.returncode != 0:
print("Process failed, breaking.")
break
shutil.copyfile(firmware_path, f"{firmware_destination}/{filename}.bin")
shutil.copyfile(firmware_path, f"{firmware_destination2}/{filename}.bin")
with open(
f"{json_destination}/{filename}.json", "w", encoding="utf-8"
) as f:
print(f"Creating JSON file: {json_destination}/{filename}.json")
json.dump(
json_pattern(firmware_name=filename),
json_pattern(firmware_name=filename, chip_family=chip_family),
f,
ensure_ascii=False,
indent=4,

View File

@@ -0,0 +1,736 @@
substitutions:
name: boneio-32-l-09
friendly_name: 'BoneIO ESP 32x10 Lights'
serial_prefix: 'esp' #Don't change it.
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.32x10-lights
version: 'dev0.9'
esp32:
board: nodemcu-32s
ethernet:
id: eth
type: LAN8720
mdc_pin: GPIO23
mdio_pin: GPIO18
clk_mode: GPIO17_out
phy_addr: 0
power_pin: GPIO12
dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-32x10_lights_v0_9.yaml@latest
import_full_config: true
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/buzzer.yaml',
'devices/serial_no.yaml',
'devices_v0_9/display.yaml',
'devices_v0_9/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml',
'boards/output/out01_02.yaml',
'boards/output/out03_04.yaml',
'boards/output/out05_06.yaml',
'boards/output/out07_08.yaml',
'boards/output/out09_10.yaml',
'boards/output/out11_12.yaml',
'boards/output/out13_14.yaml',
'boards/output/out15_16.yaml',
'boards/output/out17_18.yaml',
'boards/output/out19_20.yaml',
'boards/output/out21_22.yaml',
'boards/output/out23_24.yaml',
'boards/output/out25_26.yaml',
'boards/output/out27_28.yaml',
'boards/output/out29_30.yaml',
'boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml',
]
logger:
api:
reboot_timeout: 0s
# http_request:
# verify_ssl: false
ota:
- platform: esphome
- platform: web_server
# - platform: http_request
# name: Firmware Update
# source: https://boneio.eu/esp/
web_server:
port: 80
local: true
time:
- platform: homeassistant
timezone: Europe/Warsaw
id: homeassistant_time
light:
- platform: binary
name: 'Light 01'
output: out_01
id: light_01
- platform: binary
name: 'Light 02'
output: out_02
id: light_02
- platform: binary
name: 'Light 03'
output: out_03
id: light_03
- platform: binary
name: 'Light 04'
output: out_04
id: light_04
- platform: binary
name: 'Light 05'
output: out_05
id: light_05
- platform: binary
name: 'Light 06'
output: out_06
id: light_06
- platform: binary
name: 'Light 07'
output: out_07
id: light_07
- platform: binary
name: 'Light 08'
output: out_08
id: light_08
- platform: binary
name: 'Light 09'
output: out_09
id: light_09
- platform: binary
name: 'Light 10'
output: out_10
id: light_10
- platform: binary
name: 'Light 11'
output: out_11
id: light_11
- platform: binary
name: 'Light 12'
output: out_12
id: light_12
- platform: binary
name: 'Light 13'
output: out_13
id: light_13
- platform: binary
name: 'Light 14'
output: out_14
id: light_14
- platform: binary
name: 'Light 15'
output: out_15
id: light_15
- platform: binary
name: 'Light 16'
output: out_16
id: light_16
- platform: binary
name: 'Light 17'
output: out_17
id: light_17
- platform: binary
name: 'Light 18'
output: out_18
id: light_18
- platform: binary
name: 'Light 19'
output: out_19
id: light_19
- platform: binary
name: 'Light 20'
output: out_20
id: light_20
- platform: binary
name: 'Light 21'
output: out_21
id: light_21
- platform: binary
name: 'Light 22'
output: out_22
id: light_22
- platform: binary
name: 'Light 23'
output: out_23
id: light_23
- platform: binary
name: 'Light 24'
output: out_24
id: light_24
- platform: binary
name: 'Light 25'
output: out_25
id: light_25
- platform: binary
name: 'Light 26'
output: out_26
id: light_26
- platform: binary
name: 'Light 27'
output: out_27
id: light_27
- platform: binary
name: 'Light 28'
output: out_28
id: light_28
- platform: binary
name: 'Light 29'
output: out_29
id: light_29
- platform: binary
name: 'Light 30'
output: out_30
id: light_30
- platform: binary
name: 'Light 31'
output: out_31
id: light_31
- platform: binary
name: 'Light 32'
output: out_32
id: light_32
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs_1to14
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_1to14
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_1to14
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_1to14
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_1to14
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_1to14
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_1to14
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_1to14
number: 8
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_08
- platform: gpio
name: 'IN_09'
id: in_09
pin:
pcf8574: pcf_inputs_1to14
number: 9
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_09
- platform: gpio
name: 'IN_10'
id: in_10
pin:
pcf8574: pcf_inputs_1to14
number: 10
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_10
- platform: gpio
name: 'IN_11'
id: in_11
pin:
pcf8574: pcf_inputs_1to14
number: 11
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_11
- platform: gpio
name: 'IN_12'
id: in_12
pin:
pcf8574: pcf_inputs_1to14
number: 12
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_12
- platform: gpio
name: 'IN_13'
id: in_13
pin:
pcf8574: pcf_inputs_1to14
number: 13
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_13
- platform: gpio
name: 'IN_14'
id: in_14
pin:
pcf8574: pcf_inputs_1to14
number: 14
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_14
- platform: gpio
name: 'IN_15'
id: in_15
pin:
pcf8574: pcf_inputs_15to28
number: 6
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_15
- platform: gpio
name: 'IN_16'
id: in_16
pin:
pcf8574: pcf_inputs_15to28
number: 5
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_16
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_15to28
number: 4
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_17
- platform: gpio
name: 'IN_18'
id: in_18
pin:
pcf8574: pcf_inputs_15to28
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_18
- platform: gpio
name: 'IN_19'
id: in_19
pin:
pcf8574: pcf_inputs_15to28
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_19
- platform: gpio
name: 'IN_20'
id: in_20
pin:
pcf8574: pcf_inputs_15to28
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_20
- platform: gpio
name: 'IN_21'
id: in_21
pin:
pcf8574: pcf_inputs_15to28
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_21
- platform: gpio
name: 'IN_22'
id: in_22
pin:
pcf8574: pcf_inputs_15to28
number: 8
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_22
- platform: gpio
name: 'IN_23'
id: in_23
pin:
pcf8574: pcf_inputs_15to28
number: 9
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_23
- platform: gpio
name: 'IN_24'
id: in_24
pin:
pcf8574: pcf_inputs_15to28
number: 10
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_24
- platform: gpio
name: 'IN_25'
id: in_25
pin:
pcf8574: pcf_inputs_15to28
number: 11
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_25
- platform: gpio
name: 'IN_26'
id: in_26
pin:
pcf8574: pcf_inputs_15to28
number: 12
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_26
- platform: gpio
name: 'IN_27'
id: in_27
pin:
pcf8574: pcf_inputs_15to28
number: 13
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_27
- platform: gpio
name: 'IN_28'
id: in_28
pin:
pcf8574: pcf_inputs_15to28
number: 14
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_28
- platform: gpio
name: 'IN_29'
id: in_29
pin:
pcf8574: pcf_inputs_28to35_menu
number: 0
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_29
- platform: gpio
name: 'IN_30'
id: in_30
pin:
pcf8574: pcf_inputs_28to35_menu
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_30
- platform: gpio
name: 'IN_31'
id: in_31
pin:
pcf8574: pcf_inputs_28to35_menu
number: 2
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_31
- platform: gpio
name: 'IN_32'
id: in_32
pin:
pcf8574: pcf_inputs_28to35_menu
number: 3
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_32
- platform: gpio
name: 'IN_33'
pin:
pcf8574: pcf_inputs_28to35_menu
number: 4
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_34'
pin:
pcf8574: pcf_inputs_28to35_menu
number: 5
mode:
input: true
inverted: true
- platform: gpio
name: 'IN_35'
pin:
pcf8574: pcf_inputs_28to35_menu
number: 6
mode:
input: true
inverted: true
- platform: template
name: CAN Bus Button
id: can_bus_button
######################
### MODBUS SECTION ###
######################
# UNCOMMENT BELOW TO USE MODBUS
uart:
id: uart_pin14_15
rx_pin: GPIO14
tx_pin: GPIO15
baud_rate: 9600
stop_bits: 1
modbus:
send_wait_time: 200ms
uart_id: uart_pin14_15
id: boneio_modbus
modbus_controller:
- id: sht20
address: 62
modbus_id: boneio_modbus
setup_priority: -10
update_interval: 20s
sensor:
- platform: modbus_controller
modbus_controller_id: sht20
name: 'Temperature'
register_type: read
address: 1
unit_of_measurement: '°C'
device_class: 'temperature'
state_class: 'measurement'
value_type: S_WORD
accuracy_decimals: 2
filters:
- multiply: 0.1
- platform: modbus_controller
modbus_controller_id: sht20
name: 'Humidity'
register_type: read
address: 2
unit_of_measurement: '%'
device_class: 'humidity'
state_class: 'measurement'
value_type: S_WORD
accuracy_decimals: 2
filters:
- multiply: 0.1
canbus:
- platform: esp32_can
tx_pin: GPIO05
rx_pin: GPIO04
can_id: 5
bit_rate: 50kbps
on_frame:
- can_id: 4
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]

355
dev-boneio-8x10A-adc.yaml Normal file
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

194
dev-boneio-ps01.yaml Normal file
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

@@ -1,9 +1,10 @@
text_sensor:
- platform: template
name: 'Serial No.'
id: serial_no
lambda: |-
std::string mac = get_mac_address();
return to_string("${serial_prefix}") + mac.erase(0, mac.length()/2);
return std::string("${serial_prefix}") + mac.substr(mac.length()/2);
icon: mdi:expansion-card-variant
entity_category: diagnostic
update_interval: 60min

131
devices_v0_4/display.yaml Normal file
View File

@@ -0,0 +1,131 @@
#i2c address: 0x3C input oled
sensor:
- platform: uptime
id: wt32_uptime_seconds
update_interval: 60s
entity_category: diagnostic
on_raw_value:
then:
- text_sensor.template.publish:
id: wt32_uptime
state: !lambda |-
int seconds = round(id(wt32_uptime_seconds).raw_state);
int days = seconds / (24 * 3600);
seconds = seconds % (24 * 3600);
int hours = seconds / 3600;
seconds = seconds % 3600;
int minutes = seconds / 60;
return (
(days ? to_string(days) + "d " : "") +
(hours ? to_string(hours) + "h " : "") +
(to_string(minutes) + "m")
).c_str();
text_sensor:
- platform: template
name: Uptime
id: wt32_uptime
entity_category: diagnostic
icon: mdi:clock-start
- platform: template
name: 'IP Address'
id: ip_address
entity_category: diagnostic
icon: 'mdi:ip-network'
lambda: |-
return id(eth).get_ip_addresses().empty() ? "Unset" : id(eth).get_ip_addresses()[0].str();
update_interval: 60s
script:
- id: screensaver_script
# screensaver script, turn on screensaver after 30 seconds, restart counter each time when invoked
mode: restart
then:
# set the time after which the screensaver will be activated
- delay: 30s
- display.page.show: screensaver
- component.update: oled_display
esphome:
on_boot:
priority: 0
then:
- display.page.show: first_page
- component.update: ip_address
- component.update: oled_display
- script.execute: screensaver_script
binary_sensor:
- platform: gpio
entity_category: config
id: boneIO_button
pin:
number: GPIO4
mode:
input: true
pullup: true
inverted: true
on_press:
then:
# woke up when on the screensaver, as well do not include the logo page and screensaver in a loop when pushing a button
- if:
condition:
# on the last page go to the first page skipping the screensaver and logo page
display.is_displaying_page: last_page
then:
- display.page.show: first_page
- component.update: oled_display
else:
- if:
condition:
# on the screensaver, show the logo for a while and display the first page
display.is_displaying_page: screensaver
then:
- display.page.show: first_page
- component.update: oled_display
else:
# not the last page and screensaver go to the next page
- display.page.show_next: oled_display
- component.update: oled_display
# restart screensaver script
- script.execute: screensaver_script
display:
- platform: ssd1306_i2c
id: oled_display
model: "SH1106 128x64"
address: 0x3C
contrast: 0.5
pages:
- id: first_page
lambda: |-
it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"IP addr:");
it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(ip_address).state.c_str());
it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Uptime:");
it.printf(124, 49, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(wt32_uptime).state.c_str());
it.printf(4, 61, id(size_10), TextAlign::BASELINE_LEFT ,"Temperature:");
it.printf(124, 61, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2f°C", id(boneIO_temp).state);
# additional pages should be defined between the first and last page
- id: last_page
lambda: |-
it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.printf(4, 25, id(size_10), TextAlign::BASELINE_LEFT ,"Current:");
it.printf(124, 25, id(size_10), TextAlign::BASELINE_RIGHT ,"%.3fA", id(ina_current).state);
it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"Power:");
it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fW", id(ina_power).state);
it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Bus Volt:");
it.printf(124, 49, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_bus_voltage).state);
it.printf(4, 61, id(size_10), TextAlign::BASELINE_LEFT ,"Shunt Volt:");
it.printf(124, 61, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_shunt_voltage).state);
- id: screensaver
lambda: |-
it.fill(COLOR_OFF);
font:
- file: 'gfonts://Ubuntu'
id: size_10
size: 10

6
devices_v0_4/i2c.yaml Normal file
View File

@@ -0,0 +1,6 @@
i2c:
- id: i2c_bus
sda: GPIO14
scl: GPIO15
scan: True
frequency: 400kHz

13
devices_v0_4/pcf.yaml Normal file
View File

@@ -0,0 +1,13 @@
pcf8574:
- id: 'pcf_right'
address: 0x20
pcf8575: true
- id: 'pcf_left'
address: 0x21
pcf8575: true
- id: 'pcf_inputs_1to16'
address: 0x26
pcf8575: true
- id: 'pcf_inputs_17to32'
address: 0x27
pcf8575: true

3
devices_v0_4/time.yaml Normal file
View File

@@ -0,0 +1,3 @@
time:
- platform: ds1307
id: ds1307_time

View File

@@ -1,5 +1,6 @@
dallas:
- pin: GPIO32
one_wire:
- platform: gpio
pin: GPIO32
# sensor:
# - platform: dallas

View File

@@ -0,0 +1,20 @@
sensor:
# Module power consmption
- platform: ina219
address: 0x40
shunt_resistance: 0.1 ohm
current:
id: ina_current
name: 'INA219 Current'
power:
id: ina_power
name: 'INA219 Power'
bus_voltage:
id: ina_bus_voltage
name: 'INA219 Bus Voltage'
shunt_voltage:
id: ina_shunt_voltage
name: 'INA219 Shunt Voltage'
max_voltage: 32.0V
max_current: 3.2A
update_interval: 30s

View File

@@ -0,0 +1,12 @@
#i2c address: 0x48 output lm75b temp
#LM75B
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]
sensor:
# Lower board temperature
- platform: lm75
id: boneIO_temp
name: 'LM75B Temperature'
update_interval: 30s

View File

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

129
devices_v0_9/display.yaml Normal file
View File

@@ -0,0 +1,129 @@
#i2c address: 0x3C input oled
sensor:
- platform: uptime
id: wt32_uptime_seconds
update_interval: 60s
entity_category: diagnostic
on_raw_value:
then:
- text_sensor.template.publish:
id: wt32_uptime
state: !lambda |-
int seconds = round(id(wt32_uptime_seconds).raw_state);
int days = seconds / (24 * 3600);
seconds = seconds % (24 * 3600);
int hours = seconds / 3600;
seconds = seconds % 3600;
int minutes = seconds / 60;
return (
(days ? to_string(days) + "d " : "") +
(hours ? to_string(hours) + "h " : "") +
(to_string(minutes) + "m")
).c_str();
text_sensor:
- platform: template
name: Uptime
id: wt32_uptime
entity_category: diagnostic
icon: mdi:clock-start
- platform: template
name: 'IP Address'
id: ip_address
entity_category: diagnostic
icon: 'mdi:ip-network'
lambda: |-
return id(eth).get_ip_addresses().empty() ? "Unset" : id(eth).get_ip_addresses()[0].str();
update_interval: 60s
script:
- id: screensaver_script
# screensaver script, turn on screensaver after 30 seconds, restart counter each time when invoked
mode: restart
then:
# set the time after which the screensaver will be activated
- delay: 30s
- display.page.show: screensaver
- component.update: oled_display
esphome:
on_boot:
priority: 0
then:
- display.page.show: first_page
- component.update: ip_address
- component.update: oled_display
- script.execute: screensaver_script
binary_sensor:
- platform: gpio
entity_category: config
id: boneIO_button
pin:
number: GPIO34
mode:
input: true
inverted: true
on_press:
then:
# woke up when on the screensaver, as well do not include the logo page and screensaver in a loop when pushing a button
- if:
condition:
# on the last page go to the first page skipping the screensaver and logo page
display.is_displaying_page: last_page
then:
- display.page.show: first_page
- component.update: oled_display
else:
- if:
condition:
# on the screensaver, show the logo for a while and display the first page
display.is_displaying_page: screensaver
then:
- display.page.show: first_page
- component.update: oled_display
else:
# not the last page and screensaver go to the next page
- display.page.show_next: oled_display
- component.update: oled_display
# restart screensaver script
- script.execute: screensaver_script
display:
- platform: ssd1306_i2c
id: oled_display
model: 'SH1106 128x64'
address: 0x3C
contrast: 0.5
pages:
- id: first_page
lambda: |-
it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"IP addr:");
it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(ip_address).state.c_str());
it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Uptime:");
it.printf(124, 49, id(size_10), TextAlign::BASELINE_RIGHT ,"%s", id(wt32_uptime).state.c_str());
it.printf(4, 61, id(size_10), TextAlign::BASELINE_LEFT ,"Temperature:");
it.printf(124, 61, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2f°C", id(boneIO_temp).state);
# additional pages should be defined between the first and last page
- id: last_page
lambda: |-
it.rectangle(0, 0, 126, 15);
it.printf(64,11, id(size_10), TextAlign::BASELINE_CENTER, "bone IO");
it.printf(4, 25, id(size_10), TextAlign::BASELINE_LEFT ,"Current:");
it.printf(124, 25, id(size_10), TextAlign::BASELINE_RIGHT ,"%.3fA", id(ina_current).state);
it.printf(4, 37, id(size_10), TextAlign::BASELINE_LEFT ,"Power:");
it.printf(124, 37, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fW", id(ina_power).state);
it.printf(4, 49, id(size_10), TextAlign::BASELINE_LEFT ,"Bus Volt:");
it.printf(124, 49, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_bus_voltage).state);
it.printf(4, 61, id(size_10), TextAlign::BASELINE_LEFT ,"Shunt Volt:");
it.printf(124, 61, id(size_10), TextAlign::BASELINE_RIGHT ,"%.2fV", id(ina_shunt_voltage).state);
- id: screensaver
lambda: |-
it.fill(COLOR_OFF);
font:
- file: 'gfonts://Ubuntu'
id: size_10
size: 10

6
devices_v0_9/i2c.yaml Normal file
View File

@@ -0,0 +1,6 @@
i2c:
- id: i2c_bus
sda: GPIO16
scl: GPIO33
scan: True
frequency: 400kHz

309
dimmer-dev1.yaml Normal file
View File

@@ -0,0 +1,309 @@
substitutions:
name: boneio-dev01
friendly_name: 'BoneIO Dimmer dev0.1'
serial_prefix: 'dim' #Don't change it.
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: false
project:
name: boneio.dimmer-led
version: 'dev0.1'
esp32:
board: esp32-s3-devkitc-1
ethernet:
id: eth
type: W5500
clk_pin: GPIO14
mosi_pin: GPIO12
miso_pin: GPIO13
cs_pin: GPIO21
interrupt_pin: GPIO38
reset_pin: GPIO39
# Enable fallback hotspot (captive portal) in case wifi connection fails
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: uart_pin
rx_pin: GPIO48
tx_pin: GPIO47
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 gpio1 - tx, gpio2 rx
# modbus:
# send_wait_time: 200ms
# uart_id: uart_pin8_9
# id: boneio_modbus
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2
files: [
'devices/serial_no.yaml',
# 'devices/dimmer_i2c.yaml',
#'devices/dimmer_ina219.yaml',
]
# dashboard_import:
# package_import_url: github://boneIO-eu/esphome/boneio-dimmer_8ch-v0_3.yaml@latest
# import_full_config: true
pcf8574:
- id: 'pcf_inputs'
address: 0x38
logger:
api:
reboot_timeout: 0s
ota:
- platform: esphome
- platform: web_server
web_server:
port: 80
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
sensor:
- 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: max9611
shunt_resistance: 0.005 ohm
gain: '1X'
voltage:
name: CHL Voltage
current:
name: CHLCurrent
power:
name: CHL Watts
temperature:
name: CHL Temperature
address: 0x70
update_interval: 10s
- platform: max9611
shunt_resistance: 0.005 ohm
gain: '1X'
voltage:
name: CHR Voltage
current:
name: CHR Current
power:
name: CHR Watts
temperature:
name: CHR Temperature
address: 0x73
update_interval: 10s
switch:
- platform: gpio
id: buzzer
name: 'Buzzer'
pin:
number: GPIO42
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

284
dimmer_gen2_can.yaml Normal file
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

0
dimmer_gen2_emc.yaml Normal file
View File