Usage
The RemoteRF client provides an interactive terminal shell to check live radio availability, book exclusive time slots, and manage reservations. Once reserved, you control the physical SDR directly through Python on your personal computer.
CLI Command Reference
Run remoterf --login from your terminal to enter the interactive shell. The table below lists all available commands:
| Command | Description | Typical Use Case |
|---|---|---|
getdev |
Lists all connected SDRs and their availability status. | Check which radios are online or currently reserved. |
resdev |
Searches available time slots and reserves an SDR. | Book an upcoming 30-minute block on an SDR. |
myres |
Displays active and upcoming reservations held by you. | Review your booked time slots, device IDs, and tokens. |
cancelres |
Cancels a reservation you currently hold. | Release hardware early or cancel if a token was lost. |
getres |
Views all reservations across the system. | Inspect overall lab schedule and hardware availability. |
perms |
Displays your user permissions and reservation quotas. | Check your max reservations and allowed duration. |
enroll |
Enrolls with an additional course or lab code. | Gain access to devices for a new class or project. |
clear |
Clears the terminal screen. | Clean up terminal clutter. |
help |
Shows the help menu with all available commands. | Review available command names and syntax. |
exit |
Exits the RemoteRF interactive session. | Return to your regular system shell. |
Launching and Logging In
Open your computer’s terminal, activate your virtual environment (if using conda: conda activate remoterf), and start the RemoteRF interactive client:
remoterf --loginWhen prompted, enter l to log in with your registered username and password:
Checking Available Hardware
To view all physical radios attached to your institution’s RemoteRF server, type getdev:
(online): The radio is connected, operational, and unreserved during the current time slot.(online, reserved): The radio is operational, but currently booked by another user during the active time slot.
Checking User Quotas
Type perms to check your account’s booking limits:
This confirms which device IDs you can book, your maximum simultaneous active reservations, and the duration of each reservation window.
Reserving an SDR
RemoteRF guarantees exclusive access to hardware. During your reserved slot, only your script can communicate with that specific radio. To book an SDR:
- Type
resdev. - Enter the device index you wish to reserve (e.g.,
0). - Enter the number of days to inspect for open slots (e.g.,
1for today). - Select an available time slot from the list.
- Confirm your booking by entering
y.
Ctrl+C, which terminates the CLI session). For privacy and security reasons, RemoteRF does not store tokens on the server. If you lose your token, you must cancel the reservation and make a new one.
Viewing Active Reservations
Use myres to check your currently held bookings, device IDs, and scheduled start/end times:
Canceling a Reservation
If you finish your experiments early or need to release hardware after losing a token, run cancelres. Enter the ID of the reservation and confirm with y:
Canceling immediately releases the radio back into the pool so other students and researchers can book it.
Connecting in Python
When your reserved window begins, pass your token directly to the device driver in Python:
from remoterf.drivers.adalm_pluto import *
# Initialize the radio with your active reservation token
pluto = adi.Pluto(token='dUx6lG3I9lA')
# Configure radio parameters as normal
pluto.rx_lo = int(915e6)
pluto.sample_rate = int(1e6)
# Receive complex baseband samples into a NumPy array
samples = pluto.rx()When initialized, RemoteRF validates the token against the server schedule, connects to the reserved radio, and handles all network transport transparently.
Next Steps
Now that you know how to reserve SDRs and connect with your token, explore the dedicated device guides below for code templates, RF property tables, and tuning tips:
Configure frequencies, sample rates, and transmit/receive complex samples with Pluto.
Start a two-channel RX/TX experiment with the Pluto MIMO driver.
Tune a HackRF and collect a first block of complex samples.
Build a receive-only experiment with an RTL-SDR dongle.
Open a remote UHD session and inspect the USRP 2901.
Connect to the compact USB UHD radio and prepare a stream.
Open an Ethernet UHD session and check the N210 capabilities.