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.