Skip to content

Instantly share code, notes, and snippets.

View kdorff's full-sized avatar

Kevin Dorff kdorff

View GitHub Profile
@kdorff
kdorff / last_diff.groovy
Last active October 31, 2021 15:27
Groovy script to perform diff against the last two autorestic snapshots for a list of backends.
#!/usr/bin/env groovy
import groovy.yaml.YamlSlurper
/**
*
* Script to perform a diff from latest:latest to latest on the
* list of autorestic backends passed in as command line arguments.
*
* REQUIREMENTS
@kdorff
kdorff / automations-partial.yml
Created March 8, 2022 19:20
Home Assistant Automations for WLED on my stairs
##
## Motion detected upstairs
## -----------------------------
## If (timer.stairs_motion_timer is not active AND
## input_boolean.wled_stairs_auto_enabled is on),
## this will configure and turn on the lights and
## set timer.stairs_motion_timer to 15 seconds.
##
## The lights will be turned off by the
## expiration of timer.stairs_motion_timer in the
@kdorff
kdorff / distance-sensor-0.yaml
Last active September 26, 2024 17:32
Break beam sensor using VL53L0X for Home Assistant using ESPHome
##
## A standard "break beam sensor" uses a laser or LED with a device on both
## sides of an opening and is triggered when something breaks the beam
## (such as a customer walking through the beam). Some garage doors use them.
## Stores often use them at the entrace to ring a chime when a customer enters
## or leaves.
##
## This is my attempt at using a VL53L0X i2c Time of Flight sensor
## as a break beam sensor in Home Assistant using ESPHome.
##
@kdorff
kdorff / moisture-1.yml
Created May 18, 2022 02:32
ESPHome code for moisture sensors
# Reads analog data using an ads1115. Three moisture sensors and a battery sensor.
# Goes to sleep for an hour at a time.
# Uses a helper input_boolean to keep it from going to sleep, in case you want to update it.
esphome:
name: moisture-1
platform: ESP32
board: esp32dev
on_boot:
then:
##
## My latest version targets the ESP32. See the code at
## https://gist.github.com/kdorff/396a11b5bb29142f09c1f52242c546e5
##
## ESPHome configuration for led-and-key1
## * LED0 is lit if the back door autolock is enabled
## * LED1 is lit if the front door autolock is enabled
## * ..
## * BUTTON0 toggles the back door autolock enable
## * BUTTON1 toggles the front door autolock enable
##
## ESPHome configuration for led-and-key1-esp32
## * LED0 is lit if the back door autolock is enabled
## * LED1 is lit if the front door autolock is enabled
## * ..
## * BUTTON0 toggles the back door autolock enable
## * BUTTON1 toggles the front door autolock enable
## * ...
## * BUTTON6 will decrease the intensity
## * BUTTON7 will decrease the intensity
##
## This is part of 4 files. Make sure you have the whole set
## tft-office.yaml https://gist.github.com/kdorff/363cc20a26fddf7a3dea6fabbcd04805
## display-panel.h https://gist.github.com/kdorff/5c26fb21c573e4309da2587aa6e9b5d3
## display-touch-panel.h https://gist.github.com/kdorff/78d45057ee7a1aaf92f839f576c99e0b
## tft-room-time-temp.h https://gist.github.com/kdorff/811f86b33bf8b63050dce7e91d70cac8
##
##
## I'm testing connecting the ESP32 to the 2.8" ili9341 TFT
//
// This is part of 4 files. Make sure you have the whole set
// tft-office.yaml https://gist.github.com/kdorff/363cc20a26fddf7a3dea6fabbcd04805
// display-panel.h https://gist.github.com/kdorff/5c26fb21c573e4309da2587aa6e9b5d3
// display-touch-panel.h https://gist.github.com/kdorff/78d45057ee7a1aaf92f839f576c99e0b
// tft-room-time-temp.h https://gist.github.com/kdorff/811f86b33bf8b63050dce7e91d70cac8
//
// For sprintf calls.
char buffer[25];
//
// This is part of 4 files. Make sure you have the whole set
// tft-office.yaml https://gist.github.com/kdorff/363cc20a26fddf7a3dea6fabbcd04805
// display-panel.h https://gist.github.com/kdorff/5c26fb21c573e4309da2587aa6e9b5d3
// display-touch-panel.h https://gist.github.com/kdorff/78d45057ee7a1aaf92f839f576c99e0b
// tft-room-time-temp.h https://gist.github.com/kdorff/811f86b33bf8b63050dce7e91d70cac8
//
#include "esphome.h"
#include <vector>
//
// This is part of 4 files. Make sure you have the whole set
// tft-office.yaml https://gist.github.com/kdorff/363cc20a26fddf7a3dea6fabbcd04805
// display-panel.h https://gist.github.com/kdorff/5c26fb21c573e4309da2587aa6e9b5d3
// display-touch-panel.h https://gist.github.com/kdorff/78d45057ee7a1aaf92f839f576c99e0b
// tft-room-time-temp.h https://gist.github.com/kdorff/811f86b33bf8b63050dce7e91d70cac8
//
#include "esphome.h"
#include <vector>