Este es mi pequeño hilo de Twitter sobre los adaptadores de video Lightning, también conocidos como Haywire, que en realidad son computadoras Apple Secure Boot con núcleo Darwin.
Hay dos tipos de Haywire:
- Adaptador AV digital Lightning (b137ap / iAccy1,1): adaptador de Lightning a HDMI, admite video y audio.


- Adaptador Lightning a VGA (b165ap / iAccy1,2): no admite audio por una razón obvia.


Ambos admiten video de hasta 1080p y usan el mismo SoC - S5L8747. Número de chip H9TKNNN2GD. Según el iPhone Wiki, tiene 256 MB de RAM. Nada más se sabe.
Desafortunadamente, estos adaptadores tienen una calidad terrible. El adaptador HDMI recibió 2 de 5 estrellas en la Apple Store en los Estados Unidos, y las revisiones son sobre lo siguiente:
1 estrella de 5
¡Dejó de funcionar después de varios usos! Pérdida de dinero!
Compré este adaptador de video Lightning por $ 50. A mí y a los niños realmente les gustaba. En la primera noche, ¡todo funcionó bien! Pudimos ver la película a través de la aplicación en el teléfono. La segunda vez tampoco hubo problemas. Pero la tercera vez dejó de trabajar. Pensé que el problema estaba en el cable HDMI, así que fui y compré uno más caro. Regresó a casa, lo conectó, ¡pero la situación no ha cambiado! Probé en tres televisores diferentes, ¡pero fue en vano! La semana pasada actualicé al iPhone XR (solía ser el iPhone 6) y decidí que ahora todo funcionaría, ¡pero no! Absolutamente pérdida de dinero! Apple fabrica excelentes productos, ¡pero definitivamente no es uno de ellos! Solo decepcionado. Si supiera que fracasará en unos días, habría gastado $ 50 en algo más útil para los niños.
Publicado por Joyce W de Grand Rapids el 19 de julio de 2019
Mi b137 sufrió el mismo destino, por lo que hubo una oportunidad para desmontarlo. Así es como se ve sin plástico:

Entonces, destruya la caja de metal con unos alicates.
Estos contactos de cobre son puntos de prueba: algunos deben ser UART y SWD (ambos no están disponibles a través de Lightning):


Haywire en sí no almacena ningún firmware (bueno, excepto SecureROM), por lo que iOS debe descargarlo cada vez. El firmware es bastante pequeño, unos 25 MB sin comprimir. Viene como un recurso preinstalado con iOS y / o se puede descargar. Aquí está la estructura de carpetas:

El firmware está firmado previamente y no requiere ninguna personalización. APTicket, aunque se utiliza, sigue siendo estático, es decir, no está vinculado a ningún ECID ni nonce.
A diferencia de todos los demás dispositivos que comienzan con iOS 5, iBSS para Haywire tiene modo de recuperación con un shell interactivo. Se utiliza para cargar el caché del núcleo a través de USB (junto con DeviceTree y ramdisk, por supuesto).
Aquí hay información interesante sobre el software ramdisk.
Image3 en iBSS tiene una etiqueta 'RAND' extraña y previamente desconocida que contiene un número entero de 64 bits y algo de relleno. No pude encontrar lo que significa esta etiqueta, incluso en la fuga de código fuente de iBoot. Además, siempre tiene un solo KBAG:

Mapa de asignación de memoria:
0x20000000-0x20020000 - ROM (128 KB)
0x22000000-0x22020000 - SRAM (128 KB) (iBSS funciona desde aquí)
0x8000000-0x18000000 - SDRAM (256 MB)
0x08000000-0x0B000000 - Área de descarga (48 MB)
0x0B000000-0x0DF00000 - Núcleo (47 MB)
0x0DF00000-0x0E000000 - Árbol de dispositivos (1 MB)
0x0E000000-0x11000000 - Ramdisk (48 MB)
0x11000000-0x17F00000 - Montón (111 MB)
0x17F00000-0x17FFC000 - iBoot (no utilizado) (1008 kB)
0x17FFC000-0x18000000 - Pánico (16kB)
Su SecureROM (iBoot-1413.8 en la última versión del chip), como saben, se restablece mediante trucos de hardware. Al menos una persona tiene. Le pedí un vertedero, pero fue rechazado por una razón obvia. Según él, la ROM es muy similar a la A6.
Según las fuentes filtradas de iBoot, Haywire utiliza memoria flash SPI NOR y está en copias comerciales, pero no parece estar formateada, ya que el comando saveenv en iBoot no funciona:

Puede conectar fácilmente Haywire a una PC, porque es esencialmente un dispositivo USB. Todo lo que necesita es una placa de conexión con contactos Lightning, una madre micro-USB y varios cables de conexión:

Diagrama de cableado:
GND -> GND
L0p -> D +
L0n -> D-
ID1 (ACC_PWR1) -> VCC
Tenga en cuenta que el iPhone inicialmente da 3.3 V, pero en USB - 5 V. No estoy seguro de si es una buena idea, pero funciona. En cualquier caso, si rompes algo, no es mi culpa.

¡Y aquí está el resultado!
