Compare commits

..

4 Commits

Author SHA1 Message Date
pszafer
20bece5e5e fixes for esphome 2026.4 release 2026-04-16 14:16:03 +02:00
pszafer
ad67951090 fxi version vreation 2026-02-17 12:24:17 +01:00
pszafer
82ec7c0b09 fix yaml validation 2026-02-17 08:42:54 +01:00
pszafer
11d973c5d4 fix yaml's 2026-02-16 15:38:18 +01:00
29 changed files with 1690 additions and 591 deletions

View File

@@ -0,0 +1,14 @@
---
description: "Use when updating ESPHome versions, firmware GitHub Actions, release tags, validation flows, or package refs in the esphome repository. Covers how to bump to a new ESPHome release, validate configs, and prepare a release tag."
---
# ESPHome Release Update Workflow
- Keep one target ESPHome version across all release-related files. At minimum update `.github/workflows/build-firmware.yml`, `.github/workflows/validate-firmware.yml`, and `create_firmware.py`.
- Never leave the build workflow on `version: latest`. Resolve the version once and pass the exact version into every build step.
- Before editing YAML packages, validate all top-level `boneio-*.yaml` configs against the target image with Docker:
`docker run --rm -v "$PWD":/config ghcr.io/esphome/esphome:<version> config <file>`
- Treat successful validation of all top-level configs as the release gate for ESPHome bumps.
- Preserve the existing release tag format: `esphome-<esphome_version>-<build>`, for example `esphome-2026.4.0-b1`.
- Keep GitHub Release notes explicit: mention the pinned ESPHome version, firmware bundle version, and the GitHub Pages catalog URL.
- Do not modify generated `.esphome/` outputs as part of the version bump unless the task explicitly asks for committed build artifacts.
- If a config fails on the new ESPHome version, fix the root YAML or shared package in `packages/` instead of weakening validation.

View File

