diff --git a/esphome/esp-bedside-panel.yaml b/esphome/esp-bedside-panel.yaml index 8d71444..e353bd1 100644 --- a/esphome/esp-bedside-panel.yaml +++ b/esphome/esp-bedside-panel.yaml @@ -6,6 +6,7 @@ # https://home.fox.co.nz/gitea/zorruno/zorruno-homeassistant/src/branch/master/esphome/esp-bedside-panel.yaml #:########################################################################################:# # VERSIONS: +# V0.4 2026-07-14 Removed MIPI display test after setup watchdog boot loop; retained backlight-only test # V0.3 2026-07-14 Added backlight control and first MIPI display text test # V0.2 2026-07-14 Added ESP32 hosted WiFi via ESP32-C6 co-processor # V0.1 2026-07-14 Initial ESPHome bring-up for Guition JC1060P470C_I_W_Y ESP32-P4 panel @@ -27,16 +28,17 @@ #:########################################################################################:# # OPERATION NOTES: # - Flash this to the ESP32-P4 side of the board. -# - This version is intended to confirm: -# - ESPHome compile -# - USB/OTA flashing -# - Serial logging -# - WiFi connection via ESP32-C6 hosted co-processor -# - Home Assistant API connection -# - Backlight entity appears in Home Assistant -# - Display lights and shows simple test text -# - This version intentionally does not yet configure: +# - This version tests only: +# - ESPHome boot +# - Hosted WiFi through the ESP32-C6 +# - Home Assistant API +# - GPIO23 backlight PWM +# - Backlight light entity in Home Assistant +# - The MIPI display component has been temporarily removed because V0.3 +# triggered a watchdog reset during setup. +# - This version intentionally does not configure: # - Ethernet +# - Display image generation # - Touchscreen # - LVGL # - Ambient light sensor @@ -44,10 +46,9 @@ # - Camera #:########################################################################################:# # OFFLINE NOTES: -# - This version has no local control logic yet. -# - This version does not require Home Assistant to boot. -# - Display test should run locally once the device boots. -# - Home Assistant API will connect only once hosted WiFi is working. +# - Backlight control is exposed locally by ESPHome and through Home Assistant. +# - The panel should remain connected even though no image is drawn. +# - The physical panel may remain blank while the backlight is tested. #:########################################################################################:# #:########################################################################################:# @@ -59,12 +60,12 @@ substitutions: # Device Naming device_name: "esp-bedside-panel" friendly_name: "ESP Bedside Panel" - description_comment: "Guition JC1060P470C_I_W_Y ESP32-P4 7 inch bedside control panel. Backlight and display test. (Layout V1.1)" + description_comment: "Guition JC1060P470C_I_W_Y ESP32-P4 7 inch bedside control panel. Backlight-only test following MIPI setup watchdog. (Layout V1.1)" device_area: "Bedroom" # Allows ESP device to be automatically linked to an 'Area' in Home Assistant. # Project Naming project_name: "Guition.JC1060P470C_I_W_Y" # Project Details - project_version: "v0.3" # Project V denotes release of yaml file, allowing checking of deployed vs latest version + project_version: "v0.4" # Project V denotes release of yaml file, allowing checking of deployed vs latest version # Passwords & Secrets api_key: !secret esp-api_key # unfortunately you can't use substitutions inside secrets names @@ -74,10 +75,9 @@ substitutions: log_level: "INFO" # Define logging level: NONE, ERROR, WARN, INFO, DEBUG (Default), VERBOSE, VERY_VERBOSE update_interval: "60s" # update time for general sensors etc - # Display Settings - display_width: "1024" - display_height: "600" - display_rotation: "90" + # Backlight Settings + backlight_pin: "23" + backlight_frequency: "1220Hz" #:########################################################################################:# # PACKAGES: @@ -86,7 +86,6 @@ substitutions: #:########################################################################################:# packages: #### WIFI, Network DHCP, Fallback AP, Safemode #### - # NOTE: # This board does not have native WiFi in the ESP32-P4 itself. # The esp32_hosted section below exposes the ESP32-C6 co-processor as WiFi. common_wifi: !include @@ -103,26 +102,18 @@ packages: local_api_key: "${api_key}" #### MQTT #### - # NOTE: - # Leave MQTT disabled for initial bring-up. Add later if needed. #common_mqtt: !include # file: common/mqtt_common.yaml # vars: # local_device_name: "${device_name}" #### WEB PORTAL #### - # NOTE: - # Leave disabled until WiFi/API/display are confirmed. #common_webportal: !include common/webportal_common_nopass.yaml #### SNTP (Only use if you want/need accurate timeclocks) #### - # NOTE: - # For the clock page later, we will probably use Home Assistant time first. #common_sntp: !include common/sntp_common.yaml #### DIAGNOSTICS Sensors #### - # NOTE: - # Keep common diagnostic packages disabled until first display test is confirmed. #diag_basic: !include common/include_basic_diag_sensors.yaml #diag_more: !include common/include_more_diag_sensors.yaml #diag_debug: !include common/include_debug_diag_sensors.yaml @@ -135,7 +126,7 @@ packages: esphome: name: "${device_name}" friendly_name: "${friendly_name}" - comment: "${description_comment}" # Appears on the esphome page in HA + comment: "${description_comment}" # Appears on the ESPHome page in HA area: "${device_area}" project: name: "${project_name}" @@ -153,7 +144,7 @@ esp32: framework: type: esp-idf advanced: - enable_idf_experimental_features: yes + enable_idf_experimental_features: true sdkconfig_options: CONFIG_SPIRAM_XIP_FROM_PSRAM: "y" @@ -192,7 +183,7 @@ esp_ldo: # https://esphome.io/components/logger.html #:########################################################################################:# logger: - level: "${log_level}" # INFO Level suggested, or DEBUG for testing + level: "${log_level}" # INFO Level suggested, or DEBUG for testing baud_rate: 115200 hardware_uart: USB_SERIAL_JTAG #tx_buffer_size: 64 @@ -235,9 +226,9 @@ time: #:########################################################################################:# output: - platform: ledc - pin: 23 + pin: ${backlight_pin} id: backlight_output - frequency: 1220Hz + frequency: "${backlight_frequency}" #:########################################################################################:# # LIGHT: @@ -246,43 +237,12 @@ output: light: - platform: monochromatic output: backlight_output - name: "${friendly_name} Backlight" + name: "Backlight" id: display_backlight - restore_mode: ALWAYS_ON + icon: "mdi:brightness-6" + restore_mode: RESTORE_DEFAULT_ON default_transition_length: 0s -#:########################################################################################:# -# DISPLAY: -# https://esphome.io/components/display/mipi_dsi.html -#:########################################################################################:# -display: - - platform: mipi_dsi - model: JC1060P470 - id: main_display - rotation: ${display_rotation} - dimensions: - width: ${display_width} - height: ${display_height} - update_interval: 1s - lambda: |- - it.fill(Color::BLACK); - it.printf(300, 210, id(font_large), Color::WHITE, "ESPHome OK"); - it.printf(300, 280, id(font_small), Color::WHITE, "JC1060P470C_I_W_Y"); - it.printf(300, 330, id(font_small), Color::WHITE, "WiFi + Display Test"); - -#:########################################################################################:# -# FONTS: -# https://esphome.io/components/font.html -#:########################################################################################:# -font: - - file: "gfonts://Roboto" - id: font_large - size: 48 - - - file: "gfonts://Roboto" - id: font_small - size: 28 - #:########################################################################################:# # SENSORS: # https://esphome.io/components/sensor/