I have a few old automations that are designed to unlock my front door, or open my garage door, depending on how I leave. If I ride my bike or car, it opens my garage, if I leave via front door, it opens the front door. Pretty simple. Except!!! I did this in pieces, so it’s 2 separate automations. One detects my phone entering the “home zone”, the other detects an event firing (iOS triggered the event via ‘shortcuts’)

There is now “zone based” automations, and there is also my “person entity”. So the way I see it, I have 3 different ways to tell when I come home:

  1. My phone’s gps enters the ‘home zone’

  2. My HA ‘person’ state changes from ‘away’ to ‘home’

  3. My phone’s shortcut app fires an event that is detected.

I feel like #1 and #2 are the same, no? I only have one device linked to my person entity, and it’s my phone. Is there any difference in this case? Is there a preferred choice?

  • spaghettiwestern@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 day ago

    Shelly makes tiny smart switch modules that fit inside any switch box and are cheap enough to put at each door. In combination with the Bermuda BLE Trilateration integration they can detect where in (or near) the house you are. Ours are used to turn on lights and disable camera alerts before they can trigger. It’s amazing to have the inside and outside lights come on when we’re 30’+ away and haven’t even stopped the car or when we get close to the house after taking a walk. They provide some great functionality in addition to BLE for less than $20.

  • AbouBenAdhem@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    ·
    2 days ago

    Using your person state makes it easier to update HA when you get a new phone, especially if you have a lot of automations that use it.

    • Lemmee@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      2 days ago

      Ooh. That’s a great point.

      I just did some digging and it seems something is wrong with my phone or person detection because it don’t notice that I left for the gym this morning.

      I guess that needs troubleshooting as well. Maybe having multiple triggers increases the robustness of the automation?

      • dono@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        18 hours ago

        If you use background location, or even just the geofencing in the location settings of the Homeassistant App then it wont work if you have Network location disabled in Android. After some research i found out that in newer versions of Android it wont use gps at all for background location. This tripped me up for some time since (i think) Grapheneos has this disabled by default (or i disabled it idk). After enabeling this again everything worked reliably.

        • Lemmee@sh.itjust.worksOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          17 hours ago

          I’m on iOS, and I’ve got ‘always on’ enabled for location services. It has worked pretty much flawlessly until this weekend, so I’m guessing something got borked, and I need to do some updating in some places.

  • MuttMutt@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    I do something similar with node red and some lights. It’s all based off of person.xxxxxxx locations.

    If I was going to try and do something based on if a vehicle was used then I would probably attach Bluetooth trackers to the car and bike and use those for particular automations. There will be a little bit of a delay while the system before the door opens or closes until they connect up and it will require a Bluetooth AP connected to HomeAssistant but it gives finer grained control. But you would need to do checks that both your phone and something else entered the area to prevent the door from also unlocking.

    Or you could use use you phone as a Bluetooth beacon/tracker and set something based on its last seen location before leaving.

    Setting up with each device tracked also gives you the opportunity to give warnings if they leave without your phone as well as to use crowd tracking if they do.

    • Lemmee@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 day ago

      That’s pretty much what I do now. But I don’t care if I leave via bike or car, just depends if I leave through the garage door, or the front door. So I have a helper that gets toggled if the garage door closes and I leave the house zone within 10 mins. Then when I return, I want to just use one trigger, and have an if/else that looks at the state of the helper toggle. I really have been operating with the “if it aint broke, don’t fix it” mentality. But when things break, I like to take a look at the whole landscape, and see if I can make some larger improvements when I fix it. That’s what prompted this – I got home and my garage door didn’t open.