Worx Landroid mosquitto bridge

Hi. I wanted to integrate my Landroid on homeassistant, and I saw the integration using the landroid.iobroker. I have a small device, so I would prefer dont use distinct technologies, and keep things as simple as possible.

I read the source code of https://github.com/virtualzone/landroid-bridge. Short history: it uses the identification of your account on https://api.worxlandroid.com to get the files needed to open a secure mqtt communication with AWS. I managed to extract my certificate and my key file and I’ve sucessfully configured a bridge with my local mosquitto server. Now I can subscribe a local topic and display landroid states on homeassistant.

The bridge configuration is something like this:

# landroid aws bridge configuration
connection landroid-aws-bridge
address <end_point_on_amazonaws.com>:8883

# topic to subscribe in remote (aws) server
topic <model>/<mac>/commandOut in

bridge_protocol_version mqttv311
bridge_insecure false
tls_version tlsv1.2

cleansession true
clientid android-<random-uid>
start_type automatic
notifications false

bridge_cafile /etc/mosquitto/certs/ca.pem
bridge_certfile /etc/mosquitto/certs/aws_crt.pem
bridge_keyfile /etc/mosquitto/certs/aws_key.pem

# avoid send unsubscribe commands to remote server
bridge_attempt_unsubscribe false

I made a little python script with self-explanatory instructions to configure de bridge. It needs the paho.mqtt.client and OpenSSL libraries installed, but if you execute it with the python used in homeassistant instalation should be fine.

warning! I spend a lot of time until my first sucessfull connection. In the meantime, I tested different configurations, parameters… During the tests, my Landroid stop receiving commands from the phone application. I could see the state (home, chargin… etc) but couldn’t start it, send schedules… etc. I really don’t know if there was some kind of ban from Amazon or just coincidence. I solved it just reconfiguring the wifi on the application (and you don’t loose statistics, schedules… etc). Please be aware.

2 Likes

Interesting, I am https://github.com/virtualzone/landroid-bridge running this on a rpi since one year. By enabling mqtt in the config.json you get the following output:
`

My next challenge is to import this into Hassio

Already done: https://github.com/Barma-lej/halandroid :slight_smile:

1 Like

Hi,

I tried to usr the landroid.py, but after typing the emailaddress and confirm with return, the script is aborted and I get the message (domain.eu is substituted)
Username (email): [email protected]
Traceback (most recent call last):
** File “landroid.py”, line 153, in **
** username = input("Username (email): ")**
** File “”, line 1**
** [email protected]**

I execute the script on raspberry, paho.mqtt.client and OpenSSL libraries are installed.

What can I do to get the files from Worx?

Thank you very much in advance

paho.mqtt.client and OpenSSL libraries installed

The easiest way is to install landroid cloud via HACS GitHub - MTrab/landroid_cloud: Landroid Cloud component for Home Assistant. Then you have most sensors from your mower in HA, with https://github.com/Barma-lej/halandroid you have a nice interface.

Should not be to difficult