rfkill list all
0: asus_bluetooth: Bluetooth
    Soft blocked: no
    Hard blocked: no
1: phy0: wireless LAN
    Soft blocked: no
    Hard blocked: yes
2: asus_wlan: Wireless LAN
    Soft blocked: no
    Hard blocked: no
3: hci0: bluetooth
    Soft blocked: no
    Hard blocked: no
When I hit the hardware button (Fn+F2) the values toggle so the two wlans change
from:  no yes; no no  
  to: yes no; yes no
Even the "rfkill unblock all" or unblock wlan or unblock do the same kind of toggling, and can not get them all to ' no no ; no no '.
Bluetooth works fine, by the toggles (hardware button / choosing system tray / command line rfkill).
 # uname -r
 3.16.0-30-generic
 # sudo dmidecode | grep 'System Information' -A2
System Information
    Manufacturer: ASUSTeK Computer Inc.
    Product Name: U32U
I managed to get the no, no; no no (phy0; asus_wlan, soft & hard). [no yes; no no : Fn+F2 -> yes no; yes no : rfkill unblock wlan -> no, no; no, no]. Not sure if sudo modprobe asus_nb_wmi wapf=4 did something. 
However, now despite having all four 'no' its still showing 'wifi disabled by hardware switch', and greyed out. Does it have a refresh time when that takes effect ?
I have seen the post "Wireless disabled by hardware switch on an Asus X550V" but that does not provide solution to my problem.
 
    