Add initial ESPHome configuration files and .gitignore
This commit is contained in:
		
						commit
						074c0d3fda
					
				
							
								
								
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | ||||
| # Gitignore settings for ESPHome | ||||
| # This is an example and may include too much for your use-case. | ||||
| # You can modify this file to suit your needs. | ||||
| /.esphome/ | ||||
| /secrets.yaml | ||||
							
								
								
									
										51
									
								
								camera.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								camera.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,51 @@ | ||||
| esphome: | ||||
|   name: esp32-cam | ||||
|   friendly_name: ESP32 Cam | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp-wrover-kit | ||||
|   framework: | ||||
|     type: arduino | ||||
|     version: recommended | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "bk9FKXwQuFxsnHq8e6xhTqagOCF1IiHXlPtn+F5VhC8=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Camera Fallback Hotspot" | ||||
|     password: "wI8KxJ2mpeN1" | ||||
| 
 | ||||
| 
 | ||||
| esp32_camera: | ||||
|   external_clock: | ||||
|     pin: GPIO21 | ||||
|     frequency: 20MHz | ||||
|   i2c_pins: | ||||
|     sda: GPIO26 | ||||
|     scl: GPIO27 | ||||
|   data_pins: [GPIO4, GPIO5, GPIO18, GPIO19, GPIO36, GPIO39, GPIO34, GPIO35] | ||||
|   vsync_pin: GPIO25 | ||||
|   href_pin: GPIO23 | ||||
|   pixel_clock_pin: GPIO22 | ||||
| 
 | ||||
|   # Image settings | ||||
|   name: Wrover Camera     | ||||
|   max_framerate: 15 fps | ||||
|   idle_framerate: 1.0 fps | ||||
|   resolution: 800x600 | ||||
|   horizontal_mirror: false | ||||
|   vertical_flip: false | ||||
							
								
								
									
										53
									
								
								desk-lamp.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								desk-lamp.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,53 @@ | ||||
| esphome: | ||||
|   name: desk-lamp | ||||
|   friendly_name: Desk Lamp | ||||
| 
 | ||||
| bk72xx: | ||||
|   board: generic-bk7231t-qfn32-tuya | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "6+mIYZv8QSpHXcH9FOJ2lLrFA2nO3XlPjycnon5PWi8=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| mdns: | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
|   ap: | ||||
| 
 | ||||
| text_sensor: | ||||
|   - platform: libretiny | ||||
|     version: | ||||
|       name: LibreTiny Version | ||||
| 
 | ||||
| output: | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_cold | ||||
|     pin: P26 | ||||
|     max_power: 80%  # Limit the cold white channel to 80% | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_warm | ||||
|     pin: P24 | ||||
|     max_power: 80%  # Limit the warm white channel to 80% | ||||
| 
 | ||||
| light: | ||||
|   - platform: cwww | ||||
|     id: light_cwww | ||||
|     name: Light | ||||
|     cold_white_color_temperature: 6500 K | ||||
|     warm_white_color_temperature: 2700 K | ||||
|     cold_white: output_cold | ||||
|     warm_white: output_warm | ||||
							
								
								
									
										210
									
								
								display.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										210
									
								
								display.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,210 @@ | ||||
| esphome: | ||||
|   name: display | ||||
|   friendly_name: DISPLAY | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
|   level: WARN | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "S9zpaMdXsTbjQE5QTWJ2SN3sdSlTEnSomw/PnbwyMZc=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   ap: | ||||
|     ssid: "Display Fallback Hotspot" | ||||
|     password: "ajRx8MZPIszl" | ||||
|      | ||||
| spi: | ||||
|   clk_pin: 18 | ||||
|   mosi_pin: 23 | ||||
|   miso_pin: 19 | ||||
| 
 | ||||
| # Display configuration | ||||
| display: | ||||
|   - platform: ili9xxx | ||||
|     model: st7789v | ||||
|     dimensions: | ||||
|       height: 320 | ||||
|       width: 240 | ||||
|       offset_height: 0 | ||||
|       offset_width: 0 | ||||
|     rotation: 0 | ||||
|     color_order: bgr | ||||
|     invert_colors: false | ||||
|     data_rate: 80MHz | ||||
|     cs_pin: 5 | ||||
|     dc_pin: 16 | ||||
|     reset_pin: 4 | ||||
|     lambda: |- | ||||
|       // Define row positions | ||||
|       int icon_row = 5; | ||||
|       int row_y = icon_row + 25; | ||||
|       int y_step = 30; | ||||
|       int col_start = 5; | ||||
|       int col_offset = col_start + 25; | ||||
|       int icon_size = y_step * 0.75; | ||||
| 
 | ||||
|       // Calculate column and row positions | ||||
|       int col_array[] = {col_start, col_offset + y_step, col_offset + y_step * 2, col_offset + y_step * 3, col_offset + y_step * 5, col_offset + y_step * 7};  | ||||
|       int row_array[] = {icon_row, row_y, row_y + y_step, row_y + y_step * 2, row_y + y_step * 3, row_y + y_step * 4}; | ||||
| 
 | ||||
|       it.fill(Color(0, 0, 0));  // Clear screen | ||||
| 
 | ||||
|       // Function to handle all state conditions | ||||
|       auto handle_state = [&](int col_index, int row_index, std::string text, std::string type) { | ||||
|         int x, y, center; | ||||
|         x = col_array[col_index]; | ||||
|         y = row_array[row_index]; | ||||
|         center = ((col_array[col_index] + col_array[col_index + 1]) / 2) - 10; | ||||
|          | ||||
|         if (text != "on" && text != "off" && text != "unavailable" && text != "unknown" && text != "") { | ||||
|             if (type == "temperature") { | ||||
|                 text = text + "°C"; | ||||
|             } else if (type == "humidity") { | ||||
|                 text = text + "%"; | ||||
|             } | ||||
|         } | ||||
|          | ||||
|         if (text == "unavailable" || text == "unknown") { | ||||
|             it.filled_triangle(x, y + icon_size, x + icon_size, y + icon_size, x + (icon_size / 2), y, Color(255, 0, 0)); | ||||
|             it.print((x + icon_size / 3) + 1, y, id(my_font), Color(255, 255, 255), "!"); | ||||
|         } else if (text == "" && type == "door" || text == "" && type == "motion") { | ||||
|           it.filled_rectangle(x, y, icon_size, icon_size, Color(128, 128, 128)); | ||||
|         } else if (text == "on") { | ||||
|           it.filled_rectangle(x, y, icon_size, icon_size, Color(0, 255, 0)); | ||||
|         } else if (text == "off") { | ||||
|           it.filled_rectangle(x, y, icon_size, icon_size, Color(255, 0, 0)); | ||||
|         } else if (type == "icon") { | ||||
|           it.print(center, y, id(icon_font), Color(255, 255, 255), text.c_str()); | ||||
|         } else { | ||||
|           it.print(x, y, id(my_font), Color(255, 255, 255), text.c_str()); | ||||
|         } | ||||
|       }; | ||||
|       // Room names (first column) | ||||
|       handle_state(0,0, "", "icon"); | ||||
|       handle_state(0,1, "Bath", "name"); | ||||
|       handle_state(0,2, "Hall", "name"); | ||||
|       handle_state(0,3, "Kitch", "name");; | ||||
|       handle_state(0,4, "Tom", "name"); | ||||
|       handle_state(0,5, "Mate", "name"); | ||||
| 
 | ||||
|       // Door status (second column) | ||||
|       handle_state(1, 0, "", "icon"); | ||||
|       handle_state(1, 1, id(bath_door_status).state, "door"); | ||||
|       handle_state(1, 2, id(hall_door_status).state, "door"); | ||||
|       handle_state(1, 3, "", "door"); | ||||
|       handle_state(1, 4, id(tomek_door_status).state, "door"); | ||||
|       handle_state(1, 5, id(mateusz_door_status).state, "door"); | ||||
| 
 | ||||
|       // Motion status (third column) | ||||
|       handle_state(2, 0, "", "icon"); | ||||
|       handle_state(2, 1, id(bath_motion_status).state, "motion"); | ||||
|       handle_state(2, 2, id(hall_motion_status).state, "motion"); | ||||
|       handle_state(2, 3, id(kitchen_motion_status).state, "motion"); | ||||
|       handle_state(2, 4, "", "motion"); | ||||
|       handle_state(2, 5, "", "motion"); | ||||
| 
 | ||||
|       // Temperature (fourth column) | ||||
|       handle_state(3, 0, "", "icon"); | ||||
|       handle_state(3, 1, id(bath_temperature).state, "temperature"); | ||||
|       handle_state(3, 2, id(hall_temperature).state, "temperature"); | ||||
|       handle_state(3, 3, id(kitchen_temperature).state, "temperature"); | ||||
|       handle_state(3, 4, id(tomek_temperature).state, "temperature"); | ||||
|       handle_state(3, 5, id(mateusz_temperature).state, "temperature"); | ||||
| 
 | ||||
|       // Humidity (fifth column) | ||||
|       handle_state(4, 0, "", "icon"); | ||||
|       handle_state(4, 1, id(bath_humidity).state, "humidity"); | ||||
|       handle_state(4, 2, id(hall_humidity).state, "humidity"); | ||||
|       handle_state(4, 3, id(kitchen_humidity).state, "humidity"); | ||||
|       handle_state(4, 4, id(tomek_humidity).state, "humidity"); | ||||
|       handle_state(4, 5, id(mateusz_humidity).state, "humidity"); | ||||
| 
 | ||||
| # Home Assistant integration | ||||
| text_sensor: | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.bathroom_door_opening | ||||
|     id: bath_door_status | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.entrance_door_opening | ||||
|     id: hall_door_status | ||||
|   # - platform: homeassistant | ||||
|   #   entity_id: binary_sensor.kitchen_door_status | ||||
|   #   id: kitchen_door_status | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.tomasz_s_door_opening | ||||
|     id: tomek_door_status | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.mateusz_s_door_opening | ||||
|     id: mateusz_door_status | ||||
| 
 | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.bathroom_motion_occupancy | ||||
|     id: bath_motion_status | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.hall_motion_occupancy | ||||
|     id: hall_motion_status | ||||
|   - platform: homeassistant | ||||
|     entity_id: binary_sensor.kitchen_motion_occupancy | ||||
|     id: kitchen_motion_status | ||||
|   # - platform: homeassistant | ||||
|   #   entity_id: binary_sensor.tomek_motion_sensor | ||||
|   #   id: tomek_motion_status | ||||
|   # - platform: homeassistant | ||||
|   #   entity_id: binary_sensor.mateusz_motion_sensor | ||||
|   #   id: mateusz_motion_status | ||||
| 
 | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.bathroom_sensor_temperature | ||||
|     id: bath_temperature | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.hall_sensor_temperature | ||||
|     id: hall_temperature | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.kitchen_sensor_temperature | ||||
|     id: kitchen_temperature | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.t_h_sensor_temperature | ||||
|     id: tomek_temperature | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.mateusz_s_room_sensor_temperature | ||||
|     id: mateusz_temperature | ||||
| 
 | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.bathroom_sensor_humidity | ||||
|     id: bath_humidity | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.hall_sensor_humidity | ||||
|     id: hall_humidity | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.kitchen_sensor_humidity | ||||
|     id: kitchen_humidity | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.t_h_sensor_humidity | ||||
|     id: tomek_humidity | ||||
|   - platform: homeassistant | ||||
|     entity_id: sensor.mateusz_s_room_sensor_humidity | ||||
|     id: mateusz_humidity | ||||
| 
 | ||||
| font: | ||||
|   - id: my_font | ||||
|     file: "fonts/Roboto.ttf" | ||||
|     size: 20 | ||||
|   - id: icon_font | ||||
|     file: "fonts/JetBrains.ttf" | ||||
|     size: 20 | ||||
|     glyphs: [ "", "", "", "", "" ] | ||||
							
								
								
									
										43
									
								
								esp-home-hall.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								esp-home-hall.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,43 @@ | ||||
| esphome: | ||||
|   name: esp-home-hall | ||||
|   friendly_name: Esp-Home-Hall | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "AMc594qbzF9SwLtCKcAH8jvTeOvNtgOcJzPxpy7BuAU=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Esp-Home-Hall Fallback Hotspot" | ||||
|     password: "eCkB9AHkfKl6" | ||||
| 
 | ||||
