I wish there was more interest in getting acceptable WiFi and Bluetooth performance from any BSD. Even FreeBSD lacks anything but a half-baked 802.11n implementation :/
I truly adore BSD; using Linux is a chore comparatively. But I don't really have a choice.
My understanding[1] is that openbsd has better 802.11 drivers than freebsd and reading the lists this is largely due to absolutely herculean effort by one person.Stefan Sperling [2]
Dramatic bio(probably none of this is true. but this lives in my head after reading the lists). Sperling never wanted to be a hero, had no training or experience interfacing with those piles of electronic treachery we affectionately call "wifi". But he wanted a change, he wanted a difference. He stepped up and wrote a patch. Now he is the sole defender between us and the vile manufactures actively trying to keep us from our starbucks internet connection. Not the hero we deserved, But the hero we needed[3].
Apparently finding people willing to work in that arcane shithole known as wifi drivers is hard. I looked once and it scared the hell out of me. A lovecraftian mess of undocumented registers and unknowable machines.
1. I don't have a laptop with FreeBSD so this is all hearsay.
2. Sperling is also writing got(game of trees) a sane implementation of git. http://gameoftrees.org/
3. The theme song for this majestic endeavor. https://www.youtube.com/watch?v=TZsUAqaOiHU
edit: I stated that got was plumbing for git and that is not true. that implies got uses git code. it does not, got uses the git file format.
It's partly the driver, partly the stack, at least on FreeBSD. My understanding is the newer high-speed wifi modes use multiple channels or pairs of channels or something like that, and the 80211 stack in FreeBSD was just not built with that in mind. So retrofitting it is some work. I think there are other things like that missing still, in addition to driver support.
I know of at least one open implementation of a wifi and BTLE modem made by a small university research team (though I can't find it online so it may not be published yet, won't say who it is unless I can find public details). It's definitely possible but it did take a team of grad students a little over a year to tapeout, and so it'd likely be very expensive
The RF side of WiFi is hell. The modem side is work, yes, but getting the air interface to work, and then dealing with all the interference management side is a nightmare.
I am not certain, but I think part of the 'blob' thing on WiFi internal implementations is to prevent someone breaking certification, particularly for the interference mitigation for things like DFS.
You can use both, to an extent. My most recent example: The documentation for GNU troff (groff) in Debian is incomplete-- the man page for eqn(1) includes the GNU extensions mostly, but not the basics. So I downloaded the OpenBSD manpages which includes complete documentation for eqn(7).
I too keep making the mistake of using the openbsd man pages for linux projects. Then am confused when things don't work as they should.
You would think I would learn better after a few cycles of this, but nope, I am rather stupid that way... or perhaps the openbsd documentation is just that much better.
Because they're deciding to try improving their driver API compatibility layer to import the Intel drivers directly from Linux instead of reverse engineering like OpenBSD is. Time will tell which approach is better in the long run.
Jup, wireless is one thing, i run around with a old smartphone and tether over usb (on my laptop). But the other one is fan-speed, i can even play AAA-Games...for a minute then my GPU crashes because of overheating (on the workstation with a AMD-Card). No way to adjust fan-speed from the OS is not good.
I truly adore BSD; using Linux is a chore comparatively. But I don't really have a choice.