RasPad notes
Introduction
I was alerted to the RasPad by a favourable review in the RTL-SDR.COM blog.
It houses a Raspberry Pi 4, 10-inch display, and battery in a convenient
case. Rather than repeat their details, I refer you to their site. I
assume you have some basic familiarity with the Raspberry Pi and the command
used for setting it up.
Initial Setup
Although there is a special build of the Raspberry Pi OS available, I used
the DragonOS
Pi64 Distro (as did the RTL-SDR.COM blog) as it contains a number of useful
Amateur Radio programs which are already compiled. You just need to write
this to a micro-SD card (32 GB I suggest) and the device should start right
away.
- I suggest you connect a keyboard and mouse to two of the USB ports before
booting, as there is no on-screen keyboard, and I found the mouse a little
awkward, possibly not displaying its pointed exactly where I pressed.
The pointer at the bottom of the screen was below the mouse press.
- Boot time can be extended due to not using the standard OS for the RasPad.
- When you first boot you see a box "ubuntu" at the screen
centre. Press this button and enter the password "dragon"
using the on-screen keyboard. This keyboard does no appear to be
available later.
- Remember to expand the file system to fill the SD card. This is via
the standard sudo raspi-config command.
- I suggest you enable SSH and VNC in the Interface options.
- You may be able to configure the network and Bluetooth devices here, but I
missed that step.
- I may have missed a trick in using other options of this command when
setting up.
- You can set the Wi-Fi by right-clicking the network icon at the bottom
right of the screen.
- Once Wi-Fi is connected I tended to use the Real VNC client on my main PC
rather than the attached keyboard and mouse.
- There was no obvious way to set up Bluetooth. I wanted to have the
option of using a Bluetooth keyboard/touchpad with the RasPad to avoid
trailing wires etc., but to get better mouse control than the
touch-screen. There is no on-screen keyboard available with the
distribution I was using.
Bluetooth
There do seem to be some options either missing, or too well hidden for me to
find! Bluetooth is one of them, so I followed the steps here:
- sudo apt install bluez bluez-utils
I recall the bluez-utils were missing, so I moved on to:
- sudo apt install blueman
- sudo systemctl enable bluetooth.service
- sudo systemctl start bluetooth.service
- At this point the next step was: "Connection to Devices Using Blueman".
An icon for Blueman was nowhere to be seen. However, in /bin I found a
"blueman-manager" which I could double-click and
"Execute". Use the file manager, Computer, File System, bin.
- At this point the usual Bluetooth pairing command can be used, an I got my
iHobort
keyboard/touchpad installed and recognised. I would hope that
anything similar would also be OK.
Using the Radio Software
I only tested two of the many programs available. Initially I got no
sound at all, but this seems to have been resolved simply by visiting the
(Applications/Sound & Video/PulseAudio Volume Control). This may have been a
spurious requirement, but worth checking if needed.
Cubic SDR
Tested and works with both an RTL-SDR and with an Airspy Mini. I still
haven't got used to having to click on the waterfall to get the radio to
start! The output is shown as hw:bcm2835 HDMI ...., completely different
to that is SDR++.
SDR++
Tested and works with an RTL-SDR and an Airspy HF+ Discovery. However,
although it seems to be working, there's no audio! In the section
"Sinks" under Radio the setting is Audio, then "Built-in Audio
Stereo" at 48000 SPS. In the Volume Control there are two devices
named "Built-in Audio Stereo", so perhaps SDR++ isn't allowing me to
choose the one which works. One is "Analog output" and the other
"Headphones".
Building from source using standard Raspberry Pi OS - very long posts!
SDR++
Based on: http://m1kta-qrp.blogspot.com/
CubicSDR
Based on: https://github.com/cjcliffe/CubicSDR/wiki/Build-Linux
###### Get prerequisites
sudo apt-get install git build-essential automake cmake
sudo apt-get install libpulse-dev libgtk-3-dev
sudo apt-get install freeglut3 freeglut3-dev
###### Build and install SoapySDR
git clone https://github.com/pothosware/SoapySDR.git
cd SoapySDR
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release
make -j4
sudo make install
sudo ldconfig
cd
# To test:
SoapySDRUtil --info ### test
###### Build and install liquid-dsp
git clone https://github.com/jgaeddert/liquid-dsp
cd liquid-dsp
./bootstrap.sh
CFLAGS="-march=native -O3" ./configure --enable-fftoverride
make -j4
sudo make install
sudo ldconfig
cd
###### Build static latest wxWidgets (3.1.5)
wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.5/wxWidgets-3.1.5.tar.bz2
tar -xvjf wxWidgets-3.1.5.tar.bz2
cd wxWidgets-3.1.5/
mkdir -p ~/Develop/wxWidgets-staticlib
./autogen.sh
./configure --prefix=`echo ~/Develop/wxWidgets-staticlib` --with-opengl --disable-glcanvasegl --disable-shared --enable-monolithic --with-libjpeg --with-libtiff --with-libpng --with-zlib --disable-sdltest --enable-unicode --enable-display --enable-propgrid --disable-webview --disable-webviewwebkit CXXFLAGS="-std=c++0x"
make -j4 && make install
# (many minutes - perhaps half an hour)
# (no "ldconfig" is suggested on this Web site, not a shared library)
###### Build CubicSDR
cd
git clone https://github.com/cjcliffe/CubicSDR.git
cd CubicSDR
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release -DwxWidgets_CONFIG_EXECUTABLE=~/Develop/wxWidgets-staticlib/bin/wx-config
# But for the RPi4 and (no) HamLib support:
# rm -f -r build if you mess this up first time.
# I got: CMake Warning: Manually-specified variables were not used before
using -DLIBRARIES by the project: OTHER_LIBS
# Web suggested: -DOTHER_LIBS="-latomic", but it seems you need: -DOTHER_LIBRARIES="-latomic"
cmake ../ -DCMAKE_BUILD_TYPE=Release -DOTHER_LIBRARIES="-latomic"
-DwxWidgets_CONFIG_EXECUTABLE=~/Develop/wxWidgets-staticlib/bin/wx-config
make
cd x86/
./CubicSDR ### test, no sources yet
# Back to the build directory
cd ..
sudo make install
###### SoapyRTLSDR (similar to other Soapy modules):
sudo apt-get install librtlsdr-dev
git clone https://github.com/pothosware/SoapyRTLSDR.git
cd SoapyRTLSDR
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make
sudo make install
sudo ldconfig
SoapySDRPlay (similar to other Soapy modules):
At this point you need the SDRplay API installed. You can download an
installer from: https://www.sdrplay.com/downloads/
by selecting the RSP-DX (or whatever) and then the Raspberry Pi OS (ARM
Raspberry Pi OS). On the second option [API 3.07 (for 32bit OS)] at the
time of writing, and you can then download a file of approximately 186 kB.
Now there seem to be no further instructions (how helpful!) but I found this
document, section 3 - API Installation - where section 3.4 says that the downloaded file needed to be made
executable and run as root:
chmod +x filename.run
sudo ./filename.run
sudo ldconfig
git clone https://github.com/pothosware/SoapySDRPlay.git
cd SoapySDRPlay
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make
sudo make install
sudo ldconfig
SoapySDRUtil --info
Issues with DragonOS image
The standard Raspbian OS works correctly, but of course you then need to
compile much of the software yourself.
- Sound missing in SDR++ with DragonOS image, needs the headphones to be
disabled in the Volume Control (sound Mixer), or the speakers to be disabled
and re-enabled.
- Touch screen needs better calibration - I don't know how to do this.
- It's quite slow to startup.
- Bluetooth seems touchy.
David Taylor, GM8ARV
2021-Oct-17 |