BR2_EXTERNAL framework for OscillatorIMP supported peripherals, most significantly software defined radio applications on Raspberry Pi(3,4) and Red Pitaya.
This support has been tested with the latest stable release of buildroot (2024.11.1) and git master
branch.
This BR2_EXTERNAL
repository is used as a testbed for embedded software not (yet) released on the official
Buildroot repository. Main software applications include White Rabbit,
gnss-sdr and PocketSDR
and most significantly for embedded board such as the Compute Module 4 IO, XTRX SDR or Raspberry Pi 4/5 platforms.
Download the tested buildroot tarball:
wget https://buildroot.org/downloads/buildroot-2024.11.1.tar.gz
tar zxvf buildroot-2024.11.1.tar.gz
Adding support for these packages requires sourcing the sourceme.ggm file (source sourceme.ggm
)
to add the BR2_EXTERNAL variable definition (alternatively, one might want to add
export BR2_EXTERNAL=/somewhere/oscimp_br2_external
to the .bashrc initialization file). Notice that multiple BR2_EXTERNAL repositories can be combined, e.g. with the Red Pitaya configuration with
export BR2_EXTERNAL=/somewhere/oscimp_br2_external:/somewhere/redpitaya
For compiling gr-osmosdr
with XTRX support for pre-2021.08 Buildroot versions, make sure to apply the
patch prior to configuring Buildroot: from the root Buildroot directory,
patch -p1 < gr-osmosdr-add_xtrx_support.patch
(the update has been integrated in Buildroot in the latest releases and patching is no longer needed).
Configuring Buildroot with GNU Radio support is achieved by running from the Buildroot root directory
make raspberrypi4_64_gnuradio310_defconfig
This will configure buildroot for the Raspberry Pi4 supporting the 64 bit instructions and GNU Radio. For the Compute Module 4,
make raspberrypicm4_64_gnuradio_defconfig
will configure Buildroot for GNU Radio support (700 MB resulting binary image). Add 310 after gnuradio for the 3.10.4 version release.
Overall, make menuconfig
allows for configuring
additional settings of the buildroot environment, especially Target Packages, make
builds
the images to be found at the end of the compilation in output/images
.
We provide three configurations that enable scipy
by default
make beaglebone_scipy_defconfig
make raspberrypi3_64_scipy_defconfig
make raspberrypi4_64_scipy_defconfig
Package python-scikitlearn
requires scipy
and
an extra buildroot patch to be applied prior anything, similarly to the gr-osmosdr
tweak:
source sourceme.ggm
cd buildroot
patch -p1 < $BR2_EXTERNAL/scikitlearn-support.patch