Gardena Smart System

Unfortunately yes, it’s currently not possible to directly control the gateway. Gardena does not publish any information (we asked them)

Usually I avoid devices sending data to the cloud…

me too

Have you looked at the http://robonect.de/ project?
Do you think this can be an option to embedd the mower in the local network and control it via openhab?

I know the robonect project. Sure, it’s an option and you can control it even without a binding in a rule with http commands. But that’s not the scope of the gardena binding.

Hello Gerhard Riegler,
Gardena binding is running stable in my openhab. I am measuring the battery level of sileno+ and got fine graphs for charging and discharging the battery.
gardena
However, after some weeks of unattended and unmodified operation I suddenly only measure two different values as battery levels, 36% (empty) and 100 (full), and consequently a kind of square wave. It should not be a graphing problem as these are the values of the battery variable itself when checked using the paper UI in the control tab.
This is the second time I encounter this problem and it cannot be solved by restarting Openhab or rebooting the Raspberry Openhab server or rebooting the sileno. The first time this problem occured I have set up a new OH server for other reasons and it was solved.
Any help or hint greatly appreciated.

Maybe, the battery values are no longer updated by the gardena server as often as previously. However, Gardena service states that nothing has been changed.

Edit: Today, after more than a month of non-continously updating battery values, I suddenly have continous battery values.
I did not change anything. However, in the logs I found:
2017-10-13 00:23:04.316 [vent.ItemStateChangedEvent] - GardenaGateway_Status changed from ON to OFF
2017-10-13 00:24:04.325 [vent.ItemStateChangedEvent] - GardenaGateway_Status changed from OFF to ON

Maybe, the Gateway has been resetted by any event. Just FYI if somebody else faces such behaviour.

After last update of mower firmware there are some issues with the binding:

  1. mower is shown “offline” in Paper UI in menu Configuration > Things. When opening the mower entry in this menu it shows “status: OFFLINE - COMMUNICATION_ERROR”. Luckily, the mower and the binding is working fine apart from this cosmetic problem.

  2. as partly pointed out here, two properties are no longer provided by Gardena, rechargeable_battery_status and internal_temperature. Thus, warnings are generated when using the current binding and appear in the log. Four new properties are now provided by Gardena but are not accessible in the binding.

  3. the property rechargeable_battery_status has been removed in the binding and further edits have been performed on GitHub. I tested the 2.3.0 snapshot binding in my 2.2. distro using this approach. However, the binding does not initialize, connection to Gardena account fails with permanent status “initializing”.

Any update to the binding will be greatly appreciated, if I can help by testing please let me know.

Any update as my binding is not working with pages 2.3 snapshot. Gateway stays on initialization.

Can Someone inform which channels are available for the Sileno mower ?

I want to buy Gardena or Bosch.

@gerrieg:
I’m using Home Assistant. Is it possible that you create an addon for Home Assistant Platform as well? Or maybe you could share your source code of you’re not familiar with Home Assistant.

There are a lot of people waiting for somebody opening the door to Gardena for Home Assistant. See this thread:

Wäre super nett :smiley:

@Hirgo
I don’t know the Home Assistant Platform and i also have no knowledge of python. I’m a Java developer.

But here is a link to the Java sourcecode and also to an analysis I did a while back.

With these infos, a python developer can integrate it in Home Assistant

Hello,

i’ve just installed the latest OpenHab Version and the Gardena Binding.
After i’ve configured the Home Account, it shows mit initializing, but after refresh, i get an Offline Status with an Error Message called: Status: OFFLINE - COMMUNICATION_ERROR java.lang.IllegalStateException: Expected a string but was BEGIN_OBJECT at line 1 column 41843 path $.devices[4].abilities[2].properties[0].value

I can see another error in the Log called: [WARN ] [.core.thing.binding.BaseThingHandler] - Handler GardenaAccountHandler tried updating the thing status although the handler was already disposed.

What i am doing wrong?
Please help me.

Thank’s a lot in advance

Christian

Hi,
I have a similar issue.
I installed the Binding. Then I configured a things file (gardena.things)

Bridge gardena:account:home [ email="mail@mail", password="pass123", refresh=30 ]

This is what my logfile replies (PaperUI stays at Initializing)

