normen / homebridge-landroid

Homebridge plugin to control Worx Landroid robo mowers through the Worx Cloud
24 stars 8 forks source link

DISCONTINUED

This project has been discontinued as of December 2023

I moved my personal setup to FHEM which supports Worx mowers out of the box and can be used together with homebridge.

Basic rundown
homekitMapping

This homekitMapping has to be added to the mower so it can be controlled properly from HomeKit:

clear
On=mowerStatusTxt,values=Home:0;;/.*/:1,cmds=0:stopMower;;1:startMower;;false:stopMower;;true:startMower
BatteryService#BatteryLevel=batteryPercent
BatteryService#ChargingState=batteryCharging
BatteryService#StatusLowBattery=batteryPercent,threshold=20,values=0:BATTERY_LEVEL_LOW;;1:BATTERY_LEVEL_NORMAL

To add other switches you can add more On=... lines, to add ContactSensors add a line like

ContactSensorState=mowerStatusTxt,values=closed:Home=0;open:/.*/

homebridge-landroid NPM Version verified-by-homebridge

Homebridge plugin to control Worx Landroid (as well as Kress, Ferrex and Landxcape) lawn mowers through the Cloud, should support most mowers.

Features

Installation

  1. Install homebridge using: npm install -g homebridge
  2. Install this plugin using: npm install -g homebridge-landroid
  3. Set up homebridges config.json with your Worx account data

Example config

{
  "bridge": {
    "name": "Homebridge",
    "username": "CC:22:3D:E3:CE:30",
    "port": 51826,
    "pin": "031-45-154"
  },
  "platforms": [
    {
      "platform": "Landroid",
      "email": "my@email.com",
      "pwd": "my_password"
    }
  ]
}

Options

Usage

The mower will appear as a switch and a contact sensor in HomeKit.

On/Off Switch

The switch shows the current status and allows to control the mower. If the switch is off the mower is either on the home base or on its way to the home base. If it's on the mower is currently mowing. Turn the switch on to start the mowing cycle, turn it off to send the mower back home.

Contact Sensor

The contact sensor is used to display issues with the mower (trapped, outside wire etc.), when the contact sensor is "open" there is some issue that prevents the mower from continuing. Fix the issue to control the mower again.

Home Sensor

The home (contact) sensor is used to display if the mower is standing in home position, when the contact sensor is "open" the mower is currently not at home.

Note: If you update from Version <= 0.9.5 or enable the sensor after first setup then you need to reload all mowers. This also invalids your homekit automations which need to be reconfigured.

Battery Status

You can see the battery status in the settings of either the switch or contact sensor in the Home app and you can ask Siri about the battery status of your lawn mower.

Development

If you want new features or improve the plugin, you're very welcome to do so. The projects devDependencies include homebridge and the npm run test command has been adapted so that you can run a test instance of homebridge during development. Alternatively you can use npm run dev if you have homebridge installed as a global package

Setup

Notes

Most of the connector code is directly copied from iobroker.worx, a helper script called 'sync-code' allows updating to the latest version of that code.