@@ -1,55 +1,271 @@
name: Build ESPHome Firmware name: Build ESPHome Firmware
env:
DEFAULT_ESPHOME_VERSION: "2026.4.0"
on: on:
push: push:
tags: tags:
- 'v*' - "esphome-*"
workflow_dispatch: workflow_dispatch:
inputs: inputs:
version: esphome_version:
description: 'Version tag (e.g., 2026.1.2)' description: "ESPHome version (e.g., 2026.4.0)"
required: true required: true
default: '2026.1.2' default: "2026.4.0"
build:
description: "Build number (e.g., b1)"
required: true
default: "b1"
jobs: jobs:
resolve-version:
runs-on: ubuntu-latest
outputs:
esphome_version: ${{ steps.version.outputs.esphome_version }}
build: ${{ steps.version.outputs.build }}
full_version: ${{ steps.version.outputs.full_version }}
release_tag: ${{ steps.version.outputs.release_tag }}
steps:
- name: Resolve release version
id: version
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
ESPHOME_VER="${{ github.event.inputs.esphome_version }}"
BUILD="${{ github.event.inputs.build }}"
else
TAG="${GITHUB_REF#refs/tags/esphome-}"
ESPHOME_VER=$(echo "$TAG" | sed 's/-b[0-9]*$//')
BUILD=$(echo "$TAG" | grep -oP 'b\d+$' || echo 'b1')
fi
if [ -z "$ESPHOME_VER" ]; then
ESPHOME_VER="${DEFAULT_ESPHOME_VERSION}"
fi
echo "esphome_version=$ESPHOME_VER" >> "$GITHUB_OUTPUT"
echo "build=$BUILD" >> "$GITHUB_OUTPUT"
echo "full_version=${ESPHOME_VER}-${BUILD}" >> "$GITHUB_OUTPUT"
echo "release_tag=esphome-${ESPHOME_VER}-${BUILD}" >> "$GITHUB_OUTPUT"
echo "Version: $ESPHOME_VER, Build: $BUILD"
build: build:
needs: resolve-version
runs-on: ubuntu-latest runs-on: ubuntu-latest
strategy: strategy:
fail-fast: false
matrix: matrix:
include: include:
# Testing with single firmware first # Dimmer LED v0.3
- yaml_file: boneio-dimmer_8ch-v0_3.yaml
board_name: "Dimmer LED"
board_value: "dimmer"
version: "v0.3"
version_key: "v0.3"
output_option: "8 Channels"
chip_family: "ESP32"
- yaml_file: boneio-dimmer_2rgbw-v0_3.yaml
board_name: "Dimmer LED"
board_value: "dimmer"
version: "v0.3"
version_key: "v0.3"
output_option: "2xRGBW"
chip_family: "ESP32"
- yaml_file: boneio-dimmer_4cct-v0_3.yaml
board_name: "Dimmer LED"
board_value: "dimmer"
version: "v0.3"
version_key: "v0.3"
output_option: "4 CCT"
chip_family: "ESP32"
# Dimmer LED gen2 v0.1
- yaml_file: boneio-dimmer_gen2_8ch-v0_1.yaml - yaml_file: boneio-dimmer_gen2_8ch-v0_1.yaml
# Uncomment below after testing: board_name: "Dimmer LED gen2"
# - yaml_file: boneio-dimmer_gen2_2rgbw-v0_1.yaml board_value: "dimmer_g2"
# - yaml_file: boneio-32x10_lights_v0_7.yaml version: "v0.1"
# - yaml_file: boneio-32x10_switches_v0_7.yaml version_key: "v0.1"
# - yaml_file: boneio-24x16_switches_v0_7.yaml output_option: "8 Channels"
# - yaml_file: boneio-cover_v0_7.yaml chip_family: "ESP32-S3"
# - yaml_file: boneio-cover_mix_lights_v0_7.yaml - yaml_file: boneio-dimmer_gen2_2rgbw-v0_1.yaml
# - yaml_file: boneio-cover_mix_switches_v0_7.yaml board_name: "Dimmer LED gen2"
# - yaml_file: boneio-8x10A_gen2_lights-v0_1.yaml board_value: "dimmer_g2"
# - yaml_file: boneio-mosfet48_lights_v0_7.yaml version: "v0.1"
version_key: "v0.1"
output_option: "2xRGBW"
chip_family: "ESP32-S3"
- yaml_file: boneio-dimmer_gen2_4cct-v0_1.yaml
board_name: "Dimmer LED gen2"
board_value: "dimmer_g2"
version: "v0.1"
version_key: "v0.1"
output_option: "4 CCT"
chip_family: "ESP32-S3"
# Input24 gen2
- yaml_file: boneio-input24_gen2-v0_1.yaml
board_name: "boneIO ESP Input24 gen2"
board_value: "input24"
version: "v0.1"
version_key: "v0.1"
output_option: "None"
chip_family: "ESP32-S3"
# 8x10A gen2
- yaml_file: boneio-8x10A_gen2_lights-v0_1.yaml
board_name: "boneIO ESP 8x10A gen2"
board_value: "8x10A"
version: "v0.1"
version_key: "v0.1"
output_option: "Lights"
chip_family: "ESP32-S3"
- yaml_file: boneio-8x10A_gen2_switches-v0_1.yaml
board_name: "boneIO ESP 8x10A gen2"
board_value: "8x10A"
version: "v0.1"
version_key: "v0.1"
output_option: "Switches"
chip_family: "ESP32-S3"
# 32x10 v0.7
- yaml_file: boneio-32x10_lights_v0_7.yaml
board_name: "boneIO ESP 32x10"
board_value: "32x10"
version: "v0.7 PP"
version_key: "v0.7"
output_option: "Lights"
chip_family: "ESP32"
- yaml_file: boneio-32x10_switches_v0_7.yaml
board_name: "boneIO ESP 32x10"
board_value: "32x10"
version: "v0.7 PP"
version_key: "v0.7"
output_option: "Switches"
chip_family: "ESP32"
# 32x10 v0.6
- yaml_file: boneio-32x10_lights_v0_5-v0_6.yaml
board_name: "boneIO ESP 32x10"
board_value: "32x10"
version: "v0.5/v0.6 PP"
version_key: "v0.6"
output_option: "Lights"
chip_family: "ESP32"
- yaml_file: boneio-32x10_switches_v0_5-v0_6.yaml
board_name: "boneIO ESP 32x10"
board_value: "32x10"
version: "v0.5/v0.6 PP"
version_key: "v0.6"
output_option: "Switches"
chip_family: "ESP32"
# 24x16
- yaml_file: boneio-24x16_switches_v0_7.yaml
board_name: "boneIO ESP 24x16"
board_value: "24x16"
version: "v0.7 MP"
version_key: "v0.7"
output_option: "Switches"
chip_family: "ESP32"
- yaml_file: boneio-24x16_switches_v0_5-v0_6.yaml
board_name: "boneIO ESP 24x16"
board_value: "24x16"
version: "v0.5/v0.6 MP"
version_key: "v0.6"
output_option: "Switches"
chip_family: "ESP32"
# Cover
- yaml_file: boneio-cover_v0_7.yaml
board_name: "boneIO ESP Cover"
board_value: "cover"
version: "v0.7 PP"
version_key: "v0.7"
output_option: ""
chip_family: "ESP32"
- yaml_file: boneio-cover_v0_5-v0_6.yaml
board_name: "boneIO ESP Cover"
board_value: "cover"
version: "v0.5/v0.6 PP"
version_key: "v0.6"
output_option: ""
chip_family: "ESP32"
# Cover Mix
- yaml_file: boneio-cover_mix_lights_v0_7.yaml
board_name: "boneIO ESP Cover Mix"
board_value: "mix"
version: "v0.7 PP"
version_key: "v0.7"
output_option: "Lights"
chip_family: "ESP32"
- yaml_file: boneio-cover_mix_switches_v0_7.yaml
board_name: "boneIO ESP Cover Mix"
board_value: "mix"
version: "v0.7 PP"
version_key: "v0.7"
output_option: "Switches"
chip_family: "ESP32"
- yaml_file: boneio-cover_mix_lights_v0_5-v0_6.yaml
board_name: "boneIO ESP Cover Mix"
board_value: "mix"
version: "v0.5/v0.6 PP"
version_key: "v0.6"
output_option: "Lights"
chip_family: "ESP32"
- yaml_file: boneio-cover_mix_switches_v0_5-v0_6.yaml
board_name: "boneIO ESP Cover Mix"
board_value: "mix"
version: "v0.5/v0.6 PP"
version_key: "v0.6"
output_option: "Switches"
chip_family: "ESP32"
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v4 uses: actions/checkout@v4
- name: Build firmware - name: Build firmware
uses: esphome/build-action@v4 uses: esphome/build-action@v7
id: esphome-build id: esphome-build
with: with:
yaml-file: ${{ matrix.yaml_file }} yaml-file: ${{ matrix.yaml_file }}
version: latest version: ${{ needs.resolve-version.outputs.esphome_version }}
complete-manifest: true complete-manifest: true
- name: Save build metadata
run: |
mkdir -p metadata
cat > metadata/${{ steps.esphome-build.outputs.original-name }}.json << 'METADATA_EOF'
{
"firmware_name": "${{ steps.esphome-build.outputs.original-name }}",
"yaml_file": "${{ matrix.yaml_file }}",
"board_name": "${{ matrix.board_name }}",
"board_value": "${{ matrix.board_value }}",
"version": "${{ matrix.version }}",
"version_key": "${{ matrix.version_key }}",
"output_option": "${{ matrix.output_option }}",
"chip_family": "${{ matrix.chip_family }}",
"esphome_version": "${{ needs.resolve-version.outputs.esphome_version }}"
}
METADATA_EOF
- name: Upload firmware artifact - name: Upload firmware artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: firmware-${{ steps.esphome-build.outputs.original-name }} name: firmware-${{ steps.esphome-build.outputs.original-name }}
path: ${{ steps.esphome-build.outputs.name }} path: ${{ steps.esphome-build.outputs.name }}
- name: Upload metadata artifact
uses: actions/upload-artifact@v4
with:
name: metadata-${{ steps.esphome-build.outputs.original-name }}
path: metadata/
deploy: deploy:
needs: build needs:
- resolve-version
- build
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions: permissions:
contents: write contents: write
@@ -64,43 +280,175 @@ jobs:
pattern: firmware-* pattern: firmware-*
merge-multiple: true merge-multiple: true
- name: Get version - name: Download metadata artifacts
id: version uses: actions/download-artifact@v4
run: | with:
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then path: metadata
echo "version=${{ github.event.inputs.version }}" >> $GITHUB_OUTPUT pattern: metadata-*
else merge-multiple: true
echo "version=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
fi
- name: Prepare GitHub Pages content - name: Prepare GitHub Pages content
run: | run: |
mkdir -p gh-pages/firmware mkdir -p gh-pages/firmware gh-pages/manifests release
export VERSION="${{ needs.resolve-version.outputs.full_version }}"
export BUILD_DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
export GITHUB_PAGES_URL="https://boneio-eu.github.io/esphome"
# esphome/build-action outputs: name/, name/manifest.json, name/*.bin # Debug: show artifact structure
for dir in artifacts/*/; do echo "=== Artifacts structure ==="
NAME=$(basename "$dir") find artifacts/ -type f | head -80
# Copy firmware binary echo "=== End artifacts ==="
cp "$dir"*.bin gh-pages/firmware/
# Copy manifest and rename to firmware name # Copy and rename firmware binaries
cp "$dir"manifest.json gh-pages/${NAME}.json # esphome/build-action outputs: name-chip/name-chip.factory.bin and name-chip.ota.bin
for factory_bin in $(find artifacts/ -name '*.factory.bin'); do
BASENAME=$(basename "$factory_bin")
# Remove .factory from name: boneio-dr-8ch-03-esp32.factory.bin -> boneio-dr-8ch-03-esp32.bin
SIMPLE_NAME="${BASENAME/.factory.bin/.bin}"
cp "$factory_bin" "gh-pages/firmware/${SIMPLE_NAME}"
echo " Copied to gh-pages/firmware/${SIMPLE_NAME}"
done done
# Create version file # Copy all binaries (factory + ota) to release folder for GitHub Release
echo "${{ steps.version.outputs.version }}" > gh-pages/version.txt find artifacts/ -name '*.factory.bin' -exec cp {} release/ \;
find artifacts/ -name '*.ota.bin' -exec cp {} release/ \;
echo "=== Release files ==="
ls -la release/
echo "=== End release ==="
# Create index with firmware list # Generate manifest JSONs + firmware-catalog.json from metadata
python3 << 'PYTHON_EOF'
import json
import glob
import os
version = os.environ.get("VERSION", "unknown")
build_date = os.environ.get("BUILD_DATE", "unknown")
github_pages_url = os.environ.get("GITHUB_PAGES_URL", "")
# Read all metadata files
builds = []
for meta_file in glob.glob("metadata/*.json"):
with open(meta_file) as f:
builds.append(json.load(f))
# Discover actual firmware files on gh-pages to map metadata -> binary
fw_files = {}
for f in glob.glob("gh-pages/firmware/*.bin"):
fw_files[os.path.basename(f)] = f
print(f"Found {len(fw_files)} firmware files: {list(fw_files.keys())}")
# Generate individual ESP Web Tools manifests
for build in builds:
fw_name = build["firmware_name"]
chip = build["chip_family"]
chip_suffix = chip.lower().replace("-", "") # ESP32-S3 -> esp32s3
# Find matching binary file
bin_filename = f"{fw_name}-{chip_suffix}.bin"
if bin_filename not in fw_files:
# Fallback: try without chip suffix
bin_filename = f"{fw_name}.bin"
if bin_filename not in fw_files:
print(f" WARNING: No binary found for {fw_name} (tried {fw_name}-{chip_suffix}.bin)")
# List candidates
candidates = [k for k in fw_files if fw_name in k]
if candidates:
bin_filename = candidates[0]
print(f" Using candidate: {bin_filename}")
else:
continue
manifest = {
"name": f'{build["board_name"]} {build["output_option"]} {build["version"]}'.strip(),
"version": version,
"builds": [
{
"chipFamily": chip,
"parts": [
{
"path": f'{github_pages_url}/firmware/{bin_filename}',
"offset": 0
}
]
}
]
}
manifest_path = f'gh-pages/manifests/{fw_name}.json'
with open(manifest_path, 'w') as f:
json.dump(manifest, f, indent=2)
print(f' Generated manifest: {fw_name}.json -> {bin_filename}')
# Group by board for catalog
boards_map = {}
for build in builds:
board_value = build["board_value"]
if board_value not in boards_map:
boards_map[board_value] = {
"name": build["board_name"],
"value": board_value,
"versions_map": {}
}
version_key = build["version_key"]
if version_key not in boards_map[board_value]["versions_map"]:
boards_map[board_value]["versions_map"][version_key] = {
"version": build["version"],
"versionKey": version_key,
"options": []
}
manifest_url = f'{github_pages_url}/manifests/{build["firmware_name"]}.json'
yaml_url = f'https://github.com/boneIO-eu/esphome/blob/main/{build["yaml_file"]}'
option = {
"name": build["output_option"] if build["output_option"] else "Standard",
"manifest_url": manifest_url,
"yaml_url": yaml_url
}
boards_map[board_value]["versions_map"][version_key]["options"].append(option)
# Convert to final structure
boards = []
for board_value, board_data in boards_map.items():
versions = list(board_data["versions_map"].values())
boards.append({
"name": board_data["name"],
"value": board_data["value"],
"versions": versions
})
catalog = {
"version": version,
"build_date": build_date,
"boards": boards
}
with open("gh-pages/firmware-catalog.json", "w") as f:
json.dump(catalog, f, indent=2)
print(f"Generated firmware-catalog.json with {len(boards)} boards")
print(f"Generated {len(builds)} manifest files")
PYTHON_EOF
# Create version file
echo "$VERSION" > gh-pages/version.txt
# Create index page
cat > gh-pages/index.html << 'EOF' cat > gh-pages/index.html << 'EOF'
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head><title>boneIO Firmware</title></head> <head><title>boneIO Firmware</title></head>
<body> <body>
<h1>boneIO ESPHome Firmware</h1> <h1>boneIO ESPHome Firmware</h1>
<p><a href="firmware-catalog.json">Firmware Catalog (JSON API)</a></p>
<h2>Manifests</h2>
<ul> <ul>
EOF EOF
for json in gh-pages/*.json; do for json_file in gh-pages/manifests/*.json; do
NAME=$(basename "$json" .json) NAME=$(basename "$json_file" .json)
echo "<li><a href=\"${NAME}.json\">${NAME}</a></li>" >> gh-pages/index.html echo "<li><a href=\"manifests/${NAME}.json\">${NAME}</a></li>" >> gh-pages/index.html
done done
cat >> gh-pages/index.html << 'EOF' cat >> gh-pages/index.html << 'EOF'
</ul> </ul>
@@ -108,6 +456,44 @@ jobs:
</html> </html>
EOF EOF
- name: Generate release notes
run: |
python3 << 'PYTHON_EOF' > release-notes.md
import json
import glob
metadata_files = sorted(glob.glob("metadata/*.json"))
builds = []
for path in metadata_files:
with open(path) as handle:
builds.append(json.load(handle))
esphome_version = "${{ needs.resolve-version.outputs.esphome_version }}"
build_number = "${{ needs.resolve-version.outputs.build }}"
full_version = "${{ needs.resolve-version.outputs.full_version }}"
board_lines = []
seen = set()
for build in builds:
label = f'- {build["board_name"]} {build["version"]} / {build["output_option"] or "Standard"} ({build["chip_family"]})'
if label not in seen:
seen.add(label)
board_lines.append(label)
print(f"# ESPHome {esphome_version} ({build_number})")
print()
print("## Build summary")
print()
print(f"- ESPHome version: `{esphome_version}`")
print(f"- Firmware bundle version: `{full_version}`")
print(f"- Firmware variants built: `{len(builds)}`")
print("- GitHub Pages catalog: `https://boneio-eu.github.io/esphome/firmware-catalog.json`")
print()
print("## Included firmware variants")
print()
print("\n".join(board_lines))
PYTHON_EOF
- name: Deploy to GitHub Pages - name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4 uses: peaceiris/actions-gh-pages@v4
with: with:
@@ -116,9 +502,9 @@ jobs:
force_orphan: true force_orphan: true
- name: Create GitHub Release - name: Create GitHub Release
if: github.event_name == 'push'
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
with: with:
tag_name: v${{ steps.version.outputs.version }} name: "Firmware ${{ needs.resolve-version.outputs.esphome_version }} (${{ needs.resolve-version.outputs.build }})"
name: Firmware v${{ steps.version.outputs.version }} body_path: release-notes.md
files: gh-pages/firmware/*.bin files: release/*
generate_release_notes: true

72
.github/workflows/validate-firmware.yml vendored Normal file
View File

@@ -0,0 +1,72 @@
name: Validate ESPHome Configs
env:
ESPHOME_VERSION: "2026.4.0"
on:
push:
branches: [main]
paths:
- "boneio-*.yaml"
- "packages/**"
- ".github/workflows/validate-firmware.yml"
pull_request:
paths:
- "boneio-*.yaml"
- "packages/**"
- ".github/workflows/validate-firmware.yml"
jobs:
validate-urls:
name: Validate package_import_url
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check package_import_url consistency
run: |
ERRORS=0
for FILE in boneio-*.yaml; do
BASENAME=$(basename "$FILE")
URL=$(grep 'package_import_url:' "$FILE" 2>/dev/null | awk '{print $2}' | sed "s/['\"]//g")
if [ -z "$URL" ]; then
echo "::warning::No package_import_url found in $FILE"
continue
fi
URL_FILE=$(echo "$URL" | sed 's|.*esphome/||' | sed 's|@.*||')
if [ "$URL_FILE" != "$BASENAME" ]; then
echo "::error file=$FILE::package_import_url mismatch: URL references '$URL_FILE' but file is '$BASENAME'"
ERRORS=$((ERRORS + 1))
fi
if echo "$URL" | grep -q '\.yaml\.yaml'; then
echo "::error file=$FILE::Double .yaml.yaml extension in package_import_url"
ERRORS=$((ERRORS + 1))
fi
done
if [ $ERRORS -gt 0 ]; then
echo ""
echo "Found $ERRORS error(s) in package_import_url validation"
exit 1
fi
echo "All package_import_url checks passed!"
validate-configs:
name: Validate configs on ESPHome 2026.4.0
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Validate top-level firmware configs
run: |
set -e
docker pull "ghcr.io/esphome/esphome:${ESPHOME_VERSION}"
for FILE in boneio-*.yaml; do
echo "Validating $FILE with ESPHome ${ESPHOME_VERSION}"
docker run --rm -v "$PWD":/config "ghcr.io/esphome/esphome:${ESPHOME_VERSION}" config "$FILE"
done

View File

@@ -6,7 +6,11 @@ Old instructions: Look for branch with yout input board version to download curr
These are source codes for Esphome software installed on boneIO devices. These are source codes for Esphome software installed on boneIO devices.
Current CI and release workflow is pinned to ESPHome 2026.4.0.
To install it via USB-C cable go to https://boneio.eu/esp and choose board you'd like to install. To install it via USB-C cable go to https://boneio.eu/esp and choose board you'd like to install.
To install it through network, copy file you'd like to use from root directory and paste it in your esphome dashboard. To install it through network, copy file you'd like to use from root directory and paste it in your esphome dashboard.
Set boneio name as visible Set boneio name as visible
Firmware releases are created from tags in the format `esphome-<version>-<build>`, for example `esphome-2026.4.0-b1`.

View File

@@ -34,18 +34,18 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_5-v0_6/display.yaml', 'packages/devices_v0_5-v0_6/display.yaml',
'devices_v0_5-v0_6/time.yaml', 'packages/devices_v0_5-v0_6/time.yaml',
'devices_v0_5-v0_6/i2c.yaml', 'packages/devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml', 'packages/devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml', 'packages/devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf_with_mcp.yaml', 'packages/devices_v0_5-v0_6/pcf_with_mcp.yaml',
'boards/24x16_output.yaml', 'packages/boards/24x16_output.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml', # 'packages/devices_v0_5-v0_6/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,17 +34,17 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf_with_mcp.yaml', 'packages/devices_v0_7-v0_9/pcf_with_mcp.yaml',
'boards/24x16_output.yaml', 'packages/boards/24x16_output.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml', # 'packages/devices_v0_7-v0_9/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,33 +34,33 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_5-v0_6/display.yaml', 'packages/devices_v0_5-v0_6/display.yaml',
'devices_v0_5-v0_6/time.yaml', 'packages/devices_v0_5-v0_6/time.yaml',
'devices_v0_5-v0_6/i2c.yaml', 'packages/devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml', 'packages/devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml', 'packages/devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml', 'packages/devices_v0_5-v0_6/pcf.yaml',
'boards/output/out01_02.yaml', 'packages/boards/output/out01_02.yaml',
'boards/output/out03_04.yaml', 'packages/boards/output/out03_04.yaml',
'boards/output/out05_06.yaml', 'packages/boards/output/out05_06.yaml',
'boards/output/out07_08.yaml', 'packages/boards/output/out07_08.yaml',
'boards/output/out09_10.yaml', 'packages/boards/output/out09_10.yaml',
'boards/output/out11_12.yaml', 'packages/boards/output/out11_12.yaml',
'boards/output/out13_14.yaml', 'packages/boards/output/out13_14.yaml',
'boards/output/out15_16.yaml', 'packages/boards/output/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml', # 'packages/devices_v0_5-v0_6/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,32 +34,32 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml', 'packages/devices_v0_7-v0_9/pcf.yaml',
'boards/output/out01_02.yaml', 'packages/boards/output/out01_02.yaml',
'boards/output/out03_04.yaml', 'packages/boards/output/out03_04.yaml',
'boards/output/out05_06.yaml', 'packages/boards/output/out05_06.yaml',
'boards/output/out07_08.yaml', 'packages/boards/output/out07_08.yaml',
'boards/output/out09_10.yaml', 'packages/boards/output/out09_10.yaml',
'boards/output/out11_12.yaml', 'packages/boards/output/out11_12.yaml',
'boards/output/out13_14.yaml', 'packages/boards/output/out13_14.yaml',
'boards/output/out15_16.yaml', 'packages/boards/output/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml', # 'packages/devices_v0_7-v0_9/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,33 +34,33 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_5-v0_6/display.yaml', 'packages/devices_v0_5-v0_6/display.yaml',
'devices_v0_5-v0_6/time.yaml', 'packages/devices_v0_5-v0_6/time.yaml',
'devices_v0_5-v0_6/i2c.yaml', 'packages/devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml', 'packages/devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml', 'packages/devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml', 'packages/devices_v0_5-v0_6/pcf.yaml',
'boards/output/out01_02.yaml', 'packages/boards/output/out01_02.yaml',
'boards/output/out03_04.yaml', 'packages/boards/output/out03_04.yaml',
'boards/output/out05_06.yaml', 'packages/boards/output/out05_06.yaml',
'boards/output/out07_08.yaml', 'packages/boards/output/out07_08.yaml',
'boards/output/out09_10.yaml', 'packages/boards/output/out09_10.yaml',
'boards/output/out11_12.yaml', 'packages/boards/output/out11_12.yaml',
'boards/output/out13_14.yaml', 'packages/boards/output/out13_14.yaml',
'boards/output/out15_16.yaml', 'packages/boards/output/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml', # 'packages/devices_v0_5-v0_6/one_wire.yaml',
] ]
logger: logger:

View File

@@ -40,32 +40,32 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml', 'packages/devices_v0_7-v0_9/pcf.yaml',
'boards/output/out01_02.yaml', 'packages/boards/output/out01_02.yaml',
'boards/output/out03_04.yaml', 'packages/boards/output/out03_04.yaml',
'boards/output/out05_06.yaml', 'packages/boards/output/out05_06.yaml',
'boards/output/out07_08.yaml', 'packages/boards/output/out07_08.yaml',
'boards/output/out09_10.yaml', 'packages/boards/output/out09_10.yaml',
'boards/output/out11_12.yaml', 'packages/boards/output/out11_12.yaml',
'boards/output/out13_14.yaml', 'packages/boards/output/out13_14.yaml',
'boards/output/out15_16.yaml', 'packages/boards/output/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml', # 'packages/devices_v0_7-v0_9/one_wire.yaml',
] ]
logger: logger:

View File

@@ -0,0 +1,350 @@
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"
devices:
- id: main_device
name: "Main device"
- id: output_01
name: "OUT 01"
- id: output_02
name: "OUT 02"
- id: output_03
name: "OUT 03"
- id: output_04
name: "OUT 04"
- id: output_05
name: "OUT 05"
- id: output_06
name: "OUT 06"
- id: output_07
name: "OUT 07"
- id: output_08
name: "OUT 08"
- id: input_01
name: "IN 01"
- id: input_02
name: "IN 02"
- id: input_03
name: "IN 03"
- id: input_04
name: "IN 04"
- id: input_05
name: "IN 05"
- id: input_06
name: "IN 06"
- id: input_07
name: "IN 07"
- id: input_08
name: "IN 08"
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-v2.0.0
files: ["packages/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-sd.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: None
device_id: output_01
id: light_01
- platform: binary
output: out_02
name: "OUT 02A"
device_id: output_02
id: light_02a
- platform: binary
output: out_03
name: None
device_id: output_03
id: light_03
- platform: binary
output: out_04
name: None
device_id: output_04
id: light_04
- platform: binary
output: out_05
name: None
device_id: output_05
id: light_05
- platform: binary
output: out_06
name: None
device_id: output_06
id: light_06
- platform: binary
output: out_07
name: None
device_id: output_07
id: light_07
- platform: binary
output: out_08
name: None
device_id: output_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: None
device_id: input_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: None
device_id: input_02
id: in_02
pin:
pcf8574: pcf_inputs
number: 1
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_02a
- platform: gpio
name: None
device_id: input_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: None
device_id: input_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: None
device_id: input_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: None
device_id: input_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: None
device_id: input_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: None
device_id: input_08
id: in_08
pin:
pcf8574: pcf_inputs
number: 7
mode:
input: true
inverted: true
on_press:
then:
- light.toggle: light_08

View File

@@ -1,22 +1,22 @@
substitutions: substitutions:
name: boneio-8x10a-gen2-01 name: boneio-8x10a-gen2-01
friendly_name: 'boneIO ESP 8x10A Gen2' friendly_name: "boneIO ESP 8x10A Gen2"
serial_prefix: 'esp8' #Don't change it. serial_prefix: "esp8" #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-8x10a-gen2-01.json' firmware_manifest: "https://boneio.eu/fwesp/boneio-8x10a-gen2-01.json"
esphome: esphome:
name: '${name}' name: "${name}"
friendly_name: '${friendly_name}' friendly_name: "${friendly_name}"
name_add_mac_suffix: true name_add_mac_suffix: true
project: project:
name: boneio.8x10a-gen2 name: boneio.8x10a-gen2
version: '0.1' version: "0.1"
on_boot: on_boot:
priority: -100 priority: -100
then: then:
- delay: 5s - delay: 5s
- if: - if:
condition: condition:
lambda: 'return id(serial_no) != nullptr;' lambda: "return id(serial_no) != nullptr;"
then: then:
- component.update: serial_no - component.update: serial_no
- logger.log: "Serial No updated on boot" - logger.log: "Serial No updated on boot"
@@ -45,8 +45,6 @@ i2c:
scan: True scan: True
frequency: 400kHz frequency: 400kHz
output: output:
- platform: gpio - platform: gpio
pin: GPIO18 pin: GPIO18
@@ -82,26 +80,23 @@ output:
inverted: false inverted: false
id: out_08 id: out_08
# CAN gpio48 - tx, gpio47 rx, gpio35 stb # CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart: uart:
# id: boneio_uart id: boneio_uart
# rx_pin: GPIO21 rx_pin: GPIO21
# tx_pin: GPIO14 tx_pin: GPIO14
# baud_rate: 9600 baud_rate: 9600
# stop_bits: 1 stop_bits: 1
# modbus: modbus:
# send_wait_time: 80ms send_wait_time: 80ms
# uart_id: boneio_uart uart_id: boneio_uart
# id: boneio_modbus id: boneio_modbus
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: ["packages/devices/serial_no.yaml"]
'devices/serial_no.yaml',
]
# boneiopackages: # boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages # url: https://github.com/boneIO-eu/esphome_packages
# ref: main # ref: main
@@ -114,7 +109,7 @@ dashboard_import:
import_full_config: true import_full_config: true
pcf8574: pcf8574:
- id: 'pcf_inputs' - id: "pcf_inputs"
address: 0x38 address: 0x38
logger: logger:
@@ -130,39 +125,38 @@ web_server:
version: 3 version: 3
local: true local: true
light: light:
- platform: binary - platform: binary
output: out_01 output: out_01
name: 'OUT 01' name: "OUT 01"
id: light_01 id: light_01
- platform: binary - platform: binary
output: out_02 output: out_02
name: 'OUT 02' name: "OUT 02"
id: light_02 id: light_02
- platform: binary - platform: binary
output: out_03 output: out_03
name: 'OUT 03' name: "OUT 03"
id: light_03 id: light_03
- platform: binary - platform: binary
output: out_04 output: out_04
name: 'OUT 04' name: "OUT 04"
id: light_04 id: light_04
- platform: binary - platform: binary
output: out_05 output: out_05
name: 'OUT 05' name: "OUT 05"
id: light_05 id: light_05
- platform: binary - platform: binary
output: out_06 output: out_06
name: 'OUT 06' name: "OUT 06"
id: light_06 id: light_06
- platform: binary - platform: binary
output: out_07 output: out_07
name: 'OUT 07' name: "OUT 07"
id: light_07 id: light_07
- platform: binary - platform: binary
output: out_08 output: out_08
name: 'OUT 08' name: "OUT 08"
id: light_08 id: light_08
debug: debug:
@@ -171,7 +165,7 @@ debug:
sensor: sensor:
- platform: lm75b - platform: lm75b
id: boneIO_temp id: boneIO_temp
name: 'Temperature' name: "Temperature"
update_interval: 30s update_interval: 30s
entity_category: diagnostic entity_category: diagnostic
on_value_range: on_value_range:
@@ -185,7 +179,7 @@ sensor:
switch: switch:
- platform: gpio - platform: gpio
id: buzzer id: buzzer
name: 'Buzzer' name: "Buzzer"
pin: pin:
number: GPIO9 number: GPIO9
mode: mode:
@@ -193,7 +187,7 @@ switch:
inverted: false inverted: false
- platform: gpio - platform: gpio
id: can_bus_switch id: can_bus_switch
name: 'CAN Bus Switch' name: "CAN Bus Switch"
pin: pin:
number: GPIO35 number: GPIO35
mode: mode:
@@ -202,7 +196,7 @@ switch:
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: 'IN_01' name: "IN_01"
id: in_01 id: in_01
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -215,7 +209,7 @@ binary_sensor:
- light.toggle: light_01 - light.toggle: light_01
- platform: gpio - platform: gpio
name: 'IN_02' name: "IN_02"
id: in_02 id: in_02
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -228,7 +222,7 @@ binary_sensor:
- light.toggle: light_02 - light.toggle: light_02
- platform: gpio - platform: gpio
name: 'IN_03' name: "IN_03"
id: in_03 id: in_03
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -241,7 +235,7 @@ binary_sensor:
- light.toggle: light_03 - light.toggle: light_03
- platform: gpio - platform: gpio
name: 'IN_04' name: "IN_04"
id: in_04 id: in_04
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -254,7 +248,7 @@ binary_sensor:
- light.toggle: light_04 - light.toggle: light_04
- platform: gpio - platform: gpio
name: 'IN_05' name: "IN_05"
id: in_05 id: in_05
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -267,7 +261,7 @@ binary_sensor:
- light.toggle: light_05 - light.toggle: light_05
- platform: gpio - platform: gpio
name: 'IN_06' name: "IN_06"
id: in_06 id: in_06
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -280,7 +274,7 @@ binary_sensor:
- light.toggle: light_06 - light.toggle: light_06
- platform: gpio - platform: gpio
name: 'IN_07' name: "IN_07"
id: in_07 id: in_07
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -293,7 +287,7 @@ binary_sensor:
- light.toggle: light_07 - light.toggle: light_07
- platform: gpio - platform: gpio
name: 'IN_08' name: "IN_08"
id: in_08 id: in_08
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs

View File

@@ -0,0 +1,298 @@
substitutions:
name: boneio-8x10a-gen2-sw-01
friendly_name: "boneIO ESP 8x10A Gen2"
serial_prefix: "esp8" #Don't change it.
firmware_manifest: "https://boneio.eu/fwesp/boneio-8x10a-gen2-sw-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-v2.0.0
files: ["packages/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_switches-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
switch:
- platform: output
output: out_01
name: "OUT 01"
id: switch_01
- platform: output
output: out_02
name: "OUT 02"
id: switch_02
- platform: output
output: out_03
name: "OUT 03"
id: switch_03
- platform: output
output: out_04
name: "OUT 04"
id: switch_04
- platform: output
output: out_05
name: "OUT 05"
id: switch_05
- platform: output
output: out_06
name: "OUT 06"
id: switch_06
- platform: output
output: out_07
name: "OUT 07"
id: switch_07
- platform: output
output: out_08
name: "OUT 08"
id: switch_08
- 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
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
binary_sensor:
- platform: gpio
name: "IN_01"
id: in_01
pin:
pcf8574: pcf_inputs
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
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
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
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
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
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
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
number: 7
mode:
input: true
inverted: true
on_press:
then:
- switch.toggle: switch_08

View File

@@ -34,33 +34,33 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_5-v0_6/display.yaml', 'packages/devices_v0_5-v0_6/display.yaml',
'devices_v0_5-v0_6/time.yaml', 'packages/devices_v0_5-v0_6/time.yaml',
'devices_v0_5-v0_6/i2c.yaml', 'packages/devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml', 'packages/devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml', 'packages/devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml', 'packages/devices_v0_5-v0_6/pcf.yaml',
'boards/cover/out01_02.yaml', 'packages/boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml', 'packages/boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml', 'packages/boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml', 'packages/boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml', 'packages/boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml', 'packages/boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml', 'packages/boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml', 'packages/boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml', # 'packages/devices_v0_5-v0_6/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,32 +34,32 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml', 'packages/devices_v0_7-v0_9/pcf.yaml',
'boards/cover/out01_02.yaml', 'packages/boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml', 'packages/boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml', 'packages/boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml', 'packages/boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml', 'packages/boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml', 'packages/boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml', 'packages/boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml', 'packages/boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml', # 'packages/devices_v0_7-v0_9/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,33 +34,33 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_5-v0_6/display.yaml', 'packages/devices_v0_5-v0_6/display.yaml',
'devices_v0_5-v0_6/time.yaml', 'packages/devices_v0_5-v0_6/time.yaml',
'devices_v0_5-v0_6/i2c.yaml', 'packages/devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml', 'packages/devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml', 'packages/devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml', 'packages/devices_v0_5-v0_6/pcf.yaml',
'boards/cover/out01_02.yaml', 'packages/boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml', 'packages/boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml', 'packages/boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml', 'packages/boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml', 'packages/boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml', 'packages/boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml', 'packages/boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml', 'packages/boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_7/one_wire.yaml', # 'packages/devices_v0_7/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,32 +34,32 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml', 'packages/devices_v0_7-v0_9/pcf.yaml',
'boards/cover/out01_02.yaml', 'packages/boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml', 'packages/boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml', 'packages/boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml', 'packages/boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml', 'packages/boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml', 'packages/boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml', 'packages/boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml', 'packages/boards/cover/out15_16.yaml',
'boards/output/out17_18.yaml', 'packages/boards/output/out17_18.yaml',
'boards/output/out19_20.yaml', 'packages/boards/output/out19_20.yaml',
'boards/output/out21_22.yaml', 'packages/boards/output/out21_22.yaml',
'boards/output/out23_24.yaml', 'packages/boards/output/out23_24.yaml',
'boards/output/out25_26.yaml', 'packages/boards/output/out25_26.yaml',
'boards/output/out27_28.yaml', 'packages/boards/output/out27_28.yaml',
'boards/output/out29_30.yaml', 'packages/boards/output/out29_30.yaml',
'boards/output/out31_32.yaml', 'packages/boards/output/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml', # 'packages/devices_v0_7-v0_9/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,33 +34,33 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_5-v0_6/display.yaml', 'packages/devices_v0_5-v0_6/display.yaml',
'devices_v0_5-v0_6/time.yaml', 'packages/devices_v0_5-v0_6/time.yaml',
'devices_v0_5-v0_6/i2c.yaml', 'packages/devices_v0_5-v0_6/i2c.yaml',
'devices_v0_5-v0_6/ina219.yaml', 'packages/devices_v0_5-v0_6/ina219.yaml',
'devices_v0_5-v0_6/lm75b.yaml', 'packages/devices_v0_5-v0_6/lm75b.yaml',
'devices_v0_5-v0_6/pcf.yaml', 'packages/devices_v0_5-v0_6/pcf.yaml',
'boards/cover/out01_02.yaml', 'packages/boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml', 'packages/boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml', 'packages/boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml', 'packages/boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml', 'packages/boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml', 'packages/boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml', 'packages/boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml', 'packages/boards/cover/out15_16.yaml',
'boards/cover/out17_18.yaml', 'packages/boards/cover/out17_18.yaml',
'boards/cover/out19_20.yaml', 'packages/boards/cover/out19_20.yaml',
'boards/cover/out21_22.yaml', 'packages/boards/cover/out21_22.yaml',
'boards/cover/out23_24.yaml', 'packages/boards/cover/out23_24.yaml',
'boards/cover/out25_26.yaml', 'packages/boards/cover/out25_26.yaml',
'boards/cover/out27_28.yaml', 'packages/boards/cover/out27_28.yaml',
'boards/cover/out29_30.yaml', 'packages/boards/cover/out29_30.yaml',
'boards/cover/out31_32.yaml', 'packages/boards/cover/out31_32.yaml',
# 'devices_v0_5-v0_6/one_wire.yaml', # 'packages/devices_v0_5-v0_6/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,32 +34,32 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf.yaml', 'packages/devices_v0_7-v0_9/pcf.yaml',
'boards/cover/out01_02.yaml', 'packages/boards/cover/out01_02.yaml',
'boards/cover/out03_04.yaml', 'packages/boards/cover/out03_04.yaml',
'boards/cover/out05_06.yaml', 'packages/boards/cover/out05_06.yaml',
'boards/cover/out07_08.yaml', 'packages/boards/cover/out07_08.yaml',
'boards/cover/out09_10.yaml', 'packages/boards/cover/out09_10.yaml',
'boards/cover/out11_12.yaml', 'packages/boards/cover/out11_12.yaml',
'boards/cover/out13_14.yaml', 'packages/boards/cover/out13_14.yaml',
'boards/cover/out15_16.yaml', 'packages/boards/cover/out15_16.yaml',
'boards/cover/out17_18.yaml', 'packages/boards/cover/out17_18.yaml',
'boards/cover/out19_20.yaml', 'packages/boards/cover/out19_20.yaml',
'boards/cover/out21_22.yaml', 'packages/boards/cover/out21_22.yaml',
'boards/cover/out23_24.yaml', 'packages/boards/cover/out23_24.yaml',
'boards/cover/out25_26.yaml', 'packages/boards/cover/out25_26.yaml',
'boards/cover/out27_28.yaml', 'packages/boards/cover/out27_28.yaml',
'boards/cover/out29_30.yaml', 'packages/boards/cover/out29_30.yaml',
'boards/cover/out31_32.yaml', 'packages/boards/cover/out31_32.yaml',
# 'devices_v0_7-v0_9/one_wire.yaml', # 'packages/devices_v0_7-v0_9/one_wire.yaml',
] ]
logger: logger:

View File

@@ -23,13 +23,13 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: files:
[ [
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices/dimmer_i2c.yaml', 'packages/devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml', 'packages/devices/dimmer_ina219.yaml',
'boards/dimmer_output.yaml', 'packages/boards/dimmer_output.yaml',
] ]
ethernet: ethernet:

View File

@@ -23,13 +23,13 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: files:
[ [
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices/dimmer_i2c.yaml', 'packages/devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml', 'packages/devices/dimmer_ina219.yaml',
'boards/dimmer_output.yaml', 'packages/boards/dimmer_output.yaml',
] ]
ethernet: ethernet:

View File

@@ -23,13 +23,13 @@ external_components:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: files:
[ [
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices/dimmer_i2c.yaml', 'packages/devices/dimmer_i2c.yaml',
'devices/dimmer_ina219.yaml', 'packages/devices/dimmer_ina219.yaml',
'boards/dimmer_output.yaml', 'packages/boards/dimmer_output.yaml',
] ]
ethernet: ethernet:

View File

@@ -1,22 +1,22 @@
substitutions: substitutions:
name: boneio-dr-gen2-2rgbw-01 name: boneio-dr-gen2-2rgbw-01
friendly_name: 'BoneIO Dimmer Gen2' friendly_name: "BoneIO Dimmer Gen2"
serial_prefix: 'dim2' #Don't change it. serial_prefix: "dim2" #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-2rgbw-01.json' firmware_manifest: "https://boneio.eu/fwesp/boneio-dr-gen2-2rgbw-01.json"
esphome: esphome:
name: '${name}' name: "${name}"
friendly_name: '${friendly_name}' friendly_name: "${friendly_name}"
name_add_mac_suffix: true name_add_mac_suffix: true
project: project:
name: boneio.dimmer-led-gen2 name: boneio.dimmer-led-gen2
version: '0.1' version: "0.1"
on_boot: on_boot:
priority: -100 priority: -100
then: then:
- delay: 5s - delay: 5s
- if: - if:
condition: condition:
lambda: 'return id(serial_no) != nullptr;' lambda: "return id(serial_no) != nullptr;"
then: then:
- component.update: serial_no - component.update: serial_no
- logger.log: "Serial No updated on boot" - logger.log: "Serial No updated on boot"
@@ -45,8 +45,6 @@ i2c:
scan: True scan: True
frequency: 400kHz frequency: 400kHz
output: output:
- platform: ledc - platform: ledc
pin: GPIO18 pin: GPIO18
@@ -90,26 +88,23 @@ output:
inverted: false inverted: false
id: chr04 id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb # CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart: uart:
# id: boneio_uart id: boneio_uart
# rx_pin: GPIO21 rx_pin: GPIO21
# tx_pin: GPIO14 tx_pin: GPIO14
# baud_rate: 9600 baud_rate: 9600
# stop_bits: 1 stop_bits: 1
# modbus: modbus:
# send_wait_time: 80ms send_wait_time: 80ms
# uart_id: boneio_uart uart_id: boneio_uart
# id: boneio_modbus id: boneio_modbus
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: ["packages/devices/serial_no.yaml"]
'devices/serial_no.yaml',
]
# boneiopackages: # boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages # url: https://github.com/boneIO-eu/esphome_packages
# ref: main # ref: main
@@ -122,7 +117,7 @@ dashboard_import:
import_full_config: true import_full_config: true
pcf8574: pcf8574:
- id: 'pcf_inputs' - id: "pcf_inputs"
address: 0x38 address: 0x38
logger: logger:
@@ -138,11 +133,10 @@ web_server:
version: 3 version: 3
local: true local: true
light: light:
- platform: rgbw - platform: rgbw
id: rgbw_l id: rgbw_l
name: 'RGBW L' name: "RGBW L"
red: chl01 red: chl01
green: chl02 green: chl02
blue: chl03 blue: chl03
@@ -151,7 +145,7 @@ light:
gamma_correct: 0 gamma_correct: 0
- platform: rgbw - platform: rgbw
id: rgbw_r id: rgbw_r
name: 'RGBW R' name: "RGBW R"
red: chr01 red: chr01
green: chr02 green: chr02
blue: chr03 blue: chr03
@@ -172,7 +166,7 @@ sensor:
name: "Loop Time" name: "Loop Time"
- platform: lm75b - platform: lm75b
id: boneIO_temp id: boneIO_temp
name: 'Temperature' name: "Temperature"
update_interval: 30s update_interval: 30s
entity_category: diagnostic entity_category: diagnostic
on_value_range: on_value_range:
@@ -186,7 +180,7 @@ sensor:
switch: switch:
- platform: gpio - platform: gpio
id: buzzer id: buzzer
name: 'Buzzer' name: "Buzzer"
pin: pin:
number: GPIO9 number: GPIO9
mode: mode:
@@ -194,7 +188,7 @@ switch:
inverted: false inverted: false
- platform: gpio - platform: gpio
id: can_bus_switch id: can_bus_switch
name: 'CAN Bus Switch' name: "CAN Bus Switch"
pin: pin:
number: GPIO35 number: GPIO35
mode: mode:
@@ -203,7 +197,7 @@ switch:
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: 'IN_01' name: "IN_01"
id: in_01 id: in_01
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -213,7 +207,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_02' name: "IN_02"
id: in_02 id: in_02
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -223,7 +217,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_03' name: "IN_03"
id: in_03 id: in_03
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -233,7 +227,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_04' name: "IN_04"
id: in_04 id: in_04
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -243,7 +237,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_05' name: "IN_05"
id: in_05 id: in_05
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -253,7 +247,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_06' name: "IN_06"
id: in_06 id: in_06
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -263,7 +257,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_07' name: "IN_07"
id: in_07 id: in_07
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -273,7 +267,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_08' name: "IN_08"
id: in_08 id: in_08
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs

View File

@@ -1,22 +1,22 @@
substitutions: substitutions:
name: boneio-dr-gen2-4cct-01 name: boneio-dr-gen2-4cct-01
friendly_name: 'BoneIO Dimmer Gen2' friendly_name: "BoneIO Dimmer Gen2"
serial_prefix: 'dim2' #Don't change it. serial_prefix: "dim2" #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-4cct-01.json' firmware_manifest: "https://boneio.eu/fwesp/boneio-dr-gen2-4cct-01.json"
esphome: esphome:
name: '${name}' name: "${name}"
friendly_name: '${friendly_name}' friendly_name: "${friendly_name}"
name_add_mac_suffix: true name_add_mac_suffix: true
project: project:
name: boneio.dimmer-led-gen2 name: boneio.dimmer-led-gen2
version: '0.1' version: "0.1"
on_boot: on_boot:
priority: -100 priority: -100
then: then:
- delay: 5s - delay: 5s
- if: - if:
condition: condition:
lambda: 'return id(serial_no) != nullptr;' lambda: "return id(serial_no) != nullptr;"
then: then:
- component.update: serial_no - component.update: serial_no
- logger.log: "Serial No updated on boot" - logger.log: "Serial No updated on boot"
@@ -45,8 +45,6 @@ i2c:
scan: True scan: True
frequency: 400kHz frequency: 400kHz
output: output:
- platform: ledc - platform: ledc
pin: GPIO18 pin: GPIO18
@@ -90,26 +88,23 @@ output:
inverted: false inverted: false
id: chr04 id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb # CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart: uart:
# id: boneio_uart id: boneio_uart
# rx_pin: GPIO21 rx_pin: GPIO21
# tx_pin: GPIO14 tx_pin: GPIO14
# baud_rate: 9600 baud_rate: 9600
# stop_bits: 1 stop_bits: 1
# modbus: modbus:
# send_wait_time: 80ms send_wait_time: 80ms
# uart_id: boneio_uart uart_id: boneio_uart
# id: boneio_modbus id: boneio_modbus
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: ["packages/devices/serial_no.yaml"]
'devices/serial_no.yaml',
]
# boneiopackages: # boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages # url: https://github.com/boneIO-eu/esphome_packages
# ref: main # ref: main
@@ -122,7 +117,7 @@ dashboard_import:
import_full_config: true import_full_config: true
pcf8574: pcf8574:
- id: 'pcf_inputs' - id: "pcf_inputs"
address: 0x38 address: 0x38
logger: logger:
@@ -138,30 +133,29 @@ web_server:
version: 3 version: 3
local: true local: true
light: light:
- platform: cwww - platform: cwww
name: 'CHL_01_02' name: "CHL_01_02"
cold_white: chl01 cold_white: chl01
warm_white: chl02 warm_white: chl02
cold_white_color_temperature: 6536 K cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K warm_white_color_temperature: 2000 K
- platform: cwww - platform: cwww
name: 'CHL_03_04' name: "CHL_03_04"
cold_white: chl03 cold_white: chl03
warm_white: chl04 warm_white: chl04
cold_white_color_temperature: 6536 K cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K warm_white_color_temperature: 2000 K
- platform: cwww - platform: cwww
name: 'CHR_01_02' name: "CHR_01_02"
cold_white: chr01 cold_white: chr01
warm_white: chr02 warm_white: chr02
cold_white_color_temperature: 6536 K cold_white_color_temperature: 6536 K
warm_white_color_temperature: 2000 K warm_white_color_temperature: 2000 K
- platform: cwww - platform: cwww
name: 'CHR_03_04' name: "CHR_03_04"
cold_white: chr03 cold_white: chr03
warm_white: chr04 warm_white: chr04
cold_white_color_temperature: 6536 K cold_white_color_temperature: 6536 K
@@ -180,7 +174,7 @@ sensor:
name: "Loop Time" name: "Loop Time"
- platform: lm75b - platform: lm75b
id: boneIO_temp id: boneIO_temp
name: 'Temperature' name: "Temperature"
update_interval: 30s update_interval: 30s
entity_category: diagnostic entity_category: diagnostic
on_value_range: on_value_range:
@@ -194,7 +188,7 @@ sensor:
switch: switch:
- platform: gpio - platform: gpio
id: buzzer id: buzzer
name: 'Buzzer' name: "Buzzer"
pin: pin:
number: GPIO9 number: GPIO9
mode: mode:
@@ -202,7 +196,7 @@ switch:
inverted: false inverted: false
- platform: gpio - platform: gpio
id: can_bus_switch id: can_bus_switch
name: 'CAN Bus Switch' name: "CAN Bus Switch"
pin: pin:
number: GPIO35 number: GPIO35
mode: mode:
@@ -211,7 +205,7 @@ switch:
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: 'IN_01' name: "IN_01"
id: in_01 id: in_01
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -221,7 +215,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_02' name: "IN_02"
id: in_02 id: in_02
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -231,7 +225,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_03' name: "IN_03"
id: in_03 id: in_03
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -241,7 +235,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_04' name: "IN_04"
id: in_04 id: in_04
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -251,7 +245,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_05' name: "IN_05"
id: in_05 id: in_05
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -261,7 +255,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_06' name: "IN_06"
id: in_06 id: in_06
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -271,7 +265,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_07' name: "IN_07"
id: in_07 id: in_07
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -281,7 +275,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_08' name: "IN_08"
id: in_08 id: in_08
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs

View File

@@ -1,22 +1,22 @@
substitutions: substitutions:
name: boneio-dr-gen2-8ch-01 name: boneio-dr-gen2-8ch-01
friendly_name: 'BoneIO Dimmer Gen2' friendly_name: "BoneIO Dimmer Gen2"
serial_prefix: 'dim2' #Don't change it. serial_prefix: "dim2" #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-dr-gen2-8ch-01.json' firmware_manifest: "https://boneio.eu/fwesp/boneio-dr-gen2-8ch-01.json"
esphome: esphome:
name: '${name}' name: "${name}"
friendly_name: '${friendly_name}' friendly_name: "${friendly_name}"
name_add_mac_suffix: true name_add_mac_suffix: true
project: project:
name: boneio.dimmer-led-gen2 name: boneio.dimmer-led-gen2
version: '0.1' version: "0.1"
on_boot: on_boot:
priority: -100 priority: -100
then: then:
- delay: 5s - delay: 5s
- if: - if:
condition: condition:
lambda: 'return id(serial_no) != nullptr;' lambda: "return id(serial_no) != nullptr;"
then: then:
- component.update: serial_no - component.update: serial_no
- logger.log: "Serial No updated on boot" - logger.log: "Serial No updated on boot"
@@ -45,8 +45,6 @@ i2c:
scan: True scan: True
frequency: 400kHz frequency: 400kHz
output: output:
- platform: ledc - platform: ledc
pin: GPIO18 pin: GPIO18
@@ -90,26 +88,23 @@ output:
inverted: false inverted: false
id: chr04 id: chr04
# CAN gpio48 - tx, gpio47 rx, gpio35 stb # CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart: uart:
# id: boneio_uart id: boneio_uart
# rx_pin: GPIO21 rx_pin: GPIO21
# tx_pin: GPIO14 tx_pin: GPIO14
# baud_rate: 9600 baud_rate: 9600
# stop_bits: 1 stop_bits: 1
# modbus: modbus:
# send_wait_time: 80ms send_wait_time: 80ms
# uart_id: boneio_uart uart_id: boneio_uart
# id: boneio_modbus id: boneio_modbus
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: ["packages/devices/serial_no.yaml"]
'devices/serial_no.yaml',
]
# boneiopackages: # boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages # url: https://github.com/boneIO-eu/esphome_packages
# ref: main # ref: main
@@ -122,7 +117,7 @@ dashboard_import:
import_full_config: true import_full_config: true
pcf8574: pcf8574:
- id: 'pcf_inputs' - id: "pcf_inputs"
address: 0x38 address: 0x38
logger: logger:
@@ -138,54 +133,53 @@ web_server:
version: 3 version: 3
local: true local: true
light: light:
- platform: monochromatic - platform: monochromatic
output: chl01 output: chl01
name: 'CHL 01' name: "CHL 01"
id: chl_01 id: chl_01
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chl02 output: chl02
name: 'CHL 02' name: "CHL 02"
id: chl_02 id: chl_02
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chl03 output: chl03
name: 'CHL 03' name: "CHL 03"
id: chl_03 id: chl_03
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chl04 output: chl04
name: 'CHL 04' name: "CHL 04"
id: chl_04 id: chl_04
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chr01 output: chr01
name: 'CHR 01' name: "CHR 01"
id: chr_01 id: chr_01
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chr02 output: chr02
name: 'CHR 02' name: "CHR 02"
id: chr_02 id: chr_02
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chr03 output: chr03
name: 'CHR 03' name: "CHR 03"
id: chr_03 id: chr_03
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
- platform: monochromatic - platform: monochromatic
output: chr04 output: chr04
name: 'CHR 04' name: "CHR 04"
id: chr_04 id: chr_04
default_transition_length: 2s default_transition_length: 2s
gamma_correct: 0 gamma_correct: 0
@@ -203,7 +197,7 @@ sensor:
name: "Loop Time" name: "Loop Time"
- platform: lm75b - platform: lm75b
id: boneIO_temp id: boneIO_temp
name: 'Temperature' name: "Temperature"
update_interval: 30s update_interval: 30s
entity_category: diagnostic entity_category: diagnostic
on_value_range: on_value_range:
@@ -217,7 +211,7 @@ sensor:
switch: switch:
- platform: gpio - platform: gpio
id: buzzer id: buzzer
name: 'Buzzer' name: "Buzzer"
pin: pin:
number: GPIO9 number: GPIO9
mode: mode:
@@ -225,7 +219,7 @@ switch:
inverted: false inverted: false
- platform: gpio - platform: gpio
id: can_bus_switch id: can_bus_switch
name: 'CAN Bus Switch' name: "CAN Bus Switch"
pin: pin:
number: GPIO35 number: GPIO35
mode: mode:
@@ -234,7 +228,7 @@ switch:
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: 'IN_01' name: "IN_01"
id: in_01 id: in_01
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -244,7 +238,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_02' name: "IN_02"
id: in_02 id: in_02
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -254,7 +248,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_03' name: "IN_03"
id: in_03 id: in_03
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -264,7 +258,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_04' name: "IN_04"
id: in_04 id: in_04
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -274,7 +268,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_05' name: "IN_05"
id: in_05 id: in_05
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -284,7 +278,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_06' name: "IN_06"
id: in_06 id: in_06
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -294,7 +288,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_07' name: "IN_07"
id: in_07 id: in_07
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs
@@ -304,7 +298,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_08' name: "IN_08"
id: in_08 id: in_08
pin: pin:
pcf8574: pcf_inputs pcf8574: pcf_inputs

View File

@@ -1,22 +1,22 @@
substitutions: substitutions:
name: boneio-input24-gen2-01 name: boneio-input24-gen2-01
friendly_name: 'boneIO ESP Input24 Gen2' friendly_name: "boneIO ESP Input24 Gen2"
serial_prefix: 'esp24' #Don't change it. serial_prefix: "esp24" #Don't change it.
firmware_manifest: 'https://boneio.eu/fwesp/boneio-input24-gen2-01.json' firmware_manifest: "https://boneio.eu/fwesp/boneio-input24-gen2-01.json"
esphome: esphome:
name: '${name}' name: "${name}"
friendly_name: '${friendly_name}' friendly_name: "${friendly_name}"
name_add_mac_suffix: true name_add_mac_suffix: true
project: project:
name: boneio.input24-gen2 name: boneio.input24-gen2
version: '0.1' version: "0.1"
on_boot: on_boot:
priority: -100 priority: -100
then: then:
- delay: 5s - delay: 5s
- if: - if:
condition: condition:
lambda: 'return id(serial_no) != nullptr;' lambda: "return id(serial_no) != nullptr;"
then: then:
- component.update: serial_no - component.update: serial_no
- logger.log: "Serial No updated on boot" - logger.log: "Serial No updated on boot"
@@ -45,26 +45,23 @@ i2c:
scan: True scan: True
frequency: 400kHz frequency: 400kHz
# CAN gpio48 - tx, gpio47 rx, gpio35 stb # CAN gpio48 - tx, gpio47 rx, gpio35 stb
# uart: uart:
# id: boneio_uart id: boneio_uart
# rx_pin: GPIO21 rx_pin: GPIO21
# tx_pin: GPIO14 tx_pin: GPIO14
# baud_rate: 9600 baud_rate: 9600
# stop_bits: 1 stop_bits: 1
# modbus: modbus:
# send_wait_time: 80ms send_wait_time: 80ms
# uart_id: boneio_uart uart_id: boneio_uart
# id: boneio_modbus id: boneio_modbus
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: ["packages/devices/serial_no.yaml"]
'devices/serial_no.yaml',
]
# boneiopackages: # boneiopackages:
# url: https://github.com/boneIO-eu/esphome_packages # url: https://github.com/boneIO-eu/esphome_packages
# ref: main # ref: main
@@ -73,7 +70,7 @@ packages:
# - path: sdm630.yaml # - path: sdm630.yaml
dashboard_import: dashboard_import:
package_import_url: github://boneIO-eu/esphome/boneio-input24_gen2-v0_1.yaml.yaml@latest package_import_url: github://boneIO-eu/esphome/boneio-input24_gen2-v0_1.yaml@latest
import_full_config: true import_full_config: true
pcf8574: pcf8574:
@@ -99,7 +96,7 @@ web_server:
sensor: sensor:
- platform: lm75b - platform: lm75b
id: boneIO_temp id: boneIO_temp
name: 'Temperature' name: "Temperature"
update_interval: 30s update_interval: 30s
entity_category: diagnostic entity_category: diagnostic
on_value_range: on_value_range:
@@ -113,7 +110,7 @@ sensor:
switch: switch:
- platform: gpio - platform: gpio
id: buzzer id: buzzer
name: 'Buzzer' name: "Buzzer"
pin: pin:
number: GPIO9 number: GPIO9
mode: mode:
@@ -121,7 +118,7 @@ switch:
inverted: false inverted: false
- platform: gpio - platform: gpio
id: can_bus_switch id: can_bus_switch
name: 'CAN Bus Switch' name: "CAN Bus Switch"
pin: pin:
number: GPIO35 number: GPIO35
mode: mode:
@@ -130,7 +127,7 @@ switch:
binary_sensor: binary_sensor:
- platform: gpio - platform: gpio
name: 'IN_01' name: "IN_01"
id: in_01 id: in_01
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -140,7 +137,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_02' name: "IN_02"
id: in_02 id: in_02
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -150,7 +147,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_03' name: "IN_03"
id: in_03 id: in_03
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -160,7 +157,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_04' name: "IN_04"
id: in_04 id: in_04
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -170,7 +167,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_05' name: "IN_05"
id: in_05 id: in_05
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -180,7 +177,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_06' name: "IN_06"
id: in_06 id: in_06
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -190,7 +187,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_07' name: "IN_07"
id: in_07 id: in_07
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -200,7 +197,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_08' name: "IN_08"
id: in_08 id: in_08
pin: pin:
pcf8574: pcf_inputs_1_to_8 pcf8574: pcf_inputs_1_to_8
@@ -210,7 +207,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_09' name: "IN_09"
id: in_09 id: in_09
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -220,7 +217,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_10' name: "IN_10"
id: in_10 id: in_10
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -230,7 +227,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_11' name: "IN_11"
id: in_11 id: in_11
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -240,7 +237,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_12' name: "IN_12"
id: in_12 id: in_12
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -250,7 +247,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_13' name: "IN_13"
id: in_13 id: in_13
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -260,7 +257,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_14' name: "IN_14"
id: in_14 id: in_14
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -270,7 +267,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_15' name: "IN_15"
id: in_15 id: in_15
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -280,7 +277,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_16' name: "IN_16"
id: in_16 id: in_16
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -290,7 +287,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_17' name: "IN_17"
id: in_17 id: in_17
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -300,7 +297,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_18' name: "IN_18"
id: in_18 id: in_18
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -310,7 +307,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_19' name: "IN_19"
id: in_19 id: in_19
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -320,7 +317,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_20' name: "IN_20"
id: in_20 id: in_20
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -330,7 +327,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_21' name: "IN_21"
id: in_21 id: in_21
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -340,7 +337,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_22' name: "IN_22"
id: in_22 id: in_22
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -350,7 +347,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_23' name: "IN_23"
id: in_23 id: in_23
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24
@@ -360,7 +357,7 @@ binary_sensor:
inverted: true inverted: true
- platform: gpio - platform: gpio
name: 'IN_24' name: "IN_24"
id: in_24 id: in_24
pin: pin:
pcf8574: pcf_inputs_9_to_24 pcf8574: pcf_inputs_9_to_24

View File

@@ -26,13 +26,13 @@ exclude_files = [
"boneio-mosfet48_lights_v0_7.yaml", "boneio-mosfet48_lights_v0_7.yaml",
"boneio-mosfet48_switches_v0_7.yaml" "boneio-mosfet48_switches_v0_7.yaml"
"boneio-8x10A_v0_1.yaml" "boneio-8x10A_v0_1.yaml"
"boneio-dimmer_gen2_8ch-dev0_4.yaml" "boneio-dimmer_gen2_8ch-dev0_4.yaml",
# Dodaj tutaj kolejne pliki do wykluczenia # Dodaj tutaj kolejne pliki do wykluczenia
] ]
include_files = [ include_files = [
"boneio-input24_gen2-v0_01.yaml", "boneio-input24_gen2-v0_1.yaml",
# "boneio-8x10A_gen2_lights-v0_1.yaml", # "boneio-8x10A_gen2_lights-v0_1.yaml",
# "boneio-dimmer_gen2_2rgbw-v0_1.yaml", # "boneio-dimmer_gen2_2rgbw-v0_1.yaml",
# "boneio-dimmer_gen2_8ch-v0_1" # "boneio-dimmer_gen2_8ch-v0_1"
@@ -40,7 +40,9 @@ include_files = [
GITHUB_PAGES_URL = "https://boneio-eu.github.io/esphome" GITHUB_PAGES_URL = "https://boneio-eu.github.io/esphome"
FIRMWARE_VERSION = "2026.1.2" ESPHOME_VERSION = "2026.4.0"
ESPHOME_DOCKER_IMAGE = f"ghcr.io/esphome/esphome:{ESPHOME_VERSION}"
FIRMWARE_VERSION = ESPHOME_VERSION
def json_pattern(firmware_name, chip_family="ESP32"): def json_pattern(firmware_name, chip_family="ESP32"):
@@ -93,7 +95,7 @@ for file in glob.glob("*.yaml"):
print("No file found.") print("No file found.")
break break
firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware.factory.bin" firmware_path = f"{cwd}/.esphome/build/{filename}/.pioenvs/{filename}/firmware.factory.bin"
cmd = f'docker run --rm -p 6053:6052 -v "{cwd}":/config -it ghcr.io/esphome/esphome compile {file}' cmd = f'docker run --rm -p 6053:6052 -v "{cwd}":/config -it {ESPHOME_DOCKER_IMAGE} compile {file}'
print(cmd) print(cmd)
result = subprocess.run( result = subprocess.run(
cmd, cmd,

View File

@@ -34,17 +34,17 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf_mosfet.yaml', 'packages/devices_v0_7-v0_9/pcf_mosfet.yaml',
'boards/mosfet48_output.yaml', 'packages/boards/mosfet48_output.yaml',
# 'devices_v0_7/one_wire.yaml', # 'packages/devices_v0_7/one_wire.yaml',
] ]
logger: logger:

View File

@@ -34,17 +34,17 @@ dashboard_import:
packages: packages:
internals_packages: internals_packages:
url: https://github.com/boneIO-eu/esphome url: https://github.com/boneIO-eu/esphome
ref: packages-v1.7.2 ref: packages-v2.0.0
files: [ files: [
'devices/buzzer.yaml', 'packages/devices/buzzer.yaml',
'devices/serial_no.yaml', 'packages/devices/serial_no.yaml',
'devices_v0_7/display.yaml', 'packages/devices_v0_7/display.yaml',
'devices_v0_7/i2c.yaml', 'packages/devices_v0_7/i2c.yaml',
'devices_v0_7-v0_9/ina219.yaml', 'packages/devices_v0_7-v0_9/ina219.yaml',
'devices_v0_7-v0_9/lm75b.yaml', 'packages/devices_v0_7-v0_9/lm75b.yaml',
'devices_v0_7-v0_9/pcf_mosfet.yaml', 'packages/devices_v0_7-v0_9/pcf_mosfet.yaml',
'boards/mosfet48_output.yaml', 'packages/boards/mosfet48_output.yaml',
# 'devices_v0_7/one_wire.yaml', # 'packages/devices_v0_7/one_wire.yaml',
] ]
logger: logger: