LibreSDR FPGA Swap Utility
LibreSDR FPGA Swap Utility
Overview
The libresdr_swapfpga
utility allows you to easily switch between different FPGA firmware binaries for USRP B210/B220 devices when using them with LibreSDR. This tool provides a simple interface to backup, replace, and restore FPGA firmware files, enabling enhanced functionality with LibreSDR modifications.
What This Utility Does
This utility manages the FPGA firmware files that control the behavior of USRP B210/B220 software-defined radio devices. It allows you to:
- Backup the original USRP FPGA firmware
- Replace the firmware with LibreSDR-enhanced versions
- Restore the original firmware when needed
When to Use This Utility
Use the libresdr_swapfpga
utility when:
- You want to enhance your USRP B210/B220 with LibreSDR capabilities
- You need to switch between different FPGA firmware versions for testing
- You want to restore the original firmware for standard UHD operation
Using the Utility
Running the Utility
The utility must be run with root privileges:
sudo libresdr_swapfpga
Main Menu Options
The utility presents a menu with four options:
What would you like to do?
1) Backup the original binary
2) Replace the original binary
3) Restore the backup binary
4) Exit
1. Backup the Original Binary
Before making any changes, it’s recommended to back up the original FPGA firmware:
Enter your choice [1-4]: 1
This creates a backup at: /usr/share/uhd/images/usrp_b210_fpga_backup.bin
If a backup already exists, this operation will be skipped to prevent overwriting your existing backup.
2. Replace the Original Binary
To replace the original firmware with a LibreSDR version:
Enter your choice [1-4]: 2
You’ll be presented with two replacement options:
Select the binary to replace the original:
1) libresdr_b210.bin
2) libresdr_b220.bin
3) Cancel
libresdr_b210.bin
: Enhanced firmware for USRP B210 deviceslibresdr_b220.bin
: Enhanced firmware for USRP B220 devices
3. Restore the Backup Binary
If you need to revert to the original firmware:
Enter your choice [1-4]: 3
This will restore the previously backed-up firmware file.
4. Exit
To exit the utility:
Enter your choice [1-4]: 4
Technical Details
File Locations
The utility manages the following files:
- Original firmware:
/usr/share/uhd/images/usrp_b210_fpga.bin
- Backup location:
/usr/share/uhd/images/usrp_b210_fpga_backup.bin
- LibreSDR B210:
/rftools/sdr/libresdr/libresdr_b210.bin
- LibreSDR B220:
/rftools/sdr/libresdr/libresdr_b220.bin
System Requirements
- Root privileges (required to modify files in
/usr/share/uhd/images/
) - UHD (USRP Hardware Driver) installed
- LibreSDR firmware files
Important Notes
- Always backup your original firmware before making any changes
- After changing firmware, you may need to restart any applications using the USRP device
- Some LibreSDR features may require specific software support
- The enhanced firmware may consume more power or generate more heat during operation
Troubleshooting
Common Issues
Device not recognized after firmware swap:
- Disconnect and reconnect the device
- Restart the UHD service:
sudo systemctl restart uhd
Errors during firmware replacement:
- Ensure you have sufficient disk space
- Verify that the LibreSDR firmware files exist in the correct location
Permission issues:
- The utility must be run with sudo or as root
Restoring from Command Line
If you need to restore the original firmware without the utility:
sudo cp /usr/share/uhd/images/usrp_b210_fpga_backup.bin /usr/share/uhd/images/usrp_b210_fpga.bin