Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does not appear as airplay speaker #509

Open
Lorn888 opened this issue Dec 9, 2023 · 20 comments
Open

Does not appear as airplay speaker #509

Lorn888 opened this issue Dec 9, 2023 · 20 comments

Comments

@Lorn888
Copy link

Lorn888 commented Dec 9, 2023

I'm trying to get the set up working
I have :

sonos play 1
raspberry pi 4b (using Homebridge on it btw)

and after following the instructions and running Airconect on my raspberry, speaker still comes up on spotify as a wifi speaker not Airplay like my homepod or even TV.

Please tell me what I should do what info you need to be able to help me. I really want to make it work

@philippe44
Copy link
Owner

I'd need a log to see what is being detected. Just launch it manually and copy/paste the screen or look at the command line help to log tings in a file

@Lorn888
Copy link
Author

Lorn888 commented Dec 9, 2023

is that what you mean ?

./aircast-linux-arm -l 1000:2000
[01:15:22.931] main:940 Starting aircast version: v1.5.4 (Dec  4 2023 @ 17:56:30)
[01:15:22.931] main:947 no config file, using defaults
[01:15:22.933] Start:700 Binding to 10.55.0.1 [usb0] with mask 0xfffffff8
[01:15:22.950] Start:726 Starting pico HTTP server on port 55013

@philippe44
Copy link
Owner

philippe44 commented Dec 9, 2023

Yes. It seems you have launched it in a docker or behind a NAT. Per doc, it can't work, it must be on the same network as the devices. If this so docker, use host mode. Homebridge would have to be configured for that. I think AirConnect has a prebuilt HB package.

@Lorn888
Copy link
Author

Lorn888 commented Dec 9, 2023

Can you tell me more about? What exactly should I do ? I'm not exactly a raspbian pro. How to launch it outside of the docker ?

@Lorn888
Copy link
Author

Lorn888 commented Dec 9, 2023

I disabled all dockers on another pi and followed instructoions and still nothing

pi@CODEPI:~/Downloads/air/AirConnect-1.5.4 $ ./aircast-linux-arm -l 1000:2000 [15:48:20.111] main:940 Starting aircast version: v1.5.4 (Dec 4 2023 @ 17:56:30) [15:48:20.112] main:947 no config file, using defaults [15:48:20.113] Start:700 Binding to 10.55.0.1 [usb0] with mask 0xfffffff8 [15:48:20.203] Start:726 Starting pico HTTP server on port 45701

@philippe44
Copy link
Owner

Can you tell me a bit how your network is configured? What is where in term of segments?

@Lorn888
Copy link
Author

Lorn888 commented Dec 9, 2023

Not sure if that's what your asking but I have a router and all the devices connected to it via WiFi.

2 raspberry pi's included.
One of them I use as a homebridge
The other for code-server for my iPad

The Sonos speaker is also connected via WiFi.

Is that what you wanted to know ? Let me know what info you need.

@Lorn888
Copy link
Author

Lorn888 commented Dec 9, 2023

Oh and that homebridge is also using zigbee athena for lights

@philippe44
Copy link
Owner

No I mean are they on the same subnet or do you have a different subnet for your players versus homebridge versus other devices. If your router is subdividing your network or you did or your router is having some weird protection sets, like IGMP routing, it's preventing devices to be discovered when they are on different segments. As long as they are all on WiFi (and the searcher) then that would be fine.

Still it seems that you are launching AirConnect in a class A network which is pretty unusual unless it's dockerized or beyond some kind of NAT. That's my highest probable suspicion but it can be some thing preventing multicast traffic between branches of your network as well.

If you are not familiar with these topics, I suggest you google them

@Lorn888
Copy link
Author

Lorn888 commented Dec 9, 2023

Will it help if I provide you with multicast.pcap?

@Lorn888
Copy link
Author

Lorn888 commented Dec 12, 2023

Tried on my windows pc and its just seeing my TV(its already airplay) and doesnt see the sonos speaker

