Introduction
Previously I got the open source LTE stack srsRAN working with the low cost Analog ADALM-PLUTO.
At the time the additional functionality was added to their 0.37 release. They’ve recently release v0.38, so I figured I’d give it the same treatment.
Changes
It appears the main changes between v0.37 and v0.38 are:
- Linux kernel 5.10 -> 5.15
- Buildroot 2022.02.3 -> 2023.02.5
- Xilinx tools 2021.2 -> 2022.2
Analog have added some new logic within the FPGA design which appears to improve support AD636x RF transceiver’s Time Division Duplexing (TDD) mode.
As with my previous custom firmware, without timestamping enabled the firmware *should* behave identically to the official firmware. As such the new TDD module is included, however it currently conflicts with timestamping support.
The timestamping module and new TDD module share a common signal to the internal DMA controller. When timestamping is enabled it will make use of the shared line, in preference to the TDD controller. When disabled the TDD controller will make use of the line as in the official Analog firmware. Essentially this comes down to TDD + timestamping using the new module isn’t likely possible at present with the current timestamping arrangement at least.
For more information on Analog’s new TDD support see HDL support for AD9361 TDD mode and Generic Time-Division Duplexing Controller.
Pre-Built Images
If you’re just looking to try, I’ve released some pre-built images on GitHub. These can be installed and configured using the instructions from my original post.
Building
If you’d prefer to build from source, the following notes are adapted from Analog’s wiki. They’ve made a few tweaks to their build process, as such the following is subtly different from the previous v0.37 release.
Building the ADALM-PLUTO’s firmware requires installation of Xilinx’s Vivado Design Suite 2022.2. After which the firmware may be cloned and build as follows:
git clone --branch v0.38_timestamp --recurse-submodules --shallow-submodules https://github.com/pgreenland/plutosdr-fw.git cd plutosdr-fw make
Once complete (it takes a while) build artefacts will be available in the build
directory. The two key images being pluto.dfu
the RAM bootable image and pluto.frm
the firmware update image.
Leave a Reply