drowe67 / pirip

Minimal Hardware IP over VHF/UHF Radio using RpiTx and RTLSDR
60 stars 4 forks source link

Tx Rx control #3

Closed drowe67 closed 4 years ago

drowe67 commented 4 years ago

Build up functionality for an external application to start/stop Tx bursts.

At the start of a burst the controlling application will send a "burst start" command, followed by frames of payload data. rpitx_fsk will move the antenna switch to Tx, switch on the Tx FSK carrier, send a preamble, then the FSK_LDPC frames. When the controlling application has finished sending payload frames, it will send a "burst stop" command. rpitx_fsk with wait until the last frame has been sent, then stop the Tx carrier, and move the antenna switch to the Rx position.

Tasks:

  1. Control an external tx/rx antenna switch via a GPIO :heavy_check_mark:
  2. Keep rpitx_fsk running while starting/stopping Tx carrier :heavy_check_mark:
  3. Functional Over The Cable (OTC) test on the bench demonstrating no lost data due to timing of antenna switch/carrier control. :heavy_check_mark:
  4. Control of antenna switch and carrier from stdin at start and end of burst :heavy_check_mark:
  5. rpitx_fsk and rtl_fsk can run on Pi at the same time (duplex), demo RF loop back OTC :heavy_check_mark:
  6. Way to disable packets received from rtl_fsk when we are transmitting - Rx is very sensitive. OK used source address filtering, works well :heavy_check_mark:
  7. Write an application that connects rtl_fsk to rpitx_fsk to create a 'ping' (frame repeater) application. This can be used for remote OTA testing, and will help thrash out half duplex integration issues. :heavy_check_mark: