diff --git a/.github/instructions/esphome-release.instructions.md b/.github/instructions/esphome-release.instructions.md new file mode 100644 index 0000000..a2b644b --- /dev/null +++ b/.github/instructions/esphome-release.instructions.md @@ -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: config ` +- Treat successful validation of all top-level configs as the release gate for ESPHome bumps. +- Preserve the existing release tag format: `esphome--`, 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. \ No newline at end of file diff --git a/.github/workflows/build-firmware.yml b/.github/workflows/build-firmware.yml index 324880a..2f4ca70 100644 --- a/.github/workflows/build-firmware.yml +++ b/.github/workflows/build-firmware.yml @@ -1,55 +1,271 @@ name: Build ESPHome Firmware +env: + DEFAULT_ESPHOME_VERSION: "2026.4.0" + on: push: tags: - - 'v*' + - "esphome-*" workflow_dispatch: inputs: - version: - description: 'Version tag (e.g., 2026.1.2)' + esphome_version: + description: "ESPHome version (e.g., 2026.4.0)" required: true - default: '2026.1.2' + default: "2026.4.0" + build: + description: "Build number (e.g., b1)" + required: true + default: "b1" 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: + needs: resolve-version runs-on: ubuntu-latest strategy: + fail-fast: false matrix: 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 - # 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 + board_name: "Dimmer LED gen2" + board_value: "dimmer_g2" + version: "v0.1" + version_key: "v0.1" + output_option: "8 Channels" + chip_family: "ESP32-S3" + - yaml_file: boneio-dimmer_gen2_2rgbw-v0_1.yaml + board_name: "Dimmer LED gen2" + board_value: "dimmer_g2" + 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: - name: Checkout repository uses: actions/checkout@v4 - name: Build firmware - uses: esphome/build-action@v4 + uses: esphome/build-action@v7 id: esphome-build with: yaml-file: ${{ matrix.yaml_file }} - version: latest + version: ${{ needs.resolve-version.outputs.esphome_version }} 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 uses: actions/upload-artifact@v4 with: name: firmware-${{ steps.esphome-build.outputs.original-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: - needs: build + needs: + - resolve-version + - build runs-on: ubuntu-latest permissions: contents: write @@ -64,43 +280,175 @@ jobs: 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: Download metadata artifacts + uses: actions/download-artifact@v4 + with: + path: metadata + pattern: metadata-* + merge-multiple: true - 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 + 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" + + # Debug: show artifact structure + echo "=== Artifacts structure ===" + find artifacts/ -type f | head -80 + echo "=== End artifacts ===" + + # Copy and rename firmware binaries + # 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 - + + # Copy all binaries (factory + ota) to release folder for GitHub Release + 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 ===" + + # 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 "${{ steps.version.outputs.version }}" > gh-pages/version.txt - - # Create index with firmware list + echo "$VERSION" > gh-pages/version.txt + + # Create index page cat > gh-pages/index.html << 'EOF' boneIO Firmware

boneIO ESPHome Firmware

+

Firmware Catalog (JSON API)

+

Manifests

    EOF - for json in gh-pages/*.json; do - NAME=$(basename "$json" .json) - echo "
  • ${NAME}
  • " >> gh-pages/index.html + for json_file in gh-pages/manifests/*.json; do + NAME=$(basename "$json_file" .json) + echo "
  • ${NAME}
  • " >> gh-pages/index.html done cat >> gh-pages/index.html << 'EOF'
@@ -108,6 +456,44 @@ jobs: 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 uses: peaceiris/actions-gh-pages@v4 with: @@ -116,9 +502,9 @@ jobs: force_orphan: true - name: Create GitHub Release + if: github.event_name == 'push' 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 + name: "Firmware ${{ needs.resolve-version.outputs.esphome_version }} (${{ needs.resolve-version.outputs.build }})" + body_path: release-notes.md + files: release/* diff --git a/.github/workflows/validate-firmware.yml b/.github/workflows/validate-firmware.yml new file mode 100644 index 0000000..9897fce --- /dev/null +++ b/.github/workflows/validate-firmware.yml @@ -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 diff --git a/README.md b/README.md index 03af5c8..fb5d825 100644 --- a/README.md +++ b/README.md @@ -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. +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 through network, copy file you'd like to use from root directory and paste it in your esphome dashboard. Set boneio name as visible + +Firmware releases are created from tags in the format `esphome--`, for example `esphome-2026.4.0-b1`. diff --git a/boneio-24x16_switches_v0_5-v0_6.yaml b/boneio-24x16_switches_v0_5-v0_6.yaml index 79d85d3..673dcb6 100644 --- a/boneio-24x16_switches_v0_5-v0_6.yaml +++ b/boneio-24x16_switches_v0_5-v0_6.yaml @@ -34,18 +34,18 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_5-v0_6/display.yaml', - 'devices_v0_5-v0_6/time.yaml', - 'devices_v0_5-v0_6/i2c.yaml', - 'devices_v0_5-v0_6/ina219.yaml', - 'devices_v0_5-v0_6/lm75b.yaml', - 'devices_v0_5-v0_6/pcf_with_mcp.yaml', - 'boards/24x16_output.yaml', - # 'devices_v0_5-v0_6/one_wire.yaml', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_5-v0_6/display.yaml', + 'packages/devices_v0_5-v0_6/time.yaml', + 'packages/devices_v0_5-v0_6/i2c.yaml', + 'packages/devices_v0_5-v0_6/ina219.yaml', + 'packages/devices_v0_5-v0_6/lm75b.yaml', + 'packages/devices_v0_5-v0_6/pcf_with_mcp.yaml', + 'packages/boards/24x16_output.yaml', + # 'packages/devices_v0_5-v0_6/one_wire.yaml', ] logger: diff --git a/boneio-24x16_switches_v0_7.yaml b/boneio-24x16_switches_v0_7.yaml index aaa39b6..b637c35 100644 --- a/boneio-24x16_switches_v0_7.yaml +++ b/boneio-24x16_switches_v0_7.yaml @@ -34,17 +34,17 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/i2c.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-v0_9/one_wire.yaml', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf_with_mcp.yaml', + 'packages/boards/24x16_output.yaml', + # 'packages/devices_v0_7-v0_9/one_wire.yaml', ] logger: diff --git a/boneio-32x10_lights_v0_5-v0_6.yaml b/boneio-32x10_lights_v0_5-v0_6.yaml index 779f4bd..e4d9d72 100644 --- a/boneio-32x10_lights_v0_5-v0_6.yaml +++ b/boneio-32x10_lights_v0_5-v0_6.yaml @@ -34,33 +34,33 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_5-v0_6/display.yaml', - 'devices_v0_5-v0_6/time.yaml', - 'devices_v0_5-v0_6/i2c.yaml', - 'devices_v0_5-v0_6/ina219.yaml', - 'devices_v0_5-v0_6/lm75b.yaml', - 'devices_v0_5-v0_6/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_5-v0_6/one_wire.yaml', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_5-v0_6/display.yaml', + 'packages/devices_v0_5-v0_6/time.yaml', + 'packages/devices_v0_5-v0_6/i2c.yaml', + 'packages/devices_v0_5-v0_6/ina219.yaml', + 'packages/devices_v0_5-v0_6/lm75b.yaml', + 'packages/devices_v0_5-v0_6/pcf.yaml', + 'packages/boards/output/out01_02.yaml', + 'packages/boards/output/out03_04.yaml', + 'packages/boards/output/out05_06.yaml', + 'packages/boards/output/out07_08.yaml', + 'packages/boards/output/out09_10.yaml', + 'packages/boards/output/out11_12.yaml', + 'packages/boards/output/out13_14.yaml', + 'packages/boards/output/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_5-v0_6/one_wire.yaml', ] logger: diff --git a/boneio-32x10_lights_v0_7.yaml b/boneio-32x10_lights_v0_7.yaml index 40b0cda..425e69d 100644 --- a/boneio-32x10_lights_v0_7.yaml +++ b/boneio-32x10_lights_v0_7.yaml @@ -34,32 +34,32 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf.yaml', + 'packages/boards/output/out01_02.yaml', + 'packages/boards/output/out03_04.yaml', + 'packages/boards/output/out05_06.yaml', + 'packages/boards/output/out07_08.yaml', + 'packages/boards/output/out09_10.yaml', + 'packages/boards/output/out11_12.yaml', + 'packages/boards/output/out13_14.yaml', + 'packages/boards/output/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_7-v0_9/one_wire.yaml', ] logger: diff --git a/boneio-32x10_switches_v0_5-v0_6.yaml b/boneio-32x10_switches_v0_5-v0_6.yaml index 8f4a29c..ef37353 100644 --- a/boneio-32x10_switches_v0_5-v0_6.yaml +++ b/boneio-32x10_switches_v0_5-v0_6.yaml @@ -34,33 +34,33 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_5-v0_6/display.yaml', - 'devices_v0_5-v0_6/time.yaml', - 'devices_v0_5-v0_6/i2c.yaml', - 'devices_v0_5-v0_6/ina219.yaml', - 'devices_v0_5-v0_6/lm75b.yaml', - 'devices_v0_5-v0_6/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_5-v0_6/one_wire.yaml', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_5-v0_6/display.yaml', + 'packages/devices_v0_5-v0_6/time.yaml', + 'packages/devices_v0_5-v0_6/i2c.yaml', + 'packages/devices_v0_5-v0_6/ina219.yaml', + 'packages/devices_v0_5-v0_6/lm75b.yaml', + 'packages/devices_v0_5-v0_6/pcf.yaml', + 'packages/boards/output/out01_02.yaml', + 'packages/boards/output/out03_04.yaml', + 'packages/boards/output/out05_06.yaml', + 'packages/boards/output/out07_08.yaml', + 'packages/boards/output/out09_10.yaml', + 'packages/boards/output/out11_12.yaml', + 'packages/boards/output/out13_14.yaml', + 'packages/boards/output/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_5-v0_6/one_wire.yaml', ] logger: diff --git a/boneio-32x10_switches_v0_7.yaml b/boneio-32x10_switches_v0_7.yaml index 799a74d..640127f 100644 --- a/boneio-32x10_switches_v0_7.yaml +++ b/boneio-32x10_switches_v0_7.yaml @@ -40,32 +40,32 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf.yaml', + 'packages/boards/output/out01_02.yaml', + 'packages/boards/output/out03_04.yaml', + 'packages/boards/output/out05_06.yaml', + 'packages/boards/output/out07_08.yaml', + 'packages/boards/output/out09_10.yaml', + 'packages/boards/output/out11_12.yaml', + 'packages/boards/output/out13_14.yaml', + 'packages/boards/output/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_7-v0_9/one_wire.yaml', ] logger: diff --git a/boneio-8x10A_gen2_lights-v0_1-sd.yaml b/boneio-8x10A_gen2_lights-v0_1-sd.yaml new file mode 100644 index 0000000..a36249d --- /dev/null +++ b/boneio-8x10A_gen2_lights-v0_1-sd.yaml @@ -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 diff --git a/boneio-8x10A_gen2_lights-v0_1.yaml b/boneio-8x10A_gen2_lights-v0_1.yaml index 0e6002e..eb1bafe 100644 --- a/boneio-8x10A_gen2_lights-v0_1.yaml +++ b/boneio-8x10A_gen2_lights-v0_1.yaml @@ -1,22 +1,22 @@ 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' + 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: "${name}" + friendly_name: "${friendly_name}" name_add_mac_suffix: true project: name: boneio.8x10a-gen2 - version: '0.1' + version: "0.1" on_boot: priority: -100 then: - delay: 5s - if: condition: - lambda: 'return id(serial_no) != nullptr;' + lambda: "return id(serial_no) != nullptr;" then: - component.update: serial_no - logger.log: "Serial No updated on boot" @@ -25,7 +25,7 @@ esphome: esp32: board: esp32-s3-devkitc-1 - framework: + framework: type: esp-idf ethernet: @@ -45,8 +45,6 @@ i2c: scan: True frequency: 400kHz - - output: - platform: gpio pin: GPIO18 @@ -82,26 +80,23 @@ output: 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 +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', - ] + ref: packages-v2.0.0 + files: ["packages/devices/serial_no.yaml"] # boneiopackages: # url: https://github.com/boneIO-eu/esphome_packages # ref: main @@ -114,7 +109,7 @@ dashboard_import: import_full_config: true pcf8574: - - id: 'pcf_inputs' + - id: "pcf_inputs" address: 0x38 logger: @@ -130,39 +125,38 @@ web_server: version: 3 local: true - light: - platform: binary output: out_01 - name: 'OUT 01' + name: "OUT 01" id: light_01 - platform: binary output: out_02 - name: 'OUT 02' + name: "OUT 02" id: light_02 - platform: binary output: out_03 - name: 'OUT 03' + name: "OUT 03" id: light_03 - platform: binary output: out_04 - name: 'OUT 04' + name: "OUT 04" id: light_04 - platform: binary output: out_05 - name: 'OUT 05' + name: "OUT 05" id: light_05 - platform: binary output: out_06 - name: 'OUT 06' + name: "OUT 06" id: light_06 - platform: binary output: out_07 - name: 'OUT 07' + name: "OUT 07" id: light_07 - platform: binary output: out_08 - name: 'OUT 08' + name: "OUT 08" id: light_08 debug: @@ -171,7 +165,7 @@ debug: sensor: - platform: lm75b id: boneIO_temp - name: 'Temperature' + name: "Temperature" update_interval: 30s entity_category: diagnostic on_value_range: @@ -185,7 +179,7 @@ sensor: switch: - platform: gpio id: buzzer - name: 'Buzzer' + name: "Buzzer" pin: number: GPIO9 mode: @@ -193,7 +187,7 @@ switch: inverted: false - platform: gpio id: can_bus_switch - name: 'CAN Bus Switch' + name: "CAN Bus Switch" pin: number: GPIO35 mode: @@ -202,7 +196,7 @@ switch: binary_sensor: - platform: gpio - name: 'IN_01' + name: "IN_01" id: in_01 pin: pcf8574: pcf_inputs @@ -215,7 +209,7 @@ binary_sensor: - light.toggle: light_01 - platform: gpio - name: 'IN_02' + name: "IN_02" id: in_02 pin: pcf8574: pcf_inputs @@ -228,7 +222,7 @@ binary_sensor: - light.toggle: light_02 - platform: gpio - name: 'IN_03' + name: "IN_03" id: in_03 pin: pcf8574: pcf_inputs @@ -241,7 +235,7 @@ binary_sensor: - light.toggle: light_03 - platform: gpio - name: 'IN_04' + name: "IN_04" id: in_04 pin: pcf8574: pcf_inputs @@ -254,7 +248,7 @@ binary_sensor: - light.toggle: light_04 - platform: gpio - name: 'IN_05' + name: "IN_05" id: in_05 pin: pcf8574: pcf_inputs @@ -267,7 +261,7 @@ binary_sensor: - light.toggle: light_05 - platform: gpio - name: 'IN_06' + name: "IN_06" id: in_06 pin: pcf8574: pcf_inputs @@ -280,7 +274,7 @@ binary_sensor: - light.toggle: light_06 - platform: gpio - name: 'IN_07' + name: "IN_07" id: in_07 pin: pcf8574: pcf_inputs @@ -293,7 +287,7 @@ binary_sensor: - light.toggle: light_07 - platform: gpio - name: 'IN_08' + name: "IN_08" id: in_08 pin: pcf8574: pcf_inputs @@ -303,4 +297,4 @@ binary_sensor: inverted: true on_press: then: - - light.toggle: light_08 \ No newline at end of file + - light.toggle: light_08 diff --git a/boneio-8x10A_gen2_switches-v0_1.yaml b/boneio-8x10A_gen2_switches-v0_1.yaml new file mode 100644 index 0000000..b46d361 --- /dev/null +++ b/boneio-8x10A_gen2_switches-v0_1.yaml @@ -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 diff --git a/boneio-cover_mix_lights_v0_5-v0_6.yaml b/boneio-cover_mix_lights_v0_5-v0_6.yaml index 114550e..f6f8607 100644 --- a/boneio-cover_mix_lights_v0_5-v0_6.yaml +++ b/boneio-cover_mix_lights_v0_5-v0_6.yaml @@ -34,33 +34,33 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_5-v0_6/display.yaml', - 'devices_v0_5-v0_6/time.yaml', - 'devices_v0_5-v0_6/i2c.yaml', - 'devices_v0_5-v0_6/ina219.yaml', - 'devices_v0_5-v0_6/lm75b.yaml', - 'devices_v0_5-v0_6/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_5-v0_6/one_wire.yaml', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_5-v0_6/display.yaml', + 'packages/devices_v0_5-v0_6/time.yaml', + 'packages/devices_v0_5-v0_6/i2c.yaml', + 'packages/devices_v0_5-v0_6/ina219.yaml', + 'packages/devices_v0_5-v0_6/lm75b.yaml', + 'packages/devices_v0_5-v0_6/pcf.yaml', + 'packages/boards/cover/out01_02.yaml', + 'packages/boards/cover/out03_04.yaml', + 'packages/boards/cover/out05_06.yaml', + 'packages/boards/cover/out07_08.yaml', + 'packages/boards/cover/out09_10.yaml', + 'packages/boards/cover/out11_12.yaml', + 'packages/boards/cover/out13_14.yaml', + 'packages/boards/cover/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_5-v0_6/one_wire.yaml', ] logger: diff --git a/boneio-cover_mix_lights_v0_7.yaml b/boneio-cover_mix_lights_v0_7.yaml index ed67817..9886f38 100644 --- a/boneio-cover_mix_lights_v0_7.yaml +++ b/boneio-cover_mix_lights_v0_7.yaml @@ -34,32 +34,32 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/i2c.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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf.yaml', + 'packages/boards/cover/out01_02.yaml', + 'packages/boards/cover/out03_04.yaml', + 'packages/boards/cover/out05_06.yaml', + 'packages/boards/cover/out07_08.yaml', + 'packages/boards/cover/out09_10.yaml', + 'packages/boards/cover/out11_12.yaml', + 'packages/boards/cover/out13_14.yaml', + 'packages/boards/cover/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_7-v0_9/one_wire.yaml', ] logger: diff --git a/boneio-cover_mix_switches_v0_5-v0_6.yaml b/boneio-cover_mix_switches_v0_5-v0_6.yaml index 5f31ecc..ac5e532 100644 --- a/boneio-cover_mix_switches_v0_5-v0_6.yaml +++ b/boneio-cover_mix_switches_v0_5-v0_6.yaml @@ -34,33 +34,33 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_5-v0_6/display.yaml', - 'devices_v0_5-v0_6/time.yaml', - 'devices_v0_5-v0_6/i2c.yaml', - 'devices_v0_5-v0_6/ina219.yaml', - 'devices_v0_5-v0_6/lm75b.yaml', - 'devices_v0_5-v0_6/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/one_wire.yaml', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_5-v0_6/display.yaml', + 'packages/devices_v0_5-v0_6/time.yaml', + 'packages/devices_v0_5-v0_6/i2c.yaml', + 'packages/devices_v0_5-v0_6/ina219.yaml', + 'packages/devices_v0_5-v0_6/lm75b.yaml', + 'packages/devices_v0_5-v0_6/pcf.yaml', + 'packages/boards/cover/out01_02.yaml', + 'packages/boards/cover/out03_04.yaml', + 'packages/boards/cover/out05_06.yaml', + 'packages/boards/cover/out07_08.yaml', + 'packages/boards/cover/out09_10.yaml', + 'packages/boards/cover/out11_12.yaml', + 'packages/boards/cover/out13_14.yaml', + 'packages/boards/cover/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_7/one_wire.yaml', ] logger: diff --git a/boneio-cover_mix_switches_v0_7.yaml b/boneio-cover_mix_switches_v0_7.yaml index b82c168..67c5a78 100644 --- a/boneio-cover_mix_switches_v0_7.yaml +++ b/boneio-cover_mix_switches_v0_7.yaml @@ -34,32 +34,32 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/i2c.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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf.yaml', + 'packages/boards/cover/out01_02.yaml', + 'packages/boards/cover/out03_04.yaml', + 'packages/boards/cover/out05_06.yaml', + 'packages/boards/cover/out07_08.yaml', + 'packages/boards/cover/out09_10.yaml', + 'packages/boards/cover/out11_12.yaml', + 'packages/boards/cover/out13_14.yaml', + 'packages/boards/cover/out15_16.yaml', + 'packages/boards/output/out17_18.yaml', + 'packages/boards/output/out19_20.yaml', + 'packages/boards/output/out21_22.yaml', + 'packages/boards/output/out23_24.yaml', + 'packages/boards/output/out25_26.yaml', + 'packages/boards/output/out27_28.yaml', + 'packages/boards/output/out29_30.yaml', + 'packages/boards/output/out31_32.yaml', + # 'packages/devices_v0_7-v0_9/one_wire.yaml', ] logger: diff --git a/boneio-cover_v0_5-v0_6.yaml b/boneio-cover_v0_5-v0_6.yaml index a5bd7c3..a244862 100644 --- a/boneio-cover_v0_5-v0_6.yaml +++ b/boneio-cover_v0_5-v0_6.yaml @@ -34,33 +34,33 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_5-v0_6/display.yaml', - 'devices_v0_5-v0_6/time.yaml', - 'devices_v0_5-v0_6/i2c.yaml', - 'devices_v0_5-v0_6/ina219.yaml', - 'devices_v0_5-v0_6/lm75b.yaml', - 'devices_v0_5-v0_6/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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_5-v0_6/display.yaml', + 'packages/devices_v0_5-v0_6/time.yaml', + 'packages/devices_v0_5-v0_6/i2c.yaml', + 'packages/devices_v0_5-v0_6/ina219.yaml', + 'packages/devices_v0_5-v0_6/lm75b.yaml', + 'packages/devices_v0_5-v0_6/pcf.yaml', + 'packages/boards/cover/out01_02.yaml', + 'packages/boards/cover/out03_04.yaml', + 'packages/boards/cover/out05_06.yaml', + 'packages/boards/cover/out07_08.yaml', + 'packages/boards/cover/out09_10.yaml', + 'packages/boards/cover/out11_12.yaml', + 'packages/boards/cover/out13_14.yaml', + 'packages/boards/cover/out15_16.yaml', + 'packages/boards/cover/out17_18.yaml', + 'packages/boards/cover/out19_20.yaml', + 'packages/boards/cover/out21_22.yaml', + 'packages/boards/cover/out23_24.yaml', + 'packages/boards/cover/out25_26.yaml', + 'packages/boards/cover/out27_28.yaml', + 'packages/boards/cover/out29_30.yaml', + 'packages/boards/cover/out31_32.yaml', + # 'packages/devices_v0_5-v0_6/one_wire.yaml', ] logger: diff --git a/boneio-cover_v0_7.yaml b/boneio-cover_v0_7.yaml index 8d9f644..889a648 100644 --- a/boneio-cover_v0_7.yaml +++ b/boneio-cover_v0_7.yaml @@ -34,32 +34,32 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/i2c.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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf.yaml', + 'packages/boards/cover/out01_02.yaml', + 'packages/boards/cover/out03_04.yaml', + 'packages/boards/cover/out05_06.yaml', + 'packages/boards/cover/out07_08.yaml', + 'packages/boards/cover/out09_10.yaml', + 'packages/boards/cover/out11_12.yaml', + 'packages/boards/cover/out13_14.yaml', + 'packages/boards/cover/out15_16.yaml', + 'packages/boards/cover/out17_18.yaml', + 'packages/boards/cover/out19_20.yaml', + 'packages/boards/cover/out21_22.yaml', + 'packages/boards/cover/out23_24.yaml', + 'packages/boards/cover/out25_26.yaml', + 'packages/boards/cover/out27_28.yaml', + 'packages/boards/cover/out29_30.yaml', + 'packages/boards/cover/out31_32.yaml', + # 'packages/devices_v0_7-v0_9/one_wire.yaml', ] logger: diff --git a/boneio-dimmer_2rgbw-v0_3.yaml b/boneio-dimmer_2rgbw-v0_3.yaml index 5ab2eda..dba3914 100644 --- a/boneio-dimmer_2rgbw-v0_3.yaml +++ b/boneio-dimmer_2rgbw-v0_3.yaml @@ -23,13 +23,13 @@ external_components: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/serial_no.yaml', - 'devices/dimmer_i2c.yaml', - 'devices/dimmer_ina219.yaml', - 'boards/dimmer_output.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices/dimmer_i2c.yaml', + 'packages/devices/dimmer_ina219.yaml', + 'packages/boards/dimmer_output.yaml', ] ethernet: diff --git a/boneio-dimmer_4cct-v0_3.yaml b/boneio-dimmer_4cct-v0_3.yaml index 97e448f..106b22a 100644 --- a/boneio-dimmer_4cct-v0_3.yaml +++ b/boneio-dimmer_4cct-v0_3.yaml @@ -23,13 +23,13 @@ external_components: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/serial_no.yaml', - 'devices/dimmer_i2c.yaml', - 'devices/dimmer_ina219.yaml', - 'boards/dimmer_output.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices/dimmer_i2c.yaml', + 'packages/devices/dimmer_ina219.yaml', + 'packages/boards/dimmer_output.yaml', ] ethernet: diff --git a/boneio-dimmer_8ch-v0_3.yaml b/boneio-dimmer_8ch-v0_3.yaml index fb3b47a..fcaffdc 100644 --- a/boneio-dimmer_8ch-v0_3.yaml +++ b/boneio-dimmer_8ch-v0_3.yaml @@ -23,13 +23,13 @@ external_components: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/serial_no.yaml', - 'devices/dimmer_i2c.yaml', - 'devices/dimmer_ina219.yaml', - 'boards/dimmer_output.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices/dimmer_i2c.yaml', + 'packages/devices/dimmer_ina219.yaml', + 'packages/boards/dimmer_output.yaml', ] ethernet: diff --git a/boneio-dimmer_gen2_2rgbw-v0_1.yaml b/boneio-dimmer_gen2_2rgbw-v0_1.yaml index 48181ce..58ca09c 100644 --- a/boneio-dimmer_gen2_2rgbw-v0_1.yaml +++ b/boneio-dimmer_gen2_2rgbw-v0_1.yaml @@ -1,22 +1,22 @@ 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' + 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: "${name}" + friendly_name: "${friendly_name}" name_add_mac_suffix: true project: name: boneio.dimmer-led-gen2 - version: '0.1' + version: "0.1" on_boot: priority: -100 then: - delay: 5s - if: condition: - lambda: 'return id(serial_no) != nullptr;' + lambda: "return id(serial_no) != nullptr;" then: - component.update: serial_no - logger.log: "Serial No updated on boot" @@ -25,7 +25,7 @@ esphome: esp32: board: esp32-s3-devkitc-1 - framework: + framework: type: esp-idf ethernet: @@ -45,8 +45,6 @@ i2c: scan: True frequency: 400kHz - - output: - platform: ledc pin: GPIO18 @@ -90,26 +88,23 @@ output: 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 +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', - ] + ref: packages-v2.0.0 + files: ["packages/devices/serial_no.yaml"] # boneiopackages: # url: https://github.com/boneIO-eu/esphome_packages # ref: main @@ -122,7 +117,7 @@ dashboard_import: import_full_config: true pcf8574: - - id: 'pcf_inputs' + - id: "pcf_inputs" address: 0x38 logger: @@ -138,11 +133,10 @@ web_server: version: 3 local: true - light: - platform: rgbw id: rgbw_l - name: 'RGBW L' + name: "RGBW L" red: chl01 green: chl02 blue: chl03 @@ -151,7 +145,7 @@ light: gamma_correct: 0 - platform: rgbw id: rgbw_r - name: 'RGBW R' + name: "RGBW R" red: chr01 green: chr02 blue: chr03 @@ -172,7 +166,7 @@ sensor: name: "Loop Time" - platform: lm75b id: boneIO_temp - name: 'Temperature' + name: "Temperature" update_interval: 30s entity_category: diagnostic on_value_range: @@ -186,7 +180,7 @@ sensor: switch: - platform: gpio id: buzzer - name: 'Buzzer' + name: "Buzzer" pin: number: GPIO9 mode: @@ -194,7 +188,7 @@ switch: inverted: false - platform: gpio id: can_bus_switch - name: 'CAN Bus Switch' + name: "CAN Bus Switch" pin: number: GPIO35 mode: @@ -203,7 +197,7 @@ switch: binary_sensor: - platform: gpio - name: 'IN_01' + name: "IN_01" id: in_01 pin: pcf8574: pcf_inputs @@ -213,7 +207,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_02' + name: "IN_02" id: in_02 pin: pcf8574: pcf_inputs @@ -223,7 +217,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_03' + name: "IN_03" id: in_03 pin: pcf8574: pcf_inputs @@ -233,7 +227,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_04' + name: "IN_04" id: in_04 pin: pcf8574: pcf_inputs @@ -243,7 +237,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_05' + name: "IN_05" id: in_05 pin: pcf8574: pcf_inputs @@ -253,7 +247,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_06' + name: "IN_06" id: in_06 pin: pcf8574: pcf_inputs @@ -263,7 +257,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_07' + name: "IN_07" id: in_07 pin: pcf8574: pcf_inputs @@ -273,11 +267,11 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_08' + name: "IN_08" id: in_08 pin: pcf8574: pcf_inputs number: 7 mode: input: true - inverted: true \ No newline at end of file + inverted: true diff --git a/boneio-dimmer_gen2_4cct-v0_1.yaml b/boneio-dimmer_gen2_4cct-v0_1.yaml index ed49f96..6a3a6fd 100644 --- a/boneio-dimmer_gen2_4cct-v0_1.yaml +++ b/boneio-dimmer_gen2_4cct-v0_1.yaml @@ -1,22 +1,22 @@ 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' + 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: "${name}" + friendly_name: "${friendly_name}" name_add_mac_suffix: true project: name: boneio.dimmer-led-gen2 - version: '0.1' + version: "0.1" on_boot: priority: -100 then: - delay: 5s - if: condition: - lambda: 'return id(serial_no) != nullptr;' + lambda: "return id(serial_no) != nullptr;" then: - component.update: serial_no - logger.log: "Serial No updated on boot" @@ -25,7 +25,7 @@ esphome: esp32: board: esp32-s3-devkitc-1 - framework: + framework: type: esp-idf ethernet: @@ -45,8 +45,6 @@ i2c: scan: True frequency: 400kHz - - output: - platform: ledc pin: GPIO18 @@ -90,26 +88,23 @@ output: 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 +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', - ] + ref: packages-v2.0.0 + files: ["packages/devices/serial_no.yaml"] # boneiopackages: # url: https://github.com/boneIO-eu/esphome_packages # ref: main @@ -122,7 +117,7 @@ dashboard_import: import_full_config: true pcf8574: - - id: 'pcf_inputs' + - id: "pcf_inputs" address: 0x38 logger: @@ -138,30 +133,29 @@ web_server: version: 3 local: true - light: - platform: cwww - name: 'CHL_01_02' + 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' + 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' + 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' + name: "CHR_03_04" cold_white: chr03 warm_white: chr04 cold_white_color_temperature: 6536 K @@ -180,7 +174,7 @@ sensor: name: "Loop Time" - platform: lm75b id: boneIO_temp - name: 'Temperature' + name: "Temperature" update_interval: 30s entity_category: diagnostic on_value_range: @@ -194,7 +188,7 @@ sensor: switch: - platform: gpio id: buzzer - name: 'Buzzer' + name: "Buzzer" pin: number: GPIO9 mode: @@ -202,7 +196,7 @@ switch: inverted: false - platform: gpio id: can_bus_switch - name: 'CAN Bus Switch' + name: "CAN Bus Switch" pin: number: GPIO35 mode: @@ -211,7 +205,7 @@ switch: binary_sensor: - platform: gpio - name: 'IN_01' + name: "IN_01" id: in_01 pin: pcf8574: pcf_inputs @@ -221,7 +215,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_02' + name: "IN_02" id: in_02 pin: pcf8574: pcf_inputs @@ -231,7 +225,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_03' + name: "IN_03" id: in_03 pin: pcf8574: pcf_inputs @@ -241,7 +235,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_04' + name: "IN_04" id: in_04 pin: pcf8574: pcf_inputs @@ -251,7 +245,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_05' + name: "IN_05" id: in_05 pin: pcf8574: pcf_inputs @@ -261,7 +255,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_06' + name: "IN_06" id: in_06 pin: pcf8574: pcf_inputs @@ -271,7 +265,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_07' + name: "IN_07" id: in_07 pin: pcf8574: pcf_inputs @@ -281,11 +275,11 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_08' + name: "IN_08" id: in_08 pin: pcf8574: pcf_inputs number: 7 mode: input: true - inverted: true \ No newline at end of file + inverted: true diff --git a/boneio-dimmer_gen2_8ch-v0_1.yaml b/boneio-dimmer_gen2_8ch-v0_1.yaml index d245615..6f92c27 100644 --- a/boneio-dimmer_gen2_8ch-v0_1.yaml +++ b/boneio-dimmer_gen2_8ch-v0_1.yaml @@ -1,22 +1,22 @@ 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' + 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: "${name}" + friendly_name: "${friendly_name}" name_add_mac_suffix: true project: name: boneio.dimmer-led-gen2 - version: '0.1' + version: "0.1" on_boot: priority: -100 then: - delay: 5s - if: condition: - lambda: 'return id(serial_no) != nullptr;' + lambda: "return id(serial_no) != nullptr;" then: - component.update: serial_no - logger.log: "Serial No updated on boot" @@ -25,7 +25,7 @@ esphome: esp32: board: esp32-s3-devkitc-1 - framework: + framework: type: esp-idf ethernet: @@ -45,8 +45,6 @@ i2c: scan: True frequency: 400kHz - - output: - platform: ledc pin: GPIO18 @@ -90,26 +88,23 @@ output: 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 +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', - ] + ref: packages-v2.0.0 + files: ["packages/devices/serial_no.yaml"] # boneiopackages: # url: https://github.com/boneIO-eu/esphome_packages # ref: main @@ -122,7 +117,7 @@ dashboard_import: import_full_config: true pcf8574: - - id: 'pcf_inputs' + - id: "pcf_inputs" address: 0x38 logger: @@ -138,54 +133,53 @@ web_server: version: 3 local: true - light: - platform: monochromatic output: chl01 - name: 'CHL 01' + name: "CHL 01" id: chl_01 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chl02 - name: 'CHL 02' + name: "CHL 02" id: chl_02 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chl03 - name: 'CHL 03' + name: "CHL 03" id: chl_03 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chl04 - name: 'CHL 04' + name: "CHL 04" id: chl_04 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chr01 - name: 'CHR 01' + name: "CHR 01" id: chr_01 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chr02 - name: 'CHR 02' + name: "CHR 02" id: chr_02 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chr03 - name: 'CHR 03' + name: "CHR 03" id: chr_03 default_transition_length: 2s gamma_correct: 0 - platform: monochromatic output: chr04 - name: 'CHR 04' + name: "CHR 04" id: chr_04 default_transition_length: 2s gamma_correct: 0 @@ -203,7 +197,7 @@ sensor: name: "Loop Time" - platform: lm75b id: boneIO_temp - name: 'Temperature' + name: "Temperature" update_interval: 30s entity_category: diagnostic on_value_range: @@ -217,7 +211,7 @@ sensor: switch: - platform: gpio id: buzzer - name: 'Buzzer' + name: "Buzzer" pin: number: GPIO9 mode: @@ -225,7 +219,7 @@ switch: inverted: false - platform: gpio id: can_bus_switch - name: 'CAN Bus Switch' + name: "CAN Bus Switch" pin: number: GPIO35 mode: @@ -234,7 +228,7 @@ switch: binary_sensor: - platform: gpio - name: 'IN_01' + name: "IN_01" id: in_01 pin: pcf8574: pcf_inputs @@ -244,7 +238,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_02' + name: "IN_02" id: in_02 pin: pcf8574: pcf_inputs @@ -254,7 +248,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_03' + name: "IN_03" id: in_03 pin: pcf8574: pcf_inputs @@ -264,7 +258,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_04' + name: "IN_04" id: in_04 pin: pcf8574: pcf_inputs @@ -274,7 +268,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_05' + name: "IN_05" id: in_05 pin: pcf8574: pcf_inputs @@ -284,7 +278,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_06' + name: "IN_06" id: in_06 pin: pcf8574: pcf_inputs @@ -294,7 +288,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_07' + name: "IN_07" id: in_07 pin: pcf8574: pcf_inputs @@ -304,11 +298,11 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_08' + name: "IN_08" id: in_08 pin: pcf8574: pcf_inputs number: 7 mode: input: true - inverted: true \ No newline at end of file + inverted: true diff --git a/boneio-input24_gen2-v0_1.yaml b/boneio-input24_gen2-v0_1.yaml index ca70835..97237bc 100644 --- a/boneio-input24_gen2-v0_1.yaml +++ b/boneio-input24_gen2-v0_1.yaml @@ -1,22 +1,22 @@ 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' + 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: "${name}" + friendly_name: "${friendly_name}" name_add_mac_suffix: true project: name: boneio.input24-gen2 - version: '0.1' + version: "0.1" on_boot: priority: -100 then: - delay: 5s - if: condition: - lambda: 'return id(serial_no) != nullptr;' + lambda: "return id(serial_no) != nullptr;" then: - component.update: serial_no - logger.log: "Serial No updated on boot" @@ -25,7 +25,7 @@ esphome: esp32: board: esp32-s3-devkitc-1 - framework: + framework: type: esp-idf ethernet: @@ -45,26 +45,23 @@ i2c: 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 +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', - ] + ref: packages-v2.0.0 + files: ["packages/devices/serial_no.yaml"] # boneiopackages: # url: https://github.com/boneIO-eu/esphome_packages # ref: main @@ -73,7 +70,7 @@ packages: # - path: sdm630.yaml 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 pcf8574: @@ -99,7 +96,7 @@ web_server: sensor: - platform: lm75b id: boneIO_temp - name: 'Temperature' + name: "Temperature" update_interval: 30s entity_category: diagnostic on_value_range: @@ -113,7 +110,7 @@ sensor: switch: - platform: gpio id: buzzer - name: 'Buzzer' + name: "Buzzer" pin: number: GPIO9 mode: @@ -121,7 +118,7 @@ switch: inverted: false - platform: gpio id: can_bus_switch - name: 'CAN Bus Switch' + name: "CAN Bus Switch" pin: number: GPIO35 mode: @@ -130,7 +127,7 @@ switch: binary_sensor: - platform: gpio - name: 'IN_01' + name: "IN_01" id: in_01 pin: pcf8574: pcf_inputs_1_to_8 @@ -140,7 +137,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_02' + name: "IN_02" id: in_02 pin: pcf8574: pcf_inputs_1_to_8 @@ -150,7 +147,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_03' + name: "IN_03" id: in_03 pin: pcf8574: pcf_inputs_1_to_8 @@ -160,7 +157,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_04' + name: "IN_04" id: in_04 pin: pcf8574: pcf_inputs_1_to_8 @@ -170,7 +167,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_05' + name: "IN_05" id: in_05 pin: pcf8574: pcf_inputs_1_to_8 @@ -180,7 +177,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_06' + name: "IN_06" id: in_06 pin: pcf8574: pcf_inputs_1_to_8 @@ -190,7 +187,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_07' + name: "IN_07" id: in_07 pin: pcf8574: pcf_inputs_1_to_8 @@ -200,7 +197,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_08' + name: "IN_08" id: in_08 pin: pcf8574: pcf_inputs_1_to_8 @@ -210,7 +207,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_09' + name: "IN_09" id: in_09 pin: pcf8574: pcf_inputs_9_to_24 @@ -220,7 +217,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_10' + name: "IN_10" id: in_10 pin: pcf8574: pcf_inputs_9_to_24 @@ -230,7 +227,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_11' + name: "IN_11" id: in_11 pin: pcf8574: pcf_inputs_9_to_24 @@ -240,7 +237,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_12' + name: "IN_12" id: in_12 pin: pcf8574: pcf_inputs_9_to_24 @@ -250,7 +247,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_13' + name: "IN_13" id: in_13 pin: pcf8574: pcf_inputs_9_to_24 @@ -260,7 +257,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_14' + name: "IN_14" id: in_14 pin: pcf8574: pcf_inputs_9_to_24 @@ -270,7 +267,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_15' + name: "IN_15" id: in_15 pin: pcf8574: pcf_inputs_9_to_24 @@ -280,7 +277,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_16' + name: "IN_16" id: in_16 pin: pcf8574: pcf_inputs_9_to_24 @@ -290,7 +287,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_17' + name: "IN_17" id: in_17 pin: pcf8574: pcf_inputs_9_to_24 @@ -300,7 +297,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_18' + name: "IN_18" id: in_18 pin: pcf8574: pcf_inputs_9_to_24 @@ -310,7 +307,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_19' + name: "IN_19" id: in_19 pin: pcf8574: pcf_inputs_9_to_24 @@ -320,7 +317,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_20' + name: "IN_20" id: in_20 pin: pcf8574: pcf_inputs_9_to_24 @@ -330,7 +327,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_21' + name: "IN_21" id: in_21 pin: pcf8574: pcf_inputs_9_to_24 @@ -340,7 +337,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_22' + name: "IN_22" id: in_22 pin: pcf8574: pcf_inputs_9_to_24 @@ -350,7 +347,7 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_23' + name: "IN_23" id: in_23 pin: pcf8574: pcf_inputs_9_to_24 @@ -360,11 +357,11 @@ binary_sensor: inverted: true - platform: gpio - name: 'IN_24' + name: "IN_24" id: in_24 pin: pcf8574: pcf_inputs_9_to_24 number: 8 mode: input: true - inverted: true \ No newline at end of file + inverted: true diff --git a/create_firmware.py b/create_firmware.py index 47ea1f8..dbb1839 100644 --- a/create_firmware.py +++ b/create_firmware.py @@ -26,13 +26,13 @@ exclude_files = [ "boneio-mosfet48_lights_v0_7.yaml", "boneio-mosfet48_switches_v0_7.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 ] include_files = [ - "boneio-input24_gen2-v0_01.yaml", + "boneio-input24_gen2-v0_1.yaml", # "boneio-8x10A_gen2_lights-v0_1.yaml", # "boneio-dimmer_gen2_2rgbw-v0_1.yaml", # "boneio-dimmer_gen2_8ch-v0_1" @@ -40,7 +40,9 @@ include_files = [ 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"): @@ -93,7 +95,7 @@ for file in glob.glob("*.yaml"): print("No file found.") break 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) result = subprocess.run( cmd, diff --git a/boneio-32x10_switches_v0_4.yaml b/development/boneio-32x10_switches_v0_4.yaml similarity index 100% rename from boneio-32x10_switches_v0_4.yaml rename to development/boneio-32x10_switches_v0_4.yaml diff --git a/boneio-8x10A_gen2-v0_1.yaml b/development/boneio-8x10A_gen2-v0_1.yaml similarity index 100% rename from boneio-8x10A_gen2-v0_1.yaml rename to development/boneio-8x10A_gen2-v0_1.yaml diff --git a/boneio-dimmer_8ch-v0_4.yaml b/development/boneio-dimmer_8ch-v0_4.yaml similarity index 100% rename from boneio-dimmer_8ch-v0_4.yaml rename to development/boneio-dimmer_8ch-v0_4.yaml diff --git a/boneio-dimmer_gen2_8ch-dev0_4-OLD.yaml b/development/boneio-dimmer_gen2_8ch-dev0_4-OLD.yaml similarity index 100% rename from boneio-dimmer_gen2_8ch-dev0_4-OLD.yaml rename to development/boneio-dimmer_gen2_8ch-dev0_4-OLD.yaml diff --git a/boneio-dimmer_gen2_8ch-dev0_4.yaml b/development/boneio-dimmer_gen2_8ch-dev0_4.yaml similarity index 100% rename from boneio-dimmer_gen2_8ch-dev0_4.yaml rename to development/boneio-dimmer_gen2_8ch-dev0_4.yaml diff --git a/dev-boneio-32x10_lights_v0_9.yaml b/development/dev-boneio-32x10_lights_v0_9.yaml similarity index 100% rename from dev-boneio-32x10_lights_v0_9.yaml rename to development/dev-boneio-32x10_lights_v0_9.yaml diff --git a/dev-boneio-8x10A-adc.yaml b/development/dev-boneio-8x10A-adc.yaml similarity index 100% rename from dev-boneio-8x10A-adc.yaml rename to development/dev-boneio-8x10A-adc.yaml diff --git a/dev-boneio-gen2-32x10_lights_v0_1.yaml b/development/dev-boneio-gen2-32x10_lights_v0_1.yaml similarity index 100% rename from dev-boneio-gen2-32x10_lights_v0_1.yaml rename to development/dev-boneio-gen2-32x10_lights_v0_1.yaml diff --git a/dev-boneio-ps01.yaml b/development/dev-boneio-ps01.yaml similarity index 100% rename from dev-boneio-ps01.yaml rename to development/dev-boneio-ps01.yaml diff --git a/dimmer-dev1.yaml b/development/dimmer-dev1.yaml similarity index 100% rename from dimmer-dev1.yaml rename to development/dimmer-dev1.yaml diff --git a/dimmer_gen2_can.yaml b/development/dimmer_gen2_can.yaml similarity index 100% rename from dimmer_gen2_can.yaml rename to development/dimmer_gen2_can.yaml diff --git a/dimmer_gen2_emc.yaml b/development/dimmer_gen2_emc.yaml similarity index 100% rename from dimmer_gen2_emc.yaml rename to development/dimmer_gen2_emc.yaml diff --git a/boneio-mosfet48_lights_v0_7.yaml b/discontinued/boneio-mosfet48_lights_v0_7.yaml similarity index 96% rename from boneio-mosfet48_lights_v0_7.yaml rename to discontinued/boneio-mosfet48_lights_v0_7.yaml index aecb4aa..713f616 100644 --- a/boneio-mosfet48_lights_v0_7.yaml +++ b/discontinued/boneio-mosfet48_lights_v0_7.yaml @@ -34,17 +34,17 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/i2c.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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf_mosfet.yaml', + 'packages/boards/mosfet48_output.yaml', + # 'packages/devices_v0_7/one_wire.yaml', ] logger: diff --git a/boneio-mosfet48_switches_v0_7.yaml b/discontinued/boneio-mosfet48_switches_v0_7.yaml similarity index 96% rename from boneio-mosfet48_switches_v0_7.yaml rename to discontinued/boneio-mosfet48_switches_v0_7.yaml index 05efdb2..22e7539 100644 --- a/boneio-mosfet48_switches_v0_7.yaml +++ b/discontinued/boneio-mosfet48_switches_v0_7.yaml @@ -34,17 +34,17 @@ dashboard_import: packages: internals_packages: url: https://github.com/boneIO-eu/esphome - ref: packages-v1.7.2 + ref: packages-v2.0.0 files: [ - 'devices/buzzer.yaml', - 'devices/serial_no.yaml', - 'devices_v0_7/display.yaml', - 'devices_v0_7/i2c.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', + 'packages/devices/buzzer.yaml', + 'packages/devices/serial_no.yaml', + 'packages/devices_v0_7/display.yaml', + 'packages/devices_v0_7/i2c.yaml', + 'packages/devices_v0_7-v0_9/ina219.yaml', + 'packages/devices_v0_7-v0_9/lm75b.yaml', + 'packages/devices_v0_7-v0_9/pcf_mosfet.yaml', + 'packages/boards/mosfet48_output.yaml', + # 'packages/devices_v0_7/one_wire.yaml', ] logger: diff --git a/boards/24x16_output.yaml b/packages/boards/24x16_output.yaml similarity index 100% rename from boards/24x16_output.yaml rename to packages/boards/24x16_output.yaml diff --git a/boards/cover/out01_02.yaml b/packages/boards/cover/out01_02.yaml similarity index 100% rename from boards/cover/out01_02.yaml rename to packages/boards/cover/out01_02.yaml diff --git a/boards/cover/out03_04.yaml b/packages/boards/cover/out03_04.yaml similarity index 100% rename from boards/cover/out03_04.yaml rename to packages/boards/cover/out03_04.yaml diff --git a/boards/cover/out05_06.yaml b/packages/boards/cover/out05_06.yaml similarity index 100% rename from boards/cover/out05_06.yaml rename to packages/boards/cover/out05_06.yaml diff --git a/boards/cover/out07_08.yaml b/packages/boards/cover/out07_08.yaml similarity index 100% rename from boards/cover/out07_08.yaml rename to packages/boards/cover/out07_08.yaml diff --git a/boards/cover/out09_10.yaml b/packages/boards/cover/out09_10.yaml similarity index 100% rename from boards/cover/out09_10.yaml rename to packages/boards/cover/out09_10.yaml diff --git a/boards/cover/out11_12.yaml b/packages/boards/cover/out11_12.yaml similarity index 100% rename from boards/cover/out11_12.yaml rename to packages/boards/cover/out11_12.yaml diff --git a/boards/cover/out13_14.yaml b/packages/boards/cover/out13_14.yaml similarity index 100% rename from boards/cover/out13_14.yaml rename to packages/boards/cover/out13_14.yaml diff --git a/boards/cover/out15_16.yaml b/packages/boards/cover/out15_16.yaml similarity index 100% rename from boards/cover/out15_16.yaml rename to packages/boards/cover/out15_16.yaml diff --git a/boards/cover/out17_18.yaml b/packages/boards/cover/out17_18.yaml similarity index 100% rename from boards/cover/out17_18.yaml rename to packages/boards/cover/out17_18.yaml diff --git a/boards/cover/out19_20.yaml b/packages/boards/cover/out19_20.yaml similarity index 100% rename from boards/cover/out19_20.yaml rename to packages/boards/cover/out19_20.yaml diff --git a/boards/cover/out21_22.yaml b/packages/boards/cover/out21_22.yaml similarity index 100% rename from boards/cover/out21_22.yaml rename to packages/boards/cover/out21_22.yaml diff --git a/boards/cover/out23_24.yaml b/packages/boards/cover/out23_24.yaml similarity index 100% rename from boards/cover/out23_24.yaml rename to packages/boards/cover/out23_24.yaml diff --git a/boards/cover/out25_26.yaml b/packages/boards/cover/out25_26.yaml similarity index 100% rename from boards/cover/out25_26.yaml rename to packages/boards/cover/out25_26.yaml diff --git a/boards/cover/out27_28.yaml b/packages/boards/cover/out27_28.yaml similarity index 100% rename from boards/cover/out27_28.yaml rename to packages/boards/cover/out27_28.yaml diff --git a/boards/cover/out29_30.yaml b/packages/boards/cover/out29_30.yaml similarity index 100% rename from boards/cover/out29_30.yaml rename to packages/boards/cover/out29_30.yaml diff --git a/boards/cover/out31_32.yaml b/packages/boards/cover/out31_32.yaml similarity index 100% rename from boards/cover/out31_32.yaml rename to packages/boards/cover/out31_32.yaml diff --git a/boards/dimmer_output.yaml b/packages/boards/dimmer_output.yaml similarity index 100% rename from boards/dimmer_output.yaml rename to packages/boards/dimmer_output.yaml diff --git a/boards/mosfet48_output.yaml b/packages/boards/mosfet48_output.yaml similarity index 100% rename from boards/mosfet48_output.yaml rename to packages/boards/mosfet48_output.yaml diff --git a/boards/output/out01_02.yaml b/packages/boards/output/out01_02.yaml similarity index 100% rename from boards/output/out01_02.yaml rename to packages/boards/output/out01_02.yaml diff --git a/boards/output/out03_04.yaml b/packages/boards/output/out03_04.yaml similarity index 100% rename from boards/output/out03_04.yaml rename to packages/boards/output/out03_04.yaml diff --git a/boards/output/out05_06.yaml b/packages/boards/output/out05_06.yaml similarity index 100% rename from boards/output/out05_06.yaml rename to packages/boards/output/out05_06.yaml diff --git a/boards/output/out07_08.yaml b/packages/boards/output/out07_08.yaml similarity index 100% rename from boards/output/out07_08.yaml rename to packages/boards/output/out07_08.yaml diff --git a/boards/output/out09_10.yaml b/packages/boards/output/out09_10.yaml similarity index 100% rename from boards/output/out09_10.yaml rename to packages/boards/output/out09_10.yaml diff --git a/boards/output/out11_12.yaml b/packages/boards/output/out11_12.yaml similarity index 100% rename from boards/output/out11_12.yaml rename to packages/boards/output/out11_12.yaml diff --git a/boards/output/out13_14.yaml b/packages/boards/output/out13_14.yaml similarity index 100% rename from boards/output/out13_14.yaml rename to packages/boards/output/out13_14.yaml diff --git a/boards/output/out15_16.yaml b/packages/boards/output/out15_16.yaml similarity index 100% rename from boards/output/out15_16.yaml rename to packages/boards/output/out15_16.yaml diff --git a/boards/output/out17_18.yaml b/packages/boards/output/out17_18.yaml similarity index 100% rename from boards/output/out17_18.yaml rename to packages/boards/output/out17_18.yaml diff --git a/boards/output/out19_20.yaml b/packages/boards/output/out19_20.yaml similarity index 100% rename from boards/output/out19_20.yaml rename to packages/boards/output/out19_20.yaml diff --git a/boards/output/out21_22.yaml b/packages/boards/output/out21_22.yaml similarity index 100% rename from boards/output/out21_22.yaml rename to packages/boards/output/out21_22.yaml diff --git a/boards/output/out23_24.yaml b/packages/boards/output/out23_24.yaml similarity index 100% rename from boards/output/out23_24.yaml rename to packages/boards/output/out23_24.yaml diff --git a/boards/output/out25_26.yaml b/packages/boards/output/out25_26.yaml similarity index 100% rename from boards/output/out25_26.yaml rename to packages/boards/output/out25_26.yaml diff --git a/boards/output/out27_28.yaml b/packages/boards/output/out27_28.yaml similarity index 100% rename from boards/output/out27_28.yaml rename to packages/boards/output/out27_28.yaml diff --git a/boards/output/out29_30.yaml b/packages/boards/output/out29_30.yaml similarity index 100% rename from boards/output/out29_30.yaml rename to packages/boards/output/out29_30.yaml diff --git a/boards/output/out31_32.yaml b/packages/boards/output/out31_32.yaml similarity index 100% rename from boards/output/out31_32.yaml rename to packages/boards/output/out31_32.yaml diff --git a/configuration/.gitignore b/packages/configuration/.gitignore similarity index 100% rename from configuration/.gitignore rename to packages/configuration/.gitignore diff --git a/configuration/dimmer-dev2.yaml b/packages/configuration/dimmer-dev2.yaml similarity index 100% rename from configuration/dimmer-dev2.yaml rename to packages/configuration/dimmer-dev2.yaml diff --git a/devices/buzzer.yaml b/packages/devices/buzzer.yaml similarity index 100% rename from devices/buzzer.yaml rename to packages/devices/buzzer.yaml diff --git a/devices/dimmer_i2c.yaml b/packages/devices/dimmer_i2c.yaml similarity index 100% rename from devices/dimmer_i2c.yaml rename to packages/devices/dimmer_i2c.yaml diff --git a/devices/dimmer_ina219.yaml b/packages/devices/dimmer_ina219.yaml similarity index 100% rename from devices/dimmer_ina219.yaml rename to packages/devices/dimmer_ina219.yaml diff --git a/devices/dimmer_outputs.yaml b/packages/devices/dimmer_outputs.yaml similarity index 100% rename from devices/dimmer_outputs.yaml rename to packages/devices/dimmer_outputs.yaml diff --git a/devices/serial_no.yaml b/packages/devices/serial_no.yaml similarity index 100% rename from devices/serial_no.yaml rename to packages/devices/serial_no.yaml diff --git a/devices_v0_4/display.yaml b/packages/devices_v0_4/display.yaml similarity index 100% rename from devices_v0_4/display.yaml rename to packages/devices_v0_4/display.yaml diff --git a/devices_v0_4/i2c.yaml b/packages/devices_v0_4/i2c.yaml similarity index 100% rename from devices_v0_4/i2c.yaml rename to packages/devices_v0_4/i2c.yaml diff --git a/devices_v0_4/ina219.yaml b/packages/devices_v0_4/ina219.yaml similarity index 100% rename from devices_v0_4/ina219.yaml rename to packages/devices_v0_4/ina219.yaml diff --git a/devices_v0_4/lm75b.yaml b/packages/devices_v0_4/lm75b.yaml similarity index 100% rename from devices_v0_4/lm75b.yaml rename to packages/devices_v0_4/lm75b.yaml diff --git a/devices_v0_4/pcf.yaml b/packages/devices_v0_4/pcf.yaml similarity index 100% rename from devices_v0_4/pcf.yaml rename to packages/devices_v0_4/pcf.yaml diff --git a/devices_v0_4/time.yaml b/packages/devices_v0_4/time.yaml similarity index 100% rename from devices_v0_4/time.yaml rename to packages/devices_v0_4/time.yaml diff --git a/devices_v0_5-v0_6/display.yaml b/packages/devices_v0_5-v0_6/display.yaml similarity index 100% rename from devices_v0_5-v0_6/display.yaml rename to packages/devices_v0_5-v0_6/display.yaml diff --git a/devices_v0_5-v0_6/i2c.yaml b/packages/devices_v0_5-v0_6/i2c.yaml similarity index 100% rename from devices_v0_5-v0_6/i2c.yaml rename to packages/devices_v0_5-v0_6/i2c.yaml diff --git a/devices_v0_5-v0_6/ina219.yaml b/packages/devices_v0_5-v0_6/ina219.yaml similarity index 100% rename from devices_v0_5-v0_6/ina219.yaml rename to packages/devices_v0_5-v0_6/ina219.yaml diff --git a/devices_v0_5-v0_6/lm75b.yaml b/packages/devices_v0_5-v0_6/lm75b.yaml similarity index 100% rename from devices_v0_5-v0_6/lm75b.yaml rename to packages/devices_v0_5-v0_6/lm75b.yaml diff --git a/devices_v0_5-v0_6/one_wire.yaml b/packages/devices_v0_5-v0_6/one_wire.yaml similarity index 100% rename from devices_v0_5-v0_6/one_wire.yaml rename to packages/devices_v0_5-v0_6/one_wire.yaml diff --git a/devices_v0_5-v0_6/pcf.yaml b/packages/devices_v0_5-v0_6/pcf.yaml similarity index 100% rename from devices_v0_5-v0_6/pcf.yaml rename to packages/devices_v0_5-v0_6/pcf.yaml diff --git a/devices_v0_5-v0_6/pcf_with_mcp.yaml b/packages/devices_v0_5-v0_6/pcf_with_mcp.yaml similarity index 100% rename from devices_v0_5-v0_6/pcf_with_mcp.yaml rename to packages/devices_v0_5-v0_6/pcf_with_mcp.yaml diff --git a/devices_v0_5-v0_6/time.yaml b/packages/devices_v0_5-v0_6/time.yaml similarity index 100% rename from devices_v0_5-v0_6/time.yaml rename to packages/devices_v0_5-v0_6/time.yaml diff --git a/devices_v0_7-v0_9/ina219.yaml b/packages/devices_v0_7-v0_9/ina219.yaml similarity index 100% rename from devices_v0_7-v0_9/ina219.yaml rename to packages/devices_v0_7-v0_9/ina219.yaml diff --git a/devices_v0_7-v0_9/lm75b.yaml b/packages/devices_v0_7-v0_9/lm75b.yaml similarity index 100% rename from devices_v0_7-v0_9/lm75b.yaml rename to packages/devices_v0_7-v0_9/lm75b.yaml diff --git a/devices_v0_7-v0_9/one_wire.yaml b/packages/devices_v0_7-v0_9/one_wire.yaml similarity index 100% rename from devices_v0_7-v0_9/one_wire.yaml rename to packages/devices_v0_7-v0_9/one_wire.yaml diff --git a/devices_v0_7-v0_9/pcf.yaml b/packages/devices_v0_7-v0_9/pcf.yaml similarity index 100% rename from devices_v0_7-v0_9/pcf.yaml rename to packages/devices_v0_7-v0_9/pcf.yaml diff --git a/devices_v0_7-v0_9/pcf_mosfet.yaml b/packages/devices_v0_7-v0_9/pcf_mosfet.yaml similarity index 100% rename from devices_v0_7-v0_9/pcf_mosfet.yaml rename to packages/devices_v0_7-v0_9/pcf_mosfet.yaml diff --git a/devices_v0_7-v0_9/pcf_with_mcp.yaml b/packages/devices_v0_7-v0_9/pcf_with_mcp.yaml similarity index 100% rename from devices_v0_7-v0_9/pcf_with_mcp.yaml rename to packages/devices_v0_7-v0_9/pcf_with_mcp.yaml diff --git a/devices_v0_7/display.yaml b/packages/devices_v0_7/display.yaml similarity index 100% rename from devices_v0_7/display.yaml rename to packages/devices_v0_7/display.yaml diff --git a/devices_v0_7/i2c.yaml b/packages/devices_v0_7/i2c.yaml similarity index 100% rename from devices_v0_7/i2c.yaml rename to packages/devices_v0_7/i2c.yaml diff --git a/devices_v0_9/display.yaml b/packages/devices_v0_9/display.yaml similarity index 100% rename from devices_v0_9/display.yaml rename to packages/devices_v0_9/display.yaml diff --git a/devices_v0_9/i2c.yaml b/packages/devices_v0_9/i2c.yaml similarity index 100% rename from devices_v0_9/i2c.yaml rename to packages/devices_v0_9/i2c.yaml