karl at denninger.net
Thu Aug 8 13:05:31 UTC 2019
On 8/7/2019 20:24, MJ wrote:
> Everything up to FreeBSD 12 runs on all Raspberry Pis EXCEPT Pi4 which
> has no u-boot yet, no graphics, no usb and no framebuffer and no
> networking. Apart from that, it's close! :-)
> FreeBSD has patchy results with SPI: using it may take some work on
> your behalf. GPIO seems reasonable.
> (That was as at 2018, I can't testify to changes this year)
> On 8/08/2019 3:57 am, Brian Wood wrote:
>> I found a site that has info about running FreeBSD 11 on
>> Raspberry Pi's. Is anyone running FreeBSD 12 or 13 on
>> Raspberry Pi's? Also is anyone self-hosting their site/service
>> on a Raspberry Pi? Thanks in advance.
>> Ebenezer Enterprises - Enjoying programming again.
I run some fairly-complex embedded-style (think home security,
monitoring, cameras, sensors, control, etc) on the Pi series and
12-STABLE works fine on both the Pi2 and Pi3 series. The Pi3 has some
features (e.g. built-in WiFi and Bluetooth, specifically) which are
non-functional due to lack of driver support, but a plug-in USB WiFi
dongle works perfectly well.
GPIO and I2c both work properly; my code uses both.
Just be aware that if you're doing anything I/O or seriously
compute-intensive that the CPU and I/O arrangement on these boards is
less-than-optimal. In addition the lack of instruction-set crypto means
you can run into bottlenecks there if you're doing anything that
requires cryptography, although for reasonable-performance stuff, which
I do rely on heavily, it's fine.
I build my own codebase using Crochet on my main systems; one of the
other "gotchas" with the PIs isn't really a Pi thing at all -- it's that
SD cards are designed for moderate volume of large writes (think
photographs, music files and videos) which is wildly different than than
the workload they see running as a general-purpose Unix box. They are
very slow in small-write, many-write use and over time can get unstable;
when they fail their usual failure mode is to permanently write-lock
themselves which results in an instant panic and typically a failure to
reboot since the filesystem is corrupted by the event. In an embedded
application this is unacceptable and is one of the reasons to build
using Crochet since it runs R/O once operating with /etc and /var
contained in a ramdisk.
IMHO if you're thinking more of a "firewall or edge" appliance the Pi4
(once we have working code for it) may be a materially better choice
but, if you need it now, I'd give serious consideration to the pcEngines
SBCs. I have a bunch of those in the field in that application and
they've proven superb over time -- they too can boot of SD card but also
have a mSATA port internally which means they can use a M2 SSD which is
a LOT faster and more-stable than using SD media. In addition they have
multiple gigabit interfaces and have no hardware infirmities in being
able to actually drive them at wire speed, plus having AESNI
instructions if you are using them as a VPN gateway they are a LOT
faster than the Pi units are in such an application. I use NanoBSD for
those too and boot from the (full-size) SD slot simply to make them
"power fail safe" on restart.
To get it running and start working with it the snapshots or RELEASE
codebase is fine.
karl at denninger.net <mailto:karl at denninger.net>
/The Market Ticker/
/[S/MIME encrypted email preferred]/
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 4897 bytes
Desc: S/MIME Cryptographic Signature
More information about the freebsd-questions