Recently, i picked up a cheap clone of the Apple Digital AV Adapter, to record silly videos from my old iPad 4, which is running iOS 6. But to my horror, when i plugged it into the capture card, i was greeted with this screen:

Well that doesn’t look right. After returning the device, I went on eBay and bought a real Digital AV adapter, and after USPS took two weeks to deliver it, i plugged it into my iPad, and bam, I have relatively-low latency output from my iPad to my TV. OK, let’s plug it into my elgato and try it out.

Shit. Did i brick it already? Let’s try plugging it into my iPhone 5:

Well, it could be about 1000 things, but the first things that came to my mind were
· Device isn’t actually compatible and it working the first time was a fluke
· CoolBooter sucks ass
Alright, let’s do some deep digging.
What processes are running in the background on the iPhone vs the iPad? I made this command to view new processes as they were created from the iDevice:
previous=/tmp/ps_snapshot
while true; do
ps -axww -o pid,command > /tmp/ps_current
diff --suppress-common-lines -u "$previous" /tmp/ps_current | grep '^[+]' | sed 's/^+//'
mv /tmp/ps_current "$previous"
sleep 1
done
The iPhone ran the following processes:
/System/Library/PrivateFrameworks/MobileAccessoryUpdater.framework/Resources/fud 15
/System/Library/CoreServices/USBDeviceArbitrator.app/USBDeviceArbitrator
/usr/libexec/mobileassetd -t 15
/usr/libexec/vendor_device_arbitrator
/usr/libexec/accessory_device_arbitrator
before displaying output.
The iPad on the other hand, only ran
/System/Library/PrivateFrameworks/MobileAccessoryUpdater.framework/Resources/fud 15
/System/Library/CoreServices/USBDeviceArbitrator.app/USBDeviceArbitrator
Well something is clearly going wrong on the iPad side, After scrolling through countless Reddit threads trying to find the problem, i was able to rule out CoolBooter as one or two other people had no issues using this adapter. I ran Console on my MacBook to see if the devices were outputting anything related to the adapter, and the iPhone looked all good, but the iPad displayed something along the lines of “DFU Failed”
DFU? WTF? Why the fuck does this adapter need DFU Mode? Turns out: it’s running a custom SoC inside that gets it’s firmware from the Device every boot. Weird choice, but works.
Ok. Let’s find out where the firmware is being stored in the iDevice (as of iOS 6). After running a search through the whole / filesystem for any occurances of MobileAccessory, A1438 (codename) and DFU, i found some hits at /private/var/mobile/Library/Assets/. There was a folder called "com_apple_MobileAsset_MobileAccessoryUpdate_haywire/"
Turns out, haywire is the codename for the line of Lightning AV adapters. I copied this firmware folder from the iPhone to my computer, and looked for the corresponding folder on the iPad
It’ s there, same directory structure and everything. Okay, what happens if i delete it?
I unplugged and replugged the adapter, and i get a “Downloading Accessory Firmware” message. Okay, we’re getting somewhere. Let it sit for a minute, it did not actually download any firmware. Unplugged the adapter again. This time, i tried to copy the Haywire firmware from the iPhone to the iPad. Plugged it back in.

So TL;DR – if your Apple Digital AV Adapter isn’t working on older iOS versions, head to /private/var/mobile/Library/Assets, delete com_apple_MobileAsset_MobileAccessoryUpdate_haywire/
unplug and re plug the adapter and wait for the Downloading message
unplug it again
and copy it from another working device on the same version. I cannot unfortunately provide this file because it’s copyrighted by apple 🙁
and you’ll have a working adapter.
Here’s the first shitpost i made with the adapter