[15:47:35.366] main:1390 Starting airupnp version: v1.5.4 (Dec 6 2023 @ 18:22:05)
[15:47:35.366] main:1397 no config file, using defaults
[15:47:35.404] Start:1101 Binding to iface 192.168.0.65:0 [Ethernet 2]
[15:47:35.414] Start:1140 Starting pico HTTP server on port 50220
[15:47:36.575] AddMRDevice:1027 [00524290]: adding renderer (TV) with mac BBBB1CD93314
[15:47:36.591] MasterHandler:653 [00524290]: subscribe success
[15:47:36.650] ProcessEvent:457 [00524290]: UPnP Volume local change 15:-1 (master)
[15:47:45.084] rtsp_thread:333 got RTSP connection 572
[15:47:45.161] handle_rtsp:380 [00577190]: challenge 2PyTGUoMJ0dPMfJVejibZA==
[15:47:45.177] handle_rtsp:374 [00577190]: received ANNOUNCE
[15:47:45.186] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 4

[15:47:45.197] handle_rtsp:374 [00577190]: received SETUP
[15:47:45.199] raopst_init:265 [005C3570]: UDP port-0 61381
[15:47:45.199] raopst_init:265 [005C3570]: UDP port-1 61382
[15:47:45.200] raopst_init:265 [005C3570]: UDP port-2 61383
[15:47:45.200] raopst_init:283 [005C3570]: HTTP listening port 50266
[15:47:45.200] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Transport: RTP/AVP/UDP;unicast;mode=record;control_port=61382;timing_port=61383;server_port=61381
Session: DEADBEEF
Audio-Jack-Status: connected; type=analog
CSeq: 5

[15:47:45.209] rtp_thread_func:728 [005C3570]: 1st NTP packet received
[15:47:45.212] handle_rtsp:374 [00577190]: received RECORD
[15:47:45.216] raopst_record:378 [005C3570]: record 0 0
[15:47:45.217] HandleRAOP:295 [00524290]: Stream
[15:47:45.217] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 6

[15:47:45.225] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:45.225] handle_rtsp:541 [00577190]: SET PARAMETER volume -20.000000
[15:47:45.226] CtrlSetVolume:229 [00524290]: uPNP volume 33 (cookie 00000000)
[15:47:45.231] HandleRAOP:363 [00524290]: Volume[0..100] 33
[15:47:45.232] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 7

[15:47:45.241] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:45.241] handle_rtsp:541 [00577190]: SET PARAMETER volume -20.000000
[15:47:45.242] CtrlSetVolume:229 [00524290]: uPNP volume 33 (cookie 00000001)
[15:47:45.248] HandleRAOP:363 [00524290]: Volume[0..100] 33
[15:47:45.248] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 8

[15:47:45.249] ActionHandler:544 Error in action callback -- 606 (cookie 00000000)
[15:47:45.264] ActionHandler:544 Error in action callback -- 606 (cookie 00000001)
[15:47:45.265] buffer_put_packet:519 [005C3570]: fill [level:1] [W:36197 R:36197]
[15:47:45.282] handle_rtsp:374 [00577190]: received FLUSH
[15:47:45.283] raopst_flush:346 [005C3570]: FLUSH ignored as same as RECORD (36197 - 3447729299)
[15:47:45.283] raopst_flush:362 [005C3570]: flush 36197 3447729299
[15:47:45.284] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 9

[15:47:45.294] handle_rtsp:374 [00577190]: received TEARDOWN
[15:47:45.294] HandleRAOP:300 [00524290]: Stop
[15:47:45.318] http_thread_func:1064 [005C3570]: terminating
[15:47:45.349] rtp_thread_func:739 [005C3570]: terminating
[15:47:45.364] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 10

[15:47:45.374] rtsp_thread:348 RTSP close 572
[15:47:48.408] rtsp_thread:333 got RTSP connection 604
[15:47:48.476] handle_rtsp:380 [00577190]: challenge KE8JFEC9olKg37gMgOAuJA==
[15:47:48.496] handle_rtsp:374 [00577190]: received ANNOUNCE
[15:47:48.505] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 4

