12

My 2021 M1 Pro MacBook Pro drops wifi periodically, it does this on all networks I’ve tried, including at the Apple Store. Sometimes it automatically reconnects, sometimes it doesn’t.

Turning off bluetooth significantly reduces the frequency of the problem but doesn’t eradicate it. Obviously I’d like a solution where I can have bluetooth on.

How can I diagnose this further?

Here's some other misc notes:

  • Apple sent the machine away. As far as Apple's support team is concerned the hardware is issue free.
  • I've tried on every macOS apart from 12.4, I'm going to try that now
  • When wifi and bluetooth are both on, they will both drop at the same time. My headphones will lose audio for a second and I see the wifi reconnecting
  • iPad and multiple iPhones all fine on my home network
  • M1 MacBook Air is fine on my home network
  • Tried soft and hard reinstalls of macOS
  • Renewed DHCP lease
  • Created a new network location
  • When plugged into wired ethernet the wifi still drops
  • I’ve tried turning off 2.4g on my home wifi router

I've run the wireless diagnostics tool. It often detects the drop and generates an output file. The Apple Genius said this would "be something for engineering".

I'm not sure if there's anything I can do with this file?

Can anyone advise how I can diagnose this further and isolate the offending software?


I've tried

sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport prefs JoinMode=Strongest JoinModeFallback=Prompt DisconnectOnLogout=NO AllowLegacyNetworks=YES

As suggested here https://forums.macrumors.com/threads/mbp-m1-wifi-dropouts.2269274/page-2

It didn't help.


Output of tail -f /var/log/wifi.log. There was at least one disconnect in the first few seconds of running the command.

Sun Jul  3 11:48:51.836 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:48:52.009 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:48:52.022 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:48:52.502 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:48:52.556 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:48:52.567 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:07.027 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:18.287 Apple80211Set:10289 Processing APPLE80211_IOC_ROAM
Sun Jul  3 11:49:18.287 Apple80211Set:10303 Processing APPLE80211_IOC_ROAM dataRef:0x155c50f00
Sun Jul  3 11:49:18.288 Apple80211Set:10324 CFType is CFData
Sun Jul  3 11:49:30.665 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.669 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.670 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.693 <airport[184]> _handleLinkEvent: Unable to process link event, op mode request returned 54 (Connection reset by peer)
Sun Jul  3 11:49:30.693 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:30.697 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.697 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.699 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.706 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.708 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.709 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.709 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.710 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.710 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.711 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:30.711 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:31.468 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:31.641 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:33.550 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.551 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.799 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:33.800 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.807 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.907 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.908 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.936 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:33.941 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:34.034 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:34.041 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:35.423 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:35.423 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:49.008 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.011 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.013 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.015 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.026 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.027 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.028 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.030 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.031 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.032 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.032 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.033 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.037 <airport[184]> _handleLinkEvent: Unable to process link event, op mode request returned 54 (Connection reset by peer)
Sun Jul  3 11:49:49.038 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:49.039 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.043 Apple80211SetProperty: ioctl failed: bsdErr=-1, errno=16
Sun Jul  3 11:49:49.820 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:49.978 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:51.904 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:51.913 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:51.914 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.007 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.008 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.049 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.050 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.112 <airport[184]> ERROR: sharingd (499) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.124 <airport[184]> ERROR: rapportd (455) is not entitled for com.apple.wifi.join_history, will not allow request
Sun Jul  3 11:49:52.260 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:52.284 <airport[184]> systemWokenByWiFi: System Wake Reason not found
Sun Jul  3 11:49:52.583 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period
Sun Jul  3 11:49:52.583 <airport[184]> -[dpsManager handleDPSEventWithType:eventInfo:networkName:BSSID:channelInfo:isCriticalAppInUse:]_block_invoke: Ignoring non-dps events while not in monitoring period/ Ignoring DPS event while in monitoring period

13
  • Can you exclude this is a not a hardware issue? Did you try the Wireless Diagnostics.app included with macOS. Open Windows > Performance for instance.
    – n1000
    Commented Jun 3, 2022 at 11:22
  • @n1000 A genius ran a hardware test which said everything was fine 🤷‍♂️
    – lewis
    Commented Jun 4, 2022 at 9:58
  • can you kindly provide part of the wifi.log -> tail -f /var/log/wifi.log ? Can you check and set if available the WIFI encryption from WPA3 to WPA2 in your router? Commented Jul 2, 2022 at 10:45
  • 1
    @lewis A hardware test is not perfect - it might still be the hardware that is flawed. I would start the computer up in Recovery mode, so it is running a known-good version of macOS. Is the problem still there? - Take it to the Apple Store, and demonstrate that the problem is there with their WiFi network on a known-good version of macOS. Then the problem is Apple's - no matter if it is hardware or software (but it is probably hardware).
    – jksoegaard
    Commented Jul 2, 2022 at 11:05
  • 1
    @slartibartfast I turned off Private Relay. I also changed the MTU size and saved it and then immediately reverted it because I thought it better to check one thing at a time. Since then I've not dropped wifi once! I even turned Private relay back on. I suspect that maybe just saving my network preferences cleared something out 🤷‍♂️ either way if you write an answer I'll give you the bounty
    – lewis
    Commented Jul 7, 2022 at 14:36

3 Answers 3

10
+100

Besides procedures suggested by Apple when running into Wifi problems some additional measures can solve issues for newer versions of MacOS and/or Apple hardware (from here on just “Macs”):

There is empirical evidence that newer Macs do not play nicely with the implementation of WPA3 in some routers. Check wether there is a firmware update for your router and install it, at least restart. WPA3 should be configured on your router to grant access to a WLAN, but if you observe connectivity problems, switch if possible to WPA3/WPA2 transitional (or similiar name).

Consistency of your Wifi connection can be impacted by the default MTU size used by Macs. Changing the MTU size to 1453 (via System Preferences>Network>Advanced>Configure>Manually) usually solves this issue.

Additionally turning off Private Relay on some Macs improves the stability of the connection.

Lastly it seems to help to overwrite the airport preferences and network settings. You can achieve that by setting the MTU or turning off Private Relay,etc. Or you just delete a related plist(s) and force the OS that way to write/save them again according to your adjustments in the System Preferences.

8
  • TBH I’m not sure whether do mark this accepted because I’m not 100% what part fixed it. But I am confident that my issue is now resolved. This is something a genius was not able to fix even after sending the laptop away for a week
    – lewis
    Commented Jul 9, 2022 at 12:42
  • 1
    Changing the MTU size to 1453 worked for me. How did you discover it? Commented Aug 31, 2022 at 19:22
  • I recently started getting drops again. I checked the MTU and it had gone back to the default setting. Changing it back to 1453, and will report back if it doesn't help.
    – lewis
    Commented Sep 12, 2022 at 20:53
  • I am having the same problem, I changed the MTU size to1453 and report back in a couple of week whether the wifi dropped or not. Commented Jan 8, 2023 at 18:25
  • Regarding optimal MTU size i found an interesting article here =>homenetworkgeek.com/mtu-size While windows based you can use the ping -s <MTU_SIZE> to deterine the optimal packet size on your mac Commented Jan 8, 2023 at 19:17
1

Had the same wifi dropping issue for a while. Found this thread, turned off Private Relay, and so far the issue has disappeared. Using a MBP 14" M1 chip

1
  • This does not really answer the question. If you have a different question, you can ask it by clicking Ask Question. To get notified when this question gets new answers, you can follow this question. Once you have enough reputation, you can also add a bounty to draw more attention to this question. - From Review
    – Alper
    Commented Jul 29, 2023 at 6:39
0

I have figured out the solution but I am not sure how it works...there is a bug with macOS itself but we are supposed to disable and enable AWDL (Apple Wireless Direct Link) Every 10 minutes

I have written a simple applescript export it to application while checking "Stay open after run handler" option...then put the application in the dock and open it everytime you switch on your computer...

Here's the script

on run {}
    idle {}
end run

on open {}
    idle {}
end open

on idle {}
    
    set shellCommand to do shell script "echo yourmacpasswordgoeshere | sudo -S ifconfig awdl0 down"
    set shellCommand to do shell script "echo yourmacpasswordgoeshere | sudo -S ifconfig awdl0 up"
    return 600
end idle

on quit {}
    set quitApplication to display dialog "Are you sure you want to quit the application googoogoo ?" buttons {"No", "Yes"} default button "Yes"
    if button returned of quitApplication is "Yes" then
        continue quit
    end if
end quit

I have made a simple shortcut https://www.icloud.com/shortcuts/51c894aa8870401698a1b4414d234bcb

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .