1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-26 01:39:05 -05:00
sdrangel/plugins/channeltx/modrtty
2023-09-01 17:10:26 +01:00
..
CMakeLists.txt
readme.md
rttymod.cpp
rttymod.h Add initial RTTY Mod without API 2023-09-01 17:10:26 +01:00
rttymodbaseband.cpp
rttymodbaseband.h
rttymodgui.cpp
rttymodgui.h
rttymodgui.ui
rttymodplugin.cpp
rttymodplugin.h
rttymodrepeatdialog.cpp
rttymodrepeatdialog.h
rttymodrepeatdialog.ui
rttymodsettings.cpp
rttymodsettings.h
rttymodsource.cpp
rttymodsource.h
rttymodtxsettingsdialog.cpp
rttymodtxsettingsdialog.h
rttymodtxsettingsdialog.ui
rttymodwebapiadapter.cpp
rttymodwebapiadapter.h

RTTY Modulator Plugin

Introduction

This plugin can be used to transmit RTTY encoded text.

Interface

The top and bottom bars of the channel window are described here

RTTY Modulator plugin GUI

1: Frequency shift from center frequency of transmission

Use the wheels to adjust the frequency shift in Hz from the center frequency of transmission. Left click on a digit sets the cursor position at this digit. Right click on a digit sets all digits on the right to zero. This effectively floors value at the digit position. Wheels are moved with the mousewheel while pointing at the wheel or by selecting the wheel with the left mouse click and using the keyboard arrows. Pressing shift simultaneously moves digit by 5 and pressing control moves it by 2.

2: Channel power

Average total power in dB relative to a +/- 1.0 amplitude signal generated in the pass band.

3: Channel mute

Use this button to toggle mute for this channel.

4: Mode

Contains a list of common baud rate and frequency shift settings. To specify your own, set this option to Custom.

45.45/170 is common for amateur RTTY.

5: Baud

Specifies the baud rate in symbols (bits) per second.

6: Frequency Shift

Adjusts the frequency shift (different between mark and space frequencies) in Hz.

7: RF Bandwidth

This specifies the bandwidth of a LPF that is applied to the output signal to limit the RF bandwidth.

8: Gain

Adjusts the gain in dB from -60 to 0dB.

9: Level meter in %

  • top bar (beige): average value
  • bottom bar (brown): instantaneous peak value
  • tip vertical bar (bright red): peak hold value

10: UDP

When checked, a UDP port is opened to receive text from other features or applications that will be transmitted.

11: UDP address

IP address of the interface to open the UDP port on, to receive text to be transmitted.

12: UDP port

UDP port number to receive text to be transmitted on.

13: Baudot Character Set

Specifies the Baudot character set used to encode the text to transmit.

14: Bit Ordering

Specifies whether bits are transmitted least-significant-bit first (LSB) or most-significant-bit first (MSB).

15: Mark/Space Frequency

When unchecked, the mark frequency is the higher RF frequency, when checked the space frequency is higher.

16: Unshift on Space

When checked, the Baudot character set will shift to letters when a space character (' ') is transmitted.

17: Repeat

Check this button to repeatedly transmit a packet. Right click to open the dialog to adjust the number of times the packet should be repeated.

18: Clear Transmitted Text

Press to clear the transmitted text.

19: Text to Transmit

Enter text to transmit. Pressing return will transmit the text and clear this field. Press the arrow to display and select a list of pre-defined text or previously transmitted text to enter in to the field.

20: TX

Press to transmits the current text. The text field will not be cleared.

Right click to open a dialog to adjust additional transmitter settings.

API

Full details of the API can be found in the Swagger documentation. Below are a few examples.

To transmit the current text simply send a "tx" action:

curl -X POST "http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/actions" -d '{"channelType": "RttyMod",  "direction": 1, "RttyModActions": { "tx": 1}}'

To transmit a packet from the command line:

curl -X POST "http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/actions" -d '{"channelType": "RttyMod",  "direction": 1, "RttyModActions": { "tx": 1, "payload": {"text": "CQ CQ CQ anyone using SDRangel" }}}'

To set the baud rate and frequency shift:

curl -X PATCH "http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/settings" -d '{"channelType": "RttyMod", "direction": 1, "RttyModSettings": {"baud": 45.45; "frequencyShift": 170 }}'