[15:47:48.514] handle_rtsp:374 [00577190]: received SETUP
[15:47:48.517] raopst_init:265 [005BB568]: UDP port-0 61384
[15:47:48.519] raopst_init:265 [005BB568]: UDP port-1 61385
[15:47:48.520] raopst_init:265 [005BB568]: UDP port-2 61386
[15:47:48.521] raopst_init:283 [005BB568]: HTTP listening port 50284
[15:47:48.521] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Transport: RTP/AVP/UDP;unicast;mode=record;control_port=61385;timing_port=61386;server_port=61384
Session: DEADBEEF
Audio-Jack-Status: connected; type=analog
CSeq: 5

[15:47:48.531] rtp_thread_func:728 [005BB568]: 1st NTP packet received
[15:47:48.533] handle_rtsp:374 [00577190]: received RECORD
[15:47:48.535] raopst_record:378 [005BB568]: record 0 0
[15:47:48.536] HandleRAOP:295 [00524290]: Stream
[15:47:48.537] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 6

[15:47:48.546] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:48.550] handle_rtsp:541 [00577190]: SET PARAMETER volume -20.000000
[15:47:48.551] CtrlSetVolume:229 [00524290]: uPNP volume 33 (cookie 00000002)
[15:47:48.552] HandleRAOP:363 [00524290]: Volume[0..100] 33
[15:47:48.553] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 7

[15:47:48.563] rtp_thread_func:634 [005BB568]: 1st RTP packet received
[15:47:48.567] rtp_thread_func:640 [005BB568]: 1st sync packet received
[15:47:48.567] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:48.567] ActionHandler:544 Error in action callback -- 606 (cookie 00000002)
[15:47:48.569] handle_rtsp:541 [00577190]: SET PARAMETER volume -20.000000
[15:47:48.570] CtrlSetVolume:229 [00524290]: uPNP volume 33 (cookie 00000003)
[15:47:48.571] HandleRAOP:363 [00524290]: Volume[0..100] 33
[15:47:48.572] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 8

[15:47:48.587] ActionHandler:544 Error in action callback -- 606 (cookie 00000003)
[15:47:48.587] buffer_put_packet:519 [005BB568]: fill [level:1] [W:16193 R:16193]
[15:47:48.686] handle_rtsp:374 [00577190]: received FLUSH
[15:47:48.686] raopst_flush:346 [005BB568]: FLUSH ignored as same as RECORD (16193 - 2278726819)
[15:47:48.688] raopst_flush:362 [005BB568]: flush 16193 2278726819
[15:47:48.689] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 9

[15:47:48.958] search_remote_cb:632 [00577190]: found ActiveRemote for 4724A545234BEDC6 at 192.168.0.216:49482
[15:47:49.210] handle_rtsp:374 [00577190]: received TEARDOWN
[15:47:49.210] HandleRAOP:300 [00524290]: Stop
[15:47:49.251] http_thread_func:1064 [005BB568]: terminating
[15:47:49.267] rtp_thread_func:739 [005BB568]: terminating
[15:47:49.268] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 10

[15:47:49.318] rtsp_thread:348 RTSP close 604
[15:47:52.909] rtsp_thread:333 got RTSP connection 572
[15:47:52.982] handle_rtsp:380 [00577190]: challenge wlttUR1yd3C2vO88K8wvFw==
[15:47:53.002] handle_rtsp:374 [00577190]: received ANNOUNCE
[15:47:53.011] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 4

[15:47:53.020] handle_rtsp:374 [00577190]: received SETUP
[15:47:53.022] raopst_init:265 [005BB568]: UDP port-0 61387
[15:47:53.022] raopst_init:265 [005BB568]: UDP port-1 61388
[15:47:53.023] raopst_init:265 [005BB568]: UDP port-2 61389
[15:47:53.024] raopst_init:283 [005BB568]: HTTP listening port 50305
[15:47:53.025] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Transport: RTP/AVP/UDP;unicast;mode=record;control_port=61388;timing_port=61389;server_port=61387
Session: DEADBEEF
Audio-Jack-Status: connected; type=analog
CSeq: 5

[15:47:53.031] handle_rtsp:374 [00577190]: received RECORD
[15:47:53.036] rtp_thread_func:728 [005BB568]: 1st NTP packet received
[15:47:53.036] raopst_record:378 [005BB568]: record 0 0
[15:47:53.037] HandleRAOP:295 [00524290]: Stream
[15:47:53.038] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 6

[15:47:53.045] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:53.046] handle_rtsp:541 [00577190]: SET PARAMETER volume -20.000000
[15:47:53.059] CtrlSetVolume:229 [00524290]: uPNP volume 33 (cookie 00000004)
[15:47:53.060] HandleRAOP:363 [00524290]: Volume[0..100] 33
[15:47:53.061] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 7

[15:47:53.069] rtp_thread_func:634 [005BB568]: 1st RTP packet received
[15:47:53.069] rtp_thread_func:640 [005BB568]: 1st sync packet received
[15:47:53.071] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:53.071] handle_rtsp:541 [00577190]: SET PARAMETER volume -20.000000
[15:47:53.072] CtrlSetVolume:229 [00524290]: uPNP volume 33 (cookie 00000005)
[15:47:53.073] HandleRAOP:363 [00524290]: Volume[0..100] 33
[15:47:53.073] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 8

[15:47:53.111] handle_rtsp:374 [00577190]: received FLUSH
[15:47:53.111] raopst_flush:346 [005BB568]: FLUSH ignored as same as RECORD (39963 - 2989388292)
[15:47:53.113] raopst_flush:362 [005BB568]: flush 39963 2989388292
[15:47:53.113] buffer_put_packet:519 [005BB568]: fill [level:1] [W:39963 R:39963]
[15:47:53.114] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 9

[15:47:53.176] ActionHandler:544 Error in action callback -- 606 (cookie 00000004)
[15:47:53.177] ActionHandler:544 Error in action callback -- 606 (cookie 00000005)
[15:47:53.501] search_remote_cb:632 [00577190]: found ActiveRemote for E1F9E361756A4B5A at 192.168.0.216:49488
[15:47:54.980] HandleRAOP:330 [00524290]: uPNP setURI http://192.168.0.65:50305/stream-0.flac (cookie 00000006)
[15:47:54.980] AVTPlay:135 [00524290]: uPNP play (cookie 00000007)
[15:47:55.009] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:55.009] handle_rtsp:568 [00577190]: received JPEG image of 79816 bytes
[15:47:55.010] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 10

[15:47:55.018] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:55.018] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 11

[15:47:55.027] handle_rtsp:374 [00577190]: received SET_PARAMETER
[15:47:55.028] handle_rtsp:560 [00577190]: received metadata
artist: my!lane
album: Sakura's Shadows
title: This Feeling
[15:47:55.032] handle_rtsp:587 [00577190]: responding:
RTSP/1.0 200 OK
Audio-Jack-Status: connected; type=analog
CSeq: 12

[15:47:55.184] http_thread_func:949 [005BB568]: got HTTP connection 1220 (silent frames 0)
[15:47:55.185] handle_http:1080 [005BB568]: received HEAD HTTP/1.1
Connection: close
User-Agent: Neptune/1.1.3
Host: 192.168.0.65:50305

[15:47:55.187] handle_http:1124 [005BB568]: responding: HTTP/1.0 200 OK
Server: HairTunes
Content-Type: audio/flac
Connection: close

[15:47:55.188] http_thread_func:969 HTTP close 1220
[15:47:57.184] http_thread_func:949 [005BB568]: got HTTP connection 1152 (silent frames 0)
[15:47:57.186] handle_http:1080 [005BB568]: received GET HTTP/1.1
Host: 192.168.0.65:50305
User-Agent: Mozilla/5.0 (Web0S; Linux/SmartTV) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.34 Safari/537.36 WebAppManager
Connection: close
icy-metadata: 1
Range: bytes=0-

[15:47:57.187] handle_http:1124 [005BB568]: responding: HTTP/1.0 200 OK
Server: HairTunes
Content-Type: audio/flac
Connection: close

