Is anyone else besides myself interested in a component for LinkPlay audio systems integration? I don’t have much information on it but it seems like a good fit for a future addition to Home Assistant.
They are a little light on specific details even on their own website but I think the SoC concept behind it (much like Google’s Chromecast audio) is in high demand right now.
The concept of this player is interesting.
The LinkPlay ( WiiMu ) company manufactures Audio WiFi modules that are used in the innumerable equipment of such companies as:
iEast
AudioCast
Audio Pro
SoundBot
iLuv
iDea USA
I would really like some help in testing out a new HA component for Linkplay based devices that I’ve been working on. It’s my first HA component and I’m quite novice when it comes to Python so expect issues
Basic player control should work. I have some issues with source selection and media info display but hope to get that sorted if I can get some help from people with other devices. Since I only have one Linkplay based device at home there is no multiroom support…
The component uses eyeD3 to get media info from mp3 files, and it effectively fills the /tmp partition very quickly… Will see if I can get around that somehow
I took my self some time today allready
Something is not working thou:
018-12-19 21:40:23 ERROR (MainThread) [homeassistant.components.media_player] Error while setting up platform linkplay
Traceback (most recent call last):
File “/usr/local/lib/python3.6/site-packages/homeassistant/helpers/entity_platform.py”, line 128, in _async_setup_platform
SLOW_SETUP_MAX_WAIT, loop=hass.loop)
File “/usr/local/lib/python3.6/asyncio/tasks.py”, line 358, in wait_for
return fut.result()
File “/usr/local/lib/python3.6/concurrent/futures/thread.py”, line 56, in run
result = self.fn(*self.args, **self.kwargs)
File “/config/custom_components/media_player/linkplay.py”, line 111, in setup_platform
if linkplay.update() is False:
File “/config/custom_components/media_player/linkplay.py”, line 492, in update
self._update_via_upnp()
File “/config/custom_components/media_player/linkplay.py”, line 376, in _update_via_upnp
media_info = self._upnp_device.AVTransport.GetMediaInfo(InstanceID=0)
AttributeError: ‘NoneType’ object has no attribute ‘AVTransport’
2018-12-19 21:40:30 ERROR (MainThread) [homeassistant.core] Error doing job: Future exception was never retrieved
Traceback (most recent call last):
File “/usr/local/lib/python3.6/concurrent/futures/thread.py”, line 56, in run
result = self.fn(*self.args, **self.kwargs)
File “/usr/local/lib/python3.6/site-packages/homeassistant/components/sensor/waze_travel_time.py”, line 74, in
EVENT_HOMEASSISTANT_START, lambda _: sensor.update())
File “/usr/local/lib/python3.6/site-packages/homeassistant/components/sensor/waze_travel_time.py”, line 204, in update
routes = params.calc_all_routes_info(real_time=self._realtime)
File “/usr/local/lib/python3.6/site-packages/WazeRouteCalculator/WazeRouteCalculator.py”, line 145, in calc_all_routes_info
routes = self.get_route(npaths, time_delta)
File “/usr/local/lib/python3.6/site-packages/WazeRouteCalculator/WazeRouteCalculator.py”, line 95, in get_route
response_json = response.json()
File “/usr/local/lib/python3.6/site-packages/requests/models.py”, line 897, in json
return complexjson.loads(self.text, **kwargs)
File “/usr/local/lib/python3.6/site-packages/simplejson/init.py”, line 518, in loads
return _default_decoder.decode(s)
File “/usr/local/lib/python3.6/site-packages/simplejson/decoder.py”, line 370, in decode
obj, end = self.raw_decode(s)
File “/usr/local/lib/python3.6/site-packages/simplejson/decoder.py”, line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
I think I know what the problem is. I had to make some changes regarding the UPNP commuincation and as part of this it’s important that the name of the device is specified in the configuration.yaml exactly as it’s specified in the Audio Pro mobile app.
Also make sure that you are not using multiroom, because then it will crash very hard
018-12-19 22:42:26 ERROR (SyncWorker_13) [custom_components.media_player.linkplay] Error fetching data: <PreparedRequest [GET]> from http://köket/httpapi.asp?command=getPlayerStatus failed with HTTPConnectionPool(host=‘xn–kket-5qa’, port=80): Max retries exceeded with url: /httpapi.asp?command=getPlayerStatus (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x6d55d3d0>: Failed to establish a new connection: [Errno -2] Name does not resolve’,))