Thanks for your reply.
It is actually 
 wlan0 I created another 
  wlan1 for a different NIC card.
	
		
	
	
		
		
			Try including the essid -e network_name.
		
		
	 
Doesn't have a network name. Hidden AP.
	
		
	
	
		
		
			Further more:
Are wlan0/wlan1 in monitor mode?
		
		
	 
Yes.
	
		
	
	
		
		
			Are airodump/airplay watching on the same channel?
		
		
	 
Yes.
	
		
	
	
		
		
			Is wpa_supplicant running?
		
		
	 
No. I have never set this up.
	
		
	
	
		
		
			Is -D really available?
	
	
		
			
			
				
				
				
					
						
							 
						
					
					www.aircrack-ng.org
				
 
			 
		 
	 
		 
Yes, I strongly believe it is available for FreeBSD since I get the following:
	
	
	
		Code:
	
	
		01:02:44  Sending DeAuth (code 7) to broadcast -- BSSID: [AC:BD:80:CC:0F:AA]
	 
 
Then instantly I get this:
	
	
	
		Code:
	
	
		wi_write(): Invalid argument
	 
 
Also on Linux, to deauth 5GHz Access Points, it is required to use the 
 -D option, without it deauth will not work.
Seems like it is working on FreeBSD, it sends one deauth packet but for some reason it shows:
	
	
	
		Code:
	
	
		wi_write(): Invalid argument
	 
 
Also the statement shown:
	
	
	
		Code:
	
	
		01:02:44  Sending DeAuth (code 7) to broadcast -- BSSID: [AC:BD:80:CC:0F:AA]
	 
 
Is exactly same as to Linux.
The 
 -D option seems to be specific to help deauth 5GHz APs.
	
		
	
	
		
		
			Try disabling the standard wlanX before using the interface wlanY in monitor mode if none of the above works.
		
		
	 
I have tried this, I restarted the PC each time I used different WiFi cards that are the best for Aircrack-ng. Works on Linux.
Here is what I did:
Restarted the PC.
Plugged in the WiFi adapter.
 airmon-ng start rtwn0
 airodump-ng wlan0 --band a
 aireplay-ng -0 0 -D -a AC:BD:80:CC:0F:AA wlan0
	
	
	
		Code:
	
	
		NB: this attack is more effective when targeting
a connected wireless client (-c <client's mac>).
01:02:44  Sending DeAuth (code 7) to broadcast -- BSSID: [AC:BD:80:CC:0F:AA]
wi_write(): Invalid argument
	 
 
	
		
	
	
		
		
			Is it still necessary to indicate an -x value below 400 to avoid blocking these days?
		
		
	 
The syntax 
 aireplay-ng -0 0 means:
 -0 = This is the deauth option.
 0 = After the deauth option is the value for it which is "0", it means to send continuously for the deauth packets indefinitely so long the program command is running.