[15:47:57.188] _buffer_get_frame:891 [005BB568]: drain [level:513 gap:-2329] [W:40476 R:39963] [R:0 S:0 F:0]
[15:47:57.678] http_thread_func:969 HTTP close 1152
[15:48:01.270] buffer_put_packet:519 [005BB568]: fill [level:452] [W:40987 R:40536]
[15:48:05.011] UpdateThread:714 [00524290]: removing unresponsive player (TV+)
[15:48:05.028] rtp_thread_func:739 [005BB568]: terminating
[15:48:05.072] http_thread_func:1064 [005BB568]: terminating
[15:48:05.074] MRThread:278 [00524290] player thread exited
[15:48:07.326] AddMRDevice:1027 [00524290]: adding renderer (TV) with mac BBBB1CD93314
[15:48:07.337] MasterHandler:653 [00524290]: subscribe success
[15:48:07.393] ProcessEvent:457 [00524290]: UPnP Volume local change 15:-1 (master)
[15:48:25.310] ActionHandler:544 Error in action callback -- -207 (cookie 00000007)

@philippe44
Copy link
Owner

I can't tell for sure but I think you have one of these wifi network system that wants to be smart but potentially interfere a lot with broadcast and multicast and that's in the way here, likely. Try any UPnP tool that discovers players and try to see, from the same Windows machine, if it sees the Sonos (I'm not talking about the Sonos app, but about a vanilla UPnP controller).

@6b6561
Copy link

6b6561 commented Dec 19, 2023

The gupnp-tools is a quite good tool for debuging UPNP stuff.

You can install it on raspian by running sudo apt-get install gupnp-tools and then list your renderers by running gssdp-discover --timeout=3 --target=urn:schemas-upnp-org:device:MediaRenderer:1

My speaker shows up as:

$ gssdp-discover --timeout=3 --target=urn:schemas-upnp-org:device:MediaRenderer:1
Using network interface eth0
Scanning for resources matching urn:schemas-upnp-org:device:MediaRenderer:1
Showing "available" messages
resource available
USN: uuid:F00DBABE-AA5E-BABA-DADA-188ED5720302::urn:schemas-upnp-org:device:MediaRenderer:1
Location: http://192.168.0.207:49154/nmrDescription.xml

Runing a discover will show what UPNP renderers are visible to your Raspbian.

It can be as Philippe said that you have a router which handles the cabled and wireless as two different network and therefore the devices cant see each other. You might have a setting for this on your router / wifi box.

@6b6561
Copy link

6b6561 commented Dec 19, 2023

I just noted that you are running aircast on your Raspbian, shouldn't it be airupnp for Sonos?

@Lorn888
Copy link
Author

Lorn888 commented Dec 19, 2023

I'll try what you said asap. And yes I was trying aircast but with airpnp it was the same situation

@Lorn888
Copy link
Author

Lorn888 commented Dec 23, 2023

This is what I get when I connect via eth cable

pi@CODEPI:/ $ gssdp-discover --timeout=3 --target=urn:schemas-upnp-org:device:MediaRenderer:1 Using network interface usb0 Scanning for resources matching urn:schemas-upnp-org:device:MediaRenderer:1 Showing "available" messages pi@CODEPI:/ $

@Lorn888
Copy link
Author

Lorn888 commented Dec 23, 2023

image

@6b6561
Copy link

6b6561 commented Dec 27, 2023

This is what I get when I connect via eth cable

pi@CODEPI:/ $ gssdp-discover --timeout=3 --target=urn:schemas-upnp-org:device:MediaRenderer:1 Using network interface usb0 Scanning for resources matching urn:schemas-upnp-org:device:MediaRenderer:1 Showing "available" messages pi@CODEPI:/ $

It doesn't list any renderers, if you look at my example it listed the description URL of my renderer. I also find the interface a bit weird as it scans usb0. You might want to run a sudo ifconfig to confirm which interface is used for your wired network connection. Then you can run a gssdp-discover -i eth0 --timeout=3 --target=urn:schemas-upnp-org:device:MediaRenderer:1 where ypu replace eth0 with your device.

@6b6561
Copy link

6b6561 commented Dec 27, 2023

Is your wifi maybe acting as a "guest network" if so, then it might behave in such a way that devices are not able to see each other. What brand and model is your router?

@Lorn888
Copy link
Author

Lorn888 commented Dec 28, 2023

I'm using virgin media hub 4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants