# Support Raspberry Pi 3 wireless card?



## Qiwei Ye (Dec 25, 2016)

Hi,
 I downloaded the image from http://www.raspbsd.org/raspberrypi.html and it's booted successfully on my Raspberry Pi 3. But I found that the wireless card is not working.

It turned out the wireless card is *Broadcom BCM43438* chip. and after searching, it seems that bwi/bwn still not supports this model yet. Does anyone have experience/idea to make it work?

Thanks.


----------



## acheron (Dec 25, 2016)

There is no sdio stack on FreeBSD yet so no wifi driver development possible.


----------



## Qiwei Ye (Dec 25, 2016)

Get it. Thanks. So, for Pi 3, the embedded wireless card is also using the sdio, right?


----------



## SirDice (Dec 27, 2016)

Yes.

https://wiki.freebsd.org/arm64/rpi3


----------



## aragats (Mar 11, 2017)

acheron said:


> There is no sdio stack on FreeBSD yet so no wifi driver development possible.


This was last time updated in January 2016, what's the current status?


----------



## ralphbsz (Apr 23, 2017)

As of the most recent build I could find, that's still true.  I booted a version that was built in February (from the RaspBSD web site, it's version 12).

Here's the good news: It took less than an hour to get FreeBSD fundamentally functional on a Raspberry Pi 3.  I played with Raspbian (Linux-based) for an hour, and then remembered that I had completely forgotten how to administer Linux (I don't even know where things like static IP addresses or the hostname is stored).  Actually the thing that drove me to stop even trying to use Linux was that I had no idea how to setup wireless on Linux, and the Raspberry-specific instructions are awful.  So I downloaded RaspBSD, copied it onto the SD card, and it booted.  Ten minutes later I had the basic setup done and FreeBSD 12 running.  The lack of wireless ethernet is slightly annoying; once this machine goes into production (which requires lots of software work first), it will be using wired network anyhow, so wireless is only a convenience during development.  

Here are some good/bad news items from the first hour of playing with it (never used a Raspberry Pi or a similar board before):
Bad: No wireless (see above).  Bad: The time-of-day isn't hardened, so if you want to rely on times in log files being accurate, NTP is mandatory.  Bad: The default 30MB /tmp RAM disk is too small (even `pkg install` crashes), and wasting memory on a RAM disk for /var/tmp is not worth it (hardly anything is ever written there).  That was easy to fix.  Good: With a 60MB /tmp file system, everything works perfect.  Good: Installing packages works flawlessly.  Bad: There is no emacs package.   Good: Both HDMI output to a big screen and the 7" touchscreen display (from Adafruit) worked flawlessly, without having to do any adjustment or configuration.  Bad: Downloading and installing X took a long time (probably an hour, I left and did some errands).  Good: X works out of the box on the 7" display.  Bad: The touchscreen is not automatically recognized as a mouse (that's going to be tomorrow's project).  Still, overall I'm very impressed with the state of FreeBSD support on this hardware: it mostly works!


----------



## acheron (Apr 23, 2017)

There is no RTC on rpi, I think you can add one.
Emacs uses the sbrk syscall which will never be ported to FreeBSD aarch64. (see https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24892 for details)
You'll probably have to use evdev to get event from your touchscreen (see https://kernelnomicon.org/?p=676)


----------



## aragats (Apr 23, 2017)

acheron said:


> There is no RTC on rpi, I think you can add one


Most of those RTC chips use SPI and/or I2C. According to this, SPI and I2C work on RPi1 and RPi2, but nobody tested on Rpi3.


----------



## ronaldlees (May 21, 2017)

Here's an RTC tutorial:  https://learn.adafruit.com/adding-a-real-time-clock-to-raspberry-pi/

Yeah, emacs is a fav of mine even though it draws the crazy eyebrow when I mention it.  Oh well.

Linux wifi is supposed to be automagic.  Ha.   It varies a little bit by specific distro, but it helps to keep the _"/etc/network/interfaces"_ file in mind. Ubuntu, in particular, has its own way of handling wifi.   If you want the automagic way, and the icon doesn't seem to be on your desktop, you can run nm-applet (on Ubuntu, at least).  But hey, why should I tell you about the armaments of the enemy.  You've already found the best OS, right here!


----------

