Sony Devices Binding

Forgot to answer your second part. IRCC service is almost one way only (ie think of it like an IP based remote). There are a few select items that I am polling for - those are all listed in the readme.md (under the channels->ircc->anything with a “R” for reading) and it greatly depends on the version of IRCC the device implements (I’ve yet to see feedback on anything less than 1.3 [which seem to only be BR players]). Channel/Audio Mute/etc feedback is not possible with IRCC. If your TV supports simpleip service - that will give you feedback. Once I get around to writing the WebScalarAPI service - I believe you will get some additional feedback - but that’s upcoming.

Today i received a KD-49XD7005 and can confirm that it works with this binding and SimpleIP. Thanks for the binding :grin:

However i also have Dragonflys problem:

> 2016-12-29 21:22:50.761 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:22:51.292 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:22:51.469 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:22:51.816 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:20.772 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:21.269 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:21.439 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:21.802 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:50.768 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:51.298 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:51.468 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:23:51.819 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:20.760 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:21.290 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:21.470 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:21.793 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:50.760 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:51.306 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:51.477 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:24:51.817 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:25:20.759 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:25:21.307 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:25:21.475 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000
> 2016-12-29 21:25:21.820 [WARN ] [y.internal.simpleip.SimpleIpProtocol] - Unparsable channel response: 00000001.0000000

Yes - I just discovered (the rather stupid) bug on that one. Shouldn’t really affect anything beyond outputting that message.

Just posted a new zip file over on openhab2-addons

This should correct the unparsable issues posted here. Likewise this implements the DIAL service (application launching - basically to start apps on the device directly). Please note this seems to ONLY work on blurays (I haven’t figured out the authentication yet on bravia tvs) and it can only START apps (sony didn’t seem to implement the stopping part of the DIAL service - probably because you can stop it simply by switching apps or going to the top menu on the bluray screen).

As before - please post any issues you may have.

1 Like

Hi Tim,
I own a SONY Bravia model 49XD8305 (Android TV).
I have correctly configured the TV (simple IP protocol enabled) and have been able to successfully send commands and receive updates using “nc” command in linux.

Now I am testing your binding and here are the problem that I found:

a) if using the thing text configuration, the map file is created correctly, but the thing status is always “INITIALIZING”. No commands can be sent to the TV.

sony:simpleip:home "TV Salotto" [ ipAddress="192.168.1.34", commandsMapFile="braviaircodes.map", netInterface="eth0", ping=30, retryPolling=10 ]

b) if I use the discovery, the map file is created correctly and the thing is ONLINE. And I can send the commands to the TV.

c) when the binding starts I get the following error in the log:

2017-01-06 13:17:40.210 [ERROR] [y.discovery.IrccDiscoveryParticipant] - Exception getting IRCC URL: {}
org.eclipse.jetty.client.HttpResponseException: java.net.ConnectException: Connection refused
	at org.openhab.binding.sony.internal.net.HttpResponse.createException(HttpResponse.java:87)
	at org.openhab.binding.sony.internal.ircc.models.IrccState.<init>(IrccState.java:66)
	at org.openhab.binding.sony.discovery.IrccDiscoveryParticipant.createIrccDevice(IrccDiscoveryParticipant.java:74)
	at org.openhab.binding.sony.discovery.IrccDiscoveryParticipant.createResult(IrccDiscoveryParticipant.java:54)
	at org.eclipse.smarthome.config.discovery.internal.UpnpDiscoveryService.addUpnpDiscoveryParticipant(UpnpDiscoveryService.java:70)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_65]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_65]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_65]
	at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_65]
	at org.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:224)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:617)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:501)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.inject.BindMethod.invoke(BindMethod.java:655)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.DependencyManager.doInvokeBindMethod(DependencyManager.java:1722)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.DependencyManager.invokeBindMethod(DependencyManager.java:1699)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.SingleComponentManager.invokeBindMethod(SingleComponentManager.java:371)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:320)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.addedService(DependencyManager.java:291)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1215)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1136)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:945)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:881)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1167)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.BundleComponentActivator$ListenerInfo.serviceChanged(BundleComponentActivator.java:127)[32:org.apache.felix.scr:2.0.6]
	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:914)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:886)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:873)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:132)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:940)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:740)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:674)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:429)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:403)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:278)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:259)[32:org.apache.felix.scr:2.0.6]
	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:232)[32:org.apache.felix.scr:2.0.6]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482)[org.osgi.core-6.0.0.jar:]
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415)[org.osgi.core-6.0.0.jar:]
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232)[org.osgi.core-6.0.0.jar:]
	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444)[org.osgi.core-6.0.0.jar:]
	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:902)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:165)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:75)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:67)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:102)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.container.Module.publishEvent(Module.java:466)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.container.Module.start(Module.java:457)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:392)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
	at org.apache.karaf.bundle.command.Restart.doExecute(Restart.java:51)[38:org.apache.karaf.bundle.core:4.0.8]
	at org.apache.karaf.bundle.command.BundlesCommand.execute(BundlesCommand.java:54)[38:org.apache.karaf.bundle.core:4.0.8]
	at org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:83)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:67)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:87)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94)[53:org.apache.karaf.shell.core:4.0.8]
	at org.apache.karaf.shell.impl.console.ConsoleSessionImpl.run(ConsoleSessionImpl.java:274)[53:org.apache.karaf.shell.core:4.0.8]
	at java.lang.Thread.run(Thread.java:745)[:1.8.0_65]
