pymobiledevice3 5.0.0__py3-none-any.whl → 5.0.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pymobiledevice3 might be problematic. Click here for more details.

Files changed (143) hide show
  1. misc/plist_sniffer.py +15 -15
  2. misc/remotexpc_sniffer.py +29 -28
  3. pymobiledevice3/__main__.py +128 -102
  4. pymobiledevice3/_version.py +2 -2
  5. pymobiledevice3/bonjour.py +26 -49
  6. pymobiledevice3/ca.py +32 -24
  7. pymobiledevice3/cli/activation.py +7 -7
  8. pymobiledevice3/cli/afc.py +19 -19
  9. pymobiledevice3/cli/amfi.py +4 -4
  10. pymobiledevice3/cli/apps.py +51 -39
  11. pymobiledevice3/cli/backup.py +58 -32
  12. pymobiledevice3/cli/bonjour.py +25 -18
  13. pymobiledevice3/cli/cli_common.py +112 -81
  14. pymobiledevice3/cli/companion_proxy.py +4 -4
  15. pymobiledevice3/cli/completions.py +10 -10
  16. pymobiledevice3/cli/crash.py +37 -31
  17. pymobiledevice3/cli/developer.py +602 -520
  18. pymobiledevice3/cli/diagnostics.py +38 -33
  19. pymobiledevice3/cli/lockdown.py +79 -74
  20. pymobiledevice3/cli/mounter.py +85 -68
  21. pymobiledevice3/cli/notification.py +10 -10
  22. pymobiledevice3/cli/pcap.py +19 -14
  23. pymobiledevice3/cli/power_assertion.py +12 -10
  24. pymobiledevice3/cli/processes.py +10 -10
  25. pymobiledevice3/cli/profile.py +88 -77
  26. pymobiledevice3/cli/provision.py +17 -17
  27. pymobiledevice3/cli/remote.py +186 -110
  28. pymobiledevice3/cli/restore.py +43 -40
  29. pymobiledevice3/cli/springboard.py +30 -28
  30. pymobiledevice3/cli/syslog.py +85 -58
  31. pymobiledevice3/cli/usbmux.py +21 -20
  32. pymobiledevice3/cli/version.py +3 -2
  33. pymobiledevice3/cli/webinspector.py +157 -79
  34. pymobiledevice3/common.py +1 -1
  35. pymobiledevice3/exceptions.py +154 -60
  36. pymobiledevice3/irecv.py +49 -53
  37. pymobiledevice3/irecv_devices.py +1489 -492
  38. pymobiledevice3/lockdown.py +394 -241
  39. pymobiledevice3/lockdown_service_provider.py +5 -7
  40. pymobiledevice3/osu/os_utils.py +18 -9
  41. pymobiledevice3/osu/posix_util.py +28 -15
  42. pymobiledevice3/osu/win_util.py +14 -8
  43. pymobiledevice3/pair_records.py +19 -19
  44. pymobiledevice3/remote/common.py +4 -4
  45. pymobiledevice3/remote/core_device/app_service.py +94 -67
  46. pymobiledevice3/remote/core_device/core_device_service.py +17 -14
  47. pymobiledevice3/remote/core_device/device_info.py +5 -5
  48. pymobiledevice3/remote/core_device/diagnostics_service.py +10 -8
  49. pymobiledevice3/remote/core_device/file_service.py +47 -33
  50. pymobiledevice3/remote/remote_service_discovery.py +53 -35
  51. pymobiledevice3/remote/remotexpc.py +62 -41
  52. pymobiledevice3/remote/tunnel_service.py +371 -293
  53. pymobiledevice3/remote/utils.py +12 -11
  54. pymobiledevice3/remote/xpc_message.py +145 -125
  55. pymobiledevice3/resources/dsc_uuid_map.py +19 -19
  56. pymobiledevice3/resources/firmware_notifications.py +16 -16
  57. pymobiledevice3/restore/asr.py +27 -27
  58. pymobiledevice3/restore/base_restore.py +90 -47
  59. pymobiledevice3/restore/consts.py +87 -66
  60. pymobiledevice3/restore/device.py +11 -11
  61. pymobiledevice3/restore/fdr.py +46 -46
  62. pymobiledevice3/restore/ftab.py +19 -19
  63. pymobiledevice3/restore/img4.py +130 -133
  64. pymobiledevice3/restore/mbn.py +35 -54
  65. pymobiledevice3/restore/recovery.py +125 -135
  66. pymobiledevice3/restore/restore.py +524 -523
  67. pymobiledevice3/restore/restore_options.py +122 -115
  68. pymobiledevice3/restore/restored_client.py +25 -22
  69. pymobiledevice3/restore/tss.py +378 -270
  70. pymobiledevice3/service_connection.py +50 -46
  71. pymobiledevice3/services/accessibilityaudit.py +136 -126
  72. pymobiledevice3/services/afc.py +350 -291
  73. pymobiledevice3/services/amfi.py +21 -18
  74. pymobiledevice3/services/companion.py +23 -19
  75. pymobiledevice3/services/crash_reports.py +60 -46
  76. pymobiledevice3/services/debugserver_applist.py +3 -3
  77. pymobiledevice3/services/device_arbitration.py +8 -8
  78. pymobiledevice3/services/device_link.py +55 -47
  79. pymobiledevice3/services/diagnostics.py +971 -968
  80. pymobiledevice3/services/dtfetchsymbols.py +8 -8
  81. pymobiledevice3/services/dvt/dvt_secure_socket_proxy.py +4 -4
  82. pymobiledevice3/services/dvt/dvt_testmanaged_proxy.py +4 -4
  83. pymobiledevice3/services/dvt/instruments/activity_trace_tap.py +85 -74
  84. pymobiledevice3/services/dvt/instruments/application_listing.py +2 -3
  85. pymobiledevice3/services/dvt/instruments/condition_inducer.py +7 -6
  86. pymobiledevice3/services/dvt/instruments/core_profile_session_tap.py +466 -384
  87. pymobiledevice3/services/dvt/instruments/device_info.py +11 -11
  88. pymobiledevice3/services/dvt/instruments/energy_monitor.py +1 -1
  89. pymobiledevice3/services/dvt/instruments/graphics.py +1 -1
  90. pymobiledevice3/services/dvt/instruments/location_simulation.py +1 -1
  91. pymobiledevice3/services/dvt/instruments/location_simulation_base.py +10 -10
  92. pymobiledevice3/services/dvt/instruments/network_monitor.py +17 -17
  93. pymobiledevice3/services/dvt/instruments/notifications.py +1 -1
  94. pymobiledevice3/services/dvt/instruments/process_control.py +25 -10
  95. pymobiledevice3/services/dvt/instruments/screenshot.py +2 -2
  96. pymobiledevice3/services/dvt/instruments/sysmontap.py +15 -15
  97. pymobiledevice3/services/dvt/testmanaged/xcuitest.py +40 -50
  98. pymobiledevice3/services/file_relay.py +10 -10
  99. pymobiledevice3/services/heartbeat.py +8 -7
  100. pymobiledevice3/services/house_arrest.py +12 -15
  101. pymobiledevice3/services/installation_proxy.py +119 -100
  102. pymobiledevice3/services/lockdown_service.py +12 -5
  103. pymobiledevice3/services/misagent.py +22 -19
  104. pymobiledevice3/services/mobile_activation.py +84 -72
  105. pymobiledevice3/services/mobile_config.py +330 -301
  106. pymobiledevice3/services/mobile_image_mounter.py +137 -116
  107. pymobiledevice3/services/mobilebackup2.py +188 -150
  108. pymobiledevice3/services/notification_proxy.py +11 -11
  109. pymobiledevice3/services/os_trace.py +69 -51
  110. pymobiledevice3/services/pcapd.py +306 -306
  111. pymobiledevice3/services/power_assertion.py +10 -9
  112. pymobiledevice3/services/preboard.py +4 -4
  113. pymobiledevice3/services/remote_fetch_symbols.py +16 -14
  114. pymobiledevice3/services/remote_server.py +176 -146
  115. pymobiledevice3/services/restore_service.py +16 -16
  116. pymobiledevice3/services/screenshot.py +13 -10
  117. pymobiledevice3/services/simulate_location.py +7 -7
  118. pymobiledevice3/services/springboard.py +15 -15
  119. pymobiledevice3/services/syslog.py +5 -5
  120. pymobiledevice3/services/web_protocol/alert.py +3 -3
  121. pymobiledevice3/services/web_protocol/automation_session.py +180 -176
  122. pymobiledevice3/services/web_protocol/cdp_screencast.py +44 -36
  123. pymobiledevice3/services/web_protocol/cdp_server.py +19 -19
  124. pymobiledevice3/services/web_protocol/cdp_target.py +411 -373
  125. pymobiledevice3/services/web_protocol/driver.py +47 -45
  126. pymobiledevice3/services/web_protocol/element.py +74 -63
  127. pymobiledevice3/services/web_protocol/inspector_session.py +106 -102
  128. pymobiledevice3/services/web_protocol/selenium_api.py +2 -2
  129. pymobiledevice3/services/web_protocol/session_protocol.py +15 -10
  130. pymobiledevice3/services/web_protocol/switch_to.py +11 -12
  131. pymobiledevice3/services/webinspector.py +127 -116
  132. pymobiledevice3/tcp_forwarder.py +35 -22
  133. pymobiledevice3/tunneld/api.py +20 -15
  134. pymobiledevice3/tunneld/server.py +212 -133
  135. pymobiledevice3/usbmux.py +183 -138
  136. pymobiledevice3/utils.py +14 -11
  137. {pymobiledevice3-5.0.0.dist-info → pymobiledevice3-5.0.2.dist-info}/METADATA +1 -1
  138. pymobiledevice3-5.0.2.dist-info/RECORD +173 -0
  139. pymobiledevice3-5.0.0.dist-info/RECORD +0 -173
  140. {pymobiledevice3-5.0.0.dist-info → pymobiledevice3-5.0.2.dist-info}/WHEEL +0 -0
  141. {pymobiledevice3-5.0.0.dist-info → pymobiledevice3-5.0.2.dist-info}/entry_points.txt +0 -0
  142. {pymobiledevice3-5.0.0.dist-info → pymobiledevice3-5.0.2.dist-info}/licenses/LICENSE +0 -0
  143. {pymobiledevice3-5.0.0.dist-info → pymobiledevice3-5.0.2.dist-info}/top_level.txt +0 -0
@@ -1,506 +1,1503 @@
1
1
  from collections import namedtuple
2
2
 
3
- IRecvDevice = namedtuple('IRecvDevice', 'product_type hardware_model board_id chip_id display_name')
3
+ IRecvDevice = namedtuple("IRecvDevice", "product_type hardware_model board_id chip_id display_name")
4
4
 
