Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Oct 2013 19:29:29 +0200
From:      =?UTF-8?Q?Ulrich_Sp=C3=B6rlein?= <uspoerlein@gmail.com>
To:        wireless@freebsd.org
Subject:   Why does ath(4) suck, and what else to buy?
Message-ID:  <CAJ9axoRQP4OqgOtqTvhRZgNimz-Ori5eMcw9iS_B60kjthHUag@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hey, I'm running this small -CURRENT box as router/AP and it has a
miniPCI ath(4) card that typically works fine, it only reports the
occasional

ath0: stuck beacon; resetting (bmiss count 4)

not sure if that is problematic, the wifi used to work fine. If that
message is harmless, maybe it should not be printed. But that's not
what I'm here for. I've tried setting up a 2nd wlan device and run
hostapd on it for a guest SSID for house guests, etc.

So I created wlan2 next to wlan0, ran an exact copy of the
hostapd.conf (except different SSID and PSK) and that made lots of
phones/tablets have trouble connecting or staying connected (wlan2 is
bridged to the same bridge as wlan0 and the wired interfaces, so
DHCP/DNS/routes are unlikely to be the problem).

It looks like this:

ath0: <Atheros 9280> mem 0xe0a00000-0xe0a0ffff irq 17 at device 0.0 on pci4
ath0: AR9280 mac 128.2 RF5133 phy 13.0
ath0: 2GHz radio: 0x0000; 5GHz radio: 0x00c0


/etc/rc.conf:

cloned_interfaces="bridge0"
autobridge_interfaces="bridge0"
autobridge_bridge0="port* wlan0 wlan2"

wlans_ath0="wlan0 wlan2"
create_args_wlan0="wlanmode hostap country DE authmode wpa"
ifconfig_wlan0="ssid COYOTE mode 11g pureg up"
create_args_wlan2="wlanmode hostap country DE authmode wpa"
ifconfig_wlan2="ssid COYOTE_GUEST mode 11g pureg up"


Haven't rebooted, so I've brought up wlan2 by hand:

root@coyote:~# ifconfig wlan2 create wlandev ath0 wlanmode hostap
country DE authmode wpa
ifconfig: SIOCS80211: Device busy
Exit 1
root@coyote:~# ifconfig wlan2
wlan2: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST>
metric 0 mtu 1500
        ether 68:a3:c4:51:44:99
        inet6 fe80::6aa3:c4ff:fe51:4499%wlan2 prefixlen 64 tentative scopeid 0xd
        nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: IEEE 802.11 Wireless Ethernet autoselect mode 11g <hostap>
        status: running
        ssid COYOTE_GUEST channel 8 (2447 MHz 11g) bssid 68:a3:c4:51:44:99
        regdomain ETSI country DE indoor ecm authmode 802.1x privacy MIXED
        deftxkey UNDEF txpower 30 scanvalid 60 pureg protmode CTS wme burst
        dtimperiod 1 -dfs

and it also magically got added to bridge0.

root@coyote:~# /etc/rc.d/hostapd start wlan2
Starting hostapd.
Configuration file: /etc/hostapd-wlan2.conf
Using interface wlan2 with hwaddr 68:a3:c4:51:44:99 and ssid "COYOTE_GUEST"

root@coyote:~# egrep -v '^#|^$|passphrase' /etc/hostapd-wlan2.conf
interface=wlan2
driver=bsd
logger_syslog=-1
logger_syslog_level=3
logger_stdout=-1
logger_stdout_level=2
debug=1
dump_file=/tmp/hostapd-wlan2.dump
ctrl_interface=/var/run/hostapd-wlan2
ctrl_interface_group=wheel
ssid=COYOTE_GUEST
country_code=DE
hw_mode=g
macaddr_acl=0
auth_algs=1
wme_enabled=1
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP

and that's when the trouble starts to appear, dmesg now get's funny
messages like:

wlan2: Ethernet address: 68:a3:c4:51:44:99
wlan2: promiscuous mode enabled
ath0: stuck beacon; resetting (bmiss count 4)
ath0: stuck beacon; resetting (bmiss count 0)
ath0: ath_transmit: sc_inreset_cnt > 0; bailing
ath0: ath_tx_should_swq_frame: 50:46:5d:21:16:df: Node is asleep;
sending mgmt (type=0, subtype=176)
ath0: ath_tx_should_swq_frame: 38:e7:d8:69:c0:6e: Node is asleep;
sending mgmt (type=0, subtype=176)
ath0: ath_tx_should_swq_frame: b4:07:f9:e8:8f:8e: Node is asleep;
sending mgmt (type=0, subtype=176)
ath0: ath_node_recv_pspoll: 38:e7:d8:69:c0:6e: not in powersave?
ath0: ath_tx_node_wakeup: an=0xfffffe0126489000: node was already awake
ath0: ath_node_recv_pspoll: b4:07:f9:e8:8f:8e: not in powersave?
ath0: ath_tx_node_wakeup: an=0xfffffe001e413000: node was already awake
ath0: ath_node_recv_pspoll: b4:07:f9:e8:8f:8e: not in powersave?
ath0: ath_node_recv_pspoll: b4:07:f9:e8:8f:8e: not in powersave?
ath0: ath_node_recv_pspoll: b4:07:f9:e8:8f:8e: not in powersave?
ath0: ath_tx_node_wakeup: an=0xfffffe0088add000: node was already awake


Looking at some Android devices, they see that SSID as "Secured with
WEP", so no WPA2 :/ An oldish HTC Desire won't even see that SSID.
Neither will a Ubuntu laptop. Can someone unstupid me? Do I need a
wlanbssid override for wlan2?

Now that it is in this state, the first devices fail to
re-authenticate (on wlan0) with this AP. Guess I'll tear down wlan2
again.


The second part of my question is related to buying recommendations
for 5GHz USB wlan fobs that work solid as an AP (and virtual AP) under
FreeBSD. Not all of my equipment can to 5GHz, so I need a dual-band
solution (with VAPs for the 2.4GHz band). What do people use around
here, what works solidly?

Cheers,
Uli



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ9axoRQP4OqgOtqTvhRZgNimz-Ori5eMcw9iS_B60kjthHUag>