Software⏱️ 3 min read📅 2026-06-11

How to Fix: Cannot change wifi channel on Linux 3.6.11 with iw and kismet (device busy error)

Linux wifi channel issue with kismet and iw device busy error

Quick Answer: Check for conflicting processes or services using tools like lsof or fuser to identify the causing process, then restart it or adjust its configuration.

The error message 'mac80211_setchannel() could not set channel 1/2412 on interface 'te0mon' err -25' and 'command failed: Device or resource busy (-16)' indicates that there is a problem with changing the WiFi channel using the iw and kismet tools on Linux 3.6.11. This issue affects users who are trying to use these tools on their Raspberry Pi devices, which may be connected via USB Wi-Fi adapters.

This problem can be frustrating for users who need to switch between different WiFi channels for various reasons, such as improving network performance or reducing interference. In this troubleshooting guide, we will explore the possible root causes of this issue and provide steps to resolve it.

🔍 Why This Happens

  • The primary reason for this error is that the kernel version 3.6.11 has introduced a bug in the mac80211 driver that prevents it from properly handling theiw command. This bug causes the device to become busy, resulting in the 'Device or resource busy' error message.
  • Another possible cause of this issue is that the kismet tool is not compatible with the latest kernel version 3.6.11. Although you have tried using the latest version of iw (3.8) and compatibility drivers (3.9), it's still not resolving the issue, suggesting that there might be a deeper problem with the kernel or theiw driver.

🔧 Proven Troubleshooting Steps

Disable theiw tool

  1. Step 1: Stop any running iw processes by running 'sudo service iw stop' in the terminal.
  2. Step 2: Delete theiw configuration files by running 'sudo rm -rf /var/lib/wpa-supplicant/' and 'sudo rm -rf ~/.wpa_supplicant/' in the terminal.
  3. Step 3: Restart the system to ensure that all changes take effect.

Use an alternative WiFi tool

  1. Step 1: Install the wpa_supplicant tool, which is a more stable and widely-used tool for managing WiFi connections. You can install it by running 'sudo apt-get update && sudo apt-get install wpasupplicant' in the terminal.
  2. Step 2: Use the wpa_supplicant command to connect to your WiFi network instead of iw. For example, you can run 'wpa_supplicant -i te0mon -c /etc/wpa_supplicant/te0mon.conf' to connect to your network.

🎯 Final Words

To resolve the issue with changing the WiFi channel using the iw and kismet tools on Linux 3.6.11, you can try disabling theiw tool or using an alternative WiFi tool like wpa_supplicant. If you are still experiencing issues, it may be worth exploring further debugging steps to identify the root cause of the problem.

Did this fix your problem?

If not, try searching for specific error codes.

🔍 Search Error Database

❓ Frequently Asked Questions