5
5
  IRECV_DEVICES = (
6
6
  # iPhone
7
- IRecvDevice(product_type='iPhone1,1', hardware_model='m68ap', board_id=0x00, chip_id=0x8900,
8
- display_name='iPhone 2G'),
9
- IRecvDevice(product_type='iPhone1,2', hardware_model='n82ap', board_id=0x04, chip_id=0x8900,
10
- display_name='iPhone 3G'),
11
- IRecvDevice(product_type='iPhone2,1', hardware_model='n88ap', board_id=0x00, chip_id=0x8920,
12
- display_name='iPhone 3Gs'),
13
- IRecvDevice(product_type='iPhone3,1', hardware_model='n90ap', board_id=0x00, chip_id=0x8930,
14
- display_name='iPhone 4 (GSM)'),
15
- IRecvDevice(product_type='iPhone3,2', hardware_model='n90bap', board_id=0x04, chip_id=0x8930,
16
- display_name='iPhone 4 (GSM) R2 2012'),
17
- IRecvDevice(product_type='iPhone3,3', hardware_model='n92ap', board_id=0x06, chip_id=0x8930,
18
- display_name='iPhone 4 (CDMA)'),
19
- IRecvDevice(product_type='iPhone4,1', hardware_model='n94ap', board_id=0x08, chip_id=0x8940,
20
- display_name='iPhone 4s'),
21
- IRecvDevice(product_type='iPhone5,1', hardware_model='n41ap', board_id=0x00, chip_id=0x8950,
22
- display_name='iPhone 5 (GSM)'),
23
- IRecvDevice(product_type='iPhone5,2', hardware_model='n42ap', board_id=0x02, chip_id=0x8950,
24
- display_name='iPhone 5 (Global)'),
25
- IRecvDevice(product_type='iPhone5,3', hardware_model='n48ap', board_id=0x0a, chip_id=0x8950,
26
- display_name='iPhone 5c (GSM)'),
27
- IRecvDevice(product_type='iPhone5,4', hardware_model='n49ap', board_id=0x0e, chip_id=0x8950,
28
- display_name='iPhone 5c (Global)'),
29
- IRecvDevice(product_type='iPhone6,1', hardware_model='n51ap', board_id=0x00, chip_id=0x8960,
30
- display_name='iPhone 5s (GSM)'),
31
- IRecvDevice(product_type='iPhone6,2', hardware_model='n53ap', board_id=0x02, chip_id=0x8960,
32
- display_name='iPhone 5s (Global)'),
33
- IRecvDevice(product_type='iPhone7,1', hardware_model='n56ap', board_id=0x04, chip_id=0x7000,
34
- display_name='iPhone 6 Plus'),
35
- IRecvDevice(product_type='iPhone7,2', hardware_model='n61ap', board_id=0x06, chip_id=0x7000,
36
- display_name='iPhone 6'),
37
- IRecvDevice(product_type='iPhone8,1', hardware_model='n71ap', board_id=0x04, chip_id=0x8000,
38
- display_name='iPhone 6s'),
39
- IRecvDevice(product_type='iPhone8,1', hardware_model='n71map', board_id=0x04, chip_id=0x8003,
40
- display_name='iPhone 6s'),
41
- IRecvDevice(product_type='iPhone8,2', hardware_model='n66ap', board_id=0x06, chip_id=0x8000,
42
- display_name='iPhone 6s Plus'),
43
- IRecvDevice(product_type='iPhone8,2', hardware_model='n66map', board_id=0x06, chip_id=0x8003,
44
- display_name='iPhone 6s Plus'),
45
- IRecvDevice(product_type='iPhone8,4', hardware_model='n69ap', board_id=0x02, chip_id=0x8003,
46
- display_name='iPhone SE (1st gen)'),
47
- IRecvDevice(product_type='iPhone8,4', hardware_model='n69uap', board_id=0x02, chip_id=0x8000,
48
- display_name='iPhone SE (1st gen)'),
49
- IRecvDevice(product_type='iPhone9,1', hardware_model='d10ap', board_id=0x08, chip_id=0x8010,
50
- display_name='iPhone 7 (Global)'),
51
- IRecvDevice(product_type='iPhone9,2', hardware_model='d11ap', board_id=0x0a, chip_id=0x8010,
52
- display_name='iPhone 7 Plus (Global)'),
53
- IRecvDevice(product_type='iPhone9,3', hardware_model='d101ap', board_id=0x0c, chip_id=0x8010,
54
- display_name='iPhone 7 (GSM)'),
55
- IRecvDevice(product_type='iPhone9,4', hardware_model='d111ap', board_id=0x0e, chip_id=0x8010,
56
- display_name='iPhone 7 Plus (GSM)'),
57
- IRecvDevice(product_type='iPhone10,1', hardware_model='d20ap', board_id=0x02, chip_id=0x8015,
58
- display_name='iPhone 8 (Global)'),
59
- IRecvDevice(product_type='iPhone10,2', hardware_model='d21ap', board_id=0x04, chip_id=0x8015,
60
- display_name='iPhone 8 Plus (Global)'),
61
- IRecvDevice(product_type='iPhone10,3', hardware_model='d22ap', board_id=0x06, chip_id=0x8015,
62
- display_name='iPhone X (Global)'),
63
- IRecvDevice(product_type='iPhone10,4', hardware_model='d201ap', board_id=0x0a, chip_id=0x8015,
64
- display_name='iPhone 8 (GSM)'),
65
- IRecvDevice(product_type='iPhone10,5', hardware_model='d211ap', board_id=0x0c, chip_id=0x8015,
66
- display_name='iPhone 8 Plus (GSM)'),
67
- IRecvDevice(product_type='iPhone10,6', hardware_model='d221ap', board_id=0x0e, chip_id=0x8015,
68
- display_name='iPhone X (GSM)'),
69
- IRecvDevice(product_type='iPhone11,2', hardware_model='d321ap', board_id=0x0e, chip_id=0x8020,
70
- display_name='iPhone XS'),
71
- IRecvDevice(product_type='iPhone11,4', hardware_model='d331ap', board_id=0x0a, chip_id=0x8020,
72
- display_name='iPhone XS Max (China)'),
73
- IRecvDevice(product_type='iPhone11,6', hardware_model='d331pap', board_id=0x1a, chip_id=0x8020,
74
- display_name='iPhone XS Max'),
75
- IRecvDevice(product_type='iPhone11,8', hardware_model='n841ap', board_id=0x0c, chip_id=0x8020,
76
- display_name='iPhone XR'),
77
- IRecvDevice(product_type='iPhone12,1', hardware_model='n104ap', board_id=0x04, chip_id=0x8030,
78
- display_name='iPhone 11'),
79
- IRecvDevice(product_type='iPhone12,3', hardware_model='d421ap', board_id=0x06, chip_id=0x8030,
80
- display_name='iPhone 11 Pro'),
81
- IRecvDevice(product_type='iPhone12,5', hardware_model='d431ap', board_id=0x02, chip_id=0x8030,
82
- display_name='iPhone 11 Pro Max'),
83
- IRecvDevice(product_type='iPhone12,8', hardware_model='d79ap', board_id=0x10, chip_id=0x8030,
84
- display_name='iPhone SE (2nd gen)'),
85
- IRecvDevice(product_type='iPhone13,1', hardware_model='d52gap', board_id=0x0A, chip_id=0x8101,
86
- display_name='iPhone 12 mini'),
87
- IRecvDevice(product_type='iPhone13,2', hardware_model='d53gap', board_id=0x0C, chip_id=0x8101,
88
- display_name='iPhone 12'),
89
- IRecvDevice(product_type='iPhone13,3', hardware_model='d53pap', board_id=0x0E, chip_id=0x8101,
90
- display_name='iPhone 12 Pro'),
91
- IRecvDevice(product_type='iPhone13,4', hardware_model='d54pap', board_id=0x08, chip_id=0x8101,
92
- display_name='iPhone 12 Pro Max'),
93
- IRecvDevice(product_type='iPhone14,2', hardware_model='d63ap', board_id=0x0C, chip_id=0x8110,
94
- display_name='iPhone 13 Pro'),
95
- IRecvDevice(product_type='iPhone14,3', hardware_model='d64ap', board_id=0x0E, chip_id=0x8110,
96
- display_name='iPhone 13 Pro Max'),
97
- IRecvDevice(product_type='iPhone14,4', hardware_model='d16ap', board_id=0x08, chip_id=0x8110,
98
- display_name='iPhone 13 mini'),
99
- IRecvDevice(product_type='iPhone14,5', hardware_model='d17ap', board_id=0x0A, chip_id=0x8110,
100
- display_name='iPhone 13'),
101
- IRecvDevice(product_type='iPhone14,6', hardware_model='d49ap', board_id=0x10, chip_id=0x8110,
102
- display_name='iPhone SE (3rd gen)'),
103
- IRecvDevice(product_type='iPhone14,7', hardware_model='d27ap', board_id=0x18, chip_id=0x8110,
104
- display_name='iPhone 14'),
105
- IRecvDevice(product_type='iPhone14,8', hardware_model='d28ap', board_id=0x1A, chip_id=0x8110,
106
- display_name='iPhone 14 Plus'),
107
- IRecvDevice(product_type='iPhone15,2', hardware_model='d73ap', board_id=0x0C, chip_id=0x8120,
108
- display_name='iPhone 14 Pro'),
109
- IRecvDevice(product_type='iPhone15,3', hardware_model='d74ap', board_id=0x0E, chip_id=0x8120,
110
- display_name='iPhone 14 Pro Max'),
111
- IRecvDevice(product_type='iPhone15,4', hardware_model='d37ap', board_id=0x08, chip_id=0x8120,
112
- display_name='iPhone 15'),
113
- IRecvDevice(product_type='iPhone15,5', hardware_model='d38ap', board_id=0x0A, chip_id=0x8120,
114
- display_name='iPhone 15 Plus'),
115
- IRecvDevice(product_type='iPhone16,1', hardware_model='d83ap', board_id=0x04, chip_id=0x8130,
116
- display_name='iPhone 15 Pro'),
117
- IRecvDevice(product_type='iPhone16,2', hardware_model='d84ap', board_id=0x06, chip_id=0x8130,
118
- display_name='iPhone 15 Pro Max'),
119
- IRecvDevice(product_type='iPhone17,3', hardware_model='d47ap', board_id=0x08, chip_id=0x8140,
120
- display_name='iPhone 16'),
121
- IRecvDevice(product_type='iPhone17,4', hardware_model='d48ap', board_id=0x0A, chip_id=0x8140,
122
- display_name='iPhone 16 Plus'),
123
- IRecvDevice(product_type='iPhone17,5', hardware_model='v59ap', board_id=0x04, chip_id=0x8140,
124
- display_name='iPhone 16e'),
125
- IRecvDevice(product_type='iPhone17,1', hardware_model='d93ap', board_id=0x0C, chip_id=0x8140,
126
- display_name='iPhone 16 Pro'),
127
- IRecvDevice(product_type='iPhone17,2', hardware_model='d94ap', board_id=0x0E, chip_id=0x8140,
128
- display_name='iPhone 16 Pro Max'),
129
- IRecvDevice(product_type='iPhone18,4', hardware_model='d23ap', board_id=0x0A, chip_id=0x8150,
130
- display_name='iPhone Air'),
131
- IRecvDevice(product_type='iPhone18,1', hardware_model='v53ap', board_id=0x0C, chip_id=0x8150,
132
- display_name='iPhone 17 Pro'),
133
- IRecvDevice(product_type='iPhone18,2', hardware_model='v54ap', board_id=0x0E, chip_id=0x8150,
134
- display_name='iPhone 17 Pro Max'),
135
- IRecvDevice(product_type='iPhone18,3', hardware_model='v57ap', board_id=0x08, chip_id=0x8150,
136
- display_name='iPhone 17'),
7
+ IRecvDevice(
8
+ product_type="iPhone1,1", hardware_model="m68ap", board_id=0x00, chip_id=0x8900, display_name="iPhone 2G"
9
+ ),
10
+ IRecvDevice(
11
+ product_type="iPhone1,2", hardware_model="n82ap", board_id=0x04, chip_id=0x8900, display_name="iPhone 3G"
12
+ ),
13
+ IRecvDevice(
14
+ product_type="iPhone2,1", hardware_model="n88ap", board_id=0x00, chip_id=0x8920, display_name="iPhone 3Gs"
15
+ ),
16
+ IRecvDevice(
17
+ product_type="iPhone3,1", hardware_model="n90ap", board_id=0x00, chip_id=0x8930, display_name="iPhone 4 (GSM)"
18
+ ),
19
+ IRecvDevice(
20
+ product_type="iPhone3,2",
21
+ hardware_model="n90bap",
22
+ board_id=0x04,
23
+ chip_id=0x8930,
24
+ display_name="iPhone 4 (GSM) R2 2012",
25
+ ),
26
+ IRecvDevice(
27
+ product_type="iPhone3,3", hardware_model="n92ap", board_id=0x06, chip_id=0x8930, display_name="iPhone 4 (CDMA)"
28
+ ),
29
+ IRecvDevice(
30
+ product_type="iPhone4,1", hardware_model="n94ap", board_id=0x08, chip_id=0x8940, display_name="iPhone 4s"
31
+ ),
32
+ IRecvDevice(
33
+ product_type="iPhone5,1", hardware_model="n41ap", board_id=0x00, chip_id=0x8950, display_name="iPhone 5 (GSM)"
34
+ ),
35
+ IRecvDevice(
36
+ product_type="iPhone5,2",
37
+ hardware_model="n42ap",
38
+ board_id=0x02,
39
+ chip_id=0x8950,
40
+ display_name="iPhone 5 (Global)",
41
+ ),
42
+ IRecvDevice(
43
+ product_type="iPhone5,3", hardware_model="n48ap", board_id=0x0A, chip_id=0x8950, display_name="iPhone 5c (GSM)"
44
+ ),
45
+ IRecvDevice(
46
+ product_type="iPhone5,4",
47
+ hardware_model="n49ap",
48
+ board_id=0x0E,
49
+ chip_id=0x8950,
50
+ display_name="iPhone 5c (Global)",
51
+ ),
52
+ IRecvDevice(
53
+ product_type="iPhone6,1", hardware_model="n51ap", board_id=0x00, chip_id=0x8960, display_name="iPhone 5s (GSM)"
54
+ ),
55
+ IRecvDevice(
56
+ product_type="iPhone6,2",
57
+ hardware_model="n53ap",
58
+ board_id=0x02,
59
+ chip_id=0x8960,
60
+ display_name="iPhone 5s (Global)",
61
+ ),
62
+ IRecvDevice(
63
+ product_type="iPhone7,1", hardware_model="n56ap", board_id=0x04, chip_id=0x7000, display_name="iPhone 6 Plus"
64
+ ),
65
+ IRecvDevice(
66
+ product_type="iPhone7,2", hardware_model="n61ap", board_id=0x06, chip_id=0x7000, display_name="iPhone 6"
67
+ ),
68
+ IRecvDevice(
69
+ product_type="iPhone8,1", hardware_model="n71ap", board_id=0x04, chip_id=0x8000, display_name="iPhone 6s"
70
+ ),
71
+ IRecvDevice(
72
+ product_type="iPhone8,1", hardware_model="n71map", board_id=0x04, chip_id=0x8003, display_name="iPhone 6s"
73
+ ),
74
+ IRecvDevice(
75
+ product_type="iPhone8,2", hardware_model="n66ap", board_id=0x06, chip_id=0x8000, display_name="iPhone 6s Plus"
76
+ ),
77
+ IRecvDevice(
78
+ product_type="iPhone8,2", hardware_model="n66map", board_id=0x06, chip_id=0x8003, display_name="iPhone 6s Plus"
79
+ ),
80
+ IRecvDevice(
81
+ product_type="iPhone8,4",
82
+ hardware_model="n69ap",
83
+ board_id=0x02,
84
+ chip_id=0x8003,
85
+ display_name="iPhone SE (1st gen)",
86
+ ),
87
+ IRecvDevice(
88
+ product_type="iPhone8,4",
89
+ hardware_model="n69uap",
90
+ board_id=0x02,
91
+ chip_id=0x8000,
92
+ display_name="iPhone SE (1st gen)",
93
+ ),
94
+ IRecvDevice(
95
+ product_type="iPhone9,1",
96
+ hardware_model="d10ap",
97
+ board_id=0x08,
98
+ chip_id=0x8010,
99
+ display_name="iPhone 7 (Global)",
100
+ ),
101
+ IRecvDevice(
102
+ product_type="iPhone9,2",
103
+ hardware_model="d11ap",
104
+ board_id=0x0A,
105
+ chip_id=0x8010,
106
+ display_name="iPhone 7 Plus (Global)",
107
+ ),
108
+ IRecvDevice(
109
+ product_type="iPhone9,3", hardware_model="d101ap", board_id=0x0C, chip_id=0x8010, display_name="iPhone 7 (GSM)"
110
+ ),
111
+ IRecvDevice(
112
+ product_type="iPhone9,4",
113
+ hardware_model="d111ap",
114
+ board_id=0x0E,
115
+ chip_id=0x8010,
116
+ display_name="iPhone 7 Plus (GSM)",
117
+ ),
118
+ IRecvDevice(
119
+ product_type="iPhone10,1",
120
+ hardware_model="d20ap",
121
+ board_id=0x02,
122
+ chip_id=0x8015,
123
+ display_name="iPhone 8 (Global)",
124
+ ),
125
+ IRecvDevice(
126
+ product_type="iPhone10,2",
127
+ hardware_model="d21ap",
128
+ board_id=0x04,
129
+ chip_id=0x8015,
130
+ display_name="iPhone 8 Plus (Global)",
131
+ ),
132
+ IRecvDevice(
133
+ product_type="iPhone10,3",
134
+ hardware_model="d22ap",
135
+ board_id=0x06,
136
+ chip_id=0x8015,
137
+ display_name="iPhone X (Global)",
138
+ ),
139
+ IRecvDevice(
140
+ product_type="iPhone10,4", hardware_model="d201ap", board_id=0x0A, chip_id=0x8015, display_name="iPhone 8 (GSM)"
141
+ ),
142
+ IRecvDevice(
143
+ product_type="iPhone10,5",
144
+ hardware_model="d211ap",
145
+ board_id=0x0C,
146
+ chip_id=0x8015,
147
+ display_name="iPhone 8 Plus (GSM)",
148
+ ),
149
+ IRecvDevice(
150
+ product_type="iPhone10,6", hardware_model="d221ap", board_id=0x0E, chip_id=0x8015, display_name="iPhone X (GSM)"
151
+ ),
152
+ IRecvDevice(
153
+ product_type="iPhone11,2", hardware_model="d321ap", board_id=0x0E, chip_id=0x8020, display_name="iPhone XS"
154
+ ),
155
+ IRecvDevice(
156
+ product_type="iPhone11,4",
157
+ hardware_model="d331ap",
158
+ board_id=0x0A,
159
+ chip_id=0x8020,
160
+ display_name="iPhone XS Max (China)",
161
+ ),
162
+ IRecvDevice(
163
+ product_type="iPhone11,6", hardware_model="d331pap", board_id=0x1A, chip_id=0x8020, display_name="iPhone XS Max"
164
+ ),
165
+ IRecvDevice(
166
+ product_type="iPhone11,8", hardware_model="n841ap", board_id=0x0C, chip_id=0x8020, display_name="iPhone XR"
167
+ ),
168
+ IRecvDevice(
169
+ product_type="iPhone12,1", hardware_model="n104ap", board_id=0x04, chip_id=0x8030, display_name="iPhone 11"
170
+ ),
171
+ IRecvDevice(
172
+ product_type="iPhone12,3", hardware_model="d421ap", board_id=0x06, chip_id=0x8030, display_name="iPhone 11 Pro"
173
+ ),
174
+ IRecvDevice(
175
+ product_type="iPhone12,5",
176
+ hardware_model="d431ap",
177
+ board_id=0x02,
178
+ chip_id=0x8030,
179
+ display_name="iPhone 11 Pro Max",
180
+ ),
181
+ IRecvDevice(
182
+ product_type="iPhone12,8",
183
+ hardware_model="d79ap",
184
+ board_id=0x10,
185
+ chip_id=0x8030,
186
+ display_name="iPhone SE (2nd gen)",
187
+ ),
188
+ IRecvDevice(
189
+ product_type="iPhone13,1", hardware_model="d52gap", board_id=0x0A, chip_id=0x8101, display_name="iPhone 12 mini"
190
+ ),
191
+ IRecvDevice(
192
+ product_type="iPhone13,2", hardware_model="d53gap", board_id=0x0C, chip_id=0x8101, display_name="iPhone 12"
193
+ ),
194
+ IRecvDevice(
195
+ product_type="iPhone13,3", hardware_model="d53pap", board_id=0x0E, chip_id=0x8101, display_name="iPhone 12 Pro"
196
+ ),
197
+ IRecvDevice(
198
+ product_type="iPhone13,4",
199
+ hardware_model="d54pap",
200
+ board_id=0x08,
201
+ chip_id=0x8101,
202
+ display_name="iPhone 12 Pro Max",
203
+ ),
204
+ IRecvDevice(
205
+ product_type="iPhone14,2", hardware_model="d63ap", board_id=0x0C, chip_id=0x8110, display_name="iPhone 13 Pro"
206
+ ),
207
+ IRecvDevice(
208
+ product_type="iPhone14,3",
209
+ hardware_model="d64ap",
210
+ board_id=0x0E,
211
+ chip_id=0x8110,
212
+ display_name="iPhone 13 Pro Max",
213
+ ),
214
+ IRecvDevice(
215
+ product_type="iPhone14,4", hardware_model="d16ap", board_id=0x08, chip_id=0x8110, display_name="iPhone 13 mini"
216
+ ),
217
+ IRecvDevice(
218
+ product_type="iPhone14,5", hardware_model="d17ap", board_id=0x0A, chip_id=0x8110, display_name="iPhone 13"
219
+ ),
220
+ IRecvDevice(
221
+ product_type="iPhone14,6",
222
+ hardware_model="d49ap",
223
+ board_id=0x10,
224
+ chip_id=0x8110,
225
+ display_name="iPhone SE (3rd gen)",
226
+ ),
227
+ IRecvDevice(
228
+ product_type="iPhone14,7", hardware_model="d27ap", board_id=0x18, chip_id=0x8110, display_name="iPhone 14"
229
+ ),
230
+ IRecvDevice(
231
+ product_type="iPhone14,8", hardware_model="d28ap", board_id=0x1A, chip_id=0x8110, display_name="iPhone 14 Plus"
232
+ ),
233
+ IRecvDevice(
234
+ product_type="iPhone15,2", hardware_model="d73ap", board_id=0x0C, chip_id=0x8120, display_name="iPhone 14 Pro"
235
+ ),
236
+ IRecvDevice(
237
+ product_type="iPhone15,3",
238
+ hardware_model="d74ap",
239
+ board_id=0x0E,
240
+ chip_id=0x8120,
241
+ display_name="iPhone 14 Pro Max",
242
+ ),
243
+ IRecvDevice(
244
+ product_type="iPhone15,4", hardware_model="d37ap", board_id=0x08, chip_id=0x8120, display_name="iPhone 15"
245
+ ),
246
+ IRecvDevice(
247
+ product_type="iPhone15,5", hardware_model="d38ap", board_id=0x0A, chip_id=0x8120, display_name="iPhone 15 Plus"
248
+ ),
249
+ IRecvDevice(
250
+ product_type="iPhone16,1", hardware_model="d83ap", board_id=0x04, chip_id=0x8130, display_name="iPhone 15 Pro"
251
+ ),
252
+ IRecvDevice(
253
+ product_type="iPhone16,2",
254
+ hardware_model="d84ap",
255
+ board_id=0x06,
256
+ chip_id=0x8130,
257
+ display_name="iPhone 15 Pro Max",
258
+ ),
259
+ IRecvDevice(
260
+ product_type="iPhone17,3", hardware_model="d47ap", board_id=0x08, chip_id=0x8140, display_name="iPhone 16"
261
+ ),
262
+ IRecvDevice(
263
+ product_type="iPhone17,4", hardware_model="d48ap", board_id=0x0A, chip_id=0x8140, display_name="iPhone 16 Plus"
264
+ ),
265
+ IRecvDevice(
266
+ product_type="iPhone17,5", hardware_model="v59ap", board_id=0x04, chip_id=0x8140, display_name="iPhone 16e"
267
+ ),
268
+ IRecvDevice(
269
+ product_type="iPhone17,1", hardware_model="d93ap", board_id=0x0C, chip_id=0x8140, display_name="iPhone 16 Pro"
270
+ ),
271
+ IRecvDevice(
272
+ product_type="iPhone17,2",
273
+ hardware_model="d94ap",
274
+ board_id=0x0E,
275
+ chip_id=0x8140,
276
+ display_name="iPhone 16 Pro Max",
277
+ ),
278
+ IRecvDevice(
279
+ product_type="iPhone18,4", hardware_model="d23ap", board_id=0x0A, chip_id=0x8150, display_name="iPhone Air"
280
+ ),
281
+ IRecvDevice(
282
+ product_type="iPhone18,1", hardware_model="v53ap", board_id=0x0C, chip_id=0x8150, display_name="iPhone 17 Pro"
283
+ ),
284
+ IRecvDevice(
285
+ product_type="iPhone18,2",
286
+ hardware_model="v54ap",
287
+ board_id=0x0E,
288
+ chip_id=0x8150,
289
+ display_name="iPhone 17 Pro Max",
290
+ ),
291
+ IRecvDevice(
292
+ product_type="iPhone18,3", hardware_model="v57ap", board_id=0x08, chip_id=0x8150, display_name="iPhone 17"
293
+ ),
137
294
  # iPod
138
- IRecvDevice(product_type='iPod1,1', hardware_model='n45ap', board_id=0x02, chip_id=0x8900,
139
- display_name='iPod Touch (1st gen)'),
140
- IRecvDevice(product_type='iPod2,1', hardware_model='n72ap', board_id=0x00, chip_id=0x8720,
141
- display_name='iPod Touch (2nd gen)'),
142
- IRecvDevice(product_type='iPod3,1', hardware_model='n18ap', board_id=0x02, chip_id=0x8922,
143
- display_name='iPod Touch (3rd gen)'),
144
- IRecvDevice(product_type='iPod4,1', hardware_model='n81ap', board_id=0x08, chip_id=0x8930,
145
- display_name='iPod Touch (4th gen)'),
146
- IRecvDevice(product_type='iPod5,1', hardware_model='n78ap', board_id=0x00, chip_id=0x8942,
147
- display_name='iPod Touch (5th gen)'),
148
- IRecvDevice(product_type='iPod7,1', hardware_model='n102ap', board_id=0x10, chip_id=0x7000,
149
- display_name='iPod Touch (6th gen)'),
150
- IRecvDevice(product_type='iPod9,1', hardware_model='n112ap', board_id=0x16, chip_id=0x8010,
151
- display_name='iPod Touch (7th gen)'),
295
+ IRecvDevice(
296
+ product_type="iPod1,1",
297
+ hardware_model="n45ap",
298
+ board_id=0x02,
299
+ chip_id=0x8900,
300
+ display_name="iPod Touch (1st gen)",
301
+ ),
302
+ IRecvDevice(
303
+ product_type="iPod2,1",
304
+ hardware_model="n72ap",
305
+ board_id=0x00,
306
+ chip_id=0x8720,
307
+ display_name="iPod Touch (2nd gen)",
308
+ ),
309
+ IRecvDevice(
310
+ product_type="iPod3,1",
311
+ hardware_model="n18ap",
312
+ board_id=0x02,
313
+ chip_id=0x8922,
314
+ display_name="iPod Touch (3rd gen)",
315
+ ),
316
+ IRecvDevice(
317
+ product_type="iPod4,1",
318
+ hardware_model="n81ap",
319
+ board_id=0x08,
320
+ chip_id=0x8930,
321
+ display_name="iPod Touch (4th gen)",
322
+ ),
323
+ IRecvDevice(
324
+ product_type="iPod5,1",
325
+ hardware_model="n78ap",
326
+ board_id=0x00,
327
+ chip_id=0x8942,
328
+ display_name="iPod Touch (5th gen)",
329
+ ),
330
+ IRecvDevice(
331
+ product_type="iPod7,1",
332
+ hardware_model="n102ap",
333
+ board_id=0x10,
334
+ chip_id=0x7000,
335
+ display_name="iPod Touch (6th gen)",
336
+ ),
337
+ IRecvDevice(
338
+ product_type="iPod9,1",
339
+ hardware_model="n112ap",
340
+ board_id=0x16,
341
+ chip_id=0x8010,
342
+ display_name="iPod Touch (7th gen)",
343
+ ),
152
344
  # iPad
153
- IRecvDevice(product_type='iPad1,1', hardware_model='k48ap', board_id=0x02, chip_id=0x8930, display_name='iPad'),
154
- IRecvDevice(product_type='iPad2,1', hardware_model='k93ap', board_id=0x04, chip_id=0x8940,
155
- display_name='iPad 2 (WiFi)'),
156
- IRecvDevice(product_type='iPad2,2', hardware_model='k94ap', board_id=0x06, chip_id=0x8940,
157
- display_name='iPad 2 (GSM)'),
158
- IRecvDevice(product_type='iPad2,3', hardware_model='k95ap', board_id=0x02, chip_id=0x8940,
159
- display_name='iPad 2 (CDMA)'),
160
- IRecvDevice(product_type='iPad2,4', hardware_model='k93aap', board_id=0x06, chip_id=0x8942,
161
- display_name='iPad 2 (WiFi) R2 2012'),
162
- IRecvDevice(product_type='iPad2,5', hardware_model='p105ap', board_id=0x0a, chip_id=0x8942,
163
- display_name='iPad mini (WiFi)'),
164
- IRecvDevice(product_type='iPad2,6', hardware_model='p106ap', board_id=0x0c, chip_id=0x8942,
165
- display_name='iPad mini (GSM)'),
166
- IRecvDevice(product_type='iPad2,7', hardware_model='p107ap', board_id=0x0e, chip_id=0x8942,
167
- display_name='iPad mini (Global)'),
168
- IRecvDevice(product_type='iPad3,1', hardware_model='j1ap', board_id=0x00, chip_id=0x8945,
169
- display_name='iPad (3rd gen, WiFi)'),
170
- IRecvDevice(product_type='iPad3,2', hardware_model='j2ap', board_id=0x02, chip_id=0x8945,
171
- display_name='iPad (3rd gen, CDMA)'),
172
- IRecvDevice(product_type='iPad3,3', hardware_model='j2aap', board_id=0x04, chip_id=0x8945,
173
- display_name='iPad (3rd gen, GSM)'),
174
- IRecvDevice(product_type='iPad3,4', hardware_model='p101ap', board_id=0x00, chip_id=0x8955,
175
- display_name='iPad (4th gen, WiFi)'),
176
- IRecvDevice(product_type='iPad3,5', hardware_model='p102ap', board_id=0x02, chip_id=0x8955,
177
- display_name='iPad (4th gen, GSM)'),
178
- IRecvDevice(product_type='iPad3,6', hardware_model='p103ap', board_id=0x04, chip_id=0x8955,
179
- display_name='iPad (4th gen, Global)'),
180
- IRecvDevice(product_type='iPad4,1', hardware_model='j71ap', board_id=0x10, chip_id=0x8960,
181
- display_name='iPad Air (WiFi)'),
182
- IRecvDevice(product_type='iPad4,2', hardware_model='j72ap', board_id=0x12, chip_id=0x8960,
183
- display_name='iPad Air (Cellular)'),
184
- IRecvDevice(product_type='iPad4,3', hardware_model='j73ap', board_id=0x14, chip_id=0x8960,
185
- display_name='iPad Air (China)'),
186
- IRecvDevice(product_type='iPad4,4', hardware_model='j85ap', board_id=0x0a, chip_id=0x8960,
187
- display_name='iPad mini 2 (WiFi)'),
188
- IRecvDevice(product_type='iPad4,5', hardware_model='j86ap', board_id=0x0c, chip_id=0x8960,
189
- display_name='iPad mini 2 (Cellular)'),
190
- IRecvDevice(product_type='iPad4,6', hardware_model='j87ap', board_id=0x0e, chip_id=0x8960,
191
- display_name='iPad mini 2 (China)'),
192
- IRecvDevice(product_type='iPad4,7', hardware_model='j85map', board_id=0x32, chip_id=0x8960,
193
- display_name='iPad mini 3 (WiFi)'),
194
- IRecvDevice(product_type='iPad4,8', hardware_model='j86map', board_id=0x34, chip_id=0x8960,
195
- display_name='iPad mini 3 (Cellular)'),
196
- IRecvDevice(product_type='iPad4,9', hardware_model='j87map', board_id=0x36, chip_id=0x8960,
197
- display_name='iPad mini 3 (China)'),
198
- IRecvDevice(product_type='iPad5,1', hardware_model='j96ap', board_id=0x08, chip_id=0x7000,
199
- display_name='iPad mini 4 (WiFi)'),
200
- IRecvDevice(product_type='iPad5,2', hardware_model='j97ap', board_id=0x0A, chip_id=0x7000,
201
- display_name='iPad mini 4 (Cellular)'),
202
- IRecvDevice(product_type='iPad5,3', hardware_model='j81ap', board_id=0x06, chip_id=0x7001,
203
- display_name='iPad Air 2 (WiFi)'),
204
- IRecvDevice(product_type='iPad5,4', hardware_model='j82ap', board_id=0x02, chip_id=0x7001,
205
- display_name='iPad Air 2 (Cellular)'),
206
- IRecvDevice(product_type='iPad6,3', hardware_model='j127ap', board_id=0x08, chip_id=0x8001,
207
- display_name='iPad Pro 9.7-inch (WiFi)'),
208
- IRecvDevice(product_type='iPad6,4', hardware_model='j128ap', board_id=0x0a, chip_id=0x8001,
209
- display_name='iPad Pro 9.7-inch (Cellular)'),
210
- IRecvDevice(product_type='iPad6,7', hardware_model='j98aap', board_id=0x10, chip_id=0x8001,
211
- display_name='iPad Pro 12.9-inch (1st gen, WiFi)'),
212
- IRecvDevice(product_type='iPad6,8', hardware_model='j99aap', board_id=0x12, chip_id=0x8001,
213
- display_name='iPad Pro 12.9-inch (1st gen, Cellular)'),
214
- IRecvDevice(product_type='iPad6,11', hardware_model='j71sap', board_id=0x10, chip_id=0x8000,
215
- display_name='iPad (5th gen, WiFi)'),
216
- IRecvDevice(product_type='iPad6,11', hardware_model='j71tap', board_id=0x10, chip_id=0x8003,
217
- display_name='iPad (5th gen, WiFi)'),
218
- IRecvDevice(product_type='iPad6,12', hardware_model='j72sap', board_id=0x12, chip_id=0x8000,
219
- display_name='iPad (5th gen, Cellular)'),
220
- IRecvDevice(product_type='iPad6,12', hardware_model='j72tap', board_id=0x12, chip_id=0x8003,
221
- display_name='iPad (5th gen, Cellular)'),
222
- IRecvDevice(product_type='iPad7,1', hardware_model='j120ap', board_id=0x0C, chip_id=0x8011,
223
- display_name='iPad Pro 12.9-inch (2nd gen, WiFi)'),
224
- IRecvDevice(product_type='iPad7,2', hardware_model='j121ap', board_id=0x0E, chip_id=0x8011,
225
- display_name='iPad Pro 12.9-inch (2nd gen, Cellular)'),
226
- IRecvDevice(product_type='iPad7,3', hardware_model='j207ap', board_id=0x04, chip_id=0x8011,
227
- display_name='iPad Pro 10.5-inch (WiFi)'),
228
- IRecvDevice(product_type='iPad7,4', hardware_model='j208ap', board_id=0x06, chip_id=0x8011,
229
- display_name='iPad Pro 10.5-inch (Cellular)'),
230
- IRecvDevice(product_type='iPad7,5', hardware_model='j71bap', board_id=0x18, chip_id=0x8010,
231
- display_name='iPad (6th gen, WiFi)'),
232
- IRecvDevice(product_type='iPad7,6', hardware_model='j72bap', board_id=0x1A, chip_id=0x8010,
233
- display_name='iPad (6th gen, Cellular)'),
234
- IRecvDevice(product_type='iPad7,11', hardware_model='j171ap', board_id=0x1C, chip_id=0x8010,
235
- display_name='iPad (7th gen, WiFi)'),
236
- IRecvDevice(product_type='iPad7,12', hardware_model='j172ap', board_id=0x1E, chip_id=0x8010,
237
- display_name='iPad (7th gen, Cellular)'),
238
- IRecvDevice(product_type='iPad8,1', hardware_model='j317ap', board_id=0x0C, chip_id=0x8027,
239
- display_name='iPad Pro 11-inch (1st gen, WiFi)'),
240
- IRecvDevice(product_type='iPad8,2', hardware_model='j317xap', board_id=0x1C, chip_id=0x8027,
241
- display_name='iPad Pro 11-inch (1st gen, WiFi, 1TB)'),
242
- IRecvDevice(product_type='iPad8,3', hardware_model='j318ap', board_id=0x0E, chip_id=0x8027,
243
- display_name='iPad Pro 11-inch (1st gen, Cellular)'),
244
- IRecvDevice(product_type='iPad8,4', hardware_model='j318xap', board_id=0x1E, chip_id=0x8027,
245
- display_name='iPad Pro 11-inch (1st gen, Cellular, 1TB)'),
246
- IRecvDevice(product_type='iPad8,5', hardware_model='j320ap', board_id=0x08, chip_id=0x8027,
247
- display_name='iPad Pro 12.9-inch (3rd gen, WiFi)'),
248
- IRecvDevice(product_type='iPad8,6', hardware_model='j320xap', board_id=0x18, chip_id=0x8027,
249
- display_name='iPad Pro 12.9-inch (3rd gen, WiFi, 1TB)'),
250
- IRecvDevice(product_type='iPad8,7', hardware_model='j321ap', board_id=0x0A, chip_id=0x8027,
251
- display_name='iPad Pro 12.9-inch (3rd gen, Cellular)'),
252
- IRecvDevice(product_type='iPad8,8', hardware_model='j321xap', board_id=0x1A, chip_id=0x8027,
253
- display_name='iPad Pro 12.9-inch (3rd gen, Cellular, 1TB)'),
254
- IRecvDevice(product_type='iPad8,9', hardware_model='j417ap', board_id=0x3C, chip_id=0x8027,
255
- display_name='iPad Pro 11-inch (2nd gen, WiFi)'),
256
- IRecvDevice(product_type='iPad8,10', hardware_model='j418ap', board_id=0x3E, chip_id=0x8027,
257
- display_name='iPad Pro 11-inch (2nd gen, Cellular)'),
258
- IRecvDevice(product_type='iPad8,11', hardware_model='j420ap', board_id=0x38, chip_id=0x8027,
259
- display_name='iPad Pro 12.9-inch (4th gen, WiFi)'),
260
- IRecvDevice(product_type='iPad8,12', hardware_model='j421ap', board_id=0x3A, chip_id=0x8027,
261
- display_name='iPad Pro 12.9-inch (4th gen, Cellular)'),
262
- IRecvDevice(product_type='iPad11,1', hardware_model='j210ap', board_id=0x14, chip_id=0x8020,
263
- display_name='iPad mini (5th gen, WiFi)'),
264
- IRecvDevice(product_type='iPad11,2', hardware_model='j211ap', board_id=0x16, chip_id=0x8020,
265
- display_name='iPad mini (5th gen, Cellular)'),
266
- IRecvDevice(product_type='iPad11,3', hardware_model='j217ap', board_id=0x1C, chip_id=0x8020,
267
- display_name='iPad Air (3rd gen, WiFi)'),
268
- IRecvDevice(product_type='iPad11,4', hardware_model='j218ap', board_id=0x1E, chip_id=0x8020,
269
- display_name='iPad Air (3rd gen, Celluar)'),
270
- IRecvDevice(product_type='iPad11,6', hardware_model='j171aap', board_id=0x24, chip_id=0x8020,
271
- display_name='iPad (8th gen, WiFi)'),
272
- IRecvDevice(product_type='iPad11,7', hardware_model='j172aap', board_id=0x26, chip_id=0x8020,
273
- display_name='iPad (8th gen, Cellular)'),
274
- IRecvDevice(product_type='iPad12,1', hardware_model='j181ap', board_id=0x18, chip_id=0x8030,
275
- display_name='iPad (9th gen, WiFi)'),
276
- IRecvDevice(product_type='iPad12,2', hardware_model='j182ap', board_id=0x1A, chip_id=0x8030,
277
- display_name='iPad (9th gen, Cellular)'),
278
- IRecvDevice(product_type='iPad13,1', hardware_model='j307ap', board_id=0x04, chip_id=0x8101,
279
- display_name='iPad Air (4th gen, WiFi)'),
280
- IRecvDevice(product_type='iPad13,2', hardware_model='j308ap', board_id=0x06, chip_id=0x8101,
281
- display_name='iPad Air (4th gen, Celluar)'),
282
- IRecvDevice(product_type='iPad13,4', hardware_model='j517ap', board_id=0x08, chip_id=0x8103,
283
- display_name='iPad Pro 11-inch (3rd gen, WiFi)'),
284
- IRecvDevice(product_type='iPad13,5', hardware_model='j517xap', board_id=0x0A, chip_id=0x8103,
285
- display_name='iPad Pro 11-inch (3rd gen, WiFi, 2TB)'),
286
- IRecvDevice(product_type='iPad13,6', hardware_model='j518ap', board_id=0x0C, chip_id=0x8103,
287
- display_name='iPad Pro 11-inch (3rd gen, Cellular)'),
288
- IRecvDevice(product_type='iPad13,7', hardware_model='j518xap', board_id=0x0E, chip_id=0x8103,
289
- display_name='iPad Pro 11-inch (3rd gen, Cellular, 2TB)'),
290
- IRecvDevice(product_type='iPad13,8', hardware_model='j522ap', board_id=0x18, chip_id=0x8103,
291
- display_name='iPad Pro 12.9-inch (5th gen, WiFi)'),
292
- IRecvDevice(product_type='iPad13,9', hardware_model='j522xap', board_id=0x1A, chip_id=0x8103,
293
- display_name='iPad Pro 12.9-inch (5th gen, WiFi, 2TB)'),
294
- IRecvDevice(product_type='iPad13,10', hardware_model='j523ap', board_id=0x1C, chip_id=0x8103,
295
- display_name='iPad Pro 12.9-inch (5th gen, Cellular)'),
296
- IRecvDevice(product_type='iPad13,11', hardware_model='j523xap', board_id=0x1E, chip_id=0x8103,
297
- display_name='iPad Pro 12.9-inch (5th gen, Cellular, 2TB)'),
298
- IRecvDevice(product_type='iPad13,16', hardware_model='j407ap', board_id=0x10, chip_id=0x8103,
299
- display_name='iPad Air (5th gen, WiFi)'),
300
- IRecvDevice(product_type='iPad13,17', hardware_model='j408ap', board_id=0x12, chip_id=0x8103,
301
- display_name='iPad Air (5th gen, Celluar)'),
302
- IRecvDevice(product_type='iPad14,1', hardware_model='j310ap', board_id=0x04, chip_id=0x8110,
303
- display_name='iPad mini (6th gen, WiFi)'),
304
- IRecvDevice(product_type='iPad14,2', hardware_model='j311ap', board_id=0x06, chip_id=0x8110,
305
- display_name='iPad mini (6th gen, Cellular)'),
345
+ IRecvDevice(product_type="iPad1,1", hardware_model="k48ap", board_id=0x02, chip_id=0x8930, display_name="iPad"),
346
+ IRecvDevice(
347
+ product_type="iPad2,1", hardware_model="k93ap", board_id=0x04, chip_id=0x8940, display_name="iPad 2 (WiFi)"
348
+ ),
349
+ IRecvDevice(
350
+ product_type="iPad2,2", hardware_model="k94ap", board_id=0x06, chip_id=0x8940, display_name="iPad 2 (GSM)"
351
+ ),
352
+ IRecvDevice(
353
+ product_type="iPad2,3", hardware_model="k95ap", board_id=0x02, chip_id=0x8940, display_name="iPad 2 (CDMA)"
354
+ ),
355
+ IRecvDevice(
356
+ product_type="iPad2,4",
357
+ hardware_model="k93aap",
358
+ board_id=0x06,
359
+ chip_id=0x8942,
360
+ display_name="iPad 2 (WiFi) R2 2012",
361
+ ),
362
+ IRecvDevice(
363
+ product_type="iPad2,5", hardware_model="p105ap", board_id=0x0A, chip_id=0x8942, display_name="iPad mini (WiFi)"
364
+ ),
365
+ IRecvDevice(
366
+ product_type="iPad2,6", hardware_model="p106ap", board_id=0x0C, chip_id=0x8942, display_name="iPad mini (GSM)"
367
+ ),
368
+ IRecvDevice(
369
+ product_type="iPad2,7",
370
+ hardware_model="p107ap",
371
+ board_id=0x0E,
372
+ chip_id=0x8942,
373
+ display_name="iPad mini (Global)",
374
+ ),
375
+ IRecvDevice(
376
+ product_type="iPad3,1",
377
+ hardware_model="j1ap",
378
+ board_id=0x00,
379
+ chip_id=0x8945,
380
+ display_name="iPad (3rd gen, WiFi)",
381
+ ),
382
+ IRecvDevice(
383
+ product_type="iPad3,2",
384
+ hardware_model="j2ap",
385
+ board_id=0x02,
386
+ chip_id=0x8945,
387
+ display_name="iPad (3rd gen, CDMA)",
388
+ ),
389
+ IRecvDevice(
390
+ product_type="iPad3,3",
391
+ hardware_model="j2aap",
392
+ board_id=0x04,
393
+ chip_id=0x8945,
394
+ display_name="iPad (3rd gen, GSM)",
395
+ ),
396
+ IRecvDevice(
397
+ product_type="iPad3,4",
398
+ hardware_model="p101ap",
399
+ board_id=0x00,
400
+ chip_id=0x8955,
401
+ display_name="iPad (4th gen, WiFi)",
402
+ ),
403
+ IRecvDevice(
404
+ product_type="iPad3,5",
405
+ hardware_model="p102ap",
406
+ board_id=0x02,
407
+ chip_id=0x8955,
408
+ display_name="iPad (4th gen, GSM)",
409
+ ),
410
+ IRecvDevice(
411
+ product_type="iPad3,6",
412
+ hardware_model="p103ap",
413
+ board_id=0x04,
414
+ chip_id=0x8955,
415
+ display_name="iPad (4th gen, Global)",
416
+ ),
417
+ IRecvDevice(
418
+ product_type="iPad4,1", hardware_model="j71ap", board_id=0x10, chip_id=0x8960, display_name="iPad Air (WiFi)"
419
+ ),
420
+ IRecvDevice(
421
+ product_type="iPad4,2",
422
+ hardware_model="j72ap",
423
+ board_id=0x12,
424
+ chip_id=0x8960,
425
+ display_name="iPad Air (Cellular)",
426
+ ),
427
+ IRecvDevice(
428
+ product_type="iPad4,3", hardware_model="j73ap", board_id=0x14, chip_id=0x8960, display_name="iPad Air (China)"
429
+ ),
430
+ IRecvDevice(
431
+ product_type="iPad4,4", hardware_model="j85ap", board_id=0x0A, chip_id=0x8960, display_name="iPad mini 2 (WiFi)"
432
+ ),
433
+ IRecvDevice(
434
+ product_type="iPad4,5",
435
+ hardware_model="j86ap",
436
+ board_id=0x0C,
437
+ chip_id=0x8960,
438
+ display_name="iPad mini 2 (Cellular)",
439
+ ),
440
+ IRecvDevice(
441
+ product_type="iPad4,6",
442
+ hardware_model="j87ap",
443
+ board_id=0x0E,
444
+ chip_id=0x8960,
445
+ display_name="iPad mini 2 (China)",
446
+ ),
447
+ IRecvDevice(
448
+ product_type="iPad4,7",
449
+ hardware_model="j85map",
450
+ board_id=0x32,
451
+ chip_id=0x8960,
452
+ display_name="iPad mini 3 (WiFi)",
453
+ ),
454
+ IRecvDevice(
455
+ product_type="iPad4,8",
456
+ hardware_model="j86map",
457
+ board_id=0x34,
458
+ chip_id=0x8960,
459
+ display_name="iPad mini 3 (Cellular)",
460
+ ),
461
+ IRecvDevice(
462
+ product_type="iPad4,9",
463
+ hardware_model="j87map",
464
+ board_id=0x36,
465
+ chip_id=0x8960,
466
+ display_name="iPad mini 3 (China)",
467
+ ),
468
+ IRecvDevice(
469
+ product_type="iPad5,1", hardware_model="j96ap", board_id=0x08, chip_id=0x7000, display_name="iPad mini 4 (WiFi)"
470
+ ),
471
+ IRecvDevice(
472
+ product_type="iPad5,2",
473
+ hardware_model="j97ap",
474
+ board_id=0x0A,
475
+ chip_id=0x7000,
476
+ display_name="iPad mini 4 (Cellular)",
477
+ ),
478
+ IRecvDevice(
479
+ product_type="iPad5,3", hardware_model="j81ap", board_id=0x06, chip_id=0x7001, display_name="iPad Air 2 (WiFi)"
480
+ ),
481
+ IRecvDevice(
482
+ product_type="iPad5,4",
483
+ hardware_model="j82ap",
484
+ board_id=0x02,
485
+ chip_id=0x7001,
486
+ display_name="iPad Air 2 (Cellular)",
487
+ ),
488
+ IRecvDevice(
489
+ product_type="iPad6,3",
490
+ hardware_model="j127ap",
491
+ board_id=0x08,
492
+ chip_id=0x8001,
493
+ display_name="iPad Pro 9.7-inch (WiFi)",
494
+ ),
495
+ IRecvDevice(
496
+ product_type="iPad6,4",
497
+ hardware_model="j128ap",
498
+ board_id=0x0A,
499
+ chip_id=0x8001,
500
+ display_name="iPad Pro 9.7-inch (Cellular)",
501
+ ),
502
+ IRecvDevice(
503
+ product_type="iPad6,7",
504
+ hardware_model="j98aap",
505
+ board_id=0x10,
506
+ chip_id=0x8001,
507
+ display_name="iPad Pro 12.9-inch (1st gen, WiFi)",
508
+ ),
509
+ IRecvDevice(
510
+ product_type="iPad6,8",
511
+ hardware_model="j99aap",
512
+ board_id=0x12,
513
+ chip_id=0x8001,
514
+ display_name="iPad Pro 12.9-inch (1st gen, Cellular)",
515
+ ),
516
+ IRecvDevice(
517
+ product_type="iPad6,11",
518
+ hardware_model="j71sap",
519
+ board_id=0x10,
520
+ chip_id=0x8000,
521
+ display_name="iPad (5th gen, WiFi)",
522
+ ),
523
+ IRecvDevice(
524
+ product_type="iPad6,11",
525
+ hardware_model="j71tap",
526
+ board_id=0x10,
527
+ chip_id=0x8003,
528
+ display_name="iPad (5th gen, WiFi)",
529
+ ),
530
+ IRecvDevice(
531
+ product_type="iPad6,12",
532
+ hardware_model="j72sap",
533
+ board_id=0x12,
534
+ chip_id=0x8000,
535
+ display_name="iPad (5th gen, Cellular)",
536
+ ),
537
+ IRecvDevice(
538
+ product_type="iPad6,12",
539
+ hardware_model="j72tap",
540
+ board_id=0x12,
541
+ chip_id=0x8003,
542
+ display_name="iPad (5th gen, Cellular)",
543
+ ),
544
+ IRecvDevice(
545
+ product_type="iPad7,1",
546
+ hardware_model="j120ap",
547
+ board_id=0x0C,
548
+ chip_id=0x8011,
549
+ display_name="iPad Pro 12.9-inch (2nd gen, WiFi)",
550
+ ),
551
+ IRecvDevice(
552
+ product_type="iPad7,2",
553
+ hardware_model="j121ap",
554
+ board_id=0x0E,
555
+ chip_id=0x8011,
556
+ display_name="iPad Pro 12.9-inch (2nd gen, Cellular)",
557
+ ),
558
+ IRecvDevice(
559
+ product_type="iPad7,3",
560
+ hardware_model="j207ap",
561
+ board_id=0x04,
562
+ chip_id=0x8011,
563
+ display_name="iPad Pro 10.5-inch (WiFi)",
564
+ ),
565
+ IRecvDevice(
566
+ product_type="iPad7,4",
567
+ hardware_model="j208ap",
568
+ board_id=0x06,
569
+ chip_id=0x8011,
570
+ display_name="iPad Pro 10.5-inch (Cellular)",
571
+ ),
572
+ IRecvDevice(
573
+ product_type="iPad7,5",
574
+ hardware_model="j71bap",
575
+ board_id=0x18,
576
+ chip_id=0x8010,
577
+ display_name="iPad (6th gen, WiFi)",
578
+ ),
579
+ IRecvDevice(
580
+ product_type="iPad7,6",
581
+ hardware_model="j72bap",
582
+ board_id=0x1A,
583
+ chip_id=0x8010,
584
+ display_name="iPad (6th gen, Cellular)",
585
+ ),
586
+ IRecvDevice(
587
+ product_type="iPad7,11",
588
+ hardware_model="j171ap",
589
+ board_id=0x1C,
590
+ chip_id=0x8010,
591
+ display_name="iPad (7th gen, WiFi)",
592
+ ),
593
+ IRecvDevice(
594
+ product_type="iPad7,12",
595
+ hardware_model="j172ap",
596
+ board_id=0x1E,
597
+ chip_id=0x8010,
598
+ display_name="iPad (7th gen, Cellular)",
599
+ ),
600
+ IRecvDevice(
601
+ product_type="iPad8,1",
602
+ hardware_model="j317ap",
603
+ board_id=0x0C,
604
+ chip_id=0x8027,
605
+ display_name="iPad Pro 11-inch (1st gen, WiFi)",
606
+ ),
607
+ IRecvDevice(
608
+ product_type="iPad8,2",
609
+ hardware_model="j317xap",
610
+ board_id=0x1C,
611
+ chip_id=0x8027,
612
+ display_name="iPad Pro 11-inch (1st gen, WiFi, 1TB)",
613
+ ),
614
+ IRecvDevice(
615
+ product_type="iPad8,3",
616
+ hardware_model="j318ap",
617
+ board_id=0x0E,
618
+ chip_id=0x8027,
619
+ display_name="iPad Pro 11-inch (1st gen, Cellular)",
620
+ ),
621
+ IRecvDevice(
622
+ product_type="iPad8,4",
623
+ hardware_model="j318xap",
624
+ board_id=0x1E,
625
+ chip_id=0x8027,
626
+ display_name="iPad Pro 11-inch (1st gen, Cellular, 1TB)",
627
+ ),
628
+ IRecvDevice(
629
+ product_type="iPad8,5",
630
+ hardware_model="j320ap",
631
+ board_id=0x08,
632
+ chip_id=0x8027,
633
+ display_name="iPad Pro 12.9-inch (3rd gen, WiFi)",
634
+ ),
635
+ IRecvDevice(
636
+ product_type="iPad8,6",
637
+ hardware_model="j320xap",
638
+ board_id=0x18,
639
+ chip_id=0x8027,
640
+ display_name="iPad Pro 12.9-inch (3rd gen, WiFi, 1TB)",
641
+ ),
642
+ IRecvDevice(
643
+ product_type="iPad8,7",
644
+ hardware_model="j321ap",
645
+ board_id=0x0A,
646
+ chip_id=0x8027,
647
+ display_name="iPad Pro 12.9-inch (3rd gen, Cellular)",
648
+ ),
649
+ IRecvDevice(
650
+ product_type="iPad8,8",
651
+ hardware_model="j321xap",
652
+ board_id=0x1A,
653
+ chip_id=0x8027,
654
+ display_name="iPad Pro 12.9-inch (3rd gen, Cellular, 1TB)",
655
+ ),
656
+ IRecvDevice(
657
+ product_type="iPad8,9",
658
+ hardware_model="j417ap",
659
+ board_id=0x3C,
660
+ chip_id=0x8027,
661
+ display_name="iPad Pro 11-inch (2nd gen, WiFi)",
662
+ ),
663
+ IRecvDevice(
664
+ product_type="iPad8,10",
665
+ hardware_model="j418ap",
666
+ board_id=0x3E,
667
+ chip_id=0x8027,
668
+ display_name="iPad Pro 11-inch (2nd gen, Cellular)",
669
+ ),
670
+ IRecvDevice(
671
+ product_type="iPad8,11",
672
+ hardware_model="j420ap",
673
+ board_id=0x38,
674
+ chip_id=0x8027,
675
+ display_name="iPad Pro 12.9-inch (4th gen, WiFi)",
676
+ ),
677
+ IRecvDevice(
678
+ product_type="iPad8,12",
679
+ hardware_model="j421ap",
680
+ board_id=0x3A,
681
+ chip_id=0x8027,
682
+ display_name="iPad Pro 12.9-inch (4th gen, Cellular)",
683
+ ),
684
+ IRecvDevice(
685
+ product_type="iPad11,1",
686
+ hardware_model="j210ap",
687
+ board_id=0x14,
688
+ chip_id=0x8020,
689
+ display_name="iPad mini (5th gen, WiFi)",
690
+ ),
691
+ IRecvDevice(
692
+ product_type="iPad11,2",
693
+ hardware_model="j211ap",
694
+ board_id=0x16,
695
+ chip_id=0x8020,
696
+ display_name="iPad mini (5th gen, Cellular)",
697
+ ),
698
+ IRecvDevice(
699
+ product_type="iPad11,3",
700
+ hardware_model="j217ap",
701
+ board_id=0x1C,
702
+ chip_id=0x8020,
703
+ display_name="iPad Air (3rd gen, WiFi)",
704
+ ),
705
+ IRecvDevice(
706
+ product_type="iPad11,4",
707
+ hardware_model="j218ap",
708
+ board_id=0x1E,
709
+ chip_id=0x8020,
710
+ display_name="iPad Air (3rd gen, Celluar)",
711
+ ),
712
+ IRecvDevice(
713
+ product_type="iPad11,6",
714
+ hardware_model="j171aap",
715
+ board_id=0x24,
716
+ chip_id=0x8020,
717
+ display_name="iPad (8th gen, WiFi)",
718
+ ),
719
+ IRecvDevice(
720
+ product_type="iPad11,7",
721
+ hardware_model="j172aap",
722
+ board_id=0x26,
723
+ chip_id=0x8020,
724
+ display_name="iPad (8th gen, Cellular)",
725
+ ),
726
+ IRecvDevice(
727
+ product_type="iPad12,1",
728
+ hardware_model="j181ap",
729
+ board_id=0x18,
730
+ chip_id=0x8030,
731
+ display_name="iPad (9th gen, WiFi)",
732
+ ),
733
+ IRecvDevice(
734
+ product_type="iPad12,2",
735
+ hardware_model="j182ap",
736
+ board_id=0x1A,
737
+ chip_id=0x8030,
738
+ display_name="iPad (9th gen, Cellular)",
739
+ ),
740
+ IRecvDevice(
741
+ product_type="iPad13,1",
742
+ hardware_model="j307ap",
743
+ board_id=0x04,
744
+ chip_id=0x8101,
745
+ display_name="iPad Air (4th gen, WiFi)",
746
+ ),
747
+ IRecvDevice(
748
+ product_type="iPad13,2",
749
+ hardware_model="j308ap",
750
+ board_id=0x06,
751
+ chip_id=0x8101,
752
+ display_name="iPad Air (4th gen, Celluar)",
753
+ ),
754
+ IRecvDevice(
755
+ product_type="iPad13,4",
756
+ hardware_model="j517ap",
757
+ board_id=0x08,
758
+ chip_id=0x8103,
759
+ display_name="iPad Pro 11-inch (3rd gen, WiFi)",
760
+ ),
761
+ IRecvDevice(
762
+ product_type="iPad13,5",
763
+ hardware_model="j517xap",
764
+ board_id=0x0A,
765
+ chip_id=0x8103,
766
+ display_name="iPad Pro 11-inch (3rd gen, WiFi, 2TB)",
767
+ ),
768
+ IRecvDevice(
769
+ product_type="iPad13,6",
770
+ hardware_model="j518ap",
771
+ board_id=0x0C,
772
+ chip_id=0x8103,
773
+ display_name="iPad Pro 11-inch (3rd gen, Cellular)",
774
+ ),
775
+ IRecvDevice(
776
+ product_type="iPad13,7",
777
+ hardware_model="j518xap",
778
+ board_id=0x0E,
779
+ chip_id=0x8103,
780
+ display_name="iPad Pro 11-inch (3rd gen, Cellular, 2TB)",
781
+ ),
782
+ IRecvDevice(
783
+ product_type="iPad13,8",
784
+ hardware_model="j522ap",
785
+ board_id=0x18,
786
+ chip_id=0x8103,
787
+ display_name="iPad Pro 12.9-inch (5th gen, WiFi)",
788
+ ),
789
+ IRecvDevice(
790
+ product_type="iPad13,9",
791
+ hardware_model="j522xap",
792
+ board_id=0x1A,
793
+ chip_id=0x8103,
794
+ display_name="iPad Pro 12.9-inch (5th gen, WiFi, 2TB)",
795
+ ),
796
+ IRecvDevice(
797
+ product_type="iPad13,10",
798
+ hardware_model="j523ap",
799
+ board_id=0x1C,
800
+ chip_id=0x8103,
801
+ display_name="iPad Pro 12.9-inch (5th gen, Cellular)",
802
+ ),
803
+ IRecvDevice(
804
+ product_type="iPad13,11",
805
+ hardware_model="j523xap",
806
+ board_id=0x1E,
807
+ chip_id=0x8103,
808
+ display_name="iPad Pro 12.9-inch (5th gen, Cellular, 2TB)",
809
+ ),
810
+ IRecvDevice(
811
+ product_type="iPad13,16",
812
+ hardware_model="j407ap",
813
+ board_id=0x10,
814
+ chip_id=0x8103,
815
+ display_name="iPad Air (5th gen, WiFi)",
816
+ ),
817
+ IRecvDevice(
818
+ product_type="iPad13,17",
819
+ hardware_model="j408ap",
820
+ board_id=0x12,
821
+ chip_id=0x8103,
822
+ display_name="iPad Air (5th gen, Celluar)",
823
+ ),
824
+ IRecvDevice(
825
+ product_type="iPad14,1",
826
+ hardware_model="j310ap",
827
+ board_id=0x04,
828
+ chip_id=0x8110,
829
+ display_name="iPad mini (6th gen, WiFi)",
830
+ ),
831
+ IRecvDevice(
832
+ product_type="iPad14,2",
833
+ hardware_model="j311ap",
834
+ board_id=0x06,
835
+ chip_id=0x8110,
836
+ display_name="iPad mini (6th gen, Cellular)",
837
+ ),
306
838
  # Apple TV
307
- IRecvDevice(product_type='AppleTV2,1', hardware_model='k66ap', board_id=0x10, chip_id=0x8930,
308
- display_name='Apple TV 2'),
309
- IRecvDevice(product_type='AppleTV3,1', hardware_model='j33ap', board_id=0x08, chip_id=0x8942,
310
- display_name='Apple TV 3'),
311
- IRecvDevice(product_type='AppleTV3,2', hardware_model='j33iap', board_id=0x00, chip_id=0x8947,
312
- display_name='Apple TV 3 (2013)'),
313
- IRecvDevice(product_type='AppleTV5,3', hardware_model='j42dap', board_id=0x34, chip_id=0x7000,
314
- display_name='Apple TV 4'),
315
- IRecvDevice(product_type='AppleTV6,2', hardware_model='j105aap', board_id=0x02, chip_id=0x8011,
316
- display_name='Apple TV 4K'),
317
- IRecvDevice(product_type='AppleTV11,1', hardware_model='j305ap', board_id=0x08, chip_id=0x8020,
318
- display_name='Apple TV 4K (2nd gen)'),
839
+ IRecvDevice(
840
+ product_type="AppleTV2,1", hardware_model="k66ap", board_id=0x10, chip_id=0x8930, display_name="Apple TV 2"
841
+ ),
842
+ IRecvDevice(
843
+ product_type="AppleTV3,1", hardware_model="j33ap", board_id=0x08, chip_id=0x8942, display_name="Apple TV 3"
844
+ ),
845
+ IRecvDevice(
846
+ product_type="AppleTV3,2",
847
+ hardware_model="j33iap",
848
+ board_id=0x00,
849
+ chip_id=0x8947,
850
+ display_name="Apple TV 3 (2013)",
851
+ ),
852
+ IRecvDevice(
853
+ product_type="AppleTV5,3", hardware_model="j42dap", board_id=0x34, chip_id=0x7000, display_name="Apple TV 4"
854
+ ),
855
+ IRecvDevice(
856
+ product_type="AppleTV6,2", hardware_model="j105aap", board_id=0x02, chip_id=0x8011, display_name="Apple TV 4K"
857
+ ),
858
+ IRecvDevice(
859
+ product_type="AppleTV11,1",
860
+ hardware_model="j305ap",
861
+ board_id=0x08,
862
+ chip_id=0x8020,
863
+ display_name="Apple TV 4K (2nd gen)",
864
+ ),
319
865
  # HomePod
320
- IRecvDevice(product_type='AudioAccessory1,1', hardware_model='b238aap', board_id=0x38, chip_id=0x7000,
321
- display_name='HomePod'),
322
- IRecvDevice(product_type='AudioAccessory1,2', hardware_model='b238ap', board_id=0x1A, chip_id=0x7000,
323
- display_name='HomePod'),
324
- IRecvDevice(product_type='AudioAccessory5,1', hardware_model='b520ap', board_id=0x22, chip_id=0x8006,
325
- display_name='HomePod mini'),
866
+ IRecvDevice(
867
+ product_type="AudioAccessory1,1",
868
+ hardware_model="b238aap",
869
+ board_id=0x38,
870
+ chip_id=0x7000,
871
+ display_name="HomePod",
872
+ ),
873
+ IRecvDevice(
874
+ product_type="AudioAccessory1,2", hardware_model="b238ap", board_id=0x1A, chip_id=0x7000, display_name="HomePod"
875
+ ),
876
+ IRecvDevice(
877
+ product_type="AudioAccessory5,1",
878
+ hardware_model="b520ap",
879
+ board_id=0x22,
880
+ chip_id=0x8006,
881
+ display_name="HomePod mini",
882
+ ),
326
883
  # Apple Watch
327
- IRecvDevice(product_type='Watch1,1', hardware_model='n27aap', board_id=0x02, chip_id=0x7002,
328
- display_name='Apple Watch 38mm (1st gen)'),
329
- IRecvDevice(product_type='Watch1,2', hardware_model='n28aap', board_id=0x04, chip_id=0x7002,
330
- display_name='Apple Watch 42mm (1st gen)'),
331
- IRecvDevice(product_type='Watch2,6', hardware_model='n27dap', board_id=0x02, chip_id=0x8002,
332
- display_name='Apple Watch Series 1 (38mm)'),
333
- IRecvDevice(product_type='Watch2,7', hardware_model='n28dap', board_id=0x04, chip_id=0x8002,
334
- display_name='Apple Watch Series 1 (42mm)'),
335
- IRecvDevice(product_type='Watch2,3', hardware_model='n74ap', board_id=0x0C, chip_id=0x8002,
336
- display_name='Apple Watch Series 2 (38mm)'),
337
- IRecvDevice(product_type='Watch2,4', hardware_model='n75ap', board_id=0x0E, chip_id=0x8002,
338
- display_name='Apple Watch Series 2 (42mm)'),
339
- IRecvDevice(product_type='Watch3,1', hardware_model='n111sap', board_id=0x1C, chip_id=0x8004,
340
- display_name='Apple Watch Series 3 (38mm Cellular)'),
341
- IRecvDevice(product_type='Watch3,2', hardware_model='n111bap', board_id=0x1E, chip_id=0x8004,
342
- display_name='Apple Watch Series 3 (42mm Cellular)'),
343
- IRecvDevice(product_type='Watch3,3', hardware_model='n121sap', board_id=0x18, chip_id=0x8004,
344
- display_name='Apple Watch Series 3 (38mm)'),
345
- IRecvDevice(product_type='Watch3,4', hardware_model='n121bap', board_id=0x1A, chip_id=0x8004,
346
- display_name='Apple Watch Series 3 (42mm)'),
347
- IRecvDevice(product_type='Watch4,1', hardware_model='n131sap', board_id=0x08, chip_id=0x8006,
348
- display_name='Apple Watch Series 4 (40mm)'),
349
- IRecvDevice(product_type='Watch4,2', hardware_model='n131bap', board_id=0x0A, chip_id=0x8006,
350
- display_name='Apple Watch Series 4 (44mm)'),
351
- IRecvDevice(product_type='Watch4,3', hardware_model='n141sap', board_id=0x0C, chip_id=0x8006,
352
- display_name='Apple Watch Series 4 (40mm Cellular)'),
353
- IRecvDevice(product_type='Watch4,4', hardware_model='n141bap', board_id=0x0E, chip_id=0x8006,
354
- display_name='Apple Watch Series 4 (44mm Cellular)'),
355
- IRecvDevice(product_type='Watch5,1', hardware_model='n144sap', board_id=0x10, chip_id=0x8006,
356
- display_name='Apple Watch Series 5 (40mm)'),
357
- IRecvDevice(product_type='Watch5,2', hardware_model='n144bap', board_id=0x12, chip_id=0x8006,
358
- display_name='Apple Watch Series 5 (44mm)'),
359
- IRecvDevice(product_type='Watch5,3', hardware_model='n146sap', board_id=0x14, chip_id=0x8006,
360
- display_name='Apple Watch Series 5 (40mm Cellular)'),
361
- IRecvDevice(product_type='Watch5,4', hardware_model='n146bap', board_id=0x16, chip_id=0x8006,
362
- display_name='Apple Watch Series 5 (44mm Cellular)'),
363
- IRecvDevice(product_type='Watch5,9', hardware_model='n140sap', board_id=0x28, chip_id=0x8006,
364
- display_name='Apple Watch SE (40mm)'),
365
- IRecvDevice(product_type='Watch5,10', hardware_model='n140bap', board_id=0x2A, chip_id=0x8006,
366
- display_name='Apple Watch SE (44mm)'),
367
- IRecvDevice(product_type='Watch5,11', hardware_model='n142sap', board_id=0x2C, chip_id=0x8006,
368
- display_name='Apple Watch SE (40mm Cellular)'),
369
- IRecvDevice(product_type='Watch5,12', hardware_model='n142bap', board_id=0x2E, chip_id=0x8006,
370
- display_name='Apple Watch SE (44mm Cellular)'),
371
- IRecvDevice(product_type='Watch6,1', hardware_model='n157sap', board_id=0x08, chip_id=0x8301,
372
- display_name='Apple Watch Series 6 (40mm)'),
373
- IRecvDevice(product_type='Watch6,2', hardware_model='n157bap', board_id=0x0A, chip_id=0x8301,
374
- display_name='Apple Watch Series 6 (44mm)'),
375
- IRecvDevice(product_type='Watch6,3', hardware_model='n158sap', board_id=0x0C, chip_id=0x8301,
376
- display_name='Apple Watch Series 6 (40mm Cellular)'),
377
- IRecvDevice(product_type='Watch6,4', hardware_model='n158bap', board_id=0x0E, chip_id=0x8301,
378
- display_name='Apple Watch Series 6 (44mm Cellular)'),
379
- IRecvDevice(product_type='Watch6,6', hardware_model='n187sap', board_id=0x10, chip_id=0x8301,
380
- display_name='Apple Watch Series 7 (41mm)'),
381
- IRecvDevice(product_type='Watch6,7', hardware_model='n187bap', board_id=0x12, chip_id=0x8301,
382
- display_name='Apple Watch Series 7 (45mm)'),
383
- IRecvDevice(product_type='Watch6,8', hardware_model='n188sap', board_id=0x14, chip_id=0x8301,
384
- display_name='Apple Watch Series 7 (41mm Cellular)'),
385
- IRecvDevice(product_type='Watch6,9', hardware_model='n188bap', board_id=0x16, chip_id=0x8301,
386
- display_name='Apple Watch Series 7 (45mm Cellular)'),
387
- IRecvDevice(product_type='Watch6,10', hardware_model='n143sap', board_id=0x18, chip_id=0x8301,
388
- display_name='Apple Watch SE (2nd generation) (40mm)'),
389
- IRecvDevice(product_type='Watch6,11', hardware_model='n143bap', board_id=0x2A, chip_id=0x8301,
390
- display_name='Apple Watch SE (2nd generation) (44mm)'),
391
- IRecvDevice(product_type='Watch6,12', hardware_model='n149sap', board_id=0x2C, chip_id=0x8301,
392
- display_name='Apple Watch SE (2nd generation) (40mm Cellular)'),
393
- IRecvDevice(product_type='Watch6,13', hardware_model='n149bap', board_id=0x2E, chip_id=0x8301,
394
- display_name='Apple Watch SE (2nd generation) (44m Cellular)'),
395
- IRecvDevice(product_type='Watch6,14', hardware_model='n197sap', board_id=0x30, chip_id=0x8301,
396
- display_name='Apple Watch Series 8 (41mm)'),
397
- IRecvDevice(product_type='Watch6,15', hardware_model='n197bap', board_id=0x32, chip_id=0x8301,
398
- display_name='Apple Watch Series 8 (45mm)'),
399
- IRecvDevice(product_type='Watch6,16', hardware_model='n198sap', board_id=0x34, chip_id=0x8301,
400
- display_name='Apple Watch Series 8 (41mm Cellular)'),
401
- IRecvDevice(product_type='Watch6,17', hardware_model='n198bap', board_id=0x36, chip_id=0x8301,
402
- display_name='Apple Watch Series 8 (45mm Cellular)'),
403
- IRecvDevice(product_type='Watch6,17', hardware_model='n199ap', board_id=0x26, chip_id=0x8301,
404
- display_name='Apple Watch Ultra'),
405
- IRecvDevice(product_type='Watch7,1', hardware_model='n207sap', board_id=0x08, chip_id=0x8310,
406
- display_name='Apple Watch Series 9 (41mm)'),
407
- IRecvDevice(product_type='Watch7,2', hardware_model='n207bap', board_id=0x0A, chip_id=0x8310,
408
- display_name='Apple Watch Series 9 (45mm)'),
409
- IRecvDevice(product_type='Watch7,3', hardware_model='n208sap', board_id=0x0C, chip_id=0x8310,
410
- display_name='Apple Watch Series 9 (41mm Cellular)'),
411
- IRecvDevice(product_type='Watch7,4', hardware_model='n208bap', board_id=0x0E, chip_id=0x8310,
412
- display_name='Apple Watch Series 9 (45mm Cellular)'),
413
- IRecvDevice(product_type='Watch7,5', hardware_model='n210ap', board_id=0x02, chip_id=0x8310,
414
- display_name='Apple Watch Ultra 2'),
415
- IRecvDevice(product_type='Watch7,8', hardware_model='n217sap', board_id=0x10, chip_id=0x8310,
416
- display_name='Apple Watch Series 10 (42mm)'),
417
- IRecvDevice(product_type='Watch7,9', hardware_model='n217bap', board_id=0x12, chip_id=0x8310,
418
- display_name='Apple Watch Series 10 (46mm)'),
419
- IRecvDevice(product_type='Watch7,10', hardware_model='n218sap', board_id=0x14, chip_id=0x8310,
420
- display_name='Apple Watch Series 10 (42mm Cellular)'),
421
- IRecvDevice(product_type='Watch7,11', hardware_model='n218bap', board_id=0x16, chip_id=0x8310,
422
- display_name='Apple Watch Series 10 (46mm Cellular)'),
423
- IRecvDevice(product_type='Watch7,12', hardware_model='n230ap', board_id=0x22, chip_id=0x8310,
424
- display_name='Apple Watch Ultra 3'),
425
- IRecvDevice(product_type='Watch7,13', hardware_model='n243sap', board_id=0x28, chip_id=0x8310,
426
- display_name='Apple Watch SE 3 (40mm)'),
427
- IRecvDevice(product_type='Watch7,14', hardware_model='n243bap', board_id=0x2A, chip_id=0x8310,
428
- display_name='Apple Watch SE 3 (44mm)'),
429
- IRecvDevice(product_type='Watch7,15', hardware_model='n244sap', board_id=0x2C, chip_id=0x8310,
430
- display_name='Apple Watch SE 3 (40mm Cellular)'),
431
- IRecvDevice(product_type='Watch7,16', hardware_model='n244bap', board_id=0x2E, chip_id=0x8310,
432
- display_name='Apple Watch SE 3 (44mm Cellular)'),
433
- IRecvDevice(product_type='Watch7,17', hardware_model='n227sap', board_id=0x18, chip_id=0x8310,
434
- display_name='Apple Watch Series 11 (42mm)'),
435
- IRecvDevice(product_type='Watch7,18', hardware_model='n227bap', board_id=0x1A, chip_id=0x8310,
436
- display_name='Apple Watch Series 11 (46mm)'),
437
- IRecvDevice(product_type='Watch7,19', hardware_model='n228sap', board_id=0x1C, chip_id=0x8310,
438
- display_name='Apple Watch Series 11 (42mm Cellular)'),
439
- IRecvDevice(product_type='Watch7,20', hardware_model='n228bap', board_id=0x1E, chip_id=0x8310,
440
- display_name='Apple Watch Series 11 (46mm Cellular)'),
884
+ IRecvDevice(
885
+ product_type="Watch1,1",
886
+ hardware_model="n27aap",
887
+ board_id=0x02,
888
+ chip_id=0x7002,
889
+ display_name="Apple Watch 38mm (1st gen)",
890
+ ),
891
+ IRecvDevice(
892
+ product_type="Watch1,2",
893
+ hardware_model="n28aap",
894
+ board_id=0x04,
895
+ chip_id=0x7002,
896
+ display_name="Apple Watch 42mm (1st gen)",
897
+ ),
898
+ IRecvDevice(
899
+ product_type="Watch2,6",
900
+ hardware_model="n27dap",
901
+ board_id=0x02,
902
+ chip_id=0x8002,
903
+ display_name="Apple Watch Series 1 (38mm)",
904
+ ),
905
+ IRecvDevice(
906
+ product_type="Watch2,7",
907
+ hardware_model="n28dap",
908
+ board_id=0x04,
909
+ chip_id=0x8002,
910
+ display_name="Apple Watch Series 1 (42mm)",
911
+ ),
912
+ IRecvDevice(
913
+ product_type="Watch2,3",
914
+ hardware_model="n74ap",
915
+ board_id=0x0C,
916
+ chip_id=0x8002,
917
+ display_name="Apple Watch Series 2 (38mm)",
918
+ ),
919
+ IRecvDevice(
920
+ product_type="Watch2,4",
921
+ hardware_model="n75ap",
922
+ board_id=0x0E,
923
+ chip_id=0x8002,
924
+ display_name="Apple Watch Series 2 (42mm)",
925
+ ),
926
+ IRecvDevice(
927
+ product_type="Watch3,1",
928
+ hardware_model="n111sap",
929
+ board_id=0x1C,
930
+ chip_id=0x8004,
931
+ display_name="Apple Watch Series 3 (38mm Cellular)",
932
+ ),
933
+ IRecvDevice(
934
+ product_type="Watch3,2",
935
+ hardware_model="n111bap",
936
+ board_id=0x1E,
937
+ chip_id=0x8004,
938
+ display_name="Apple Watch Series 3 (42mm Cellular)",
939
+ ),
940
+ IRecvDevice(
941
+ product_type="Watch3,3",
942
+ hardware_model="n121sap",
943
+ board_id=0x18,
944
+ chip_id=0x8004,
945
+ display_name="Apple Watch Series 3 (38mm)",
946
+ ),
947
+ IRecvDevice(
948
+ product_type="Watch3,4",
949
+ hardware_model="n121bap",
950
+ board_id=0x1A,
951
+ chip_id=0x8004,
952
+ display_name="Apple Watch Series 3 (42mm)",
953
+ ),
954
+ IRecvDevice(
955
+ product_type="Watch4,1",
956
+ hardware_model="n131sap",
957
+ board_id=0x08,
958
+ chip_id=0x8006,
959
+ display_name="Apple Watch Series 4 (40mm)",
960
+ ),
961
+ IRecvDevice(
962
+ product_type="Watch4,2",
963
+ hardware_model="n131bap",
964
+ board_id=0x0A,
965
+ chip_id=0x8006,
966
+ display_name="Apple Watch Series 4 (44mm)",
967
+ ),
968
+ IRecvDevice(
969
+ product_type="Watch4,3",
970
+ hardware_model="n141sap",
971
+ board_id=0x0C,
972
+ chip_id=0x8006,
973
+ display_name="Apple Watch Series 4 (40mm Cellular)",
974
+ ),
975
+ IRecvDevice(
976
+ product_type="Watch4,4",
977
+ hardware_model="n141bap",
978
+ board_id=0x0E,
979
+ chip_id=0x8006,
980
+ display_name="Apple Watch Series 4 (44mm Cellular)",
981
+ ),
982
+ IRecvDevice(
983
+ product_type="Watch5,1",
984
+ hardware_model="n144sap",
985
+ board_id=0x10,
986
+ chip_id=0x8006,
987
+ display_name="Apple Watch Series 5 (40mm)",
988
+ ),
989
+ IRecvDevice(
990
+ product_type="Watch5,2",
991
+ hardware_model="n144bap",
992
+ board_id=0x12,
993
+ chip_id=0x8006,
994
+ display_name="Apple Watch Series 5 (44mm)",
995
+ ),
996
+ IRecvDevice(
997
+ product_type="Watch5,3",
998
+ hardware_model="n146sap",
999
+ board_id=0x14,
1000
+ chip_id=0x8006,
1001
+ display_name="Apple Watch Series 5 (40mm Cellular)",
1002
+ ),
1003
+ IRecvDevice(
1004
+ product_type="Watch5,4",
1005
+ hardware_model="n146bap",
1006
+ board_id=0x16,
1007
+ chip_id=0x8006,
1008
+ display_name="Apple Watch Series 5 (44mm Cellular)",
1009
+ ),
1010
+ IRecvDevice(
1011
+ product_type="Watch5,9",
1012
+ hardware_model="n140sap",
1013
+ board_id=0x28,
1014
+ chip_id=0x8006,
1015
+ display_name="Apple Watch SE (40mm)",
1016
+ ),
1017
+ IRecvDevice(
1018
+ product_type="Watch5,10",
1019
+ hardware_model="n140bap",
1020
+ board_id=0x2A,
1021
+ chip_id=0x8006,
1022
+ display_name="Apple Watch SE (44mm)",
1023
+ ),
1024
+ IRecvDevice(
1025
+ product_type="Watch5,11",
1026
+ hardware_model="n142sap",
1027
+ board_id=0x2C,
1028
+ chip_id=0x8006,
1029
+ display_name="Apple Watch SE (40mm Cellular)",
1030
+ ),
1031
+ IRecvDevice(
1032
+ product_type="Watch5,12",
1033
+ hardware_model="n142bap",
1034
+ board_id=0x2E,
1035
+ chip_id=0x8006,
1036
+ display_name="Apple Watch SE (44mm Cellular)",
1037
+ ),
1038
+ IRecvDevice(
1039
+ product_type="Watch6,1",
1040
+ hardware_model="n157sap",
1041
+ board_id=0x08,
1042
+ chip_id=0x8301,
1043
+ display_name="Apple Watch Series 6 (40mm)",
1044
+ ),
1045
+ IRecvDevice(
1046
+ product_type="Watch6,2",
1047
+ hardware_model="n157bap",
1048
+ board_id=0x0A,
1049
+ chip_id=0x8301,
1050
+ display_name="Apple Watch Series 6 (44mm)",
1051
+ ),
1052
+ IRecvDevice(
1053
+ product_type="Watch6,3",
1054
+ hardware_model="n158sap",
1055
+ board_id=0x0C,
1056
+ chip_id=0x8301,
1057
+ display_name="Apple Watch Series 6 (40mm Cellular)",
1058
+ ),
1059
+ IRecvDevice(
1060
+ product_type="Watch6,4",
1061
+ hardware_model="n158bap",
1062
+ board_id=0x0E,
1063
+ chip_id=0x8301,
1064
+ display_name="Apple Watch Series 6 (44mm Cellular)",
1065
+ ),
1066
+ IRecvDevice(
1067
+ product_type="Watch6,6",
1068
+ hardware_model="n187sap",
1069
+ board_id=0x10,
1070
+ chip_id=0x8301,
1071
+ display_name="Apple Watch Series 7 (41mm)",
1072
+ ),
1073
+ IRecvDevice(
1074
+ product_type="Watch6,7",
1075
+ hardware_model="n187bap",
1076
+ board_id=0x12,
1077
+ chip_id=0x8301,
1078
+ display_name="Apple Watch Series 7 (45mm)",
1079
+ ),
1080
+ IRecvDevice(
1081
+ product_type="Watch6,8",
1082
+ hardware_model="n188sap",
1083
+ board_id=0x14,
1084
+ chip_id=0x8301,
1085
+ display_name="Apple Watch Series 7 (41mm Cellular)",
1086
+ ),
1087
+ IRecvDevice(
1088
+ product_type="Watch6,9",
1089
+ hardware_model="n188bap",
1090
+ board_id=0x16,
1091
+ chip_id=0x8301,
1092
+ display_name="Apple Watch Series 7 (45mm Cellular)",
1093
+ ),
1094
+ IRecvDevice(
1095
+ product_type="Watch6,10",
1096
+ hardware_model="n143sap",
1097
+ board_id=0x18,
1098
+ chip_id=0x8301,
1099
+ display_name="Apple Watch SE (2nd generation) (40mm)",
1100
+ ),
1101
+ IRecvDevice(
1102
+ product_type="Watch6,11",
1103
+ hardware_model="n143bap",
1104
+ board_id=0x2A,
1105
+ chip_id=0x8301,
1106
+ display_name="Apple Watch SE (2nd generation) (44mm)",
1107
+ ),
1108
+ IRecvDevice(
1109
+ product_type="Watch6,12",
1110
+ hardware_model="n149sap",
1111
+ board_id=0x2C,
1112
+ chip_id=0x8301,
1113
+ display_name="Apple Watch SE (2nd generation) (40mm Cellular)",
1114
+ ),
1115
+ IRecvDevice(
1116
+ product_type="Watch6,13",
1117
+ hardware_model="n149bap",
1118
+ board_id=0x2E,
1119
+ chip_id=0x8301,
1120
+ display_name="Apple Watch SE (2nd generation) (44m Cellular)",
1121
+ ),
1122
+ IRecvDevice(
1123
+ product_type="Watch6,14",
1124
+ hardware_model="n197sap",
1125
+ board_id=0x30,
1126
+ chip_id=0x8301,
1127
+ display_name="Apple Watch Series 8 (41mm)",
1128
+ ),
1129
+ IRecvDevice(
1130
+ product_type="Watch6,15",
1131
+ hardware_model="n197bap",
1132
+ board_id=0x32,
1133
+ chip_id=0x8301,
1134
+ display_name="Apple Watch Series 8 (45mm)",
1135
+ ),
1136
+ IRecvDevice(
1137
+ product_type="Watch6,16",
1138
+ hardware_model="n198sap",
1139
+ board_id=0x34,
1140
+ chip_id=0x8301,
1141
+ display_name="Apple Watch Series 8 (41mm Cellular)",
1142
+ ),
1143
+ IRecvDevice(
1144
+ product_type="Watch6,17",
1145
+ hardware_model="n198bap",
1146
+ board_id=0x36,
1147
+ chip_id=0x8301,
1148
+ display_name="Apple Watch Series 8 (45mm Cellular)",
1149
+ ),
1150
+ IRecvDevice(
1151
+ product_type="Watch6,17",
1152
+ hardware_model="n199ap",
1153
+ board_id=0x26,
1154
+ chip_id=0x8301,
1155
+ display_name="Apple Watch Ultra",
1156
+ ),
1157
+ IRecvDevice(
1158
+ product_type="Watch7,1",
1159
+ hardware_model="n207sap",
1160
+ board_id=0x08,
1161
+ chip_id=0x8310,
1162
+ display_name="Apple Watch Series 9 (41mm)",
1163
+ ),
1164
+ IRecvDevice(
1165
+ product_type="Watch7,2",
1166
+ hardware_model="n207bap",
1167
+ board_id=0x0A,
1168
+ chip_id=0x8310,
1169
+ display_name="Apple Watch Series 9 (45mm)",
1170
+ ),
1171
+ IRecvDevice(
1172
+ product_type="Watch7,3",
1173
+ hardware_model="n208sap",
1174
+ board_id=0x0C,
1175
+ chip_id=0x8310,
1176
+ display_name="Apple Watch Series 9 (41mm Cellular)",
1177
+ ),
1178
+ IRecvDevice(
1179
+ product_type="Watch7,4",
1180
+ hardware_model="n208bap",
1181
+ board_id=0x0E,
1182
+ chip_id=0x8310,
1183
+ display_name="Apple Watch Series 9 (45mm Cellular)",
1184
+ ),
1185
+ IRecvDevice(
1186
+ product_type="Watch7,5",
1187
+ hardware_model="n210ap",
1188
+ board_id=0x02,
1189
+ chip_id=0x8310,
1190
+ display_name="Apple Watch Ultra 2",
1191
+ ),
1192
+ IRecvDevice(
1193
+ product_type="Watch7,8",
1194
+ hardware_model="n217sap",
1195
+ board_id=0x10,
1196
+ chip_id=0x8310,
1197
+ display_name="Apple Watch Series 10 (42mm)",
1198
+ ),
1199
+ IRecvDevice(
1200
+ product_type="Watch7,9",
1201
+ hardware_model="n217bap",
1202
+ board_id=0x12,
1203
+ chip_id=0x8310,
1204
+ display_name="Apple Watch Series 10 (46mm)",
1205
+ ),
1206
+ IRecvDevice(
1207
+ product_type="Watch7,10",
1208
+ hardware_model="n218sap",
1209
+ board_id=0x14,
1210
+ chip_id=0x8310,
1211
+ display_name="Apple Watch Series 10 (42mm Cellular)",
1212
+ ),
1213
+ IRecvDevice(
1214
+ product_type="Watch7,11",
1215
+ hardware_model="n218bap",
1216
+ board_id=0x16,
1217
+ chip_id=0x8310,
1218
+ display_name="Apple Watch Series 10 (46mm Cellular)",
1219
+ ),
1220
+ IRecvDevice(
1221
+ product_type="Watch7,12",
1222
+ hardware_model="n230ap",
1223
+ board_id=0x22,
1224
+ chip_id=0x8310,
1225
+ display_name="Apple Watch Ultra 3",
1226
+ ),
1227
+ IRecvDevice(
1228
+ product_type="Watch7,13",
1229
+ hardware_model="n243sap",
1230
+ board_id=0x28,
1231
+ chip_id=0x8310,
1232
+ display_name="Apple Watch SE 3 (40mm)",
1233
+ ),
1234
+ IRecvDevice(
1235
+ product_type="Watch7,14",
1236
+ hardware_model="n243bap",
1237
+ board_id=0x2A,
1238
+ chip_id=0x8310,
1239
+ display_name="Apple Watch SE 3 (44mm)",
1240
+ ),
1241
+ IRecvDevice(
1242
+ product_type="Watch7,15",
1243
+ hardware_model="n244sap",
1244
+ board_id=0x2C,
1245
+ chip_id=0x8310,
1246
+ display_name="Apple Watch SE 3 (40mm Cellular)",
1247
+ ),
1248
+ IRecvDevice(
1249
+ product_type="Watch7,16",
1250
+ hardware_model="n244bap",
1251
+ board_id=0x2E,
1252
+ chip_id=0x8310,
1253
+ display_name="Apple Watch SE 3 (44mm Cellular)",
1254
+ ),
1255
+ IRecvDevice(
1256
+ product_type="Watch7,17",
1257
+ hardware_model="n227sap",
1258
+ board_id=0x18,
1259
+ chip_id=0x8310,
1260
+ display_name="Apple Watch Series 11 (42mm)",
1261
+ ),
1262
+ IRecvDevice(
1263
+ product_type="Watch7,18",
1264
+ hardware_model="n227bap",
1265
+ board_id=0x1A,
1266
+ chip_id=0x8310,
1267
+ display_name="Apple Watch Series 11 (46mm)",
1268
+ ),
1269
+ IRecvDevice(
1270
+ product_type="Watch7,19",
1271
+ hardware_model="n228sap",
1272
+ board_id=0x1C,
1273
+ chip_id=0x8310,
1274
+ display_name="Apple Watch Series 11 (42mm Cellular)",
1275
+ ),
1276
+ IRecvDevice(
1277
+ product_type="Watch7,20",
1278
+ hardware_model="n228bap",
1279
+ board_id=0x1E,
1280
+ chip_id=0x8310,
1281
+ display_name="Apple Watch Series 11 (46mm Cellular)",
1282
+ ),
441
1283
  # Apple Silicon Macs
442
- IRecvDevice(product_type='ADP3,2', hardware_model='j273aap', board_id=0x42, chip_id=0x8027,
443
- display_name='Developer Transition Kit (2020)'),
444
- IRecvDevice(product_type='Macmini9,1', hardware_model='j274ap', board_id=0x22, chip_id=0x8103,
445
- display_name='Mac mini (M1, 2020)'),
446
- IRecvDevice(product_type='MacBookPro17,1', hardware_model='j293ap', board_id=0x24, chip_id=0x8103,
447
- display_name='MacBook Pro (M1, 13-inch, 2020)'),
448
- IRecvDevice(product_type='MacBookPro18,1', hardware_model='j316sap', board_id=0x0A, chip_id=0x6000,
449
- display_name='MacBook Pro (M1 Pro, 16-inch, 2021)'),
450
- IRecvDevice(product_type='MacBookPro18,2', hardware_model='j316cap', board_id=0x0A, chip_id=0x6001,
451
- display_name='MacBook Pro (M1 Max, 16-inch, 2021)'),
452
- IRecvDevice(product_type='MacBookPro18,3', hardware_model='j314sap', board_id=0x08, chip_id=0x6000,
453
- display_name='MacBook Pro (M1 Pro, 14-inch, 2021)'),
454
- IRecvDevice(product_type='MacBookPro18,4', hardware_model='j314cap', board_id=0x08, chip_id=0x6001,
455
- display_name='MacBook Pro (M1 Max, 14-inch, 2021)'),
456
- IRecvDevice(product_type='MacBookAir10,1', hardware_model='j313ap', board_id=0x26, chip_id=0x8103,
457
- display_name='MacBook Air (M1, 2020)'),
458
- IRecvDevice(product_type='iMac21,1', hardware_model='j456ap', board_id=0x28, chip_id=0x8103,
459
- display_name='iMac 24-inch (M1, Two Ports, 2021)'),
460
- IRecvDevice(product_type='iMac21,2', hardware_model='j457ap', board_id=0x2A, chip_id=0x8103,
461
- display_name='iMac 24-inch (M1, Four Ports, 2021)'),
462
- IRecvDevice(product_type='Mac13,1', hardware_model='j375cap', board_id=0x04, chip_id=0x6001,
463
- display_name='Mac Studio (M1 Max, 2022)'),
464
- IRecvDevice(product_type='Mac13,2', hardware_model='j375dap', board_id=0x0C, chip_id=0x6002,
465
- display_name='Mac Studio (M1 Ultra, 2022)'),
466
- IRecvDevice(product_type='Mac14,2', hardware_model='j413ap', board_id=0x28, chip_id=0x8112,
467
- display_name='MacBook Air (M2, 2022)'),
468
- IRecvDevice(product_type='Mac14,7', hardware_model='j493ap', board_id=0x2A, chip_id=0x8112,
469
- display_name='MacBook Pro (M2, 13-inch, 2022)'),
1284
+ IRecvDevice(
1285
+ product_type="ADP3,2",
1286
+ hardware_model="j273aap",
1287
+ board_id=0x42,
1288
+ chip_id=0x8027,
1289
+ display_name="Developer Transition Kit (2020)",
1290
+ ),
1291
+ IRecvDevice(
1292
+ product_type="Macmini9,1",
1293
+ hardware_model="j274ap",
1294
+ board_id=0x22,
1295
+ chip_id=0x8103,
1296
+ display_name="Mac mini (M1, 2020)",
1297
+ ),
1298
+ IRecvDevice(
1299
+ product_type="MacBookPro17,1",
1300
+ hardware_model="j293ap",
1301
+ board_id=0x24,
1302
+ chip_id=0x8103,
1303
+ display_name="MacBook Pro (M1, 13-inch, 2020)",
1304
+ ),
1305
+ IRecvDevice(
1306
+ product_type="MacBookPro18,1",
1307
+ hardware_model="j316sap",
1308
+ board_id=0x0A,
1309
+ chip_id=0x6000,
1310
+ display_name="MacBook Pro (M1 Pro, 16-inch, 2021)",
1311
+ ),
1312
+ IRecvDevice(
1313
+ product_type="MacBookPro18,2",
1314
+ hardware_model="j316cap",
1315
+ board_id=0x0A,
1316
+ chip_id=0x6001,
1317
+ display_name="MacBook Pro (M1 Max, 16-inch, 2021)",
1318
+ ),
1319
+ IRecvDevice(
1320
+ product_type="MacBookPro18,3",
1321
+ hardware_model="j314sap",
1322
+ board_id=0x08,
1323
+ chip_id=0x6000,
1324
+ display_name="MacBook Pro (M1 Pro, 14-inch, 2021)",
1325
+ ),
1326
+ IRecvDevice(
1327
+ product_type="MacBookPro18,4",
1328
+ hardware_model="j314cap",
1329
+ board_id=0x08,
1330
+ chip_id=0x6001,
1331
+ display_name="MacBook Pro (M1 Max, 14-inch, 2021)",
1332
+ ),
1333
+ IRecvDevice(
1334
+ product_type="MacBookAir10,1",
1335
+ hardware_model="j313ap",
1336
+ board_id=0x26,
1337
+ chip_id=0x8103,
1338
+ display_name="MacBook Air (M1, 2020)",
1339
+ ),
1340
+ IRecvDevice(
1341
+ product_type="iMac21,1",
1342
+ hardware_model="j456ap",
1343
+ board_id=0x28,
1344
+ chip_id=0x8103,
1345
+ display_name="iMac 24-inch (M1, Two Ports, 2021)",
1346
+ ),
1347
+ IRecvDevice(
1348
+ product_type="iMac21,2",
1349
+ hardware_model="j457ap",
1350
+ board_id=0x2A,
1351
+ chip_id=0x8103,
1352
+ display_name="iMac 24-inch (M1, Four Ports, 2021)",
1353
+ ),
1354
+ IRecvDevice(
1355
+ product_type="Mac13,1",
1356
+ hardware_model="j375cap",
1357
+ board_id=0x04,
1358
+ chip_id=0x6001,
1359
+ display_name="Mac Studio (M1 Max, 2022)",
1360
+ ),
1361
+ IRecvDevice(
1362
+ product_type="Mac13,2",
1363
+ hardware_model="j375dap",
1364
+ board_id=0x0C,
1365
+ chip_id=0x6002,
1366
+ display_name="Mac Studio (M1 Ultra, 2022)",
1367
+ ),
1368
+ IRecvDevice(
1369
+ product_type="Mac14,2",
1370
+ hardware_model="j413ap",
1371
+ board_id=0x28,
1372
+ chip_id=0x8112,
1373
+ display_name="MacBook Air (M2, 2022)",
1374
+ ),
1375
+ IRecvDevice(
1376
+ product_type="Mac14,7",
1377
+ hardware_model="j493ap",
1378
+ board_id=0x2A,
1379
+ chip_id=0x8112,
1380
+ display_name="MacBook Pro (M2, 13-inch, 2022)",
1381
+ ),
470
1382
  # Apple T2 Coprocessor
471
- IRecvDevice(product_type='iBridge2,1', hardware_model='j137ap', board_id=0x0A, chip_id=0x8012,
472
- display_name='Apple T2 iMacPro1,1 (j137)'),
473
- IRecvDevice(product_type='iBridge2,3', hardware_model='j680ap', board_id=0x0B, chip_id=0x8012,
474
- display_name='Apple T2 MacBookPro15,1 (j680)'),
475
- IRecvDevice(product_type='iBridge2,4', hardware_model='j132ap', board_id=0x0C, chip_id=0x8012,
476
- display_name='Apple T2 MacBookPro15,2 (j132)'),
477
- IRecvDevice(product_type='iBridge2,5', hardware_model='j174ap', board_id=0x0E, chip_id=0x8012,
478
- display_name='Apple T2 Macmini8,1 (j174)'),
479
- IRecvDevice(product_type='iBridge2,6', hardware_model='j160ap', board_id=0x0F, chip_id=0x8012,
480
- display_name='Apple T2 MacPro7,1 (j160)'),
481
- IRecvDevice(product_type='iBridge2,7', hardware_model='j780ap', board_id=0x07, chip_id=0x8012,
482
- display_name='Apple T2 MacBookPro15,3 (j780)'),
483
- IRecvDevice(product_type='iBridge2,8', hardware_model='j140kap', board_id=0x17, chip_id=0x8012,
484
- display_name='Apple T2 MacBookAir8,1 (j140k)'),
485
- IRecvDevice(product_type='iBridge2,10', hardware_model='j213ap', board_id=0x18, chip_id=0x8012,
486
- display_name='Apple T2 MacBookPro15,4 (j213)'),
487
- IRecvDevice(product_type='iBridge2,12', hardware_model='j140aap', board_id=0x37, chip_id=0x8012,
488
- display_name='Apple T2 MacBookAir8,2 (j140a)'),
489
- IRecvDevice(product_type='iBridge2,14', hardware_model='j152fap', board_id=0x3A, chip_id=0x8012,
490
- display_name='Apple T2 MacBookPro16,1 (j152f)'),
491
- IRecvDevice(product_type='iBridge2,15', hardware_model='j230kap', board_id=0x3F, chip_id=0x8012,
492
- display_name='Apple T2 MacBookAir9,1 (j230k)'),
493
- IRecvDevice(product_type='iBridge2,16', hardware_model='j214kap', board_id=0x3E, chip_id=0x8012,
494
- display_name='Apple T2 MacBookPro16,2 (j214k)'),
495
- IRecvDevice(product_type='iBridge2,19', hardware_model='j185ap', board_id=0x22, chip_id=0x8012,
496
- display_name='Apple T2 iMac20,1 (j185)'),
497
- IRecvDevice(product_type='iBridge2,20', hardware_model='j185fap', board_id=0x23, chip_id=0x8012,
498
- display_name='Apple T2 iMac20,2 (j185f)'),
499
- IRecvDevice(product_type='iBridge2,21', hardware_model='j223ap', board_id=0x3B, chip_id=0x8012,
500
- display_name='Apple T2 MacBookPro16,3 (j223)'),
501
- IRecvDevice(product_type='iBridge2,22', hardware_model='j215ap', board_id=0x38, chip_id=0x8012,
502
- display_name='Apple T2 MacBookPro16,4 (j215)'),
1383
+ IRecvDevice(
1384
+ product_type="iBridge2,1",
1385
+ hardware_model="j137ap",
1386
+ board_id=0x0A,
1387
+ chip_id=0x8012,
1388
+ display_name="Apple T2 iMacPro1,1 (j137)",
1389
+ ),
1390
+ IRecvDevice(
1391
+ product_type="iBridge2,3",
1392
+ hardware_model="j680ap",
1393
+ board_id=0x0B,
1394
+ chip_id=0x8012,
1395
+ display_name="Apple T2 MacBookPro15,1 (j680)",
1396
+ ),
1397
+ IRecvDevice(
1398
+ product_type="iBridge2,4",
1399
+ hardware_model="j132ap",
1400
+ board_id=0x0C,
1401
+ chip_id=0x8012,
1402
+ display_name="Apple T2 MacBookPro15,2 (j132)",
1403
+ ),
1404
+ IRecvDevice(
1405
+ product_type="iBridge2,5",
1406
+ hardware_model="j174ap",
1407
+ board_id=0x0E,
1408
+ chip_id=0x8012,
1409
+ display_name="Apple T2 Macmini8,1 (j174)",
1410
+ ),
1411
+ IRecvDevice(
1412
+ product_type="iBridge2,6",
1413
+ hardware_model="j160ap",
1414
+ board_id=0x0F,
1415
+ chip_id=0x8012,
1416
+ display_name="Apple T2 MacPro7,1 (j160)",
1417
+ ),
1418
+ IRecvDevice(
1419
+ product_type="iBridge2,7",
1420
+ hardware_model="j780ap",
1421
+ board_id=0x07,
1422
+ chip_id=0x8012,
1423
+ display_name="Apple T2 MacBookPro15,3 (j780)",
1424
+ ),
1425
+ IRecvDevice(
1426
+ product_type="iBridge2,8",
1427
+ hardware_model="j140kap",
1428
+ board_id=0x17,
1429
+ chip_id=0x8012,
1430
+ display_name="Apple T2 MacBookAir8,1 (j140k)",
1431
+ ),
1432
+ IRecvDevice(
1433
+ product_type="iBridge2,10",
1434
+ hardware_model="j213ap",
1435
+ board_id=0x18,
1436
+ chip_id=0x8012,
1437
+ display_name="Apple T2 MacBookPro15,4 (j213)",
1438
+ ),
1439
+ IRecvDevice(
1440
+ product_type="iBridge2,12",
1441
+ hardware_model="j140aap",
1442
+ board_id=0x37,
1443
+ chip_id=0x8012,
1444
+ display_name="Apple T2 MacBookAir8,2 (j140a)",
1445
+ ),
1446
+ IRecvDevice(
1447
+ product_type="iBridge2,14",
1448
+ hardware_model="j152fap",
1449
+ board_id=0x3A,
1450
+ chip_id=0x8012,
1451
+ display_name="Apple T2 MacBookPro16,1 (j152f)",
1452
+ ),
1453
+ IRecvDevice(
1454
+ product_type="iBridge2,15",
1455
+ hardware_model="j230kap",
1456
+ board_id=0x3F,
1457
+ chip_id=0x8012,
1458
+ display_name="Apple T2 MacBookAir9,1 (j230k)",
1459
+ ),
1460
+ IRecvDevice(
1461
+ product_type="iBridge2,16",
1462
+ hardware_model="j214kap",
1463
+ board_id=0x3E,
1464
+ chip_id=0x8012,
1465
+ display_name="Apple T2 MacBookPro16,2 (j214k)",
1466
+ ),
1467
+ IRecvDevice(
1468
+ product_type="iBridge2,19",
1469
+ hardware_model="j185ap",
1470
+ board_id=0x22,
1471
+ chip_id=0x8012,
1472
+ display_name="Apple T2 iMac20,1 (j185)",
1473
+ ),
1474
+ IRecvDevice(
1475
+ product_type="iBridge2,20",
1476
+ hardware_model="j185fap",
1477
+ board_id=0x23,
1478
+ chip_id=0x8012,
1479
+ display_name="Apple T2 iMac20,2 (j185f)",
1480
+ ),
1481
+ IRecvDevice(
1482
+ product_type="iBridge2,21",
1483
+ hardware_model="j223ap",
1484
+ board_id=0x3B,
1485
+ chip_id=0x8012,
1486
+ display_name="Apple T2 MacBookPro16,3 (j223)",
1487
+ ),
1488
+ IRecvDevice(
1489
+ product_type="iBridge2,22",
1490
+ hardware_model="j215ap",
1491
+ board_id=0x38,
1492
+ chip_id=0x8012,
1493
+ display_name="Apple T2 MacBookPro16,4 (j215)",
1494
+ ),
503
1495
  # Apple Displays
504
- IRecvDevice(product_type='AppleDisplay2,1', hardware_model='j327ap', board_id=0x22, chip_id=0x8030,
505
- display_name='Studio Display'),
1496
+ IRecvDevice(
1497
+ product_type="AppleDisplay2,1",
1498
+ hardware_model="j327ap",
1499
+ board_id=0x22,
1500
+ chip_id=0x8030,
1501
+ display_name="Studio Display",
1502
+ ),
506
1503
  )