Worx Landroid S with openHAB

Hi,
I’d like to step in here.

(Openhab 2.4, Raspberry 3B, tested with node 10.15 and 8.12)

When I try to start the landroid-bridge, it shows contradicting log messages:

[2019-04-14T11:26:54.011] [INFO] LandroidS - Initializing Landroid Cloud Service...
[2019-04-14T11:26:54.034] [INFO] Mqtt - Successfully connected to MQTT Broker!
Mqtt url: undefined
[2019-04-14T11:26:55.096] [INFO] IoBrokerAdapter - mower 0 selected

I also noticed in the logfile of my mosquitto service:

1555231112: New connection from 127.0.0.1 on port 1883.
1555231112: New client connected from 127.0.0.1 as mqttjs_2512311c (c1, k60, u'openhabian').
1555231138: Socket error on client mqttjs_2512311c, disconnecting.

My config.json:

"mqtt": {
    "enable": true,
    "url": "mqtt://<user>:<pw>@openhabianpi",
    "topic": "landroid"
},

Due to build errors I changed

import * as LandroidCloud from "iobroker.landroid-s/lib/landroid-cloud-2";

to

import * as LandroidCloud from "iobroker.landroid-s/lib/mqttCloud";

in LandroidS.ts, which helped.

I also tried different hosts in the config.json (127.0.0.1, localhost, 192.168.x.x) but no change at all.
Other clients, such as my ESPs around the network are working with the same MQTT credentials flawlessly.

Has someone also experienced this error?

I also builded and started the landroid-bridge on my windows pc - the same error.
Maybe it’s some changed method in the new mqttCloud library?

Have you also updated package.json from:

"iobroker.landroid-s": "^2.5.4",
to
"iobroker.landroid-s": "^2.5.5",

Yes I’ve tried that. And rebuilded after that.

I think the iobroker is for the communication between the bridge and the worx servers.
I can see all of my robot’s readings in the web ui , so that is working (I think it was also working with 2.5.4).

The part that isn’t working is the MQTT communication between the landroid-bridge and the OpenHab instance (on the same Raspberry Pi). I used the Mosquitto ‘installation wizard’ from OpenHab’s GUI and it’s working with all of my devices.

Edit: The error message comes from the iobroker, https://github.com/MeisterTR/ioBroker.landroid-s/blob/master/lib/mqttCloud.js at line 74. I opened an issue regarding that. Maybe we’ll find a solution.

How did you do that without MQTT, but the data is accessed via the cloud? do you have the configuration for it?

The Code from MeisterTR is for ioBroker, can i usw. it for openHab?

I have this installed

Im not using openHab, but data is stored in an SQLLITE database as i can see, so you need to read this data somehow with a driver from OpenHAB.

I’ve already wondered, this is for openHab and not for ioBroker.

you misunderstood me, that was not a criticism that you post something of ioBroker in this forum here, but that I was amazed that it runs differently with you as openHab with me. That you delete your posts now I find childish and pity.

1 Like

HI,

I like to stop my e-Dolly once in accident green irrigation was initiated while shaun is out there. As shaun can’t get home any longer because of valves open close to wire I just like to stop shaun where it is with landroid/set/mow but this command doesn’t work for me :-/

Anyone having this running???

Getting the same error here, which issue did you open? Have you found a solution in the meanwhile?
Thanks,
Stefan
[edit] Nevermind, found it out myself. Error goes away when mover is started and connected to app.

1 Like

Hi @virtualzone,
are there ideas to adapt the bridge to the new ioBroker.worx component of MeisterTR (https://github.com/MeisterTR/ioBroker.worx)? I think further development is only going on in the new worx adapter.

Hi all. I’m not sure if this is the right place to ask, but since iobroker has the best integration tool with Landroid-S, I hope than someone can answer. I’m trying to find the terms of service of the Landroid-S lawn mowers api, but I can not find anything. In the german forums there are post about Worx complaining about the abuse of the api, but I dont understand German and even with google translate everything is very confusing to me.
Bluestacks Lucky Patcher

AFAIK there’s no “official” API and so no terms and conditions to use it. The use of the reverse engeneered API is tolerated.

Hi,
there was no error. I like to stop shaun by sending a request, which fails :-/
Have you managed to stow your mower?

Regards
J.

I only use Worx app to control the mower. I do use the binding to switch on/off power one hour before / one hour after scheduled mowing times to save unnecessary loading cycles.
If you are able to detect that mower us returning home and watering is on, you might send a message to your phone and switch off the mower manually.
I have my irrigation times set early in the morning whereas the mower starts 4 hours later that all is dry before he starts mowing. I have two separate mowing areas which are not connected and need manual placement of the mower which is very bad for holiday situation. So I can’t rely on everything being automatic. I only once had the situation which you describe in your scenario that watering was switched on manually while the mower was working in the area. He was able to get around the sprinkler not in the first try but after detecting his route is blocked he set back and drove around it. Have you ever tried the behavior?

Has anyone run this on an isolated IoT LAN without internet connection? I am looking to move my mower off the internet and control it through openhab within its own LAN.

That won’t work. The mower relies on cloud connection for all remote operation. Even over MQTT it will use the cloud.

Darn, I was hoping I could move all of my IoT off the cloud with MQTT commands. Still, OpenHAB will still be better than the apps!

Bridge seem to stop working again as Positec (WOrx) changed API this year, hope Bridge will be adopted soon as I loved to have all managed by one system.