|      | ||||
| switch: | ||||
|   - platform: gpio | ||||
|     restore_mode: ALWAYS_ON | ||||
|     name: "Panel charger" | ||||
|     pin: | ||||
|       number: 13 | ||||
|       inverted: true | ||||
							
								
								
									
										38
									
								
								esphome-outside.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								esphome-outside.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,38 @@ | ||||
| esphome: | ||||
|   name: esphome-outside-s | ||||
|   friendly_name: Outside Light | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "6XGt8kCrllL861S4s3oBM5eUZ+p84JhxZqP6X4EsWE4=" | ||||
| 
 | ||||
| ota: | ||||
|   password: "f95124df8c48dd5b2ecce5a16ff14249" | ||||
| 
 | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_outside_ssid | ||||
|   password: !secret wifi_outside_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Server-Room Fallback Hotspot" | ||||
|     password: "UdiLJzrZq12a" | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| switch: | ||||
|   - platform: gpio | ||||
|     name: "Outside light" | ||||
|     pin: | ||||
|       number: 13 | ||||
|       inverted: true | ||||
							
								
								
									
										
											BIN
										
									
								
								fonts/JetBrains.ttf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								fonts/JetBrains.ttf
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								fonts/Material.ttf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								fonts/Material.ttf
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								fonts/Roboto.ttf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								fonts/Roboto.ttf
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										47
									
								
								kitchen-lights.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								kitchen-lights.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,47 @@ | ||||
| esphome: | ||||
|   name: kitchen-lights | ||||
|   friendly_name: Kitchen Lights | ||||
| 
 | ||||
|   # Disable brownout detector | ||||
|   platformio_options: | ||||
|     build_flags: | ||||
|       - '-DBOOTLOADER_BROWNOUT_ENABLE=0' | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "VUi8evAsXU7pfvb4Z686sSdJqNsRQO3Fra+ps+GyZqU=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Kitchen-Lights Fallback Hotspot" | ||||
|     password: "oZVPV9K2jFE4" | ||||
| 
 | ||||
| switch: | ||||
|   - platform: gpio | ||||
|     name: "Kitchen Counter light" | ||||
|     restore_mode: ALWAYS_ON | ||||
|     pin: | ||||
|       number: 13 | ||||
|       inverted: true | ||||
							
								
								
									
										120
									
								
								mateusz-room-switch.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								mateusz-room-switch.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,120 @@ | ||||
| esphome: | ||||
|   name: mateusz-light-switch | ||||
|   friendly_name: Mateusz's Light switch | ||||
| 
 | ||||
| bk72xx: | ||||
|   board: generic-bk7231n-qfn32-tuya | ||||
| 
 | ||||
| logger: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| mdns: | ||||
| 
 | ||||
| api: | ||||
|   encryption: | ||||
|     key: "" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
|   ap: | ||||
| 
 | ||||
| text_sensor: | ||||
|   - platform: libretiny | ||||
|     version: | ||||
|       name: LibreTiny Version | ||||
| 
 | ||||
| output: | ||||
|   - platform: gpio | ||||
|     id: output_led_1 | ||||
|     pin: | ||||
|       number: P14 | ||||
|       inverted: true | ||||
|   - platform: gpio | ||||
|     id: output_led_2 | ||||
|     pin: | ||||
|       number: P26 | ||||
|       inverted: true | ||||
|   - platform: gpio | ||||
|     id: output_led_3 | ||||
|     pin: | ||||
|       number: P11 | ||||
|       inverted: true | ||||
| 
 | ||||
| light: | ||||
|   - platform: binary | ||||
|     id: light_switch_1 | ||||
|     output: output_led_1 | ||||
|   - platform: binary | ||||
|     id: light_switch_2 | ||||
|     output: output_led_2 | ||||
|   - platform: binary | ||||
|     id: light_switch_3 | ||||
|     output: output_led_3 | ||||
| 
 | ||||
| binary_sensor: | ||||
|   - platform: gpio | ||||
|     id: binary_switch_1 | ||||
|     pin: | ||||
|       number: P24 | ||||
|       inverted: true | ||||
|       mode: INPUT_PULLUP | ||||
|     on_press: | ||||
|       then: | ||||
|         - switch.toggle: switch_1 | ||||
|   - platform: gpio | ||||
|     id: binary_switch_2 | ||||
|     pin: | ||||
|       number: P20 | ||||
|       inverted: true | ||||
|       mode: INPUT_PULLUP | ||||
|     on_press: | ||||
|       then: | ||||
|         - switch.toggle: switch_2 | ||||
|   - platform: gpio | ||||
|     id: binary_switch_3 | ||||
|     pin: | ||||
|       number: P7 | ||||
|       inverted: true | ||||
|       mode: INPUT_PULLUP | ||||
|     on_press: | ||||
|       then: | ||||
|         - switch.toggle: switch_3 | ||||
| 
 | ||||
| switch: | ||||
|   - platform: gpio | ||||
|     id: switch_1 | ||||
|     name: Switch 1 | ||||
|     pin: P6 | ||||
|     on_turn_on: | ||||
|       - light.turn_on: light_switch_1 | ||||
|     on_turn_off: | ||||
|       - light.turn_off: light_switch_1 | ||||
|   - platform: gpio | ||||
|     id: switch_2 | ||||
|     name: Switch 2 | ||||
|     pin: P8 | ||||
|     on_turn_on: | ||||
|       - light.turn_on: light_switch_2 | ||||
|     on_turn_off: | ||||
|       - light.turn_off: light_switch_2 | ||||
|   - platform: gpio | ||||
|     id: switch_3 | ||||
|     name: Switch 3 | ||||
|     pin: P9 | ||||
|     on_turn_on: | ||||
|       - light.turn_on: light_switch_3 | ||||
|     on_turn_off: | ||||
|       - light.turn_off: light_switch_3 | ||||
| 
 | ||||
| status_led: | ||||
|   pin: | ||||
|     number: P22 | ||||
|     inverted: true | ||||
							
								
								
									
										73
									
								
								mateuszs-tv.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										73
									
								
								mateuszs-tv.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,73 @@ | ||||
| esphome: | ||||
|   name: mateuszs-tv | ||||
|   friendly_name: Mateusz's TV | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "sn7OnWvf695dM1BAlpkhUFeFbBOyLCFwob+vOEiz6MY=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Mateuszs-Tv Fallback Hotspot" | ||||
|     password: "j781muxx0RXE" | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| # Define the TV state binary sensor (connected to GPIO34) | ||||
| binary_sensor: | ||||
|   - platform: gpio | ||||
|     pin: | ||||
|       number: 34 | ||||
|       mode: INPUT | ||||
|     name: "Status" | ||||
|     id: status | ||||
|     device_class: power | ||||
|     on_state: | ||||
|       - lambda: |- | ||||
|           if (!id(power_switch).state == x) { | ||||
|             id(power_switch).publish_state(x); | ||||
|           } | ||||
| 
 | ||||
| # Define the switch to control TV power (Only toggled via Home Assistant) | ||||
| switch: | ||||
|   - platform: template | ||||
|     name: "Switch" | ||||
|     id: power_switch | ||||
|     optimistic: true | ||||
|     restore_mode: RESTORE_DEFAULT_OFF | ||||
|     turn_on_action: | ||||
|       - output.turn_off: tv_relay  # Set P23 LOW | ||||
|       - delay: 300ms | ||||
|       - output.turn_on: tv_relay   # Set P23 HIGH | ||||
|     turn_off_action: | ||||
|       - output.turn_off: tv_relay  # Set P23 LOW | ||||
|       - delay: 1500ms | ||||
|       - output.turn_on: tv_relay   # Set P23 HIGH | ||||
| 
 | ||||
| # Define GPIO23 as the output (normally pull-up) | ||||
| output: | ||||
|   - platform: gpio | ||||
|     id: tv_relay | ||||
|     pin: | ||||
|       number: 23 | ||||
|       mode: OUTPUT | ||||
|       inverted: false  # Normal logic (LOW = active) | ||||
							
								
								
									
										53
									
								
								server-room.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								server-room.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,53 @@ | ||||
| esphome: | ||||
|   name: server-room | ||||
|   friendly_name: server-room | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "YHBbwijRWhlB6U2rRpTQHc0VivDDMz5HEuRkGoj+jr4=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Server-Room Fallback Hotspot" | ||||
|     password: "UdiLJzrZq12a" | ||||
| 
 | ||||
| 
 | ||||
| switch: | ||||
|   - platform: gpio | ||||
|     name: "3D printer light" | ||||
|     pin: | ||||
|       number: 13 | ||||
|       inverted: true | ||||
| 
 | ||||
| 
 | ||||
| sensor: | ||||
|   - platform: dht | ||||
|     pin: 4 | ||||
|     temperature: | ||||
|       name: "Server room Temperature" | ||||
|     humidity: | ||||
|       name: "Server room Humidity" | ||||
| 
 | ||||
|      | ||||
							
								
								
									
										70
									
								
								tomasz-s-celling-light.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										70
									
								
								tomasz-s-celling-light.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,70 @@ | ||||
| esphome: | ||||
|   name: tomasz_s_celling_light | ||||
|   friendly_name: Tomasz's celling light switch | ||||
| 
 | ||||
| bk72xx: | ||||
|   board: generic-bk7231n-qfn32-tuya | ||||
| 
 | ||||
| logger: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| mdns: | ||||
| 
 | ||||
| api: | ||||
|   encryption: | ||||
|     key: "5suYTz+ZrTczbwo+9EQki31BW1Bb+RTlIYX2wwdgmiQ=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
|   ap: | ||||
| 
 | ||||
| text_sensor: | ||||
|   - platform: libretiny | ||||
|     version: | ||||
|       name: LibreTiny Version | ||||
| 
 | ||||
| output: | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_led_1 | ||||
|     pin: | ||||
|       number: P26 | ||||
|       inverted: true | ||||
| 
 | ||||
| light: | ||||
|   - platform: binary | ||||
|     id: light_switch_1 | ||||
|     output: output_led_1 | ||||
| 
 | ||||
| binary_sensor: | ||||
|   - platform: gpio | ||||
|     id: binary_switch_1 | ||||
|     pin: | ||||
|       number: P20 | ||||
|       inverted: true | ||||
|       mode: INPUT_PULLUP | ||||
|     on_press: | ||||
|       then: | ||||
|         - switch.toggle: switch_1 | ||||
| 
 | ||||
| switch: | ||||
|   - platform: gpio | ||||
|     id: switch_1 | ||||
|     name: Relay 1 | ||||
|     pin: P6 | ||||
|     on_turn_on: | ||||
|       - light.turn_on: light_switch_1 | ||||
|     on_turn_off: | ||||
|       - light.turn_off: light_switch_1 | ||||
| 
 | ||||
| status_led: | ||||
|   pin: | ||||
|     number: P22 | ||||
|     inverted: true | ||||
							
								
								
									
										54
									
								
								tomaszs-wall-lamp-l.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								tomaszs-wall-lamp-l.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,54 @@ | ||||
| esphome: | ||||
|   name: tomaszs-wall-light-l | ||||
|   friendly_name: Tomasz's wall light L | ||||
| 
 | ||||
| bk72xx: | ||||
|   board: generic-bk7231t-qfn32-tuya | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "KgLS7JkyX3p9v3YRB/HaMtm60iJJpH9YbVD6bC8Om3w=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| mdns: | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
|   ap: | ||||
| 
 | ||||
| text_sensor: | ||||
|   - platform: libretiny | ||||
|     version: | ||||
|       name: LibreTiny Version | ||||
| 
 | ||||
| output: | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_cold | ||||
|     pin: P26 | ||||
|     max_power: 80%  # Limit the cold white channel to 80% | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_warm | ||||
|     pin: P24 | ||||
|     max_power: 80%  # Limit the warm white channel to 80% | ||||
| 
 | ||||
| light: | ||||
|   - platform: cwww | ||||
|     id: light_cwww | ||||
|     name: Light | ||||
|     cold_white_color_temperature: 6500 K | ||||
|     warm_white_color_temperature: 2700 K | ||||
|     cold_white: output_cold | ||||
|     warm_white: output_warm | ||||
|      | ||||
							
								
								
									
										55
									
								
								tomaszs-wall-light-r.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								tomaszs-wall-light-r.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,55 @@ | ||||
| esphome: | ||||
|   name: tomaszs-wall-light-r | ||||
|   friendly_name: Tomasz's wall light R | ||||
| 
 | ||||
| bk72xx: | ||||
|   board: generic-bk7231t-qfn32-tuya | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "zXAS/5dqZLhuVXHkhlKofR/WcknLhLkTk+0rFqcPlKU=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| mdns: | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
|   ap: | ||||
| 
 | ||||
| text_sensor: | ||||
|   - platform: libretiny | ||||
|     version: | ||||
|       name: LibreTiny Version | ||||
| 
 | ||||
| output: | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_cold | ||||
|     pin: P26 | ||||
|     max_power: 80%  # Limit the cold white channel to 80% | ||||
|   - platform: libretiny_pwm | ||||
|     id: output_warm | ||||
|     pin: P24 | ||||
|     max_power: 80%  # Limit the warm white channel to 80% | ||||
| 
 | ||||
| light: | ||||
|   - platform: cwww | ||||
|     id: light_cwww | ||||
|     name: Light | ||||
|     cold_white_color_temperature: 6500 K | ||||
|     warm_white_color_temperature: 2700 K | ||||
|     cold_white: output_cold | ||||
|     warm_white: output_warm | ||||
|      | ||||
|      | ||||
							
								
								
									
										40
									
								
								trash/esphome-web-0fedb4.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								trash/esphome-web-0fedb4.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | ||||
| esphome: | ||||
|   name: esphome-web-0fedb4 | ||||
|   friendly_name: Test | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "fm4ccKErq3XRViSecNf85iR4bASkJZjmHU57L1jfDYA=" | ||||
| 
 | ||||
| ota: | ||||
| 
 | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Esphome-Web-0Fedb4" | ||||
|     password: "BXHfWtTWeRew" | ||||
| 
 | ||||
| captive_portal: | ||||
|      | ||||
| 
 | ||||
| sensor: | ||||
|   - platform: dht | ||||
|     pin: 4 | ||||
|     temperature: | ||||
|       name: "Living Room Temperature" | ||||
|     humidity: | ||||
|       name: "Living Room Humidity" | ||||
|     update_interval: 5s | ||||
							
								
								
									
										31
									
								
								trash/esphome-web-0fedc0.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								trash/esphome-web-0fedc0.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| esphome: | ||||
|   name: esp-home-hall | ||||
|   friendly_name: Hall Charger | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "Ia673XZ4tpmC6xApq59PZYEfsz6SeUdZdGh1zv1iDGI=" | ||||
| 
 | ||||
| ota: | ||||
| 
 | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Esphome-Web-0Fedc0" | ||||
|     password: "bYA2YBfnBE4n" | ||||
| 
 | ||||
| captive_portal: | ||||
|      | ||||
							
								
								
									
										31
									
								
								trash/hall.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								trash/hall.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,31 @@ | ||||
| esphome: | ||||
|   name: hall | ||||
|   friendly_name: Hall | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "2bBi+SYgXR8tGy78rLfNGgtOZdSmf+UHpD4fpr/n5ag=" | ||||
| 
 | ||||
| ota: | ||||
|   password: "6e73941636dbaf1b5fb3191d7663f751" | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Hall Fallback Hotspot" | ||||
|     password: "yZRGDi4wENCc" | ||||
| 
 | ||||
| captive_portal: | ||||
|      | ||||
							
								
								
									
										42
									
								
								trash/mateusz-s-esp.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								trash/mateusz-s-esp.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,42 @@ | ||||
| esphome: | ||||
|   name: mateusz-s-esp | ||||
|   friendly_name: Mateusz_s_esp | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "C9xzP8pJqdTpzlE95zZ5O4ZjNuWI/PVwaDiFaIlO1F8=" | ||||
| 
 | ||||
| ota: | ||||
|   password: "fa5e5bd9c36c45f9ff4bca490ac83bf6" | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Mateusz-S-Esp Fallback Hotspot" | ||||
|     password: "lo4bTKMYOzVH" | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| esp32_ble_tracker: | ||||
| 
 | ||||
