GithubHelp home page GithubHelp logo

mulcmu / husqvarna_automower Goto Github PK

View Code? Open in Web Editor NEW

This project forked from thomas55555/husqvarna_automower

0.0 0.0 0.0 766 KB

Custom component for Home Assistant to monitor and control your Husqvrana Automower

Home Page: https://github.com/Thomas55555/husqvarna_automower

License: MIT License

Python 100.00%

husqvarna_automower's Introduction

Home Assistant integration for Husqvarna Automower

Maintenance buy me a coffee downloads

Custom component to support Automower.

About

This integration is based on the offical API. The integration is using the Husqvarna websocket API for pushed updates, so no polling is performed. You need a API key to use this integration, refer to this guide on how to get one.

Screenshot of the integration

Supported devices

Only mowers with built-in Automower® Connect or with the Automower® Connect Module are supported. e.g.

  • AUTOMOWER® 315X
  • AUTOMOWER® 405X
  • AUTOMOWER® 415X
  • AUTOMOWER® 430X
  • AUTOMOWER® 435X AWD
  • AUTOMOWER® 450X

Installation

Requires Home Assistant 2022.5.0 or newer.

Installation through HACS

If you have not yet installed HACS, go get it at https://hacs.xyz/ and walk through the installation and configuration.

Then find the Husqvarna Automower integration in HACS and install it.

Restart Home Assistant!

Install the new integration through Configuration -> Integrations in HA (see below).

Manual installation

Download the husqvarna_automower.zip file from the release section. Extract it and copy the content into the path /config/custom_components/husqvarna_automower of your HA installation. Do not download directly from the main branch.

Configuration

Husqvarna API-Key

In order to use this integration you must get a API-Key from Husqvarna.

  1. Go to https://developer.husqvarnagroup.cloud/

  2. Create an account if needed, otherwise sign in with your Husqvarna account.

  3. After signing in you will be automatically redirected to "Your applications". (Otherwise go to: https://developer.husqvarnagroup.cloud/applications)

  4. Create an new application, name it for example "My Home Assistant" (doesn't matter), leave the other fields empty.

  5. Click on "+ Connect new API" and connect the Authentication API and the Husqvarna Automower API.

  6. Copy your Application Key, this is what you need when you add the integration in Home Assistant.

Home Assistant

Setup under Integrations in Home Assistant, search for "husqvarna_automower" and click on it, or use the My button: my_button

If the integration is not shown, try to refresh your browser (F5) or (Shift+F5). Maybe you need to reopen your browser.

Login with API-Key and Application Secret. You can find them on the Husqvarna site [Screenshot On the Husqvrana site edit your Application and add your Home Assistant instance as redirect URL. Use My HomeAssistant

https://my.home-assistant.io/redirect/oauth

You will be re-directed to the Husqvarna site and have to login there with username and password to authorize Home Assistant.

Configuring the camera sensor

The optional camera entity is disabled by default. The camera entity will plot the current coordinates and location history of the mower on a user provided image. To configure the entity you need to upload your desired map image and determine the coordinates of the top left corner and the bottom right corner of your selected image.

The camera entity is configured via the configure option on the integration. To enter the coordinates, ensure that they are in Signed Degree format and separated by a comma for example (40.689209, -74.044661)

You can then provide the path to the image you would like to use for the map and mower, this has been tested with the PNG format, other formats may work.

Usage

vacuum.start The mower continues to mow, within the specified schedule

vacuum.pause Pauses the mower until a new command

vacuum.stop The mower returns to the base and parks there until the next schedule starts

vacuum.return_to_base The mower returns to the base and parks there until it gets a new start command

husqvarna_automower.park_and_start With the this command you can override the current schedule for a specific time. For more details see the Services chapter

Services

Name Type Possible values Description
command string Start | Park Start or park the mower
duration int 1...60480 Duration for this command in minutes
target string The entity_id of your mower

Example for starting without the schedule for 120 minutes:

service: husqvarna_automower.park_and_start
data:
  command: Start
  duration: 120
target:
  entity_id: vacuum.automower_r_315x_haffi

Example for parking independent from the schedule for 5 minutes:

service: husqvarna_automower.park_and_start
data:
  command: Park
  duration: 5
target:
  entity_id: vacuum.automower_r_315x_haffi

Debugging

To enable debug logging for this integration and related libraries you can control this in your Home Assistant configuration.yaml file. Example:

logger:
  default: info
  logs:
    custom_components.husqvarna_automower: debug
    aioautomower: debug

After a restart detailed log entries will appear in /config/home-assistant.log.

husqvarna_automower's People

Contributors

adrigga avatar cclauss avatar chammp avatar codacy-badger avatar kalhimeo avatar ktibow avatar mulcmu avatar oehc avatar pjbaert avatar prairiesnpr avatar priiduonu avatar redblockmasteur avatar simontegelid avatar thomas55555 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.