postlund / pyatv

A client library for Apple TV and AirPlay devices
https://pyatv.dev
MIT License
885 stars 99 forks source link

Unknown OS on Homepod gen 2 #2517

Open NebzHB opened 3 weeks ago

NebzHB commented 3 weeks ago

Hi

Describe the bug

Homepod gen 2 are recognized as Unknown OS

Error log

2024-10-06 10:46:03 DEBUG [pyatv.scripts]: Running with pyatv 0.15.1
2024-10-06 10:46:03 DEBUG [pyatv.storage.file_storage]: Loading settings from /root/.pyatv.conf
2024-10-06 10:46:03 DEBUG [pyatv.support.net]: Binding on *:5353
2024-10-06 10:46:03 DEBUG [pyatv.support.net]: Binding on 127.0.0.1:0
2024-10-06 10:46:03 DEBUG [pyatv.support.net]: Binding on 192.168.1.50:0
2024-10-06 10:46:03 DEBUG [pyatv.support.net]: Binding on 10.16.8.218:0
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Cuisine at 192.168.1.231:49153 via Protocol.Companion ({'rpmac': '1', 'rphn': 'e683219371f4', 'rpfl': '0x627B2', 'rpha': 'c34a71225bc8', 'rpmd': 'AudioAccessory5,1', 'rpvr': '604.1', 'rpad': '7393c0f57e7b', 'rphi': 'e40ec52b9749', 'rpba': '73:DF:69:C6:C6:6B'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Cuisine at 192.168.1.231:7000 via Protocol.AirPlay ({'acl': '0', 'btaddr': '43:B9:6E:05:2A:FA', 'deviceid': '5E:86:8C:86:50:8D', 'c': '1', 'fex': 'AMp/StBrNbwQoS4', 'features': '0x4A7FCA00,0xBC356BD0', 'flags': '0x98404', 'gid': 'E5E06F52-3F47-4557-B2E8-89F57F6D036A+1E788F81-2169-4617-92C1-46DB3D850740', 'igl': '1', 'gcgl': '1', 'model': 'AudioAccessory5,1', 'protovers': '1.1', 'pi': '1b3eb50d-664e-42cf-924e-d36cdc18487c', 'psi': '5D868C86-508D-41FD-A1A2-1A3F05EFBC27', 'pk': '74a9d9c811eab748a1850d171fe35783a06d67d310735cadc40ae12c86d8ee3d', 'srcvers': '800.74.2', 'osvers': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered 5E868C86508D@Cuisine at 192.168.1.231:7000 via Protocol.RAOP ({'cn': '0,1,2,3', 'da': 'true', 'et': '0,3,5', 'ft': '0x4A7FCA00,0xBC356BD0', 'sf': '0x98404', 'md': '0,1,2', 'am': 'AudioAccessory5,1', 'pk': '74a9d9c811eab748a1850d171fe35783a06d67d310735cadc40ae12c86d8ee3d', 'tp': 'UDP', 'vn': '65537', 'vs': '800.74.2', 'ov': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Chambre at 192.168.1.108:49153 via Protocol.Companion ({'rpmac': '1', 'rphn': '7874f2169e93', 'rpfl': '0x627B2', 'rpha': '0681f928b4ca', 'rpmd': 'AudioAccessory1,1', 'rpvr': '604.1', 'rpad': '38f2bde0a3f0', 'rphi': 'f430f519966e', 'rpba': 'AE:6A:6A:BC:95:C1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Chambre at 192.168.1.108:7000 via Protocol.AirPlay ({'acl': '0', 'btaddr': '6C:C2:03:8B:BA:7A', 'deviceid': '56:5F:43:74:2F:AA', 'c': '2', 'fex': 'AMp/StBrNbwQoS4', 'features': '0x4A7FCA00,0xBC356BD0', 'flags': '0x98404', 'gid': '3C4CE6F2-F480-4D68-BD54-4B70DC7AF186+AD314C18-C46E-4659-BB7A-A2A51E9E181C', 'igl': '1', 'gcgl': '1', 'model': 'AudioAccessory1,1', 'protovers': '1.1', 'pi': 'd2eaf123-7320-4ad9-97d2-525ef18a60f5', 'psi': '555F4374-2FAA-4560-84D8-5845D93728CE', 'pk': '29f275e243306dfac546b1ba68c7f81014adb8273ff34f52569684e4392e00ac', 'srcvers': '800.74.2', 'osvers': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered 565F43742FAA@Chambre at 192.168.1.108:7000 via Protocol.RAOP ({'cn': '0,1,2,3', 'da': 'true', 'et': '0,3,5', 'ft': '0x4A7FCA00,0xBC356BD0', 'sf': '0x98404', 'md': '0,1,2', 'am': 'AudioAccessory1,1', 'pk': '29f275e243306dfac546b1ba68c7f81014adb8273ff34f52569684e4392e00ac', 'tp': 'UDP', 'vn': '65537', 'vs': '800.74.2', 'ov': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Salon at 192.168.1.240:49153 via Protocol.Companion ({'rpmac': '2', 'rphn': 'ab1f5cd77948', 'rpfl': '0x8627B2', 'rpha': '301096699744', 'rpmd': 'AudioAccessory6,1', 'rpvr': '604.1', 'rpad': 'bd5cff7a6840', 'rphi': '9538b0563e99', 'rpba': '19:95:42:73:0E:2D'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Salon at 192.168.1.240:7000 via Protocol.AirPlay ({'acl': '0', 'btaddr': '7D:B0:75:61:CD:02', 'deviceid': 'D6:0F:05:33:79:27', 'c': '1', 'fex': 'AMp/StBrNbwQoS4', 'features': '0x4A7FCA00,0xBC356BD0', 'flags': '0xb8c04', 'gid': 'F2FB9F79-6DC9-5A7F-8D48-B948B7EC942C', 'igl': '0', 'gcgl': '1', 'gpn': 'AppleTV Salon', 'psgsz': '3', 'psgtp': '1', 'psgid': 'F2FB9F79-6DC9-5A7F-8D48-B948B7EC942C', 'pgm': '2', 'pgmid': '2', 'pgid': 'F2FB9F79-6DC9-5A7F-8D48-B948B7EC942C', 'pgcgl': '1', 'tsid': '45FF0C32-81DD-5E4F-8229-7E091D2E4DE0', 'tsm': '2', 'model': 'AudioAccessory6,1', 'protovers': '1.1', 'pi': '22a3e368-c726-46f7-a6f9-f63584407482', 'psi': 'D60F0533-7927-4A27-9F31-8891811ADDDF', 'pk': '106f35c0566565eabec30701854c726c75a58a88527dc5414616f36551dd955f', 'srcvers': '800.74.2', 'osvers': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered D60F05337927@Salon at 192.168.1.240:7000 via Protocol.RAOP ({'cn': '0,1,2,3', 'da': 'true', 'et': '0,3,5', 'ft': '0x4A7FCA00,0xBC356BD0', 'sf': '0xb8c04', 'md': '0,1,2', 'am': 'AudioAccessory6,1', 'pk': '106f35c0566565eabec30701854c726c75a58a88527dc5414616f36551dd955f', 'tp': 'UDP', 'vn': '65537', 'vs': '800.74.2', 'ov': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Salon (2) at 192.168.1.96:49153 via Protocol.Companion ({'rpmac': '2', 'rphn': 'c2c0ff1d97b1', 'rpfl': '0x627B2', 'rpha': 'd1617aae0236', 'rpmd': 'AudioAccessory6,1', 'rpvr': '604.1', 'rpad': 'b83073663726', 'rphi': '10c66f7d60c3', 'rpba': '6C:CE:1A:45:08:5C'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered Salon (2) at 192.168.1.96:7000 via Protocol.AirPlay ({'acl': '0', 'btaddr': '75:B1:71:3F:21:E6', 'deviceid': '5E:20:08:20:13:B2', 'c': '1', 'fex': 'AMp/StBrNbwQoS4', 'features': '0x4A7FCA00,0xBC356BD0', 'flags': '0xbac04', 'gid': 'F2FB9F79-6DC9-5A7F-8D48-B948B7EC942C', 'igl': '0', 'gcgl': '1', 'gpn': 'AppleTV Salon', 'psgsz': '3', 'psgtp': '1', 'psgid': 'F2FB9F79-6DC9-5A7F-8D48-B948B7EC942C', 'pgm': '2', 'pgmid': '1', 'pgid': 'F2FB9F79-6DC9-5A7F-8D48-B948B7EC942C', 'pgcgl': '1', 'tsid': '45FF0C32-81DD-5E4F-8229-7E091D2E4DE0', 'tsm': '2', 'model': 'AudioAccessory6,1', 'protovers': '1.1', 'pi': '0a02e63b-d311-43f1-8aa2-7577484a574d', 'psi': '5C200820-13B2-43AD-BB9F-34AFC4779049', 'pk': '25c84f9a9475cb9249f621fdd04a3ecd76ef16f8ccd7a0cf867f416fd310d1dc', 'srcvers': '800.74.2', 'osvers': '18.0', 'vv': '1'})
2024-10-06 10:46:06 DEBUG [pyatv.core.scan]: Auto-discovered 5E20082013B2@Salon (2) at 192.168.1.96:7000 via Protocol.RAOP ({'cn': '0,1,2,3', 'da': 'true', 'et': '0,3,5', 'ft': '0x4A7FCA00,0xBC356BD0', 'sf': '0xbac04', 'md': '0,1,2', 'am': 'AudioAccessory6,1', 'pk': '25c84f9a9475cb9249f621fdd04a3ecd76ef16f8ccd7a0cf867f416fd310d1dc', 'tp': 'UDP', 'vn': '65537', 'vs': '800.74.2', 'ov': '18.0', 'vv': '1'})
Scan Results
========================================
       Name: Cuisine
   Model/SW: HomePod Mini, tvOS 18.0
    Address: 192.168.1.231
        MAC: 5E:86:8C:86:50:8D
 Deep Sleep: False
Identifiers:
 - 5E:86:8C:86:50:8D
 - 5E868C86508D
Services:
 - Protocol: Companion, Port: 49153, Credentials: None, Requires Password: False, Password: None, Pairing: Unsupported
 - Protocol: AirPlay, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded
 - Protocol: RAOP, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded

       Name: Chambre
   Model/SW: HomePod, tvOS 18.0
    Address: 192.168.1.108
        MAC: 56:5F:43:74:2F:AA
 Deep Sleep: False
Identifiers:
 - 56:5F:43:74:2F:AA
 - 565F43742FAA
Services:
 - Protocol: Companion, Port: 49153, Credentials: None, Requires Password: False, Password: None, Pairing: Unsupported
 - Protocol: AirPlay, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded
 - Protocol: RAOP, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded

       Name: Salon
   Model/SW: HomePod (gen 2), Unknown OS 18.0
    Address: 192.168.1.240
        MAC: D6:0F:05:33:79:27
 Deep Sleep: False
Identifiers:
 - D6:0F:05:33:79:27
 - D60F05337927
Services:
 - Protocol: Companion, Port: 49153, Credentials: None, Requires Password: False, Password: None, Pairing: Unsupported
 - Protocol: AirPlay, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded
 - Protocol: RAOP, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded

       Name: Salon (2)
   Model/SW: HomePod (gen 2), Unknown OS 18.0
    Address: 192.168.1.96
        MAC: 5E:20:08:20:13:B2
 Deep Sleep: False
Identifiers:
 - 5E:20:08:20:13:B2
 - 5E20082013B2
Services:
 - Protocol: Companion, Port: 49153, Credentials: None, Requires Password: False, Password: None, Pairing: Unsupported
 - Protocol: AirPlay, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded
 - Protocol: RAOP, Port: 7000, Credentials: None, Requires Password: False, Password: None, Pairing: NotNeeded

How to reproduce the bug?

atvremote scan --debug on a network with homepod gen2 (I have a gen1 "Chambre" recognized correctly and a mini "Cuisine" too)

What is expected behavior?

tvOS or homeOS (don't know...)

Operating System

Linux

Python

3.9

pyatv

0.15.1

Device

Homepod gen2 tvOS 18.0

Additional context

no

postlund commented 3 weeks ago

Yeah, looks like that conversion is missing!