| binary_sensor: | ||||
|   - platform: ble_presence | ||||
|     mac_address: 62:DB:3F:6D:22:85 | ||||
|     name: "BLE TEST" | ||||
|      | ||||
| sensor: | ||||
|   - platform: ble_rssi | ||||
|     mac_address: 62:DB:3F:6D:22:85 | ||||
|     name: "Phone RSSI" | ||||
							
								
								
									
										67
									
								
								trash/tuya-test.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								trash/tuya-test.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,67 @@ | ||||
| esphome: | ||||
|   name: upk2esphome-bk7231n | ||||
| 
 | ||||
| bk72xx: | ||||
|   board: generic-bk7231n-qfn32-tuya | ||||
| 
 | ||||
| logger: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| mdns: | ||||
| 
 | ||||
| api: | ||||
|   encryption: | ||||
|     key: "" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: Suchodupin_IoT_2G | ||||
|   password: CEC0E76B | ||||
|   ap: | ||||
| 
 | ||||
| text_sensor: | ||||
|   - platform: libretiny | ||||
|     version: | ||||
|       name: LibreTiny Version | ||||
|   - platform: template | ||||
|     id: tuya_pir_state | ||||
|     name: (Unconfirmed) Pir State | ||||
|     filters: | ||||
|       - map: | ||||
|           - 0 -> Pir | ||||
|           - 1 -> None | ||||
|   - platform: template | ||||
|     id: tuya_battery_state | ||||
|     name: (Unconfirmed) Battery State | ||||
|     filters: | ||||
|       - map: | ||||
|           - 0 -> Low | ||||
|           - 1 -> Middle | ||||
|           - 2 -> High | ||||
| 
 | ||||
| uart: | ||||
|   rx_pin: RX1 | ||||
|   tx_pin: TX1 | ||||
|   baud_rate: 9600 | ||||
| 
 | ||||
| tuya: | ||||
|   # DPIDs processed from schema model: esi4xk | ||||
|   on_datapoint_update: | ||||
|     - sensor_datapoint: 1 | ||||
|       datapoint_type: enum | ||||
|       then: | ||||
|         - text_sensor.template.publish: | ||||
|             id: tuya_pir_state | ||||
|             state: !lambda "return std::to_string(x);" | ||||
|     - sensor_datapoint: 3 | ||||
|       datapoint_type: enum | ||||
|       then: | ||||
|         - text_sensor.template.publish: | ||||
|             id: tuya_battery_state | ||||
|             state: !lambda "return std::to_string(x);" | ||||
							
								
								
									
										53
									
								
								under-bed.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								under-bed.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,53 @@ | ||||
| esphome: | ||||
|   name: under-bed | ||||
|   friendly_name: Under Bed | ||||
| 
 | ||||
| esp32: | ||||
|   board: esp32dev | ||||
|   framework: | ||||
|     type: arduino | ||||
| 
 | ||||
| # Enable logging | ||||
| logger: | ||||
| 
 | ||||
| # Enable Home Assistant API | ||||
| api: | ||||
|   encryption: | ||||
|     key: "nYgcgBRWx8JPbUdrfdqLyJedIVuiHf7aL115aRLyXK0=" | ||||
| 
 | ||||
| ota: | ||||
|   platform: esphome | ||||
|   password: !secret ota | ||||
| 
 | ||||
| wifi: | ||||
|   ssid: !secret wifi_ssid | ||||
|   password: !secret wifi_password | ||||
| 
 | ||||
|   # Enable fallback hotspot (captive portal) in case wifi connection fails | ||||
|   ap: | ||||
|     ssid: "Under-Bed Fallback Hotspot" | ||||
|     password: "gjr4VnlR9Rfq" | ||||
| 
 | ||||
| captive_portal: | ||||
| 
 | ||||
| web_server: | ||||
| 
 | ||||
| light: | ||||
|   - platform: rgb | ||||
|     name: "Under Bed" | ||||
|     red: r | ||||
|     green: g | ||||
|     blue: b | ||||
|     default_transition_length:  | ||||
|       milliseconds: 200 | ||||
| 
 | ||||
| output: | ||||
|   - platform: ledc | ||||
|     pin: GPIO16 | ||||
|     id: g | ||||
|   - platform: ledc | ||||
|     pin: GPIO17 | ||||
|     id: r | ||||
|   - platform: ledc | ||||
|     pin: GPIO18 | ||||
|     id: b | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user