Comments (25)
I have both A50 and Up2Stream and works here perfectly. I am actually listening right now in multiroom the two devices.
Try resetting the devices to factory defaults. You don't need to set up anything from the Android app as you connect through Ethernet cable, let them get DHCP address statically from your router.
Make sure you're in the same multiroom mode with all your devices you're trying to make multiroom, and you're using the latest possible firmware version. If possible don't use multiroom_wifidirect: True
- multiroom will work through Ethernet - much more stable and with less delay than WiFi.
It may really be that the devices fail to properly reach each other in wififirect mode, if you have thick walls etc.
I wish there could be a way to turn WiFi off completely on these. On A50 I even use an 50ohm RF terminator instead of the antenna to disable WiFi signal around the device.
from home-assistant-custom-components-linkplay.
my devices definetely don't support the ConnectMasterAp command. then it must be a firmware version problem, though i have factory reset and updated all three of them.
do you by chance have ipv6 disabled in your network? i was wondering if i am maybe getting ipv6 connected to a different update image server that has old versions
from home-assistant-custom-components-linkplay.
I don't use ipv6, and have configured the devices in Home Assistant by ipv4 address. DNS not involved.
What's the firmware version number and what's the UUID?
from home-assistant-custom-components-linkplay.
the first one is the A50:
$ for ip in 192.168.3.8 192.168.3.9 192.168.3.10; do curl -s "http://$ip/httpapi.asp?command=getStatus" | jq 'with_entries(select([.key] | inside(["hardware","firmware","uuid"])))'; done
{
"firmware": "4.2.8826",
"uuid": "FF31F09EBFB2DCBA7B9B43C8",
"hardware": "A31"
}
{
"firmware": "3.8.6119",
"uuid": "FF31F01222A0EEFF45156343",
"hardware": "A31"
}
{
"firmware": "3.8.6119",
"uuid": "FF31F01218EAFA065B01471C",
"hardware": "A31"
}
tried updating again. don't know what updatestatus 20/22 means. when i call getMvRemoteUpdateStart, the speakers all say "firmware upgrade failed"
$ for ip in 192.168.3.8 192.168.3.9 192.168.3.10; do curl "http://$ip/httpapi.asp?command=getMvRemoteUpdateStartCheck"; echo ""; done
OK
OK
OK
$ sleep 60
$ for ip in 192.168.3.8 192.168.3.9 192.168.3.10; do curl "http://$ip/httpapi.asp?command=getMvRemoteUpdateStatus"; echo ""; done
20
22
22
from home-assistant-custom-components-linkplay.
Ah, that's the reason. Version 3.8.6119 is really, really old.
Updates status codes:
40 Find new version
10 checking
21 Check fail
22 Download fail
23 Verify firmware fail
25 downloading
27 Download finished, burning (for user part)
30 Download finished, burning
others No new version
Are these all similar A50s?
from home-assistant-custom-components-linkplay.
the first one is an a50, the other 2 are up2stream modules. i'm looking at what the speakers are doing using wireshark now. might be that i need to call a command other than getMvRemoteUpdateStartCheck. where did you get those api values?
from home-assistant-custom-components-linkplay.
https://cdn.shopify.com/s/files/1/0072/6899/1049/files/WIFI_AUDIO_HTTP_API.pdf
I just checked my Up2Stream is at firmware v4.2.8826.
Maybe there's an issue with your internet routing to the update server. Maybe you could try sharing a wireless hotspot from a mobile, connect them to that and let them update from there.
from home-assistant-custom-components-linkplay.
They seem to have ended support for my up2stream modules. I have the first batch and now they are called v2.
The speakers are reaching the download server fine, the problem is just that there are no updates.
The url they are fetching: http://s000.linkplay.com:8020/wifi_audio_image_7688/products.xml
Edit: I bought those just june 2019. I guess that's what I get for buying chinese junk
Edit: I asked their support for newer firmware, I guess with a proxy I could hijack that update mechanism
from home-assistant-custom-components-linkplay.
Back to the initial request: in case I don't get newer firmware, would you take a pull request that does multiroom grouping with the old api depending on the firmware version? My best guess right now would be to test for firmware < 4.0 and use that old api I linked
from home-assistant-custom-components-linkplay.
Sure. Make sure you specify the firmware version limits as constants at the top so we can adjust if we find newer infos about this later.
The first 8 characters of UUID identify the manufacturer of the speaker.
from home-assistant-custom-components-linkplay.
You could try inspecting with HttpCanary on Android the communication with the app. That uses mostly Upnp, maybe we could migrate the whole thing from this shitty httpapi.
from home-assistant-custom-components-linkplay.
i'll see. using the uuid i found this old thread: https://community.home-assistant.io/t/linkplay-integration/33878/162
does it mean there might be support for the old api somewhere in git history?
from home-assistant-custom-components-linkplay.
Have no clue.
from home-assistant-custom-components-linkplay.
turns out i messed up when trying the commands with curl and when i "sanity-checked" with your code, this bug prevented the wifidirect mode from being used. i'll try to find a way to get newer firmware on my up2stream modules, because this unprotected hidden ssid thing is driving me nuts.
edit: the android app also uses httpapi to control multiroom stuff
from home-assistant-custom-components-linkplay.
When in wifidirect multiroom mode, I don't think the multiroom AP is bridged with the local network. They use a separate 10.0.0.0 IP address range to communicate with each other so although unprotected, direct access to the local network is not immediate. But I agree it exposes risks.
You could try experimenting with encryption for wifidirect, maybe it works.
httpapi.asp?command=ConnectMasterAp:ssid=SSID:ch=4:auth=OPEN:encry=NONE:pwd=:chext=0
Direct connect mode, SSID: HEX encoded wifi ssid, eg: ABC = 414243
Try replacing OPEN and NONE with some values (like WPA2PSK and AES maybe), add a password after pwd=
maybe it works. If successful, add to config these values so that everybody could use their own values.
from home-assistant-custom-components-linkplay.
Moreover, if I look at the output of getStatusEx
, I see that there are not only SSID, but also a list of supported auths and encryptions:
"auth": "WPAPSKWPA2PSK",
"encry": "AES",
"psk": "SOME HEX ENCODED STRING",
Do you have these on your firmares?
Maybe we could process these just like we do like the SSID:
from home-assistant-custom-components-linkplay.
When in wifidirect multiroom mode, I don't think the multiroom AP is bridged with the local network.
I tried it, my traffic got routed through the A50 into the other wifi. They are doing this so the slave speaker has internet access when connected to the master. Haven't tried between the multiroom wifi and ethernet.
Do you have these on your firmares?
I had tried with the "wlanConnectAp" from the other api doc and couldn't get it to work: https://github.com/AndersFluur/LinkPlayApi/blob/master/api.md#wifi-network-connection - haven't tried "wlanConnectApEx" yet. If I can get it to work, I'll patch LinkPlayDevice.join to support getting the wifi credentials from the master and joining the slave using those. Or is there a reason you implemented changing the wifi key and not a way to use it?
Arylic have replied they'll send me newer firmware for the up2stream v1
from home-assistant-custom-components-linkplay.
I only added the WiFi key changing from HA to at least not have open wifis by default. I use and recommend everyone not to use wifidirect multiroom at all.
from home-assistant-custom-components-linkplay.
Since this thread by now is a pretty good collection of buzzwords for google, I'm posting this here for future visitors:
I got my old up2stream modules updated to 4.2.8826 by switching the update server: http://$ip/httpapi.asp?command=SetUpdateServer:http://ota.rakoit.com/alpha
I couldn't figure out how to start the update from the api (getMvRemoteUpdateStart etc returned errors) but the mobile app showed a "NEW" button to start the upgrade.
from home-assistant-custom-components-linkplay.
I tried the following:
i have an A11 device
open URL in browser:
http://192.168.1.81/httpapi.asp?command=SetUpdateServer:http://ota.rakoit.com/alpha
answer of browser
OK
open URL in browser:
http://192.168.1.81/index.html#systemPage
Clicked Online Update
Error, in voice through the speaker and in the browser:
Firmware download failed,Please check your network connection
open URL in browser:
http://ota.rakoit.com/alpha
answer of browser:
403 Forbidden
from home-assistant-custom-components-linkplay.
Well then i guess they changed their webserver. Nothing i can do about it
It might just be that /index.html is forbidden
from home-assistant-custom-components-linkplay.
Not sure if a new issue should be raised, but I figured the information I found relates to what is in this issue.
The Problem: recently I noticed Multiroom joining fails for specific devices. I discovered the problem persists using the 4stream app.
Acutally, I can create Multiroom groups using Arylic devices (A50, U2S pro v2 and U2S pro v3) all version 4.6.... AND a group using GGMM E2 speakers all version > 4.2.8506
I was not able to create mixed groups using either the integration or the 4stream app.
Using RouterMultiroomEnable helped me with a Medion Speaker before so I tried it, in this case it did not help.
Finally, I used a Flashtool found in the Arylic Forum to flash the beta firmware from the same thread which enabled me to create a mixed group with the flashed GGMM E2 and arylic devices.
Heads up I should mention: Alexa does not work on GGMM device after flashing and probably more things are broken.
Should we now flash all EOL Linkplay devices with some beta firmware or it there better solutions?
from home-assistant-custom-components-linkplay.
Thanks for sharing this findings, I have 4x A11 (DOSS) and 2x A31 (AudioCast) devices
are the A31 also already end of life? i did not know that
I wonder I with this flash tool, could i try to force A31 beta firmware onto A11 devices? (DOSS Cloudfox A1)
Thanks for any ideas, I appreciate your time
from home-assistant-custom-components-linkplay.
Acutally I should clarify, end of life might not be correct assesment. I am just under the impression Arylic is the only manufacturer actively developing on their devices. They made changes to their app and firmware I have not found the same for example with the Medion app.
When checking GGMM E2 and Medion MD 43970 they both relesead firmware updates in 2020 (August and September) so maybe they will follow arylic they will hopefully still receive updates to 4.6.
I was browsing the update servers today to update my GGMM to a non-beta 4.6.328252.47 firmware (20210903). All firmwares I found were for A31 but I did not do extensive search, only looking for devices I have at home.
Edit: you should not try to force flash cross different logicboards. On the updates site there is different images for A28 and A31 and maybe at some point for A11.
from home-assistant-custom-components-linkplay.
from home-assistant-custom-components-linkplay.
Related Issues (20)
- Unable to use tts HOT 1
- Up2stream becomes unavailabe HOT 3
- Group/Ungroup toggle inconsistent with 2 slaves
- Rakoit M50 unavailable HOT 5
- Example config doesn't pass checks on 2023.11.2 HOT 1
- led_off doesn't work for Arylics anymore HOT 2
- Using deprecated constants for supported features HOT 1
- Integration problems with Harman Kardon Allure HOT 1
- NameError when connection is lost via UPnP
- Updating linkplay media_player took longer than the scheduled update interval HOT 3
- Announcements/TTS: how to use the resume feature? HOT 2
- The integration is not working with 2024.5.0b0 HOT 8
- linkplay' calls async_register from a thread at custom_components/linkplay/__init__.py, line 171: hass.services.async_register HOT 2
- Add MTLS-support HOT 5
- Add command to Command service
- Join error
- Controls not Working, playing info not always displayed, same with covers
- Slightly off-topic: Replacing the firmware of the Linkplay A31 module HOT 4
- Metadata not showing for WiiM device playing via AirPlay
- Streaming via Amazon Music App: incorrect entity state and attributes
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from home-assistant-custom-components-linkplay.