2017-01-06 13:17:41.431 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Command map already defined - ignoring: /home/pi/openhab2b4/conf/transform/simpleip-41dd6bcb-b69f-4826-b520-49855c65d10b.map
2017-01-06 13:17:41.431 [INFO ] [y.internal.simpleip.SimpleIpProtocol] - Simple IP TV System now connected


d) Volume and AudioMute commands do not seem to work

e) Commands take long time to execute (1+ seconds)

f) I didn’t understand what is the usage of the .map file for.

Here some of the log file entries:

2017-01-06 14:07:30.895 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.898 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.901 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.905 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.931 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.933 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.934 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:30.937 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.880 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000083': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.880 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000083': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.883 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000083': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.883 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000083': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.892 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.894 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.895 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:07:35.896 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNAMUT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:24.133 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000031': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:24.134 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000031': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:24.138 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000031': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:24.133 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNVOLU0000000000000031': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:54.379 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:54.380 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:54.391 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:09:54.396 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:00.523 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:00.525 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:00.527 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:00.530 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:11.456 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:11.456 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:11.458 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:11.461 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000100000001': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:15.455 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:15.458 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:15.457 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:15.457 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNINPT0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:43.098 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNCHNN00000013.0000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:43.102 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNCHNN00000013.0000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:43.100 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNCHNN00000013.0000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:10:43.104 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNCHNN00000013.0000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:11:01.680 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNPOWR0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:11:01.680 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNPOWR0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:11:01.681 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNPOWR0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing
2017-01-06 14:11:01.687 [WARN ] [ding.sony.internal.net.SocketSession] - Exception occurred processing the response '*SNPOWR0000000000000000': java.lang.IllegalStateException: Could not update state, because callback is missing

I have set up my tv with simpleip and it works quite well. I Can turn it on an off, but 5 minutes after i have turned it off the tv stops answer to ping and i cant turn it back on. Any solutions ?

a) Just tried it myself with the same line (different IP) and it switched to online immeditely. I’d need to seem more of the log file around it
b) Interesting - that one isn’t related to directip but when it’s trying to discover the ircc service. Really surprised the TV is advertising IRCC but then refusing the connection. I’ll need to fix that message but I may want to followup on that later with you.
c) Those exception messages generally mean the binding isn’t online but I’ll take a closer look at that

Never heard of that - is the tv wired or wireless? When you say you ‘cant turn it back on’ - assuming you mean from the binding alone (ie you can still turn it on with the remote)? What model is it?

My TV (BRAVIA KDL-55W805B) has a wired connection. Yes by turning back on, i mean with the binding. The remote always work. Seams like it going to sleep (and stops answer to ping) 5 minuts after i have turned it off

Next time it happens - can you telnet to it (port 20060 and see if it even connects)?

I cant telnet, but I just found out that if i run the linux command “wakeonlan fc:f1:52:xx:xx:xx” my TV turns on even after 5 minutes

Hi @tmrobert8,

I just installed the latest zip yesterday and get many errors if the TV is in standby:

