OpenExpertSDR is a software-defined radio (SDR) project Based on https://github.com/Tsukihime/OpenExpertSDR that integrates with various SDR hardware, including Genesis G59/G11 and virtual serial port communication via tty0tty.
Before compiling, ensure you have the following installed:
- Qt 5 or Qt 4
- MinGW (for Windows) - Download MinGW
- CMake (for Qt5 builds)
To get started, clone the repository:
git clone https://github.com/florintanasa/OpenExpertSDR
## Compilation
### Option 1: Using QtCreator
1. Open `OpenExpertSDR` in QtCreator.
2. Configure the project with Qt5 or Qt4.
3. Set up MinGW (for Windows).
### Option 2: Using the Command Line
After cloning the repository, navigate to the project directory and use `qmake` or `cmake` to build the project.
#### Using `qmake` (for Qt4 or Qt5)
```bash
cd OpenExpertSDR
qmake *.pro
make
cd OpenExpertSDR
mkdir build
cd build
cmake ..
makeFor the libDttSP.so library, you can clone it from the following repository:
git clone https://github.com/wd8rde/libDttSPIf you're using SDR hardware from Genesis (G59 or G11), you will also need libExtio_genesis:
- Clone the repository:
git clone https://github.com/wd8rde/libExtio_genesis- In the
OpenExpertSDR/builddirectory, create adevicedirectory and create a symbolic link to thelibextio_genesis.solibrary:
cd OpenExpertSDR/build
mkdir device
cd device
ln -s /usr/local/lib/libextio_genesis.so libextio_genesis.soThe project includes support for virtual serial ports using the qextserial library (tnt*), which is required for CAT (Computer Aided Transceiver) functionality.
To set up tty0tty for virtual serial ports:
- Clone the
tty0ttyrepository:
git clone https://github.com/freemed/tty0tty- Navigate to the
moduledirectory and compile the kernel module:
cd tty0tty/module
make- Install the kernel module:
sudo cp tty0tty.ko /lib/modules/your_kernel/kernel/drivers/tty/serial/
sudo depmod -a
sudo modprobe tty0tty- Create a udev rule to manage the virtual serial ports:
sudo cp /lib/udev/rules.d/98-udev-tnt.rules /lib/udev/rules.d/This rule ensures the proper group assignment for the virtual serial port (tnt*).
- Add your username to the
dialoutgroup:
sudo gpasswd -a user_name dialoutIf the dialout group does not exist, create it with:
sudo groupadd dialout- To automatically load the
tty0ttymodule at startup, edit the/etc/modulesfile and add:
tty0tty
For testing virtual serial port communication, you can use the CoolTerm terminal emulator.
This guide should help you get OpenExpertSDR running with support for Genesis SDR devices and virtual serial port communication.
The Wiki pages contain detailed information. However, screen captures from the original Genesis SDR project website were lost when the site was closed.