initial commit esphome
This commit is contained in:
8
README.md
Normal file
8
README.md
Normal file
@@ -0,0 +1,8 @@
|
||||
<<<<<<< HEAD
|
||||
homeassistant repository
|
||||
|
||||
home lab basti
|
||||
=======
|
||||
# homeassistant
|
||||
|
||||
>>>>>>> 335a07eb1ea01992ce3eea3d122a3af3e9b5b92e
|
||||
10
esphome/.gitignore
vendored
Normal file
10
esphome/.gitignore
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
# 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/
|
||||
**/.pioenvs/
|
||||
**/.piolibdeps/
|
||||
**/lib/
|
||||
**/src/
|
||||
**/platformio.ini
|
||||
/secrets.yaml
|
||||
BIN
esphome/core
Normal file
BIN
esphome/core
Normal file
Binary file not shown.
56
esphome/eg-ga-sw-tor.yaml
Normal file
56
esphome/eg-ga-sw-tor.yaml
Normal file
@@ -0,0 +1,56 @@
|
||||
substitutions:
|
||||
devicename: eg-ga-sw-tor
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "99e1512e8c3c6c74a0941c6265a6bfb8"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
# Optional manual IP
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.193
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "QzKYJac0SGb0"
|
||||
|
||||
captive_portal:
|
||||
|
||||
# Example configuration entry
|
||||
switch:
|
||||
- platform: gpio
|
||||
pin: D2
|
||||
id: relay
|
||||
name: "Garagentor"
|
||||
icon: "mdi:garage"
|
||||
on_turn_on:
|
||||
- delay: 4000ms
|
||||
- switch.turn_off: relay
|
||||
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
48
esphome/esp32cam.yaml
Normal file
48
esphome/esp32cam.yaml
Normal file
@@ -0,0 +1,48 @@
|
||||
substitutions:
|
||||
devicename: esp32cam
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
|
||||
esp32:
|
||||
board: esp32dev
|
||||
framework:
|
||||
type: arduino
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "c3a5c265871d35fccae367d5b458eba3"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "FNDXksl7u2eJ"
|
||||
|
||||
captive_portal:
|
||||
|
||||
# Example configuration entry
|
||||
esp32_camera:
|
||||
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
|
||||
name: My Camera
|
||||
# ...
|
||||
BIN
esphome/fonts/COMIC.TTF
Normal file
BIN
esphome/fonts/COMIC.TTF
Normal file
Binary file not shown.
BIN
esphome/fonts/Comic Sans MS.ttf
Normal file
BIN
esphome/fonts/Comic Sans MS.ttf
Normal file
Binary file not shown.
BIN
esphome/fonts/ComicSansMS.ttf
Normal file
BIN
esphome/fonts/ComicSansMS.ttf
Normal file
Binary file not shown.
BIN
esphome/fonts/ComicSansMS3.ttf
Normal file
BIN
esphome/fonts/ComicSansMS3.ttf
Normal file
Binary file not shown.
BIN
esphome/fonts/comici.ttf
Normal file
BIN
esphome/fonts/comici.ttf
Normal file
Binary file not shown.
BIN
esphome/fonts/comicz.ttf
Normal file
BIN
esphome/fonts/comicz.ttf
Normal file
Binary file not shown.
BIN
esphome/fonts/design.graffiti.comicsansms.ttf
Normal file
BIN
esphome/fonts/design.graffiti.comicsansms.ttf
Normal file
Binary file not shown.
BIN
esphome/fonts/design.graffiti.comicsansmsgras.ttf
Normal file
BIN
esphome/fonts/design.graffiti.comicsansmsgras.ttf
Normal file
Binary file not shown.
1
esphome/fonts/sharefonts.net.txt
Normal file
1
esphome/fonts/sharefonts.net.txt
Normal file
@@ -0,0 +1 @@
|
||||
Free download fonts at http://sharefonts.net
|
||||
78
esphome/og-az-le-ambi.yaml
Normal file
78
esphome/og-az-le-ambi.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-az-le-ambi
|
||||
wledname: WLED-AZ-Ambi
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "7EyFH9NP5ilMZUOuDIYJqe4pFuljzUCGEXebOygob30="
|
||||
|
||||
ota:
|
||||
password: "17462b15801fcc11b267a896dc869b8f"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.39
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "QyyB6Lj1CgnB"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 64
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 63
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
28
esphome/og-az-le-magic.yaml
Normal file
28
esphome/og-az-le-magic.yaml
Normal file
@@ -0,0 +1,28 @@
|
||||
esphome:
|
||||
name: og-az-le-magic
|
||||
|
||||
esp8266:
|
||||
board: esp01_1m
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "KxSlEOz763gH4HROCFeb1bxdsiddSKQtW/imL7h3Mew="
|
||||
|
||||
ota:
|
||||
password: "92a40b4dafe3676d99b2b21bc1fdf30f"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "Og-Az-Le-Magic Fallback Hotspot"
|
||||
password: "4FJgLGUl65qn"
|
||||
|
||||
captive_portal:
|
||||
|
||||
267
esphome/og-az-us-room.yaml
Normal file
267
esphome/og-az-us-room.yaml
Normal file
@@ -0,0 +1,267 @@
|
||||
substitutions:
|
||||
devicename: og-az-us-room
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
on_boot:
|
||||
then:
|
||||
# - rtttl.play: 'MissionImp:d=16,o=6,b=95:32d,32d#,32d,32d#,32d,32d#,32d,32d#,32d,32d,32d#,32e,32f,32f#,32g,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,a#,g,2d,32p,a#,g,2c#,32p,a#,g,2c,a#5,8c,2p,32p,a#5,g5,2f#,32p,a#5,g5,2f,32p,a#5,g5,2e,d#,8d'
|
||||
# - rtttl.play: 'mario:d=4,o=5,b=100:16e6,16e6,32p,8e6,16c6,8e6,8g6,8p,8g,8p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,16p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16c7,16p,16c7,16c7,p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16d#6,8p,16d6,8p,16c6'
|
||||
# - rtttl.play: 'back:d=4,o=6,b=200:4g4,4a#5,4d#5,4a#4,4a#5,4g4,4a#5,4d#5,4a#5,4d#6,4a#4,32g4,4g6,1a#.6,2d7,2g.6,2f.6,4g6,1a#.6,2d7,2g6,4c7,2a#.6,4g6,1a#.6,2d7,2g.6,1f.6,2g.6,2a#.6,2d7,2c.7,2a#.6,4g6,1a#.6,2d7,2g.6,2f.6,4g6,1a#.6,2d7,'
|
||||
- rtttl.play: 'BackToTheFuture:d=4,o=5,b=160:p,8c.,16p,g,16p,16c.6,16p,a#.,16p,16a,16p,16g,16p,8a,16p,8g,16p,8f,16p,1g.,1p,g.,16p,c.,16p,2f#.,16p,32g.,32p,32a.,32p,8g,32p,8e,32p,8c,32p,f#,16p,32g.,32p,32a.,32p,8g.,32p,8d.,32p,8g.,32p,8d.6,32p,d6,16p,c#6,16p,32b.,32p,32c#.6,32p,2d6'
|
||||
# - rtttl.play: 'PlayedAl:d=4,o=5,b=355:8g#,p,g#,8p,8f,2g#,8p,8g#,p,g#,8p,8f,g#.,f,8g#,g,g,8p,8d#,2g,8p,8g,p,g,8p,8d#,g.,d#,8g,d#,d#,8p,8c,2d#,8p,8d#,p,d#,8p,8c,d#.,c,8d#,f,c#6,8p,8f,2c#6,8p,8f,p,c#6,8p,8f,c6,8p,a#,8g#,g#,g#,8p,8f,2g#,8p,8g#,p,g#,8p,8f,g#.'
|
||||
# - rtttl.play: 'Ghostbus:d=16,o=5,b=112:g,g,8b,8g,8a,4f.,g,g,g,g,8f,4g.,g,g,8b,8g,8a,4f.,g,g,g,g,8f,8a,8g,4d.,g,g,8b,8g,8a,4f.,g,g,g,g,8f,4g.';
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
services:
|
||||
- service: play_rtttl
|
||||
variables:
|
||||
song_str: string
|
||||
then:
|
||||
- rtttl.play:
|
||||
rtttl: !lambda 'return song_str;'
|
||||
|
||||
- service: write_tag_random
|
||||
then:
|
||||
- lambda: |-
|
||||
static const char alphanum[] = "0123456789abcdef";
|
||||
std::string uri = "//www.home-assistant.io/tag/";
|
||||
for (int i = 0; i < 8; i++)
|
||||
uri += alphanum[random_uint32() % (sizeof(alphanum) - 1)];
|
||||
uri += "-";
|
||||
for (int j = 0; j < 3; j++) {
|
||||
for (int i = 0; i < 4; i++)
|
||||
uri += alphanum[random_uint32() % (sizeof(alphanum) - 1)];
|
||||
uri += "-";
|
||||
}
|
||||
for (int i = 0; i < 12; i++)
|
||||
uri += alphanum[random_uint32() % (sizeof(alphanum) - 1)];
|
||||
auto message = new nfc::NdefMessage();
|
||||
message->add_uri_record(uri);
|
||||
ESP_LOGD("tagreader", "Writing payload: %s", uri.c_str());
|
||||
id(pn532_board).write_mode(message);
|
||||
|
||||
- service: write_tag_id
|
||||
variables:
|
||||
tag_id: string
|
||||
then:
|
||||
- lambda: |-
|
||||
auto message = new nfc::NdefMessage();
|
||||
std::string uri = "//www.home-assistant.io/tag/";
|
||||
uri += tag_id;
|
||||
message->add_uri_record(uri);
|
||||
id(pn532_board).write_mode(message);
|
||||
|
||||
- service: clean_tag
|
||||
then:
|
||||
- lambda: 'id(pn532_board).clean_mode();'
|
||||
|
||||
- service: cancel_writing
|
||||
then:
|
||||
- lambda: 'id(pn532_board).read_mode();'
|
||||
|
||||
ota:
|
||||
password: "37c297f04462d9e0bba70543ebbfa7ae"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.95
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "DSFKr3I1aBXy"
|
||||
|
||||
captive_portal:
|
||||
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: RGB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 01"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 0
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 02"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 1
|
||||
to: 1
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 03"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 2
|
||||
to: 2
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 04"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 3
|
||||
to: 3
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 05"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 4
|
||||
to: 4
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 06"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 5
|
||||
to: 5
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 07"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 6
|
||||
to: 6
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 08"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 7
|
||||
to: 7
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 09"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 8
|
||||
to: 8
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 10"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 9
|
||||
to: 9
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 11"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 10
|
||||
to: 10
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 12"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 11
|
||||
to: 11
|
||||
|
||||
|
||||
#RFID - PN532
|
||||
# Reset Pin D7
|
||||
# SDA D5
|
||||
# SCL D6
|
||||
#
|
||||
# schau mal bei og-wz-us-tag
|
||||
# abweichend port D1 / D2
|
||||
i2c:
|
||||
sda: D5
|
||||
scl: D6
|
||||
scan: true
|
||||
id: bus_a
|
||||
|
||||
pn532_i2c:
|
||||
update_interval: 1s
|
||||
id: pn532_board
|
||||
on_tag:
|
||||
then:
|
||||
- homeassistant.tag_scanned: !lambda |
|
||||
if (!tag.has_ndef_message()) {
|
||||
ESP_LOGD("tagreader", "No NDEF");
|
||||
return x;
|
||||
}
|
||||
auto message = tag.get_ndef_message();
|
||||
auto records = message->get_records();
|
||||
for (auto &record : records) {
|
||||
std::string payload = record->get_payload();
|
||||
size_t pos = payload.find("//www.home-assistant.io/tag/");
|
||||
if (pos != std::string::npos) {
|
||||
return payload.substr(pos + 34);
|
||||
}
|
||||
}
|
||||
ESP_LOGD("tagreader", "Bad NDEF, fallback to uid");
|
||||
return x;
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin:
|
||||
number: D1
|
||||
mode: INPUT_PULLUP
|
||||
name: "${devicename} Radar Sensor"
|
||||
device_class: motion
|
||||
|
||||
- platform: status
|
||||
name: "${devicename} Status"
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
# Buzzer D6
|
||||
output:
|
||||
- platform: esp8266_pwm
|
||||
pin: D2
|
||||
frequency: 1000 Hz
|
||||
id: rtttl_out
|
||||
|
||||
rtttl:
|
||||
output: rtttl_out
|
||||
on_finished_playback:
|
||||
- logger.log: 'Song ended!'
|
||||
206
esphome/og-bz-us-room.yaml
Normal file
206
esphome/og-bz-us-room.yaml
Normal file
@@ -0,0 +1,206 @@
|
||||
substitutions:
|
||||
devicename: og-bz-us-room
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
# encryption:
|
||||
# key: "ASBh/0rFjqcMw312xRW3GBe7YwkJ5N03Sa00THKWFyA="
|
||||
|
||||
ota:
|
||||
password: "e997f9bb54cc19ba96870868471dd560"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.98
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "NWODEbSPSLkM"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 40
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "Status RS"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 0
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 01"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 1
|
||||
to: 1
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 02"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 2
|
||||
to: 2
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 03"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 3
|
||||
to: 3
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 04"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 4
|
||||
to: 4
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 05"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 5
|
||||
to: 5
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 06"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 6
|
||||
to: 6
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 07"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 7
|
||||
to: 7
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 08"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 8
|
||||
to: 8
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 09"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 9
|
||||
to: 9
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 10"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 10
|
||||
to: 10
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 11"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 11
|
||||
to: 11
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 12"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 12
|
||||
to: 12
|
||||
|
||||
- platform: partition
|
||||
name: "Night Light"
|
||||
segments:
|
||||
# Use LEDs 11-20 from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 13
|
||||
to: 26
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
- platform: partition
|
||||
name: "Msg Light"
|
||||
segments:
|
||||
# Use LEDs 11-20 from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 28
|
||||
to: 39
|
||||
|
||||
|
||||
- platform: partition
|
||||
name: "Status BM"
|
||||
segments:
|
||||
# Use LEDs 11-20 from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 27
|
||||
to: 27
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin:
|
||||
number: D3
|
||||
mode: INPUT_PULLUP
|
||||
name: "${devicename} Radar Sensor"
|
||||
device_class: motion
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
28
esphome/og-fl-le-magic.yaml
Normal file
28
esphome/og-fl-le-magic.yaml
Normal file
@@ -0,0 +1,28 @@
|
||||
esphome:
|
||||
name: og-fl-le-magic
|
||||
|
||||
esp8266:
|
||||
board: esp01_1m
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "O5LisX51XHvv+rPAfXR7CVYdmC6kcvcbXTktHGNzVCw="
|
||||
|
||||
ota:
|
||||
password: "2e6d357a383ba60954bf08f12e394432"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "Og-Fl-Le-Magic Fallback Hotspot"
|
||||
password: "2wcm9pQmfUeg"
|
||||
|
||||
captive_portal:
|
||||
|
||||
57
esphome/og-fl-pw-tablet.yaml
Normal file
57
esphome/og-fl-pw-tablet.yaml
Normal file
@@ -0,0 +1,57 @@
|
||||
substitutions:
|
||||
devicename: og-fl-pw-tablet
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "hz4Qw6LGiYDpqrOxM89VvGu65Zl4k48fivVKU16BBzI="
|
||||
|
||||
ota:
|
||||
password: "918e5604e0036edccbbb261ce8a7ab4b"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.194
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "KhFkbQXGGRoU"
|
||||
|
||||
captive_portal:
|
||||
|
||||
### temp sensor
|
||||
### switch für releae von garage
|
||||
### audio connector auch switch???
|
||||
|
||||
switch:
|
||||
#D1 Relais für den Türöffner
|
||||
- platform: gpio
|
||||
pin: D1
|
||||
id: relay
|
||||
name: "Tablet laden"
|
||||
icon: "mdi:BatteryChargingWirelessOutline"
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
184
esphome/og-fl-us-room.yaml
Normal file
184
esphome/og-fl-us-room.yaml
Normal file
@@ -0,0 +1,184 @@
|
||||
substitutions:
|
||||
devicename: og-fl-us-room
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "7e132689c324a0f7de57d556a0e18e72"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.94
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "RL24sDzw4lL6"
|
||||
|
||||
captive_portal:
|
||||
|
||||
### temp sensor
|
||||
### switch für releae von garage
|
||||
### audio connector auch switch???
|
||||
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: RGB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 01"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 0
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 02"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 1
|
||||
to: 1
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 03"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 2
|
||||
to: 2
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 04"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 3
|
||||
to: 3
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 05"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 4
|
||||
to: 4
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 06"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 5
|
||||
to: 5
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 07"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 6
|
||||
to: 6
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 08"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 7
|
||||
to: 7
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 09"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 8
|
||||
to: 8
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 10"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 9
|
||||
to: 9
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 11"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 10
|
||||
to: 10
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 12"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 11
|
||||
to: 11
|
||||
|
||||
binary_sensor:
|
||||
#D2 ist der Soundchip für die Türklingel
|
||||
- platform: gpio
|
||||
pin: D2
|
||||
name: "Haustür Klingel"
|
||||
device_class: sound
|
||||
filters:
|
||||
- delayed_off: 5s
|
||||
|
||||
switch:
|
||||
#D1 Relais für den Türöffner
|
||||
- platform: gpio
|
||||
pin: D1
|
||||
id: relay
|
||||
name: "Haustür Türdrücker"
|
||||
icon: "mdi:door"
|
||||
on_turn_on:
|
||||
- delay: 3000ms
|
||||
- switch.turn_off: relay
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
# D3 Temp Sensor DS18b20
|
||||
# Temp_Flur
|
||||
dallas:
|
||||
- pin: D3
|
||||
|
||||
sensor:
|
||||
- platform: dallas
|
||||
address: 0xDB0316A35722FF28
|
||||
name: "${devicename} Temperature"
|
||||
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
71
esphome/og-ku-co-senseo.yaml
Normal file
71
esphome/og-ku-co-senseo.yaml
Normal file
@@ -0,0 +1,71 @@
|
||||
substitutions:
|
||||
devicename: og-ku-co-senseo
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "2e625bc7fcf9ba632a5ff1008538831f"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
# Optional manual IP
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.139
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "anO1GGY2nsmz"
|
||||
|
||||
captive_portal:
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
- platform: gpio
|
||||
pin: D2
|
||||
id: onecup
|
||||
name: "${devicename} 1cup"
|
||||
icon: "mdi:coffee"
|
||||
on_turn_on:
|
||||
- delay: 500ms
|
||||
- switch.turn_off: onecup
|
||||
- platform: gpio
|
||||
pin: D3
|
||||
id: twocup
|
||||
name: "${devicename} 2cup"
|
||||
icon: "mdi:coffee"
|
||||
on_turn_on:
|
||||
- delay: 500ms
|
||||
- switch.turn_off: twocup
|
||||
- platform: gpio
|
||||
pin: D4
|
||||
id: pot
|
||||
name: "${devicename} pot"
|
||||
icon: "mdi:coffee-maker"
|
||||
on_turn_on:
|
||||
- delay: 500ms
|
||||
- switch.turn_off: pot
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
169
esphome/og-ku-us-room.yaml
Normal file
169
esphome/og-ku-us-room.yaml
Normal file
@@ -0,0 +1,169 @@
|
||||
substitutions:
|
||||
devicename: og-ku-us-room
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "e997f9bb54cc19ba96870868471dd560"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.99
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "Cio9y5YAWiBT"
|
||||
|
||||
captive_portal:
|
||||
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 15
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 01"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 14
|
||||
to: 14
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 02"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 13
|
||||
to: 13
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 03"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 12
|
||||
to: 12
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 04"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 11
|
||||
to: 11
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 05"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 10
|
||||
to: 10
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 06"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 9
|
||||
to: 9
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 07"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 8
|
||||
to: 8
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 08"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 7
|
||||
to: 7
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 09"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 6
|
||||
to: 6
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 10"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 5
|
||||
to: 5
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 11"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 4
|
||||
to: 4
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 12"
|
||||
segments:
|
||||
# Use first 12 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 3
|
||||
to: 3
|
||||
|
||||
- platform: partition
|
||||
name: "Msg Light"
|
||||
segments:
|
||||
# Use LEDs 13-15 from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 2
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin:
|
||||
number: D3
|
||||
mode: INPUT_PULLUP
|
||||
name: "${devicename} Radar Sensor"
|
||||
device_class: motion
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
78
esphome/og-sz-le-ambi.yaml
Normal file
78
esphome/og-sz-le-ambi.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-sz-le-ambi
|
||||
wledname: WLED-SZ-Ambi
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "wSBQeBM9DjwLg1yUIU0JxbYVlTQvF5/oFTi4H9OIEo4="
|
||||
|
||||
ota:
|
||||
password: "63dc1bff4f6cc76273ea1fb9f3d17a81"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.37
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "lftIGuzLvTW1"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 38
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 37
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
94
esphome/og-sz-le-bett-l.yaml
Normal file
94
esphome/og-sz-le-bett-l.yaml
Normal file
@@ -0,0 +1,94 @@
|
||||
substitutions:
|
||||
devicename: og-sz-le-bett-l
|
||||
wledname: WLED-SZ-Bett-L
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "qSnmhRiXNnS0LY9mTpvpcX980ZkFalMaxVIR8Vf1yaM="
|
||||
|
||||
ota:
|
||||
password: "6f81ed36e808ec92426a873fc317568d"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.49
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "6GDUC8n39JCP"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 11
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
# Example configuration entry
|
||||
text_sensor:
|
||||
- platform: wifi_info
|
||||
ip_address:
|
||||
name: "${devicename} Wi-Fi IP Address"
|
||||
ssid:
|
||||
name: "${devicename} Wi-Fi Connected SSID"
|
||||
bssid:
|
||||
name: "${devicename} Wi-Fi Connected BSSID"
|
||||
mac_address:
|
||||
name: "${devicename} Wi-Fi Mac Address"
|
||||
scan_results:
|
||||
name: "${devicename} Wi-Fi Latest Scan Results"
|
||||
- platform: version
|
||||
name: "${devicename} Version"
|
||||
78
esphome/og-sz-le-bett-r.yaml
Normal file
78
esphome/og-sz-le-bett-r.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-sz-le-bett-r
|
||||
wledname: WLED-SZ-Bett-R
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "ILZ93o0U0EYla+y33L3nCTBzCzDc5WHniRb2xYXqjj0="
|
||||
|
||||
ota:
|
||||
password: "c66c398cf5380063f19498fdffdcbb85"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.50
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "1JPPqwdCXcZr"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 11
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
247
esphome/og-sz-le-magic.yaml
Normal file
247
esphome/og-sz-le-magic.yaml
Normal file
@@ -0,0 +1,247 @@
|
||||
substitutions:
|
||||
device_name: og-sz-le-magic
|
||||
friendly_name: WLED-SZ-magic
|
||||
|
||||
esphome:
|
||||
name: ${device_name}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "SFVKZveCeQ7nvwQbBl4Nn0KKbGz6ldlmzPEqs/+QIpA="
|
||||
|
||||
ota:
|
||||
password: "9bd950aa91bf6ae5a69a7070e6c58072"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.51
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${device_name}"
|
||||
password: "6f9jvXdAKO4E"
|
||||
|
||||
# Enable web server
|
||||
web_server:
|
||||
port: 80
|
||||
|
||||
remote_receiver:
|
||||
pin: GPIO4
|
||||
dump: all
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
binary_sensor:
|
||||
- platform: remote_receiver
|
||||
name: "Remote ON"
|
||||
raw:
|
||||
code: [ -9052, 4434, -636, 523, -636, 492, -603, 526, -608, 522, -606, 523, -608, 520, -606, 522, -600, 529, -610, 1594, -633, 1602, -638, 1595, -631, 1601, -628, 1606, -635, 1600, -636, 1595, -637, 1597, -634, 1600, -637, 521, -604, 1600, -637, 1596, -638, 520, -609, 521, -606, 523, -634, 494, -610, 518, -608, 1597, -638, 520, -607, 521, -607, 1597, -635, 1598, -636, 1599, -665, 1568, -644 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on: ${device_name}
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote OFF"
|
||||
raw:
|
||||
code: [ -9008, 4482, -600, 531, -565, 564, -591, 536, -568, 564, -593, 537, -597, 529, -597, 531, -596, 534, -596, 1639, -597, 1635, -597, 1638, -598, 1638, -591, 1644, -568, 1665, -592, 1642, -566, 1670, -592, 1640, -595, 1639, -592, 1643, -567, 1665, -596, 1640, -597, 532, -595, 533, -594, 536, -596, 534, -597, 530, -567, 563, -568, 561, -599, 529, -568, 1667, -593, 1642, -591, 1642, -597 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_off: ${device_name}
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote BRIGHTUP"
|
||||
raw:
|
||||
code: [ -8998, 4475, -592, 533, -594, 535, -593, 535, -591, 536, -591, 536, -591, 537, -591, 535, -591, 536, -593, 1639, -592, 1638, -591, 1639, -589, 1640, -592, 1637, -593, 1638, -593, 1638, -591, 1637, -593, 1638, -593, 534, -592, 535, -594, 1636, -594, 535, -590, 537, -592, 535, -592, 536, -592, 534, -593, 1635, -594, 1639, -591, 536, -591, 1639, -591, 1639, -591, 1640, -591, 1639, -592 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.dim_relative:
|
||||
id: ${device_name}
|
||||
relative_brightness: 5%
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote BRIGHTDOWN"
|
||||
raw:
|
||||
code: [ -9000, 4476, -589, 537, -593, 533, -593, 536, -590, 536, -593, 536, -592, 535, -592, 535, -592, 535, -593, 1638, -593, 1638, -592, 1637, -591, 1640, -591, 1638, -592, 1639, -592, 1638, -592, 1639, -592, 1637, -591, 538, -592, 1637, -592, 1639, -592, 1637, -593, 536, -591, 536, -591, 536, -593, 534, -592, 1639, -591, 537, -592, 536, -590, 535, -593, 1637, -593, 1638, -594, 1636, -593 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.dim_relative:
|
||||
id: ${device_name}
|
||||
relative_brightness: -5%
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote RED"
|
||||
raw:
|
||||
code: [ -9011, 4465, -600, 558, -574, 528, -597, 556, -573, 555, -573, 524, -603, 556, -571, 530, -596, 558, -568, 1635, -597, 1633, -601, 1630, -603, 1628, -607, 1625, -596, 1633, -607, 1625, -605, 1626, -602, 1629, -600, 529, -602, 555, -592, 1607, -598, 1635, -634, 523, -572, 556, -574, 553, -573, 527, -596, 1635, -598, 1631, -596, 535, -599, 556, -567, 1633, -603, 1629, -604, 1627, -597 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: ${device_name}
|
||||
red: 100%
|
||||
green: 0%
|
||||
blue: 0%
|
||||
white: 0%
|
||||
effect: None
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote GREEN"
|
||||
raw:
|
||||
code: [ -9042, 4433, -669, 488, -611, 517, -611, 517, -636, 492, -608, 519, -609, 518, -638, 490, -611, 517, -634, 1567, -636, 1596, -663, 1569, -633, 1597, -668, 1565, -637, 1591, -636, 1597, -637, 1592, -638, 1595, -641, 1588, -666, 492, -641, 1562, -665, 1565, -640, 518, -605, 522, -604, 523, -610, 518, -606, 522, -613, 1589, -633, 524, -610, 518, -604, 1598, -627, 1603, -641, 1591, -640 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: ${device_name}
|
||||
red: 0%
|
||||
green: 100%
|
||||
blue: 0%
|
||||
white: 0%
|
||||
effect: None
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote BLUE"
|
||||
raw:
|
||||
code: [ -9041, 4434, -637, 521, -632, 494, -608, 521, -609, 519, -635, 493, -604, 524, -604, 523, -607, 521, -607, 1595, -664, 1567, -667, 1565, -664, 1568, -634, 1596, -635, 1598, -635, 1594, -669, 1566, -663, 1566, -634, 522, -637, 490, -607, 522, -636, 1565, -639, 519, -640, 487, -641, 487, -636, 491, -636, 1568, -666, 1564, -664, 1566, -666, 492, -640, 1562, -668, 1564, -671, 1559, -667 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: ${device_name}
|
||||
red: 0%
|
||||
green: 0%
|
||||
blue: 100%
|
||||
white: 0%
|
||||
effect: None
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote WHITE"
|
||||
raw:
|
||||
code: [ -9057, 4433, -634, 524, -607, 523, -607, 521, -604, 525, -609, 520, -610, 518, -638, 491, -609, 521, -607, 1595, -637, 1595, -637, 1596, -640, 1594, -628, 1604, -638, 1596, -635, 1598, -637, 1593, -640, 1595, -635, 522, -606, 1600, -632, 524, -603, 1601, -637, 520, -609, 521, -607, 521, -604, 526, -610, 1593, -631, 527, -601, 1603, -661, 499, -607, 1593, -638, 1595, -666, 1567, -636 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: ${device_name}
|
||||
red: 0%
|
||||
green: 0%
|
||||
blue: 0%
|
||||
white: 100%
|
||||
effect: None
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote FLASH"
|
||||
raw:
|
||||
code: [ -9011, 4485, -592, 537, -594, 536, -592, 536, -594, 537, -593, 537, -593, 536, -593, 537, -593, 536, -593, 1641, -594, 1642, -593, 1642, -592, 1644, -592, 1642, -592, 1644, -591, 1642, -594, 1640, -596, 1639, -594, 536, -594, 1641, -593, 1642, -593, 536, -593, 537, -594, 1641, -592, 537, -594, 536, -593, 1641, -594, 536, -594, 534, -597, 1639, -594, 1641, -592, 537, -593, 1643, -592 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: ${device_name}
|
||||
effect: "In Alarm"
|
||||
|
||||
- platform: remote_receiver
|
||||
name: "Remote STROBE"
|
||||
raw:
|
||||
code: [ -8971, 4511, -559, 565, -562, 568, -561, 565, -562, 566, -563, 564, -563, 567, -563, 564, -562, 565, -563, 1670, -563, 1668, -562, 1671, -560, 1671, -563, 1670, -560, 1669, -565, 1667, -563, 1673, -558, 567, -561, 564, -562, 566, -565, 563, -561, 569, -562, 567, -585, 540, -563, 571, -558, 1669, -561, 1671, -560, 1669, -563, 1670, -561, 1670, -564, 1668, -561, 1671, -560, 1672, -562 ]
|
||||
on_press:
|
||||
then:
|
||||
- light.turn_on:
|
||||
id: ${device_name}
|
||||
effect: "Default Strobe"
|
||||
|
||||
light:
|
||||
- platform: rgbw
|
||||
name: ${friendly_name} # Put the name that you want to see in Home Assistant.
|
||||
id: ${device_name}
|
||||
red: red_channel
|
||||
green: green_channel
|
||||
blue: blue_channel
|
||||
white: white_channel
|
||||
effects: # Add few effects : Slow and fast random colors and an "in alarm" mode.
|
||||
- random:
|
||||
name: "Slow Random Colors"
|
||||
transition_length: 30s
|
||||
update_interval: 30s
|
||||
- random:
|
||||
name: "Fast Random Colors"
|
||||
transition_length: 4s
|
||||
update_interval: 5s
|
||||
- strobe:
|
||||
name: Default Strobe
|
||||
- strobe:
|
||||
name: In Alarm
|
||||
colors:
|
||||
- state: True
|
||||
brightness: 100%
|
||||
white: 0%
|
||||
red: 100%
|
||||
blue: 0%
|
||||
green: 0%
|
||||
duration: 150ms
|
||||
- state: False
|
||||
duration: 100ms
|
||||
- state: True
|
||||
brightness: 100%
|
||||
white: 0%
|
||||
red: 100%
|
||||
blue: 0%
|
||||
green: 0%
|
||||
duration: 150ms
|
||||
- state: False
|
||||
duration: 100ms
|
||||
- state: True
|
||||
brightness: 100%
|
||||
white: 0%
|
||||
red: 0%
|
||||
blue: 100%
|
||||
green: 0%
|
||||
duration: 150ms
|
||||
- state: False
|
||||
duration: 100ms
|
||||
- state: True
|
||||
brightness: 100%
|
||||
white: 0%
|
||||
red: 0%
|
||||
blue: 100%
|
||||
green: 0%
|
||||
duration: 150ms
|
||||
- state: False
|
||||
duration: 100ms
|
||||
|
||||
output:
|
||||
- platform: esp8266_pwm
|
||||
id: red_channel
|
||||
pin: GPIO12
|
||||
- platform: esp8266_pwm
|
||||
id: green_channel
|
||||
pin: GPIO5
|
||||
- platform: esp8266_pwm
|
||||
id: blue_channel
|
||||
pin: GPIO13
|
||||
- platform: esp8266_pwm
|
||||
id: white_channel
|
||||
pin: GPIO15
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${device_name} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${device_name} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${device_name} Uptime"
|
||||
update_interval: 60s
|
||||
301
esphome/og-sz-us-room.yaml
Normal file
301
esphome/og-sz-us-room.yaml
Normal file
@@ -0,0 +1,301 @@
|
||||
substitutions:
|
||||
devicename: og-sz-us-room
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "78f0e056acef6b72d384251c368455f7"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.92
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "Q80sOv2BQybI"
|
||||
|
||||
captive_portal:
|
||||
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: RGB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 01"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 0
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 02"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 1
|
||||
to: 1
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 03"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 2
|
||||
to: 2
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 04"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 3
|
||||
to: 3
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 05"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 4
|
||||
to: 4
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 06"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 5
|
||||
to: 5
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 07"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 6
|
||||
to: 6
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 08"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 7
|
||||
to: 7
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 09"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 8
|
||||
to: 8
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 10"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 9
|
||||
to: 9
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 11"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 10
|
||||
to: 10
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 12"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 11
|
||||
to: 11
|
||||
|
||||
status_led:
|
||||
pin:
|
||||
number: GPIO2
|
||||
inverted: True
|
||||
|
||||
globals:
|
||||
- id: initial_zero
|
||||
type: float
|
||||
restore_value: yes
|
||||
# NOTE: make sure to align this value to the one used in "calibrate_linear" below!
|
||||
#initial_value: '-481989'
|
||||
initial_value: '-906042'
|
||||
|
||||
- id: auto_tare_enabled
|
||||
type: bool
|
||||
restore_value: yes
|
||||
initial_value: 'true'
|
||||
|
||||
- id: auto_tare_difference
|
||||
type: float
|
||||
restore_value: yes
|
||||
initial_value: '0'
|
||||
|
||||
- id: manual_tare_flag
|
||||
type: bool
|
||||
restore_value: no
|
||||
initial_value: 'false'
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
## Switch to enable/disable the auto tare feature
|
||||
- platform: template
|
||||
id: smart_scale_continuous_tare_enabled
|
||||
name: "Smart Scale Continuous Tare Enabled"
|
||||
lambda: |-
|
||||
return id(auto_tare_enabled);
|
||||
turn_on_action:
|
||||
- lambda: |-
|
||||
id(auto_tare_enabled) = true;
|
||||
turn_off_action:
|
||||
- lambda: |-
|
||||
id(auto_tare_enabled) = false;
|
||||
|
||||
## Switch used to initiate a manual tare
|
||||
- platform: template
|
||||
id: smart_scale_manual_tare_action_switch
|
||||
name: "Smart Scale Manual Tare Action"
|
||||
lambda: |-
|
||||
return id(manual_tare_flag);
|
||||
turn_on_action:
|
||||
- lambda: |-
|
||||
id(auto_tare_difference) = id(initial_zero) - id(smart_scale_hx711_value_raw).state;
|
||||
- switch.turn_off: smart_scale_manual_tare_action_switch
|
||||
turn_off_action:
|
||||
- lambda: |-
|
||||
id(manual_tare_flag) = false;
|
||||
## Sensor Configuration ##
|
||||
sensor:
|
||||
# template sensors from global variables
|
||||
- platform: template
|
||||
id: smart_scale_initial_zero
|
||||
name: "Smart Scale Initial Zero"
|
||||
lambda: |-
|
||||
return id(initial_zero);
|
||||
update_interval: 1s
|
||||
|
||||
- platform: template
|
||||
id: smart_scale_auto_tare_difference
|
||||
name: "Smart Scale Auto Tare Difference"
|
||||
lambda: |-
|
||||
return id(auto_tare_difference);
|
||||
update_interval: 1s
|
||||
|
||||
# sensors imported from home assistant
|
||||
- platform: homeassistant
|
||||
id: homeassistant_initial_zero
|
||||
entity_id: input_number.smart_scale_initial_zero
|
||||
on_value:
|
||||
then:
|
||||
- lambda: |-
|
||||
id(initial_zero) = x;
|
||||
|
||||
# RAW Scale input
|
||||
- platform: hx711
|
||||
id: smart_scale_hx711_value_raw
|
||||
internal: True
|
||||
dout_pin: D2
|
||||
clk_pin: D3
|
||||
gain: 128
|
||||
unit_of_measurement: kg
|
||||
accuracy_decimals: 3
|
||||
update_interval: 0.2s
|
||||
filters:
|
||||
- sliding_window_moving_average:
|
||||
window_size: 3
|
||||
send_every: 1
|
||||
on_value:
|
||||
then:
|
||||
- sensor.template.publish:
|
||||
id: smart_scale_hx711_value
|
||||
state: !lambda 'return id(smart_scale_hx711_value_raw).state;'
|
||||
- if:
|
||||
condition:
|
||||
and:
|
||||
- lambda: 'return id(auto_tare_enabled);'
|
||||
# current smart scale value is below approx. 10KG (raw value -275743) aka nobody is standing on the scale
|
||||
- lambda: 'return id(smart_scale_hx711_value).state < 10.0;'
|
||||
then:
|
||||
- if:
|
||||
condition:
|
||||
# current raw scale value is below expected zero value
|
||||
- lambda: 'return id(smart_scale_hx711_value_raw).state < (id(initial_zero) - id(auto_tare_difference));'
|
||||
then:
|
||||
# INcrease Auto-Tare offset to slowly align real zero value with expected zero value
|
||||
- lambda: |-
|
||||
id(auto_tare_difference) += 10;
|
||||
else:
|
||||
# DEcrease Auto-Tare offset to slowly align real zero value with expected zero value
|
||||
- lambda: |-
|
||||
id(auto_tare_difference) -= 10;
|
||||
|
||||
# Mapped value to KG
|
||||
- platform: template
|
||||
id: smart_scale_hx711_value
|
||||
name: "Smart Scale HX711 Value"
|
||||
internal: False
|
||||
filters:
|
||||
# apply auto_tare difference
|
||||
- lambda: 'return x + id(auto_tare_difference);'
|
||||
# apply rough calibration
|
||||
- calibrate_linear:
|
||||
# retrieve these values by evaluating the raw values with loads of known mass.
|
||||
# note that a bigger difference between measurements usually results in higher resolution,
|
||||
# so measure 0 Kg and the highest known mass you have (like f.ex. your own weight, measured by a normal scale with good accuracy)
|
||||
#- 481989 -> 0
|
||||
#- 1339163 -> 88.3
|
||||
- 906042 -> 0
|
||||
- 903647 -> 0.523
|
||||
- 866398 -> 1.027
|
||||
# map values below 0.1 to 0 (to decrease value changes due to random fluctuation)
|
||||
- lambda: |-
|
||||
if (x <= 0.1) {
|
||||
return 0.0;
|
||||
} else {
|
||||
return x;
|
||||
}
|
||||
|
||||
unit_of_measurement: kg
|
||||
accuracy_decimals: 2
|
||||
update_interval: 0.2s
|
||||
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
78
esphome/og-te-le-ambi.yaml
Normal file
78
esphome/og-te-le-ambi.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-te-le-ambi
|
||||
wledname: WLED-WZ-Ambi
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "k+OJTmte6ZfB9cJijUWUTt0THVvzYA7A0S3Xtc8DcU4="
|
||||
|
||||
ota:
|
||||
password: "6c3039d12b4f3fcfc36cabfbced53ff6"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.47
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "xxuctjzLMaJg"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 150
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 149
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
311
esphome/og-te-ro-sun.yaml
Normal file
311
esphome/og-te-ro-sun.yaml
Normal file
@@ -0,0 +1,311 @@
|
||||
substitutions:
|
||||
devicename: og-te-ro-sun
|
||||
friendly_name: og-te-ro-sun
|
||||
devicestring: Terrasse Rollo
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
esp8266_restore_from_flash: true
|
||||
on_boot:
|
||||
priority: 550.0
|
||||
then:
|
||||
# 1. Set stepper current position as stored in memory
|
||||
# 2. Present down value set for down_position (where is "down")
|
||||
# 3. If it is the same as down position, update the state of the switch
|
||||
- lambda: |-
|
||||
id(my_stepper).report_position(id(last_known_position));
|
||||
id(bed_down_pos).publish_state(id(down_position));
|
||||
if (id(last_known_position)==id(down_position)){
|
||||
id(rollerblind_bed_down).publish_state(true);
|
||||
}
|
||||
|
||||
globals:
|
||||
# The actual position of the rollerblind
|
||||
- id: last_known_position
|
||||
type: int
|
||||
restore_value: true
|
||||
initial_value: '1'
|
||||
# The number of steps to reach to the down position of the rollerblind
|
||||
- id: down_position
|
||||
type: int
|
||||
restore_value: true
|
||||
initial_value: '0'
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
level: DEBUG
|
||||
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "1b5VG2dp8E+p1b7tlxLILWbvArqOVdnlh0+/yZ9Irms="
|
||||
|
||||
ota:
|
||||
password: "ee384bfbcfc7b49c8d6e6632c19a8a36"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.195
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "iyoRMuoMH8Wi"
|
||||
|
||||
captive_portal:
|
||||
|
||||
stepper:
|
||||
- platform: uln2003
|
||||
id: my_stepper
|
||||
# Reversed order as it turned the wrong way
|
||||
# pin_a: D4
|
||||
# pin_b: D2
|
||||
# pin_c: D3
|
||||
# pin_d: D1
|
||||
|
||||
pin_a: D1
|
||||
pin_b: D2
|
||||
pin_c: D3
|
||||
pin_d: D4
|
||||
max_speed: 675 steps/s
|
||||
sleep_when_done: true
|
||||
|
||||
# Optional:
|
||||
acceleration: inf
|
||||
deceleration: inf
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: template
|
||||
name: $devicestring Down position
|
||||
id: bed_down_pos
|
||||
|
||||
- platform: template
|
||||
name: $devicestring Percentage position
|
||||
id: bed_perc_pos
|
||||
|
||||
- platform: template
|
||||
name: $devicestring Last position
|
||||
id: bed_last_pos
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
# Save current position to 0
|
||||
- platform: template
|
||||
name: $devicestring Save Top Position
|
||||
id: reset_switch
|
||||
turn_on_action:
|
||||
then:
|
||||
# Reset DOWN
|
||||
- switch.template.publish:
|
||||
id: move_down
|
||||
state: OFF
|
||||
# Reset UP
|
||||
- switch.template.publish:
|
||||
id: move_up
|
||||
state: OFF
|
||||
# Reset stepper position
|
||||
- stepper.report_position:
|
||||
id: my_stepper
|
||||
position: 0
|
||||
- stepper.set_target:
|
||||
id: my_stepper
|
||||
target: 0
|
||||
# Save global variable for reboot
|
||||
- lambda: |-
|
||||
id(last_known_position) = 0;
|
||||
# Save current position to max down
|
||||
- platform: template
|
||||
name: $devicestring Save Down Position
|
||||
id: save_down_switch
|
||||
turn_on_action:
|
||||
then:
|
||||
# Reset DOWN
|
||||
- switch.template.publish:
|
||||
id: move_down
|
||||
state: OFF
|
||||
# Reset UP
|
||||
- switch.template.publish:
|
||||
id: move_up
|
||||
state: OFF
|
||||
# Save global variable for reboot down_position
|
||||
# Save current position
|
||||
# Update sensor with stored value
|
||||
# Set position as in DOWN state (switch)
|
||||
- lambda: |-
|
||||
id(down_position) = id(my_stepper).current_position;
|
||||
id(last_known_position) = id(down_position);
|
||||
id(bed_down_pos).publish_state(id(down_position));
|
||||
id(rollerblind_bed_down).publish_state(true);
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state((id(down_position) / id(last_known_position)) * 100);
|
||||
- logger.log:
|
||||
format: "Saving down position %.1i"
|
||||
args: [ 'id(down_position)']
|
||||
|
||||
- platform: template
|
||||
name: $devicestring Down
|
||||
id: move_down
|
||||
turn_on_action:
|
||||
# Enable switch
|
||||
- switch.template.publish:
|
||||
id: move_down
|
||||
state: ON
|
||||
# Reset back
|
||||
- switch.template.publish:
|
||||
id: move_up
|
||||
state: OFF
|
||||
# Reset master
|
||||
- switch.template.publish:
|
||||
id: rollerblind_bed_down
|
||||
state: OFF
|
||||
# Set current position to last_known
|
||||
- lambda: |-
|
||||
id(down_position) = id(my_stepper).current_position;
|
||||
id(last_known_position) = id(down_position);
|
||||
id(bed_down_pos).publish_state(id(down_position));
|
||||
id(rollerblind_bed_down).publish_state(true);
|
||||
id(last_known_position) = id(my_stepper).current_position;
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state((id(down_position) / id(last_known_position)) * 100);
|
||||
# Set to move long
|
||||
- lambda: |-
|
||||
id(my_stepper).set_target(1000000);
|
||||
turn_off_action:
|
||||
- switch.template.publish:
|
||||
id: move_down
|
||||
state: OFF
|
||||
# Stop motor and report position
|
||||
- lambda: |-
|
||||
id(last_known_position) = id(my_stepper).current_position;
|
||||
id(my_stepper).set_target(id(last_known_position));
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state((id(down_position) / id(last_known_position)) * 100);
|
||||
- logger.log:
|
||||
format: "Current position (down) %.1i"
|
||||
args: [ 'id(last_known_position)']
|
||||
|
||||
- platform: template
|
||||
name: $devicestring Up
|
||||
id: move_up
|
||||
turn_on_action:
|
||||
# Enable switch
|
||||
- switch.template.publish:
|
||||
id: move_up
|
||||
state: ON
|
||||
# Reset down
|
||||
- switch.template.publish:
|
||||
id: move_down
|
||||
state: OFF
|
||||
# Reset master
|
||||
- switch.template.publish:
|
||||
id: rollerblind_bed_down
|
||||
state: OFF
|
||||
# Set current position to last_known
|
||||
- lambda: |-
|
||||
id(last_known_position) = id(my_stepper).current_position;
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state((id(down_position) / id(last_known_position)) * 100);
|
||||
# Set to move long
|
||||
- lambda: |-
|
||||
id(my_stepper).set_target(-1000000);
|
||||
turn_off_action:
|
||||
- switch.template.publish:
|
||||
id: move_up
|
||||
state: OFF
|
||||
# Stop motor and report position
|
||||
- lambda: |-
|
||||
id(last_known_position) = id(my_stepper).current_position;
|
||||
id(my_stepper).set_target(id(last_known_position));
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state((id(down_position) / id(last_known_position)) * 100);
|
||||
- logger.log:
|
||||
format: "Current position (up) %.1i"
|
||||
args: [ 'id(last_known_position)']
|
||||
|
||||
- platform: template
|
||||
name: $devicestring Closed
|
||||
id: rollerblind_bed_down
|
||||
turn_on_action:
|
||||
# Reset DOWN and UP manual
|
||||
- switch.template.publish:
|
||||
id: move_up
|
||||
state: OFF
|
||||
- switch.template.publish:
|
||||
id: move_down
|
||||
state: OFF
|
||||
# Enable switch
|
||||
- switch.template.publish:
|
||||
id: rollerblind_bed_down
|
||||
state: ON
|
||||
# Set last_known_position to the final position
|
||||
# It might not necessarily be the final position and
|
||||
# Can be a challenge if power breaks upon moving
|
||||
- lambda: |-
|
||||
id(last_known_position) = id(down_position);
|
||||
id(my_stepper).set_target(id(down_position));
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state(round((id(down_position) / id(last_known_position)) * 100));
|
||||
turn_off_action:
|
||||
- switch.template.publish:
|
||||
id: rollerblind_bed_down
|
||||
state: OFF
|
||||
# Set last_known_position to the start position (0)
|
||||
# It might not necessarily be the start position and
|
||||
# Can be a challenge if power breaks upon moving
|
||||
- lambda: |-
|
||||
id(last_known_position) = 0;
|
||||
id(my_stepper).set_target(0);
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state(round((id(down_position) / id(last_known_position)) * 100));
|
||||
|
||||
# On a regular basis store the position of the roller blind
|
||||
# Don't do it too frequently as it might impact the move of the blind
|
||||
time:
|
||||
- platform: sntp
|
||||
id: sntp_time
|
||||
on_time:
|
||||
# Every 5 minutes
|
||||
- seconds: 0
|
||||
minutes: /5
|
||||
then:
|
||||
- lambda: |-
|
||||
id(last_known_position) = id(my_stepper).current_position;
|
||||
id(bed_last_pos).publish_state(id(last_known_position));
|
||||
# id(bed_perc_pos).publish_state((id(down_position) / id(last_known_position)) * 100);
|
||||
|
||||
# Example configuration entry
|
||||
cover:
|
||||
- platform: template
|
||||
name: "OG_te_RO_sun"
|
||||
lambda: |-
|
||||
if (id(rollerblind_bed_down).state) {
|
||||
return COVER_CLOSED;
|
||||
} else {
|
||||
return COVER_OPEN;
|
||||
}
|
||||
open_action:
|
||||
- switch.turn_off: rollerblind_bed_down
|
||||
close_action:
|
||||
- switch.turn_on: rollerblind_bed_down
|
||||
stop_action:
|
||||
- switch.turn_off: move_up
|
||||
- switch.turn_off: move_down
|
||||
optimistic: true
|
||||
140
esphome/og-te-us-weather.yaml
Normal file
140
esphome/og-te-us-weather.yaml
Normal file
@@ -0,0 +1,140 @@
|
||||
substitutions:
|
||||
devicename: og-te-us-weather
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
on_boot:
|
||||
then:
|
||||
# - rtttl.play: 'MissionImp:d=16,o=6,b=95:32d,32d#,32d,32d#,32d,32d#,32d,32d#,32d,32d,32d#,32e,32f,32f#,32g,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,a#,g,2d,32p,a#,g,2c#,32p,a#,g,2c,a#5,8c,2p,32p,a#5,g5,2f#,32p,a#5,g5,2f,32p,a#5,g5,2e,d#,8d'
|
||||
# - rtttl.play: 'mario:d=4,o=5,b=100:16e6,16e6,32p,8e6,16c6,8e6,8g6,8p,8g,8p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,16p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16c7,16p,16c7,16c7,p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16d#6,8p,16d6,8p,16c6'
|
||||
# - rtttl.play: 'back:d=4,o=6,b=200:4g4,4a#5,4d#5,4a#4,4a#5,4g4,4a#5,4d#5,4a#5,4d#6,4a#4,32g4,4g6,1a#.6,2d7,2g.6,2f.6,4g6,1a#.6,2d7,2g6,4c7,2a#.6,4g6,1a#.6,2d7,2g.6,1f.6,2g.6,2a#.6,2d7,2c.7,2a#.6,4g6,1a#.6,2d7,2g.6,2f.6,4g6,1a#.6,2d7,'
|
||||
- rtttl.play: 'BackToTheFuture:d=4,o=5,b=160:p,8c.,16p,g,16p,16c.6,16p,a#.,16p,16a,16p,16g,16p,8a,16p,8g,16p,8f,16p,1g.,1p,g.,16p,c.,16p,2f#.,16p,32g.,32p,32a.,32p,8g,32p,8e,32p,8c,32p,f#,16p,32g.,32p,32a.,32p,8g.,32p,8d.,32p,8g.,32p,8d.6,32p,d6,16p,c#6,16p,32b.,32p,32c#.6,32p,2d6'
|
||||
# - rtttl.play: 'PlayedAl:d=4,o=5,b=355:8g#,p,g#,8p,8f,2g#,8p,8g#,p,g#,8p,8f,g#.,f,8g#,g,g,8p,8d#,2g,8p,8g,p,g,8p,8d#,g.,d#,8g,d#,d#,8p,8c,2d#,8p,8d#,p,d#,8p,8c,d#.,c,8d#,f,c#6,8p,8f,2c#6,8p,8f,p,c#6,8p,8f,c6,8p,a#,8g#,g#,g#,8p,8f,2g#,8p,8g#,p,g#,8p,8f,g#.'
|
||||
# - rtttl.play: 'Ghostbus:d=16,o=5,b=112:g,g,8b,8g,8a,4f.,g,g,g,g,8f,4g.,g,g,8b,8g,8a,4f.,g,g,g,g,8f,8a,8g,4d.,g,g,8b,8g,8a,4f.,g,g,g,g,8f,4g.';
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
services:
|
||||
- service: play_rtttl
|
||||
variables:
|
||||
song_str: string
|
||||
then:
|
||||
- rtttl.play:
|
||||
rtttl: !lambda 'return song_str;'
|
||||
|
||||
ota:
|
||||
password: "85149b960ad66890af767aef382e81d3"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.91
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "kADB2x6olwVd"
|
||||
|
||||
captive_portal:
|
||||
|
||||
# analog: humana
|
||||
|
||||
# HC-SR04
|
||||
# GPIO → Trigger: D7
|
||||
# GPIO ← Echo, 5V: D8
|
||||
|
||||
# Pumpe Relais D4 Garage
|
||||
|
||||
# Wasserverbrauch D5 Pulse
|
||||
|
||||
# SDS011
|
||||
# GPIO ← TX: D3 BLUE
|
||||
# GPIO → RX(optional): D2 GREEN/WHITE
|
||||
uart:
|
||||
rx_pin: D2
|
||||
tx_pin: D3
|
||||
baud_rate: 9600
|
||||
|
||||
# D1 dallas
|
||||
# Temp_Sonne
|
||||
# Temp_Schatten
|
||||
dallas:
|
||||
- pin: D1
|
||||
|
||||
sensor:
|
||||
- platform: sds011
|
||||
pm_2_5:
|
||||
name: "${devicename} PM <2.5µm Concentration"
|
||||
pm_10_0:
|
||||
name: "${devicename} PM <10.0µm Concentration"
|
||||
update_interval: 5min
|
||||
|
||||
- platform: dallas
|
||||
address: 0x640516a331ceff28
|
||||
name: "${devicename} Sun"
|
||||
|
||||
- platform: dallas
|
||||
address: 0x160416a2c85bff28
|
||||
name: "${devicename} Shade"
|
||||
#Logs auslesen
|
||||
|
||||
# DHT11/12/22 SONOFF2301/7021
|
||||
# temp_hum
|
||||
# D0 / DHT22
|
||||
- platform: dht
|
||||
pin: D0
|
||||
temperature:
|
||||
name: "${devicename} Temperature"
|
||||
humidity:
|
||||
name: "${devicename} Humidity"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: adc
|
||||
pin: A0
|
||||
name: "${devicename} Soil Moisture"
|
||||
update_interval: 10s
|
||||
unit_of_measurement: "%"
|
||||
filters:
|
||||
- median:
|
||||
window_size: 7
|
||||
send_every: 4
|
||||
send_first_at: 1
|
||||
- calibrate_linear:
|
||||
- 1.25 -> 100.00
|
||||
- 2.8 -> 0.00
|
||||
- lambda: if (x < 1) return 0; else return (x);
|
||||
accuracy_decimals: 0
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
# Buzzer D6
|
||||
output:
|
||||
- platform: esp8266_pwm
|
||||
pin: D6
|
||||
frequency: 1000 Hz
|
||||
id: rtttl_out
|
||||
|
||||
rtttl:
|
||||
output: rtttl_out
|
||||
on_finished_playback:
|
||||
- logger.log: 'Song ended!'
|
||||
117
esphome/og-wz-eh-ring.yaml
Normal file
117
esphome/og-wz-eh-ring.yaml
Normal file
@@ -0,0 +1,117 @@
|
||||
substitutions:
|
||||
devicename: og-wz-eh-ring
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
|
||||
ota:
|
||||
password: "55ce775e3e40f10d38d43421dcefc476"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
# Optional manual IP
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.191
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "anO1GGY2nsmz"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB #GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 18
|
||||
internal: false
|
||||
# brightness: 100%
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
|
||||
status_led:
|
||||
pin:
|
||||
number: GPIO2
|
||||
inverted: True
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: hx711
|
||||
name: "Bed Weight (L)"
|
||||
id: bed_weight_l
|
||||
dout_pin: D2
|
||||
clk_pin: D3
|
||||
filters:
|
||||
- calibrate_linear:
|
||||
- 909154 -> 0
|
||||
# - 887502 -> 1.0
|
||||
# - 840704 -> 2.0
|
||||
- 531330 -> 10.86
|
||||
# - 70000 -> 0
|
||||
# - 145000 -> 5.6
|
||||
- sliding_window_moving_average:
|
||||
window_size: 5
|
||||
send_every: 5
|
||||
update_interval: 2s
|
||||
unit_of_measurement: kg
|
||||
accuracy_decimals: 2
|
||||
|
||||
binary_sensor:
|
||||
- platform: template
|
||||
name: "Bed Occupancy (Left)"
|
||||
device_class: occupancy
|
||||
lambda: |-
|
||||
if (id(bed_weight_l).state > 10) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
|
||||
- platform: gpio
|
||||
pin: D5
|
||||
name: "${devicename} Red"
|
||||
|
||||
- platform: gpio
|
||||
pin: D6
|
||||
name: "${devicename} Green"
|
||||
|
||||
- platform: gpio
|
||||
pin: D7
|
||||
name: "${devicename} Blue"
|
||||
|
||||
# buzzer von vwbus und weather klauen welcher port
|
||||
# D6
|
||||
78
esphome/og-wz-le-ambi.yaml
Normal file
78
esphome/og-wz-le-ambi.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-wz-le-ambi
|
||||
wledname: WLED-WZ-Ambi
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "3eO3n/qG8ZU0aaOO2Q1ddWggttPX6b3PfKkOWaUkVZI="
|
||||
|
||||
ota:
|
||||
password: "f27f0320cbd22c076f857be24fef535b"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.35
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "w2i936ayhQxg"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 100
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 99
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
78
esphome/og-wz-le-christmas.yaml
Normal file
78
esphome/og-wz-le-christmas.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-wz-le-christmas
|
||||
wledname: WLED-WZ-Christmas
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "DJVHh10pHp/WUd8RWqdtfaLoJqpGduBfS+lY/3qlct4="
|
||||
|
||||
ota:
|
||||
password: "7c061eccbbf68967637e670cce829b4d"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.48
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "2ApuhllJxslN"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 74
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 73
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
28
esphome/og-wz-le-magic.yaml
Normal file
28
esphome/og-wz-le-magic.yaml
Normal file
@@ -0,0 +1,28 @@
|
||||
esphome:
|
||||
name: og-wz-le-magic
|
||||
|
||||
esp8266:
|
||||
board: esp01_1m
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "lgIG7+HJccmUvPluQIv1+vU5EgaZwuC0wl9oA2gFunM="
|
||||
|
||||
ota:
|
||||
password: "766b2bbecbacdece0b1007fd93598967"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "Og-Wz-Le-Magic Fallback Hotspot"
|
||||
password: "LTE8dcbEvsey"
|
||||
|
||||
captive_portal:
|
||||
|
||||
78
esphome/og-wz-le-rahmen.yaml
Normal file
78
esphome/og-wz-le-rahmen.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-wz-le-rahmen
|
||||
wledname: WLED-WZ-Rahmen
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "eS4RBrUY1MWdn3Uv8/peXpxIkRt7YvkX6teTcsTtu70="
|
||||
|
||||
ota:
|
||||
password: "9819b73940ab907997fac11415967f8d"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.40
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "OD3m9CLLa1oP"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 144
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 143
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
78
esphome/og-wz-le-stern.yaml
Normal file
78
esphome/og-wz-le-stern.yaml
Normal file
@@ -0,0 +1,78 @@
|
||||
substitutions:
|
||||
devicename: og-wz-le-stern
|
||||
wledname: WLED-WZ-Stern
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
encryption:
|
||||
key: "CdE1ru+E7yA7DT71xdDgsVtMZZLVnykHDG2/z0y2Oro="
|
||||
|
||||
ota:
|
||||
password: "cc1e13c454e3e33865db40cf4a1474e2"
|
||||
|
||||
captive_portal:
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_wled_ssid
|
||||
password: !secret wifi_wled_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.93
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "hKRAb2oOlmbJ"
|
||||
|
||||
wled:
|
||||
|
||||
e131:
|
||||
method: multicast # default: register E1.31 to Multicast group
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: GRB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "${devicename} WLED"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 11
|
||||
effects:
|
||||
- wled:
|
||||
port: 19446
|
||||
- e131:
|
||||
universe: 1
|
||||
channels: RGB
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
205
esphome/og-wz-us-bulli.yaml
Normal file
205
esphome/og-wz-us-bulli.yaml
Normal file
@@ -0,0 +1,205 @@
|
||||
substitutions:
|
||||
devicename: og-wz-us-bulli
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
on_boot:
|
||||
then:
|
||||
# - rtttl.play: 'MissionImp:d=16,o=6,b=95:32d,32d#,32d,32d#,32d,32d#,32d,32d#,32d,32d,32d#,32e,32f,32f#,32g,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,g,8p,g,8p,a#,p,c7,p,g,8p,g,8p,f,p,f#,p,a#,g,2d,32p,a#,g,2c#,32p,a#,g,2c,a#5,8c,2p,32p,a#5,g5,2f#,32p,a#5,g5,2f,32p,a#5,g5,2e,d#,8d'
|
||||
# - rtttl.play: 'mario:d=4,o=5,b=100:16e6,16e6,32p,8e6,16c6,8e6,8g6,8p,8g,8p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,16p,8c6,16p,8g,16p,8e,16p,8a,8b,16a#,8a,16g.,16e6,16g6,8a6,16f6,8g6,8e6,16c6,16d6,8b,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16c7,16p,16c7,16c7,p,16g6,16f#6,16f6,16d#6,16p,16e6,16p,16g#,16a,16c6,16p,16a,16c6,16d6,8p,16d#6,8p,16d6,8p,16c6'
|
||||
# - rtttl.play: 'back:d=4,o=6,b=200:4g4,4a#5,4d#5,4a#4,4a#5,4g4,4a#5,4d#5,4a#5,4d#6,4a#4,32g4,4g6,1a#.6,2d7,2g.6,2f.6,4g6,1a#.6,2d7,2g6,4c7,2a#.6,4g6,1a#.6,2d7,2g.6,1f.6,2g.6,2a#.6,2d7,2c.7,2a#.6,4g6,1a#.6,2d7,2g.6,2f.6,4g6,1a#.6,2d7,'
|
||||
- rtttl.play: 'BackToTheFuture:d=4,o=5,b=160:p,8c.,16p,g,16p,16c.6,16p,a#.,16p,16a,16p,16g,16p,8a,16p,8g,16p,8f,16p,1g.,1p,g.,16p,c.,16p,2f#.,16p,32g.,32p,32a.,32p,8g,32p,8e,32p,8c,32p,f#,16p,32g.,32p,32a.,32p,8g.,32p,8d.,32p,8g.,32p,8d.6,32p,d6,16p,c#6,16p,32b.,32p,32c#.6,32p,2d6'
|
||||
# - rtttl.play: 'PlayedAl:d=4,o=5,b=355:8g#,p,g#,8p,8f,2g#,8p,8g#,p,g#,8p,8f,g#.,f,8g#,g,g,8p,8d#,2g,8p,8g,p,g,8p,8d#,g.,d#,8g,d#,d#,8p,8c,2d#,8p,8d#,p,d#,8p,8c,d#.,c,8d#,f,c#6,8p,8f,2c#6,8p,8f,p,c#6,8p,8f,c6,8p,a#,8g#,g#,g#,8p,8f,2g#,8p,8g#,p,g#,8p,8f,g#.'
|
||||
# - rtttl.play: 'Ghostbus:d=16,o=5,b=112:g,g,8b,8g,8a,4f.,g,g,g,g,8f,4g.,g,g,8b,8g,8a,4f.,g,g,g,g,8f,8a,8g,4d.,g,g,8b,8g,8a,4f.,g,g,g,g,8f,4g.';
|
||||
|
||||
- light.turn_off: bulli_left_blinker
|
||||
- light.turn_off: bulli_right_blinker
|
||||
- light.turn_off: bulli_left_headlight
|
||||
- light.turn_off: bulli_right_headlight
|
||||
- light.turn_off: bulli_left_backlight
|
||||
- light.turn_off: bulli_right_backlight
|
||||
- light.turn_off: bulli_interior_lighting
|
||||
- delay: 2s
|
||||
- light.turn_on: bulli_left_blinker
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_left_blinker
|
||||
- light.turn_on: bulli_right_blinker
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_right_blinker
|
||||
- light.turn_on: bulli_left_headlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_left_headlight
|
||||
- light.turn_on: bulli_right_headlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_right_headlight
|
||||
- light.turn_on: bulli_left_backlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_left_backlight
|
||||
- light.turn_on: bulli_right_backlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_right_backlight
|
||||
- light.turn_on: bulli_interior_lighting
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_interior_lighting
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
services:
|
||||
- service: play_rtttl
|
||||
variables:
|
||||
song_str: string
|
||||
then:
|
||||
- rtttl.play:
|
||||
rtttl: !lambda 'return song_str;'
|
||||
- service: blink
|
||||
then:
|
||||
- light.turn_off: bulli_left_blinker
|
||||
- light.turn_off: bulli_right_blinker
|
||||
- light.turn_off: bulli_left_headlight
|
||||
- light.turn_off: bulli_right_headlight
|
||||
- light.turn_off: bulli_left_backlight
|
||||
- light.turn_off: bulli_right_backlight
|
||||
- light.turn_off: bulli_interior_lighting
|
||||
- delay: 2s
|
||||
- light.turn_on: bulli_left_blinker
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_left_blinker
|
||||
- light.turn_on: bulli_right_blinker
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_right_blinker
|
||||
- light.turn_on: bulli_left_headlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_left_headlight
|
||||
- light.turn_on: bulli_right_headlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_right_headlight
|
||||
- light.turn_on: bulli_left_backlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_left_backlight
|
||||
- light.turn_on: bulli_right_backlight
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_right_backlight
|
||||
- light.turn_on: bulli_interior_lighting
|
||||
- delay: 2s
|
||||
- light.turn_off: bulli_interior_lighting
|
||||
|
||||
ota:
|
||||
password: "3d5584e2ee6a8adda315ae545bdf117c"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.96
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "FkyRO7G4neIE"
|
||||
|
||||
captive_portal:
|
||||
|
||||
light:
|
||||
- platform: binary
|
||||
output: output_bulli_left_blinker
|
||||
id: bulli_left_blinker
|
||||
name: "Bulli left blinker"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
- platform: binary
|
||||
output: output_bulli_right_blinker
|
||||
id: bulli_right_blinker
|
||||
name: "Bulli right blinker"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
- platform: binary
|
||||
output: output_bulli_left_headlight
|
||||
id: bulli_left_headlight
|
||||
name: "Bulli left headlight"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
- platform: binary
|
||||
output: output_bulli_right_headlight
|
||||
id: bulli_right_headlight
|
||||
name: "Bulli right headlight"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
- platform: binary
|
||||
output: output_bulli_left_backlight
|
||||
id: bulli_left_backlight
|
||||
name: "Bulli left backlight"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
- platform: binary
|
||||
output: output_bulli_right_backlight
|
||||
id: bulli_right_backlight
|
||||
name: "Bulli right backlight"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
- platform: binary
|
||||
output: output_bulli_interior_lighting
|
||||
id: bulli_interior_lighting
|
||||
name: "Bulli interior lighting"
|
||||
restore_mode: ALWAYS_OFF
|
||||
|
||||
output:
|
||||
- platform: gpio
|
||||
pin: D1
|
||||
id: output_bulli_left_blinker
|
||||
|
||||
- platform: gpio
|
||||
pin: D2
|
||||
id: output_bulli_right_blinker
|
||||
|
||||
- platform: gpio
|
||||
pin: D3
|
||||
id: output_bulli_left_headlight
|
||||
|
||||
- platform: gpio
|
||||
pin: D4
|
||||
id: output_bulli_right_headlight
|
||||
|
||||
- platform: gpio
|
||||
pin: D5
|
||||
id: output_bulli_left_backlight
|
||||
|
||||
- platform: gpio
|
||||
pin: D6
|
||||
id: output_bulli_right_backlight
|
||||
|
||||
- platform: gpio
|
||||
pin: D7
|
||||
id: output_bulli_interior_lighting
|
||||
|
||||
# Buzzer D6
|
||||
- platform: esp8266_pwm
|
||||
pin: D8
|
||||
frequency: 1000 Hz
|
||||
id: rtttl_out
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
rtttl:
|
||||
output: rtttl_out
|
||||
on_finished_playback:
|
||||
- logger.log: 'Song ended!'
|
||||
163
esphome/og-wz-us-room.yaml
Normal file
163
esphome/og-wz-us-room.yaml
Normal file
@@ -0,0 +1,163 @@
|
||||
substitutions:
|
||||
devicename: og-wz-us-room
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
# encryption:
|
||||
# key: "/4G+RLEH9pq9vc3lCO1RDXK8DmM4PyGuS0Hf7+jdobs="
|
||||
|
||||
ota:
|
||||
password: "9238a989206f8f05e5dfe8b741eb0005"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.100
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "DSFKr3I1aBXy"
|
||||
|
||||
captive_portal:
|
||||
|
||||
|
||||
# Example configuration entry
|
||||
light:
|
||||
- platform: neopixelbus
|
||||
id: neopixel
|
||||
name: "NeoPixel Light"
|
||||
type: RGB
|
||||
variant: WS2812
|
||||
pin: RX
|
||||
num_leds: 12
|
||||
internal: true
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 01"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 0
|
||||
to: 0
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 02"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 1
|
||||
to: 1
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 03"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 2
|
||||
to: 2
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 04"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 3
|
||||
to: 3
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 05"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 4
|
||||
to: 4
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 06"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 5
|
||||
to: 5
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 07"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 6
|
||||
to: 6
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 08"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 7
|
||||
to: 7
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 09"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 8
|
||||
to: 8
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 10"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 9
|
||||
to: 9
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 11"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 10
|
||||
to: 10
|
||||
|
||||
- platform: partition
|
||||
name: "Status LED 12"
|
||||
segments:
|
||||
# Use first 10 LEDs from the light with ID light1
|
||||
- id: neopixel
|
||||
from: 11
|
||||
to: 11
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin:
|
||||
number: D3
|
||||
mode: INPUT_PULLUP
|
||||
name: "${devicename} Radar Sensor"
|
||||
device_class: motion
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
144
esphome/og-wz-us-tag.yaml
Normal file
144
esphome/og-wz-us-tag.yaml
Normal file
@@ -0,0 +1,144 @@
|
||||
substitutions:
|
||||
devicename: og-wz-us-tag
|
||||
|
||||
esphome:
|
||||
name: ${devicename}
|
||||
platform: ESP8266
|
||||
board: nodemcuv2
|
||||
|
||||
# Enable logging
|
||||
logger:
|
||||
|
||||
# Enable Home Assistant API
|
||||
api:
|
||||
services:
|
||||
- service: write_tag_random
|
||||
then:
|
||||
- lambda: |-
|
||||
static const char alphanum[] = "0123456789abcdef";
|
||||
std::string uri = "//www.home-assistant.io/tag/";
|
||||
for (int i = 0; i < 8; i++)
|
||||
uri += alphanum[random_uint32() % (sizeof(alphanum) - 1)];
|
||||
uri += "-";
|
||||
for (int j = 0; j < 3; j++) {
|
||||
for (int i = 0; i < 4; i++)
|
||||
uri += alphanum[random_uint32() % (sizeof(alphanum) - 1)];
|
||||
uri += "-";
|
||||
}
|
||||
for (int i = 0; i < 12; i++)
|
||||
uri += alphanum[random_uint32() % (sizeof(alphanum) - 1)];
|
||||
auto message = new nfc::NdefMessage();
|
||||
message->add_uri_record(uri);
|
||||
ESP_LOGD("tagreader", "Writing payload: %s", uri.c_str());
|
||||
id(pn532_board).write_mode(message);
|
||||
- service: write_tag_id
|
||||
variables:
|
||||
tag_id: string
|
||||
then:
|
||||
- lambda: |-
|
||||
auto message = new nfc::NdefMessage();
|
||||
std::string uri = "//www.home-assistant.io/tag/";
|
||||
uri += tag_id;
|
||||
message->add_uri_record(uri);
|
||||
id(pn532_board).write_mode(message);
|
||||
- service: clean_tag
|
||||
then:
|
||||
- lambda: 'id(pn532_board).clean_mode();'
|
||||
|
||||
- service: cancel_writing
|
||||
then:
|
||||
- lambda: 'id(pn532_board).read_mode();'
|
||||
|
||||
ota:
|
||||
password: "f0e515a756b864724c599f2d077461a8"
|
||||
|
||||
wifi:
|
||||
ssid: !secret wifi_ssid
|
||||
password: !secret wifi_password
|
||||
|
||||
manual_ip:
|
||||
static_ip: 192.168.1.97
|
||||
gateway: 192.168.1.1
|
||||
subnet: 255.255.255.0
|
||||
|
||||
# Enable fallback hotspot (captive portal) in case wifi connection fails
|
||||
ap:
|
||||
ssid: "${devicename}"
|
||||
password: "1GVz2hcMlG2o"
|
||||
|
||||
captive_portal:
|
||||
|
||||
switch:
|
||||
- platform: restart
|
||||
name: "${devicename} Neustart"
|
||||
|
||||
sensor:
|
||||
- platform: wifi_signal
|
||||
name: "${devicename} Wi-Fi Signal"
|
||||
update_interval: 60s
|
||||
|
||||
- platform: uptime
|
||||
name: "${devicename} Uptime"
|
||||
update_interval: 60s
|
||||
|
||||
# Reader
|
||||
# GPIO ⇄ SDA: D1
|
||||
# GPIO → SCL: D2
|
||||
# Reset PIN D5
|
||||
# PN 532
|
||||
# 0x3C (60) Display
|
||||
# 0x3C (61) Reader ???
|
||||
# schau mal beim sensor esp05 og-az-us-room
|
||||
i2c:
|
||||
sda: D1
|
||||
scl: D2
|
||||
scan: true
|
||||
id: bus_a
|
||||
|
||||
pn532_i2c:
|
||||
update_interval: 1s
|
||||
id: pn532_board
|
||||
on_tag:
|
||||
then:
|
||||
- homeassistant.tag_scanned: !lambda |
|
||||
if (!tag.has_ndef_message()) {
|
||||
ESP_LOGD("tagreader", "No NDEF");
|
||||
return x;
|
||||
}
|
||||
auto message = tag.get_ndef_message();
|
||||
auto records = message->get_records();
|
||||
for (auto &record : records) {
|
||||
std::string payload = record->get_payload();
|
||||
size_t pos = payload.find("//www.home-assistant.io/tag/");
|
||||
if (pos != std::string::npos) {
|
||||
return payload.substr(pos + 34);
|
||||
}
|
||||
}
|
||||
ESP_LOGD("tagreader", "Bad NDEF, fallback to uid");
|
||||
return x;
|
||||
|
||||
binary_sensor:
|
||||
- platform: pn532
|
||||
uid: 74-10-37-94
|
||||
name: "${devicename} NFC Tag"
|
||||
|
||||
text_sensor:
|
||||
- platform: homeassistant
|
||||
entity_id: "sensor.og_wz_us_tag_display_text"
|
||||
name: "${devicename} Display Text"
|
||||
id: info_state
|
||||
|
||||
display:
|
||||
- platform: ssd1306_i2c
|
||||
model: "SSD1306 128x64"
|
||||
#reset_pin: D0
|
||||
address: 0x3C
|
||||
rotation: 180
|
||||
lambda: |-
|
||||
//Printf "Alarm State: <state>" in top center
|
||||
it.printf(64, 0, id(my_font), TextAlign::TOP_RIGHT, "Info: %s", id(info_state).state.c_str());
|
||||
|
||||
font:
|
||||
- file: "fonts/Comic Sans MS.ttf"
|
||||
id: my_font
|
||||
size: 20
|
||||
Reference in New Issue
Block a user