2017-01-10 08:57:40.961 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 08:57:41.002 [ERROR] [ny.internal.simpleip.SimpleIpHandler] - Error connecting: {}
java.net.ConnectException: Connection refused (Connection refused)
        at java.net.PlainSocketImpl.socketConnect(Native Method)[:1.8.0_111]
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)[:1.8.0_111]
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)[:1.8.0_111]
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)[:1.8.0_111]
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)[:1.8.0_111]
        at java.net.Socket.connect(Socket.java:589)[:1.8.0_111]
        at java.net.Socket.connect(Socket.java:538)[:1.8.0_111]
        at java.net.Socket.<init>(Socket.java:434)[:1.8.0_111]
        at java.net.Socket.<init>(Socket.java:211)[:1.8.0_111]
        at org.openhab.binding.sony.internal.net.SocketSession.connect(SocketSession.java:141)[250:org.openhab.binding.sony:2.0.0.201612301323]
        at org.openhab.binding.sony.internal.simpleip.SimpleIpProtocol.login(SimpleIpProtocol.java:156)[250:org.openhab.binding.sony:2.0.0.201612301323]
        at org.openhab.binding.sony.internal.simpleip.SimpleIpHandler.connect(SimpleIpHandler.java:280)[250:org.openhab.binding.sony:2.0.0.201612301323]
        at org.openhab.binding.sony.internal.simpleip.SimpleIpHandler.access$3(SimpleIpHandler.java:277)[250:org.openhab.binding.sony:2.0.0.201612301323]
        at org.openhab.binding.sony.internal.simpleip.SimpleIpHandler$5.run(SimpleIpHandler.java:376)[250:org.openhab.binding.sony:2.0.0.201612301323]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_111]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_111]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)[:1.8.0_111]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[:1.8.0_111]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_111]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_111]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
2017-01-10 08:57:41.011 [INFO ] [ny.internal.simpleip.SimpleIpHandler] - Will try to reconnect in 10 seconds

If the TV is on I get:

2017-01-10 09:20:38.504 [WARN ] [rg.jivesoftware.smack.XMPPConnection] - Connection closed with error
java.io.EOFException: no more data available - expected end tag </stream:stream> to close start tag <stream:stream> from line 1, parser stopped on END_TAG seen ...<![CDATA[result=-1]]></oa></iq>... @1:640
        at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3035)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.jivesoftware.smack.tcp.PacketReader.parsePackets(PacketReader.java:279)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.jivesoftware.smack.tcp.PacketReader.access$000(PacketReader.java:47)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.jivesoftware.smack.tcp.PacketReader$1.run(PacketReader.java:81)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
2017-01-10 09:20:41.013 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:20:45.038 [INFO ] [arthome.model.script.heating.rules: ] - Heating & Hot Water: already on!
2017-01-10 09:20:49.156 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:20:54.162 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:20:59.166 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:00.072 [INFO ] [marthome.model.script.Vacation.rules] - G_Lights (7 days ago) were OFF
2017-01-10 09:21:04.171 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:09.175 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:14.179 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:19.183 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:24.187 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:25.439 [INFO ] [.smarthome.model.script.abus.rules: ] - NO new picture from Dome on Roof
2017-01-10 09:21:40.915 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:49.425 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...
2017-01-10 09:21:53.626 [WARN ] [rg.jivesoftware.smack.XMPPConnection] - Connection closed with error
java.io.EOFException: no more data available - expected end tag </stream:stream> to close start tag <stream:stream> from line 1, parser stopped on END_TAG seen ...<![CDATA[result=-1]]></oa></iq>... @1:640
        at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3035)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.jivesoftware.smack.tcp.PacketReader.parsePackets(PacketReader.java:279)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.jivesoftware.smack.tcp.PacketReader.access$000(PacketReader.java:47)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
        at org.jivesoftware.smack.tcp.PacketReader$1.run(PacketReader.java:81)[195:org.openhab.binding.harmonyhub:2.0.0.201612232333]
2017-01-10 09:21:54.429 [INFO ] [nding.sony.internal.ircc.IrccHandler] - Attempting connection to IRCC device...

Any suggestion?

Thomas,

Interesting - I didn’t know the simpleip service could sleep like that. When you run the WOL command, does the tv physically turn on or does it just wake the service and you can telnet to it again? If it’s the later, should be no problem adding that.

Tim

The first log is similar to what Thomas (above) posted - seems your simpleip service goes to sleep and needs to be woken. Depending on how Thomas answers, I’ll provide a fix for that soon.

The second log is what oppo posted above - the IRCC service doesn’t want to connect. I’m still working on why that could be. Keep an eye on this log to try again later.

BTW - the exceptions in the second one are due to your harmonyhub and unrelated to the sony binding.

Tim, It physically turns on

Hey Tim,

if you need feedback from the TV, here it is described how to get it: http://shop.kindermann.com/erp/KCO/avs/3/3005/3005000168/01_Anleitungen+Doku/Steuerungsprotokoll_1.pdf

You can get the volume and the channel from the TV via http for example.

Best
Marco

So are you saying that this binding is ONLY online if the TV is on (ie when the tv goes into standby - the binding goes offline)? Could you go into your settings->power->eco and tell me what the settings are?

Marco,

Yep - that’s what I initially started with. I’m waaayy beyond that document now. But thanks!

Tim

Thanks for your response.
You are absolutely right about the harmony messages.
Sorry for that.

I’ll wait for outcome of the other questions then.

Hi Tim,
If this could help, please note that I didn’t activate the IRCC thing.