Debug AirDrop between MacBook Pro and iPhone 6s Plus

The best tool for visualizing AirDrop networking and peer counts is Apple's Wireless Diagnostic on OS X. Open it and don't click the window that is presented. Instead, open the Monitor Window (Command+7) and look at the bottom where AWDL shows up:

Wireless Diagnostic

The top half is the classic WiFi we all know where you join a base station for internet access. The bottom half shows AirDrop status. Channels that are negotiated (149++ in my case), whether the connection is idle, in low power mode, or data transfer is happening over AirDrop. As you change your iPhone AirDrop - the Mac should change the display in the monitor window in near real time.


The rest of this short article has some poor long term strategies, but they help me corner the culprit in many cases and then I go back and adjust the thing that was blocking me.

  1. Turn off your AirPort/WiFi network so that none of the devices have to juggle or choose between the ad-hoc network that gets created for AirDrop and the actually WiFi network of choice. This helps prevent interference between the two Apple devices - I believe that AirDrop uses 5 GHz channel 149 but can't find that in writing in the moment - but avoiding any strong WiFi signal helps immensely in debugging AirDrop)

  2. Cycle BlueTooth on both devices in the settings - having it on helps me connect devices for AirDrop

  3. On the Mac - disable the firewall entirely temporarily

  4. On iOS - reset the network settings

Check that the airdrop wireless network interface exists on the Mac OS:

mac:~ me$ netstat -nr | grep awdl0
fe80::%awdl0/64                         link#6                          UCI           awdl0
fe80::5ce6:2cff:fe85:f703%awdl0         5e:e6:2c:85:f7:3                UHLI            lo0
fe80::aced:abff:fe2f:814e%awdl0         ae:ed:ab:2f:81:4e               UHLWIi        awdl0
ff01::%awdl0/32                         link#6                          UmCI          awdl0
ff02::%awdl0/32                         link#6                          UmCI          awdl0

The IPv6 addresses you have will be different as will the MAC addresses ( like the 5e:e6:2c:85:f7:3 in my example output above)

At this point, you should be set for success. If you don't have the airdrop interfaces, a reboot of the Mac might help, but the problem might be deeper than a restart in that case.

Let's dump the actual AirDrop partners in real time from the Mac:

dns-sd -B _airdrop._tcp

This runs and should show other Macs as you come in range and open their AirDrop finder windows. iOS devices similarly should register and un-register from the dns-sd listings as they come and go.

mac:~ me$ dns-sd -B _airdrop._tcp
Browsing for _airdrop._tcp
DATE: ---Wed 21 Oct 2015---
17:15:05.628  ...STARTING...
Timestamp     A/R    Flags  if Domain               Service Type         Instance Name
17:15:05.630  Add        2   4 local.               _airdrop._tcp.       f7954d04c333
17:15:05.843  Add        2   4 local.               _airdrop._tcp.       aac40572c2f3
17:15:53.055  Add        2   4 local.               _airdrop._tcp.       8dde35896ba3
17:16:46.685  Rmv        0   4 local.               _airdrop._tcp.       8dde35896ba3
17:17:52.062  Rmv        0   4 local.               _airdrop._tcp.       f7954d04c333

Next on the inconvenience scale, but useful for debugging is a raw TCP packet dump of the actual traffic arriving over the AirDrop network. You won't necessarily need to know that the hex information is, but you can see some of the traffic as the iPhone negotiates with the Mac or the absence of negotiation:

sudo tcpdump -i awdl0

To exit the tcpdump, press Control-C and also expect a 15 second delay or more for packets to show in the terminal window. This tcpdump would be my next to the last resort, and I'd possibly capture the output to send to AppleCare/Engineering if I couldn't make progress with trying to add a third device to the AirDrop party. You should see lots of "mdns" traffic in the dump if AirDrop has any chance of working. Also - adding other devices to the AirDrop party is good - open photos on iOS and try to share the image with your Mac(s).

The last resort would be to use a tool like WiFi Explorer to inspect the channel utilization in your location if you find that AirDrop works in the absence of other WiFi interference but not in the locations where you prefer to share files. Also Apple's Wireless Diagnostic can help with channel recommendations and capturing raw packets from WiFi over the AWDL frequencies.

Some 2.4 GHz devices are notorious for spamming the multiple WiFi channels with noise, and without survey tools, you won't know that issue.