2018-07-16 22:50:54.226 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception

java.lang.NoSuchMethodError: com.google.gson.annotations.SerializedName.alternate()[Ljava/lang/String;

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getFieldNames(ReflectiveTypeAdapterFactory.java:79) ~[?:?]

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:159) ~[?:?]

	at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:100) ~[?:?]

	at com.google.gson.Gson.getAdapter(Gson.java:423) ~[?:?]

	at com.google.gson.Gson.toJson(Gson.java:661) ~[?:?]

	at com.google.gson.Gson.toJson(Gson.java:648) ~[?:?]

	at com.google.gson.Gson.toJson(Gson.java:603) ~[?:?]

	at com.google.gson.Gson.toJson(Gson.java:583) ~[?:?]

	at org.openhab.binding.gardena.internal.GardenaSmartImpl.executeRequest(GardenaSmartImpl.java:402) ~[?:?]

	at org.openhab.binding.gardena.internal.GardenaSmartImpl.verifySession(GardenaSmartImpl.java:452) ~[?:?]

	at org.openhab.binding.gardena.internal.GardenaSmartImpl.loadAllDevices(GardenaSmartImpl.java:204) ~[?:?]

	at org.openhab.binding.gardena.internal.GardenaSmartImpl.init(GardenaSmartImpl.java:142) ~[?:?]

	at org.openhab.binding.gardena.handler.GardenaAccountHandler.lambda$0(GardenaAccountHandler.java:75) ~[?:?]

	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:?]

	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[?:?]

	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]

	at java.lang.Thread.run(Thread.java:748) [?:?]

Help would be appreciated.

I just installed the latest snapshot build of the Binding (2.4) and still no luck…Same Error

I think your installation is broken. The Gardena binding uses a library called Gson which is provided by openHab, and this library seems to be in the wrong version in your installation.
OR
Your installation uses an older Gardena binding.

To check your active binding version, use the Karaf console:

openhab> bundle:list | grep Gardena

You can also try a fresh 2.4-SNAPSHOT installation with only the Gardena binding.

Hi Gerhard,
thank you for your reply

I tried the latest snapshot. So I probably ought to fix the gson. This is what my karaf console returns:

openhab> bundle:list -s | grep com.google.gson
 22 │ Active   │  80 │ 2.7.0                  │ com.google.gson
196 │ Resolved │  80 │ 2.3.1                  │ com.google.gson
openhab> bundle:list -s | grep org.openhab.binding.gardena
268 │ Active   │  80 │ 2.4.0.201807161453     │ org.openhab.binding.gardena

What do you make of that? Thanks for the help!!

I just installed a fresh 2.4-SNAPSHOT with the gardena binding, no problem, works as expected.

In my output, the 2.3.1 is also active:

openhab> bundle:list -s | grep gson
 16 │ Active   │  80 │ 2.7.0                  │ com.google.gson
194 │ Active   │  80 │ 2.3.1                  │ com.google.gson
openhab> bundle:list -s | grep gardena
221 │ Active   │  80 │ 2.4.0.201807161453     │ org.openhab.binding.gardena

My fresh test install of openhabian confirms your guess. It was working fine there. So it’s gotta be something with gson. How do I uninstall/reinstall The gson lib?
I don’t want to do a complete fresh install of openhabian because influx db, 433mhz and so on are all installed on top so I guess that would be a lot of work…

You can try to delete the tmp and cache folder in userdata. Maybe this will help.

Can’t you start the bundle 196?

Not sure if it’s okay to enter this thread:

since this morning I gort problems wirth the gardena Binding:

The Account stays offline due to:

Status: OFFLINE - COMMUNICATION_ERROR org.eclipse.jetty.client.HttpResponseException: HTTP protocol violation: Authentication challenge without WWW-Authenticate header

I tried to

  • stop/start the binding
  • uninstall/install the binding
  • delete the thing and add again

always the same

but gardena is working via the app and also by curl commands everything is fine, i can get the token and the device values and so on, but the account stays offline ?

any hints are welcome

this version is installed:

openhab> bundle:list -s | grep gardena
246 │ Active │ 80 │ 2.4.0.201806152142 │ org.openhab.binding.gardena

Problem solved by deleting Thing via HABmin and create a completely new one.