Skip to content
Snippets Groups Projects
Unverified Commit e4737b8c authored by smusihin's avatar smusihin Committed by GitHub
Browse files

Update RPi instructions

parent de4ead3d
No related branches found
No related tags found
No related merge requests found
How to install gr-bladeRF to ## How to install gr-bladeRF on Raspberry Pi 4
O. Prepare Raspberry Pi4 ### 1. Prepare Raspberry Pi4
0.1. Download and install rpi-imager: #### 1.1. Download and install rpi-imager:
visit https://www.raspberrypi.com/software and download rpi imager visit https://www.raspberrypi.com/software and download rpi imager
or run or run
``` ```
wget https://downloads.raspberrypi.org/imager/imager_latest_amd64.deb wget https://downloads.raspberrypi.org/imager/imager_latest_amd64.deb
sudo dpkg -i imager_1.6.2_amd64.deb sudo dpkg -i imager_1.6.2_amd64.deb
``` ```
0.2. Flash image and setup network #### 1.2. Flash image and setup network
Insert microSD card to slot on your computer an run rpi-imager Insert microSD card to slot on your computer an run rpi-imager
Choose OS: Other general purpose OS - Ubuntu - Ubuntu Server 21.04.3 LTS (RPi 3/4/400) 64-bit server OS for arm64 architectures Choose OS: `Other general purpose OS` - `Ubuntu` - `Ubuntu Server 21.04.3 LTS (RPi 3/4/400) 64-bit server OS for arm64 architectures`
Choose storage - your microSD card Choose storage - your microSD card
Press write Press `WRITE`
Insert microSD into RPi and plug ethernet & power cables. Insert microSD into RPi and plug ethernet & power cables.
0.3. Determining the Pi’s IP address #### 1.3. Determining the Pi’s IP address
To determine the IP address of your board, open a terminal and run the `arp` command: To determine the IP address of your board, open a terminal and run the `arp` command:
On Ubuntu and Mac OS: On Ubuntu and Mac OS:
```
arp -na | grep -i "e4:5f" arp -na | grep -i "e4:5f"
? (192.168.1.105) at e4:5f:01:35:c0:92 [ether] on wlp3s0 ? (192.168.1.105) at e4:5f:01:35:c0:92 [ether] on wlp3s0
```
ubuntu@ubuntu:~$ sudoedit /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
Connect to rpi4 via ssh: Connect to rpi4 via ssh:
```
ssh ubuntu@192.168.1.105 ssh ubuntu@192.168.1.105
```
password: `ubuntu` password: `ubuntu`
Change password on first login and connect again. Change password on first login and connect again.
0.5. Install a desktop #### 1.5. Install a desktop
check architecture
```
ubuntu@ubuntu:~$ dpkg --print-architecture
arm64
```
```
sudo apt update sudo apt update
sudo apt -y upgrade sudo apt -y upgrade
sudo apt install -y xubuntu-desktop sudo apt install -y xubuntu-desktop
```
2. Install bladeRF ### 2. Install bladeRF
```
sudo add-apt-repository ppa:nuandllc/bladerf sudo add-apt-repository ppa:nuandllc/bladerf
sudo apt-get update sudo apt-get update
sudo apt-get install -y bladerf libbladerf-dev bladerf-firmware-fx3 sudo apt-get install -y bladerf libbladerf-dev bladerf-firmware-fx3
...@@ -60,10 +52,11 @@ O. Prepare Raspberry Pi4 ...@@ -60,10 +52,11 @@ O. Prepare Raspberry Pi4
sudo apt-get install bladerf-fpga-hostedx115 # for bladeRF x115 sudo apt-get install bladerf-fpga-hostedx115 # for bladeRF x115
sudo apt-get install bladerf-fpga-hostedxa4 # for bladeRF 2.0 Micro A4 sudo apt-get install bladerf-fpga-hostedxa4 # for bladeRF 2.0 Micro A4
sudo apt-get install bladerf-fpga-hostedxa9 # for bladeRF 2.0 Micro A9 sudo apt-get install bladerf-fpga-hostedxa9 # for bladeRF 2.0 Micro A9
```
Check bladeRF: Check bladeRF:
```
ubuntu@ubuntu:~$ bladeRF-cli -i `ubuntu@ubuntu:~$ bladeRF-cli -i`
bladeRF> info bladeRF> info
Board: Nuand bladeRF 2.0 (bladerf2) Board: Nuand bladeRF 2.0 (bladerf2)
...@@ -79,21 +72,21 @@ O. Prepare Raspberry Pi4 ...@@ -79,21 +72,21 @@ O. Prepare Raspberry Pi4
Instance: 0 Instance: 0
bladeRF> exit bladeRF> exit
```
3. Crossplatform build volk and gnuradio using docker and install on RPi ### 3. Crossplatform build volk and gnuradio using docker and install on RPi
./build_gnuradio.sh ./build_gnuradio.sh
Transfer files to RPi: Transfer files to RPi:
```
scp *.deb ubuntu@192.168.1.105:/home/ubuntu scp *.deb ubuntu@192.168.1.105:/home/ubuntu
```
Connect to RPi Connect to RPi
ssh -X ubuntu@192.168.1.105 # -X for run GUI applications ssh -X ubuntu@192.168.1.105 # -X for run GUI applications
Install Install
```
sudo dpkg -i volk.deb sudo dpkg -i volk.deb
sudo dpkg -i gnuradio.deb sudo dpkg -i gnuradio.deb
sudo apt-get install -y libusb-1.0-0-dev libusb-1.0-0 git cmake g++ \ sudo apt-get install -y libusb-1.0-0-dev libusb-1.0-0 git cmake g++ \
...@@ -104,20 +97,21 @@ O. Prepare Raspberry Pi4 ...@@ -104,20 +97,21 @@ O. Prepare Raspberry Pi4
python3-zmq python3-scipy python3-gi python3-gi-cairo gir1.2-gtk-3.0 \ python3-zmq python3-scipy python3-gi python3-gi-cairo gir1.2-gtk-3.0 \
libcodec2-dev libgsm1-dev libqt5svg5-dev libpulse-dev pulseaudio alsa-base \ libcodec2-dev libgsm1-dev libqt5svg5-dev libpulse-dev pulseaudio alsa-base \
libasound2 libasound2-dev pybind11-dev libsndfile-dev libasound2 libasound2-dev pybind11-dev libsndfile-dev
```
Run gnuradio Run gnuradio
```
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
gnuradio-companion gnuradio-companion
```
4. Build and install gr-iqbal, gr-osmosdr, gr-bladeRF
### 4. Build and install gr-iqbal, gr-osmosdr, gr-bladeRF
Make directory for source Make directory for source
```
mkdir ~/gr mkdir ~/gr
```
# gr-iqbal ###### gr-iqbal
```
cd ~/gr cd ~/gr
git clone git://git.osmocom.org/gr-iqbal git clone git://git.osmocom.org/gr-iqbal
cd gr-iqbal cd gr-iqbal
...@@ -126,10 +120,10 @@ O. Prepare Raspberry Pi4 ...@@ -126,10 +120,10 @@ O. Prepare Raspberry Pi4
cmake .. cmake ..
make -j$(nproc) make -j$(nproc)
sudo make install && sudo ldconfig sudo make install && sudo ldconfig
```
# gr-osmosdr
############# ###### gr-osmosdr
```
cd ~/gr cd ~/gr
git clone https://git.osmocom.org/gr-osmosdr git clone https://git.osmocom.org/gr-osmosdr
cd gr-osmosdr cd gr-osmosdr
...@@ -137,10 +131,10 @@ O. Prepare Raspberry Pi4 ...@@ -137,10 +131,10 @@ O. Prepare Raspberry Pi4
cmake .. cmake ..
make -j$(nproc) make -j$(nproc)
sudo make install && sudo ldconfig sudo make install && sudo ldconfig
```
#gr-bladeRF
############ ###### gr-bladeRF
```
cd ~/gr cd ~/gr
git clone https://github.com/Nuand/gr-bladeRF.git git clone https://github.com/Nuand/gr-bladeRF.git
cd gr-bladeRF cd gr-bladeRF
...@@ -149,16 +143,10 @@ O. Prepare Raspberry Pi4 ...@@ -149,16 +143,10 @@ O. Prepare Raspberry Pi4
cmake .. cmake ..
make -j4 make -j4
sudo make install sudo make install
```
Check `gr-bladeRF`:
Setup audio forwarding: ###### Check `gr-bladeRF`:
```
scp ~/.config/pulse/cookie ubuntu@192.168.1.105:/home/ubuntu/.config/pulse/cookie
```
```
gnuradio-companion ~/gr/gr-bladeRF/apps/fm_receiver.grc gnuradio-companion ~/gr/gr-bladeRF/apps/fm_receiver.grc
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment