Here is how to use the Client and Basestation application.
All applications are located in
./client -g RXGAIN -t TXGAIN -f FREQ -u ULMCS -d DLMCS -c CONFIG-FILE -l LOGLEVEL
./basestation -g RXGAIN -t TXGAIN -f FREQ -c CONFIG-FILE -l LOGLEVEL
Modulation and Coding scheme¶
The system uses QAM modulation and convolutional coding at the PHY layer.
By default, MCS 0 (QPSK, 1/2 rate code) is used. You can manually set other
MCS values for uplink and downlink as an argument to the client application.
Downlink MCS can be set with the
--dl-mcs flag. Uplink MCS can be set with the
The following MCS have been defined
|5||QAM64||k=7, r=3/4||currently unstable. sometimes not working|
By default the RXGAIN is automatically set during startup-phase and adapted
during runtime of the client. If you want to manually fix the gain, use the
The gain can be set in the range of [0...73].
client-calib can be used to read the current signal level
of the application. It prints the absolute amplitudes of the I and Q path and the calculated
rssi. RXGAIN should be set to keep the RSSI at ~-15dB.
./client-calib -g <rxgain>
The TXGAIN of the client is automatically set, assuming a symmetrical UL and DL link. It is calculated from RX and TX gain broadcasts that the basestation sends and the RXGAIN that the client calculated:
txgain_client = bs_txgain + rxgain_client - bs_rxgain
In the current implementation, neither the RXGAIN of the basestation nor the TXGAIN of a client are adaptive. This feature still has to be implemented.
You can specify the carrier frequency of the downlink channel with the
The frequency is given in Hz. The uplink frequency is automatically calculated (4.8 MHz shift).
Define the log level of the application with the
0=TRACE 1=DEBUG 2=INFO 3=WARN 4=ERR 5=NONE
The OFDM system can be customized. You can define your own pilot allocation scheme, redefine the number of data subcarriers and much more. See advanced config for more information.