# Troubleshooting

Troubleshooting a Kernel Extension might not be straight forward, here are some tactics:

# Kernel Extension Loading Status

Run the following command in terminal:

kextstat | grep -i "KEXT'S_NAME"
1

For example:

$ kextstat | grep -i "itlwm"
    70    0 0xffffff7f84126000 0xf86000   0xf86000   com.zxystd.itlwm (1) 10EA7641-BDCB-3820-9AF7-4C773FD9953E <33 13 6 5 3 1>
1
2
  • If a new line with the kext's name appears, it means the kext has successfully loaded.
  • If you get nothing, please recheck your bootloader's configuration.

# Resetting System Preferences - Network

If you've tried other network-related Kernel Extensions before, some system configurations may be corrupted.

WARNING: The following procedures will completely reset your network preferences, including proxies, DNS, etc. The deleted files will be automatically created. But make sure you have made a proper backup.

  1. Open System Preferences → Network, delete all ports, click on apply at the bottom right corner

  2. Open Terminal, run:

    open /Library/Preferences/SystemConfiguration
    
    1
  3. Then Delete

    • com.apple.airport.preferences.plist
    • preferences.plist
    • NetworkInterfaces.plist
    • com.apple.network.identification.plist
    • com.apple.wifi.message-tracer.plist
    • And all files containing enX, (X as an integer)

    If you've changed your SMBIOS before, you must also delete files with names that contain your current and previous models.

  4. Reboot

# Runtime Logs

Choose one of the following methods to collect logs

# Via HeliPort

Use HeliPort to create a diagnostic report (works for AirportItlwm as well)

# Manually Collecting Logs

  1. Install DebugEnhancer.kext (opens new window)

  2. For AirportItlwm users, run the following commands before the next step

    # Enable airportd logs
    sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport debug +AllUserland +AllDriver +AllVendor
    
    1
    2
  3. Run the following commands in terminal to gather logs:

    sudo dmesg | grep -E "itlwm|Airport|IO80211|EAPOL" > ~/Desktop/Log_"$(date '+%Y-%m-%d_%H-%M-%S')".log
    
    1
  4. A log file will then be created on your Desktop.

# Debugging 802.1X

If you are using a network with 802.1X, please follow the guide below provided by Apple.

# Enabling Logging

  1. Enable 802.1X verbose logs by running the below command in the terminal:

    sudo wdutil log +wifi +eapol
    
    1
  2. Reproduce the problem. (Important: Note the date and time issue occurred add this information to your report).

  3. Then gather wireless diagnostics by running the below command in the terminal:

    sudo wdutil diagnose
    
    1
  4. Attach the wireless diagnostic file that appears in /private/var/tmp/ after several minutes.

    Note: The wireless diagnostic process can take 10 minutes to complete. Once finished, the folder “/private/var/tmp/“ should appear automatically in the Finder and the wireless diagnostic file there will look similar to this: WirelessDiagnostics_C02T21XYZPDQ_2021-02-22_10.24.48.tar.gz

# Disabling Logging To disable EAPOL logging

To disable both Wi-Fi and EAPOL logging use:

sudo wdutil log -wifi -eapol
1