> ## Documentation Index
> Fetch the complete documentation index at: https://docs.myzendo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Local Connection

> Use Zendo with a direct, local connection to Home Assistant and control your property even if the internet is down.

export const MenuButton = ({badged = false}) => <div className="bg-[#a8c8b9] w-[36px] h-[36px] rounded-[10px] p-[6px] justify-center items-center aspect-square inline-flex relative">
    {badged && <div className="absolute top-[-3px] right-[-3px] w-[12px] h-[12px] rounded-[12px] bg-[#417777]"></div>}
      <svg width="22px" height="22px" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
      <g fill="#417777"><path d="M12 0a12 12 0 1 0 12 12A12 12 0 0 0 12 0m0 22a10 10 0 1 1 10-10 10 10 0 0 1-10 10"></path><path d="M10 12a2 2 0 1 0 4 0 2 2 0 1 0-4 0m5.5 0a2 2 0 1 0 4 0 2 2 0 1 0-4 0m-11 0a2 2 0 1 0 4 0 2 2 0 1 0-4 0"></path></g>
      </svg>
  </div>;

<Tabs>
  <Tab title="Consumers">
    ## Connect to Home Assistant

    By default, Zendo connects using **remote connection**. This means you can control your property while you're away.

    You can also enable **automatic selection**: Zendo will use local connection on trusted Wi-Fi networks, and remote connection everywhere else.

    ### Remote connection

    Zendo connects directly to your Home Assistant over the internet, using HTTPS. Learn more in [Security](/control-backend/security).

    Remote connection is required for:

    * Controlling your home while you're away.
    * [Location-based automations](/automate/geofences).

    ### Automatic selection

    With automatic selection enabled:

    * At home (on a trusted Wi-Fi network), Zendo uses local connection.
    * Away from home, Zendo uses remote connection.
    * Zendo keeps working when your home internet is down (as long as you're connected to a trusted network).

    ### Security approach

    We've chosen an approach that guarantees the highest security level without compromising your experience.
    We also follow the security [best practices](https://companion.home-assistant.io/docs/getting_started/connection-security-level/) set by the Home Assistant Companion app.

    ***

    ## Signup

    We require a remote connection to be configured at signup.

    There are a few reasons why:

    * You can complete your setup while you're away (sometimes activation takes a little longer).
    * Your Home Assistant credentials are transferred to your Home Assistant in a safe way.

    When you sign up, you have to login using username and password. Zendo uses a secure browser (sandboxed) that's fully controlled by iOS/Android. We have no access to what you type, and iOS/Android enforces HTTPS, so your credentials are protected in transit.

    ***

    ## Set up Local Connection

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "Property".
    4. Tap "Edit Home Assistant Connection".
    5. Set "Local Connection" to your internal URL (for example `http://192.168.1.100:8123`, or your Home Assistant IP).

    ### Trusted networks

    Add the Wi-Fi names (SSIDs) you want to consider as trusted. Zendo will only use local connection on these networks.

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "Property".
    4. Tap "Edit Home Assistant Connection".
    5. Tap "Trusted Wi-Fi Networks".
    6. Add the Wi-Fi names (SSIDs) you want to trust.

    <Info>
      The list of trusted networks automatically syncs to all your devices.
    </Info>

    <Danger>
      Local connection is not encrypted. Only add trusted networks if you fully control the network.
    </Danger>

    ### System permissions

    In "Automatic selection" mode, Zendo reads the device's current Wi-Fi name (SSID) to decide when it can use local connection.
    To do that, the app needs location permissions. This is an Apple and Android restriction.

    **Location permissions are optional**: if you don't grant location access, Zendo will default to remote connection. That's by design.

    Your Guests don't need to grant location access. They will use remote connection.

    Set location permissions like this:

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "About Your Zendo"
    4. Ensure all items under "System Check" are green.

    Alternatively, check the Zendo app's location access in your iOS or Android Settings. Ensure the Location permission is set to **Always** or **Allow all the time**, and that **Precise Location** is on.

    ### Troubleshooting

    Check which connection is being used, and whether permissions are set correctly.

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "About Your Zendo".
    4. Tap "System Info".
    5. Find the "Connection" section.

    * "Current Connection" shows the connection being used right now.
    * "Available Connections" lists what Zendo can use, based on your settings and current Wi-Fi network.
    * "Current SSID" shows the current Wi-Fi name. If it's blank, please check the system location permissions.

    ***

    ## Offline mode

    If local connection is enabled, Zendo can work without the internet for a limited time.

    While offline, Zendo can't fetch updates to your floorplan, automations, or other settings. Please keep devices online.
  </Tab>

  <Tab title="Installers">
    ## Connect to Home Assistant

    ### Remote connection

    Zendo connects directly to your Home Assistant over the internet, using HTTPS. This keeps your data secure. Learn more in [Security](/control-backend/security).

    When to use:

    * Commercial installations where you have no control over the network.

    Pros:

    * Great user experience for the customer.
    * Customers can use Zendo when they're not on the local network (e.g. away from site).
    * You can use [location-based automations](/automate/geofences).
    * Data stays secure.

    Cons:

    * You need a valid SSL certificate, plus either a public static IP or a dynamic DNS service. Or you can use [Tailscale Funnel](https://tailscale.com/kb/1223/funnel), [Cloudflare Tunnel](https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/), or [Nabu Casa](https://www.nabucasa.com) (paid service).
    * If the property internet is down, Zendo won't work because Home Assistant can't be reached.

    ### Local connection

    Zendo connects directly to Home Assistant on your local network (LAN).

    When to use:

    * Phones and tablets that stay on the local network (e.g. a wall-mounted tablet, or devices that are only used on site).

    Pros:

    * Zendo keeps working when the property internet is down.
    * No SSL certificate, public static IP, or dynamic DNS needed.

    Cons:

    * Local connection isn't encrypted. Only use it when you fully control the network.
    * Customers can't use Zendo when they're not on the local network (e.g. away from site).
    * You can't use [location-based automations](/automate/geofences).

    ### Automatic selection

    Zendo connects via local network when it's available. If it isn't, it switches to the remote connection.

    When to use:

    * Residential or commercial installations for the best user experience.

    Pros:

    * Best user experience for the customer.
    * Customers can use Zendo when they're not on the local network (e.g. away from site).
    * You can use [location-based automations](/automate/geofences).
    * Zendo can keep working when the property internet is down (as long as the device is on a trusted network).
    * Data stays secure (as long as you only trust networks you control).

    Cons:

    * You still need a valid SSL certificate, plus either a public static IP or a dynamic DNS service. Or you can use [Tailscale Funnel](https://tailscale.com/kb/1223/funnel), [Cloudflare Tunnel](https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/), or [Nabu Casa](https://www.nabucasa.com) (paid service).
    * You also need to list the Wi-Fi names (SSIDs) you want to treat as trusted.

    ***

    ## Set up Local Connection

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "Property".
    4. Tap "Edit Home Assistant Connection".
    5. Set "Local Connection" to your internal URL (for example `http://192.168.1.100:8123`, or your Home Assistant IP).

    ### Trusted networks

    Add the Wi-Fi names (SSIDs) you want to treat as trusted. Zendo will only use local connection on these networks.

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "Property".
    4. Tap "Edit Home Assistant Connection".
    5. Tap "Trusted Wi-Fi Networks".
    6. Add the Wi-Fi names (SSIDs) you want to trust.

    <Info>
      The list of trusted networks automatically syncs to all devices of the same property.
    </Info>

    ### System permissions

    In "Automatic selection" mode, Zendo reads the device current Wi-Fi name (SSID) to decide when it can use local connection.
    To do that, the app needs location permissions. This is an Apple and Android restriction.

    Set location permissions like this:

    * iOS: **Always** and **Precise Location**.
    * Android: **Allow all the time**.

    ### Force local connection

    Force local connection by deleting the Remote Connection URL.

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "Property".
    4. Tap "Edit Home Assistant Connection".
    5. Delete the Remote Connection URL.

    <Note>
      Please keep a remote connection configured for **residential installations**.

      Residential devices often drop off the home Wi-Fi, or the customer changes Wi-Fi providers. Keeping trusted networks up to date is fiddly and error-prone.

      Remote connection is required to guarantee the best user experience for residential customers.
    </Note>

    ### Troubleshooting

    Check which connection is being used, and whether permissions are set correctly.

    1. Tap <MenuButton />
    2. Tap "Settings"
    3. Tap "About Your Zendo".
    4. Tap "System Info".
    5. Find the "Connection" section.

    * "Current Connection" shows the connection being used right now.
    * "Available Connections" lists what Zendo can use, based on your settings and current Wi-Fi network.
    * "Current SSID" shows the current Wi-Fi name. If it's blank, please check the system location permissions.

    ***

    ## Offline mode

    If local connection is enabled, Zendo can work without the internet for a limited time.

    While offline, Zendo can't fetch updates to your floorplan, automations, or other settings. Please keep devices online.

    ## Location-based automations

    Location-based automations stop working if you delete the Remote Connection URL.
  </Tab>
</Tabs>
