Sensor to tell by when I need to leave to get to work

I’m looking to build a sensor that’ll tell me when I need to leave for work to get there by 7am. I want to start at 7am substract the waze travel time and give myself 10 minutes warning. I’m sure it has something to do with the time formatting.


      - name: "Time_to_Leave"
        state: >
         {{ ( states('sensor.StartWork') - states('sensor.waze_travel_time')  - timedelta(minutes=10) | timestamp_custom('%H:%M')) }}

States are strings and entity ids do not contain capital letters. Assuming your sensors have the required format:

{{ ( states('sensor.startwork')|as_datetime - states('sensor.waze_travel_time')|as_datetime  - timedelta(minutes=10) | timestamp_custom('%H:%M')) }}

If they don’t have the required format it will require a bit more work. Post the results from the dev tools template editor for this:

{{ states('sensor.startwork') }}
{{ states('sensor.waze_travel_time') }}

Might help if I get the name right, I set up startwork as a helper:

{{ states('input_datetime.startwork')  }}
{{ states('sensor.waze_travel_time') }}

This is what it gives:


Try this:

{{ ( today_at(states('input_datetime.startwork')) - timedelta(minutes=states('sensor.waze_travel_time')) - timedelta(minutes=10) ).strftime('%H:%M') }}

This got it, changed the waze to a float, thank you so much!

{{ ( today_at(states('input_datetime.startwork')) - timedelta(minutes=states('sensor.waze_travel_time')| float(0)) - timedelta(minutes=10) ).strftime ('%H:%M')}}

Last question, to get it to trigger an automation do I need to remove the strftime (‘%H:%M’) since it’s now passing the time as a string?

Yeah if you get rid of that you can use a time trigger:

  - platform: time
    at: sensor.time_to_leave

FYI you can use spaces in your sensor name:

- name: "Time to Leave"

This will still result in the entity id shown in the trigger.

EDIT you will also have to add this to your sensor:

      - name: "Time to Leave"
        device_class: timestamp  # add this
        state: > ...etc

Amazing, thank you so much.

1 Like