Tombstone
(Aaron Twomey)
December 9, 2018, 5:41am
1
First I have to say thanks for your help along the way
@Underknowledge
@Axolotl
@digiblur here is his channel link https://www.youtube.com/c/digiblurDIY
I have made a chores reminder to remind me when I have to do chores, I would love to hear anyone’s ideas to make this projects better - any ideas will be appreciated. So far I have an easy way to do this setup for any newbie like me
What I have done so far:
Read chores from Google Calendar
Light up the LED when a chore needs to be done.
Send the chores to my phone
What You Need:
D1 mini and 2 LED’s, 2 buttons and 2 resistors (put it all together)
Google Calendar Setup (https://www.home-assistant.io/components/calendar.google/ )
Google Home
OK to make it easy we will load tasmota firmware onto the d1 mini
now.
So I have made LED to Relay and push button as a Button
Now make an MQTT switch in HA to turn on and off the LED
My 2 switches are switch.snake_feed and switch.snake_water
alias: feeding the snake test
trigger:
- platform: state
entity_id: calendar.snake
to: 'on'
condition:
condition: template
value_template: "{{states.calendar.snake.attributes.message == 'feed' }}"
action:
- service: notify.html5_aaron_moblie_phone
data:
title: test at 6:30 it woek
message: feed the snake today and wait 2 weeks
- service: switch.turn_on
data:
entity_id: switch.snake_feed
#
- id: 'weater_snake_test'
alias: feeding the snake test
trigger:
- platform: state
entity_id: calendar.snake
to: 'on'
condition:
condition: template
value_template: "{{states.calendar.snake.attributes.message == 'water' }}"
action:
- service: notify.html5_aaron_moblie_phone
data:
title: test at 6:30 it woek
message: water the snake today and wait 2 weeks
- service: switch.turn_on
data:
entity_id: switch.snake_water
See where ‘feed’ is on mine - you can put whatever you like HA to look for in your calendar. This is my calendar.
Thing I still need to do
When you get home Google home will remind you of the chores to be done
Send the chores to your phone after 24 hours and the job is still not done with an angry face
Once the chore has been done (when I push the button to turn off the light) HA makes a new event in the time frame it is programmed to
4 Likes
Tombstone
(Aaron Twomey)
December 31, 2018, 3:57am
2
OK so luck with google calender to work but a friend @Underknowledge help me. with this code what worked.
- name: snake_feed
platform: file
filename: /config/packages/feed.txt
- name: snake_water
platform: file
filename: /config/packages/water.txt
######################################################
sensor:
- platform: mqtt
name: "snake_feed_state"
icon: mdi:food
state_topic: "stat/Chores-Reminder/Snake/POWER1"
- platform: mqtt
name: "snake_water_state"
icon: mdi:water
state_topic: "stat/Chores-Reminder/Snake/POWER2"
##
- platform: file
name: snake_feed_timestamp
icon: mdi:calendar-clock
file_path: /config/packages/feed.txt
value_template: '{{value_json.timestamp}}'
- platform: file
name: snake_water_timestamp
icon: mdi:calendar-clock
file_path: /config/packages/water.txt
value_template: '{{value_json.timestamp}}'
##
- platform: template
sensors:
snake_feed_days:
friendly_name: "snake last feed"
unit_of_measurement: 'days'
value_template: "{{ (( as_timestamp(now()) - as_timestamp(strptime(states('sensor.snake_feed_timestamp'), '%d.%m.%Y')) ) / 86400 ) | round(2) }}"
- platform: template
sensors:
snake_water_days:
friendly_name: "snake last water"
unit_of_measurement: 'days'
value_template: "{{ (( as_timestamp(now()) - as_timestamp(strptime(states('sensor.snake_water_timestamp'), '%d.%m.%Y')) ) / 86400 ) | round(2) }}"
##############################################################################################
automation:
- alias: 'snake_feed_water_update'
trigger:
- platform: time
minutes: '14' # Triggers when its xx:14:00 (military time format)
seconds: 0
action:
- service: homeassistant.update_entity
entity_id: sensor.snake_feed_days
- service: homeassistant.update_entity
entity_id: sensor.snake_water_days
##
- alias: snake_feed_timestamp
initial_state: 'on'
hide_entity: true
trigger:
- platform: state
entity_id: sensor.snake_feed_state
from: 'ON'
to: 'OFF'
action:
- service: notify.snake_feed
data_template:
message: "{{ { 'timestamp': now()|string } |tojson }}"
- service: notify.html5_aaron_moblie_phone
data_template:
title: 'Home Assistant Info'
message: "Snake has been fed {{now().strftime('%H:%M:%S %Y-%m-%d')}} "
- alias: snake_water_timestamp
initial_state: 'on'
hide_entity: true
trigger:
- platform: state
entity_id: sensor.snake_water_state
from: 'ON'
to: 'OFF'
action:
- service: notify.snake_water
data_template:
message: "{{ { 'timestamp': now()|string } |tojson }}"
- service: notify.html5_aaron_moblie_phone
data_template:
title: 'Home Assistant Info'
message: "Snake has freshwater now {{now().strftime('%H:%M:%S %Y-%m-%d')}} "
##
- alias: turn_on_light_feed_based_on_days
initial_state: 'on'
hide_entity: true
trigger:
# - platform: time
# minutes: '/3' # https://www.home-assistant.io/docs/automation/trigger/#time-trigger
# seconds: 00
- platform: time
at: '07:30:00' #use this before :-) above is good to know
- platform: time
at: '18:30:00'
condition:
- condition: numeric_state
entity_id: sensor.snake_feed_days
above: '13.8' # otherwise its getting later and later
action:
- service: mqtt.publish
data: {"payload": "ON", "topic": "cmnd/Chores-Reminder/Snake/POWER1", "retain": 0}
- service: notify.html5_aaron_moblie_phone
data:
title: 'Snake'
message: 'The snake is hungry!!'
data:
renotify: 1
tag: snakefood # won’t create new notification if there already exists one with the same tag.
vibrate:
- 300
- 500
- 200
# image: https://tombstone.duckdns.org:8123/local/snake_feed
# actions:
# - action: "trigger_html_wife"
# title: "let the wife do it"
# automation saying - yould you feed the nake and press the button?
# - action: "trigger_html_"
# title: "text to show 2"
##
- alias: turn_on_light_water_based_on_days
initial_state: 'on'
hide_entity: true
trigger:
- platform: time
at: '07:30:00'
- platform: time
at: "18:30:00"
condition:
- condition: numeric_state
entity_id: sensor.snake_water_days
above: '3.8'
action:
- service: mqtt.publish
data: {"payload": "ON", "topic": "cmnd/Chores-Reminder/Snake/POWER2", "retain": 0}
- service: notify.html5_aaron_moblie_phone
data:
title: 'Snake'
message: 'freshwater for snake!!'
data:
renotify: 1
tag: snakewater
vibrate:
- 300
- 500
- 200
# image: https://tombstone.duckdns.org:8123/local/snake_feed
# actions:
# - action: "trigger_html_wife"
# title: "let the wife do it"
# automation saying - yould you feed the nake and press the button?
# - action: "trigger_html_"
# title: "text to show 2"
Of any one like to know how to all works just msg me
1 Like