I have the same problem. It works when it wants to! Try running dmesg after every command. With the bcm43xx driver it tends to turn itself off when you airmon-ng stop [I]inteface[I]
It also doesnt agree with connecting to encryted networks. Try the bcm43xx-fwcutter tool with the windows driver.