Gardena Smart System

I am looking for Integration of Gardena smart Sensor, the Gardena smart Water Control, as well as the Gardena smart Sileno mower. Gardena uses Lemonbeat from RWE. The support is not cooperative, so they are not providing any information for the integration. There is an App availabel for Android and iOS.
Communication seems to be encrypted and also via Cloud (interaction of the Gateway with an Adress 216.XXX.XXX.XX)

Is anybody working on (or interested in) a Gardena binding?

Would it be possible to use the RWE binding?

Any news or info relevant for Gardena integration?

I am using openHAB 1.8, with homematic, Philips hue, harmony, FritzBox, Anel,

If they do not have a published API and their communication is encrypted in afraid the likelihood of someone developing a binding is near zero.

i analyzed the API, see my (german) post:

with these infos it’s possible to write a binding

I would also be interested in this binding.

fyi: i am currently working on the binding


Hallo gerrieg,
habe grade die Konversation in deinem Link angeschaut.

ich habe ein Gardena Binding für openHAB2 programmiert. Was mir noch fehlt, sind die Metadaten von einem Bodenfeuchtesensor.
Hat jemand von Euch diesen Sensor und kann mir den device JSON string zukommen lassen bitte? Dann kann ich das Binding fertig machen.


Ich habe einen Feuchtesensor. Wenn du mich anleitest, wie man den JSON string ermittelt, mache ich das.

Gruss Kölle

Hallo Kölle!
Super, Danke! Bin gerade auf Urlaub, melde mich bei Dir wenn ich wieder zurück bin (Wochenende)


Hi Kölle,

Please download this java file: gardena-meta-1.0.0.jar

Start it with your gardena email and password:

java -jar gardena-meta-1.0.0.jar EMAIL PASSWORD

It generates a file named devices.json in the same directory with the metadata from all your devices. If you send me the file, i can continue with the binding.

Thanks for your help!

I am on a business trip right now. I will be back end of the week.
Then I will try.

Mit freundlichen Grüßen
Harald Römer

Hallo Gerhard,
sorry für die späte Antwort! Ich habe die Datei erzeugt und lade sie mal hoch.

Wenn du noch etwas brauchst, lass es mich wissen! Ich freue mich schon auf das Binding!

Gruss Haralddevices.json (52.3 KB)

:+1: Thanks a lot! Now i can finalize the binding…

1 Like

binding in review:
short docs:

Gerhard, this is great. I am looking into what lawnmower to buy currently and found out there is no easy way of integrating the Robomow, Husqvarna and Ambrogio mowers (which were the brands I was considering).

Knowing there is a binding for Gardena might very well be the convincing argument to go for a Gardena one instead of the others.

Are you happy with the Gardena mowing results itself) and just for my understanding what are the types of operations you can do through the binding (the documentation mentions battery level for example). Is it just seeing the values and status of elements and variable or can you also start stop the mowing. (This would allow to build some intelligence with Openhab like taking into account weather forecasts and not mowing when it rains and mowing when it’s dry).

Husqvarna is the owner of Gardena and from what I have heard, they build the mowers for Gardena. So if you already considered Husqvarna, you can maybe go for Gardena.

True Husqvarna did acquire Gardena and some of the Husqvarna models are also sold under Gardena name though there are technical differences. So unlike Ambrogio for example that is sold as Wiper, Techline & Autoclip without technical differences I think Gardena is not at par yet with Husqvarna. But if it’s good and offers connectivity and control (so I can add intelligence from Openhab) it could be worth the trade-off

yes, i’m very happy with the gardena mower. Works great except the connectivity. I think this is still in beta, but i hope Gardena will optimize the system over time.

With the binding you can do almost anything that you can do with the App/Webapp except the time table. You can start/pause/park the mower and if you are lucky, the command also reaches the mower :slight_smile:
This did not always work last season, but there were some updates from Gardena and i hope this season the connectivity works better.

I am trying to implement a kind of alarm system for the Gardena Sileno Mower.
A notification should be sent to my smartphone as soon as an internal error occurs.

While gerrigs wonderful binding makes the state of the mower easily accessible using the item Robo_Mower_MHerstatus (Mäherstatus), I do not understand how to access the errors of the mower (mower#error).

I tried as follows

String Robo_Error_Status “Maeherfehler” { channel=“gardena:mower:aaaaa:bbbbbb:mower#error” }
where aaaa and bbbbb are replaced by my Gardena acccount and roboid info found using REST Api.

rule "Robo Alarm"
Item Robo_Error_Status changed
if (Robo_Error_Status.state.toString==“alarm_mower_switched_off”)
sendNotification(“myemail@xxx.yy”, “Robo has been switched off!!!”)

Frame label=“Robo Status” {
Text item=Robo_Mower_MHerstatus icon=“status” label="Jetzt [%s]"
Text item=Robo_Mower_NChsterStartzeitpunkt icon=“clock” label="Nächster Start [%1$ta %1$tR]"
Text item=Robo_Error_Status icon=“error” label=“Robofehler [%s]”

However, Robo_Error_Status never changes even if I lift or tilt the mower. Its value is always no_message.
Any help greatly appreciated.

I re-checked my code many times and I am now out of options. Maybe there is an error in the binding which prevents mower errors from being accessed.

I changed my rules code to catch more errors.
rule “Robo Alarm"
Item Robo_Error_Status changed
logInfo(“RoboErrorStatus”, “Robo_Error_Status is set to —” + Robo_Error_Status.state.toString + “–”)
sendNotification("”, “Robo Error!”)

Using this, today during a thunderstorm while mowing the Gardena App reported “no_loop_signal” AND Openhab App (cloud) reported “Robo Error”"error. Nice.

When I lifted the mower while charging for an additional test, the alarm started and Gardena App reported this alarm but Openhab did not report anything. Hm. ??

I found a typo in line 301 in
Numper should be Number.

You need to create an issue to change this (or if familiar with that, create a pull request).