1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-30 03:38:55 -05:00
sdrangel/plugins/channeltx/modpacket
2022-02-25 23:47:53 +01:00
..
CMakeLists.txt Install debug symbols on Windows for debug builds 2022-02-06 12:56:58 +00:00
packetmod.cpp Message pipes rework (2) 2022-02-25 23:47:53 +01:00
packetmod.h Channel API rework: make it inherit from QObject and removed QObject inheritance from DSP interfaces. Fixes #1147 2022-02-13 00:57:33 +01:00
packetmodbaseband.cpp AIS and Packet modulators API: put back optional data in the action structure 2021-11-21 07:48:39 +01:00
packetmodbaseband.h Demod Analyzer: fixed sample rate handling. Fixes #931 2021-06-29 21:47:27 +02:00
packetmodbpfdialog.cpp Define _USE_MATH_DEFINES and clean M_PI redefinitions 2020-11-04 23:05:41 +01:00
packetmodbpfdialog.h Add 9600 FSK modem with scrambler and raised-cosine pulse-shaping. 2020-09-24 08:36:13 +02:00
packetmodbpfdialog.ui Add 9600 FSK modem with scrambler and raised-cosine pulse-shaping. 2020-09-24 08:36:13 +02:00
packetmodgui.cpp Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050 2022-01-09 05:27:12 +01:00
packetmodgui.h Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050 2022-01-09 05:27:12 +01:00
packetmodgui.ui #897 - Add support for vertically expanding widgets to RollupWidget 2021-10-30 16:20:24 +01:00
packetmodplugin.cpp Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050 2022-01-09 05:27:12 +01:00
packetmodplugin.h Channel plugins: use specialized ChannelGUI superclass. Handle GUI lifecycle in MainWindow 2020-10-04 22:16:09 +02:00
packetmodrepeatdialog.cpp Add packet modulator for transmitting packet radio data packets (AX.25/APRS) 2020-09-18 16:36:27 +01:00
packetmodrepeatdialog.h Add packet modulator for transmitting packet radio data packets (AX.25/APRS) 2020-09-18 16:36:27 +01:00
packetmodrepeatdialog.ui Add packet modulator for transmitting packet radio data packets (AX.25/APRS) 2020-09-18 16:36:27 +01:00
packetmodsettings.cpp Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050 2022-01-09 05:27:12 +01:00
packetmodsettings.h Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050 2022-01-09 05:27:12 +01:00
packetmodsource.cpp Message pipes rework (2) 2022-02-25 23:47:53 +01:00
packetmodsource.h Demod Analyzer: fixed sample rate handling. Fixes #931 2021-06-29 21:47:27 +02:00
packetmodtxsettingsdialog.cpp Add 9600 FSK modem with scrambler and raised-cosine pulse-shaping. 2020-09-24 08:36:13 +02:00
packetmodtxsettingsdialog.h Add 9600 FSK modem with scrambler and raised-cosine pulse-shaping. 2020-09-24 08:36:13 +02:00
packetmodtxsettingsdialog.ui Add 9600 FSK modem with scrambler and raised-cosine pulse-shaping. 2020-09-24 08:36:13 +02:00
packetmodwebapiadapter.cpp Fixed -Wunused-parameter warnings 2020-11-14 11:13:32 +01:00
packetmodwebapiadapter.h Add packet modulator for transmitting packet radio data packets (AX.25/APRS) 2020-09-18 16:36:27 +01:00
readme.md AIS and Packet modulators API: put back optional data in the action structure 2021-11-21 07:48:39 +01:00

Packet radio modulator plugin

Introduction

This plugin can be used to modulate packet radio (APRS/AX.25) data packets.

Interface

Packet 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: Modulation

This specifies the baud rate and modulation that is used for the packet transmission. Currently 1200 baud AFSK and 9600 baud FSK are supported.

5: RF Bandwidth

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

6: Frequency deviation

Adjusts the frequency deviation in 0.1 kHz steps from 1 to 6 kHz. Typical values are 2.5 kHz and 5 kHz.

7: Gain

Adjusts the gain in dB from -60 to 0dB. The gain should be set to ensure the level meter remains below 100%.

8: Level meter in %

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

9: Callsign

Enter your amateur radio callsign and optionally a sub-station ID (SSID). E.g. M7RCE or M7RCE-1

10: Preemphaisis Filter

Check this button to enable a FM preemphasis filter, which amplifies higher frequencies. Right click to open the dialog to adjust settings for the filter.

11: Bandpass Filter

Check this button to enable a baseband bandpass filter. Right click to open the dialog to adjust settings for the filter.

12: Repeat

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

13: Insert position

Inserts position as APRS formatted latitude and longitude in to the current cursor position within the data field. Lattitude and longitude can be specified under Preferences > My position.

14: To

Enter the destination for the packet. To send the packet to the APRS network, use APRS or APZ.

15: Via

Enter the routing for the packet. To have the packet repeated by digipeaters, use WIDE2-2. To have the packet repeated by the International Space Station (ISS), use ARISS.

16: Data

The packet of data to send. To send an APRS status message, use the format >Status. The APRS specification can be found at: http://www.aprs.org/doc/APRS101.PDF. APRS messages can be tracked on https://aprs.fi

17: TX

Transmits a packet containing the current values in callsign, to, via and data fields. Right click to open a dialog to adjust transmission details allowing parameters different from standard values.

18: UDP

When checked, a UDP port is opened to receive packets from other features or applications that will be transmitted. These packets do not need to contain the CRC, as it is appended automatically.

19: UDP address

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

20: UDP port

UDP port number to receive packets to be transmitted on.

API

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

To transmit a packet with current callsign, to, via and data fields simply send a "tx" action:

curl -X POST "http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/actions" -d '{"channelType": "PacketMod",  "direction": 1, "PacketModActions": { "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": "PacketMod",  "direction": 1, "PacketModActions": { "tx": 1, "payload": { "callsign": "MYCALL", "to": "APRS", "via": "WIDE2-2", "data": ">Using SDRangel API to transmit" }}}'

To set the mode to 9600 FSK:

curl -X PATCH "http://127.0.0.1:8091/sdrangel/deviceset/1/channel/0/settings" -d '{"channelType": "PacketMod", "direction": 1, "PacketModSettings": {"mode": "9600 FSK"}}'