substitutions: name: esphome-web-252354 friendly_name: ESPHome Bedroom Cam camera_name: Primary Camera esphome: name: ${name} friendly_name: ${friendly_name} min_version: 2024.6.0 name_add_mac_suffix: false project: name: esphome.web version: dev esp32: board: esp32dev framework: type: arduino # Enable logging logger: # Enable Home Assistant API api: # Allow Over-The-Air updates ota: - platform: esphome # Allow provisioning Wi-Fi via serial improv_serial: wifi: # Set up a wifi access point ap: {} ssid: !secret wifi_ssid password: !secret wifi_password output_power: 10dB reboot_timeout: 3min manual_ip: static_ip: 192.168.2.212 gateway: 192.168.2.1 subnet: 255.255.255.0 # In combination with the `ap` this allows the user # to provision wifi credentials to the device via WiFi AP. captive_portal: dashboard_import: package_import_url: github://esphome/example-configs/esphome-web/esp32.yaml@main import_full_config: true # Sets up Bluetooth LE (Only on ESP32) to allow the user # to provision wifi credentials to the device. esp32_improv: authorizer: none # To have a "next url" for improv serial web_server: switch: - platform: gpio name: "${camera_name} flash" pin: 4 #inverted: True - platform: restart name: "${name} - Restart" id: restart_switch esp32_camera: name: "${camera_name}" external_clock: pin: GPIO0 frequency: 20MHz i2c_pins: sda: GPIO26 scl: GPIO27 data_pins: [GPIO5, GPIO18, GPIO19, GPIO21, GPIO36, GPIO39, GPIO34, GPIO35] vsync_pin: GPIO25 href_pin: GPIO23 pixel_clock_pin: GPIO22 power_down_pin: GPIO32 # Image settings max_framerate: 5 fps # default: 10 fps, max 60 idle_framerate: 0.1 fps # default: 0.1 fps - framerate for 'picture' in HA dashboard resolution: 640x480 # default: 640x480 (VGA) - higher res requires more memory jpeg_quality: 30 # 10 (best) to 63 (worst)