1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-26 17:58:43 -05:00
sdrangel/plugins/feature/simpleptt
Mykola Dvornik 15337cac66 Fix bug that prevents settings changes updates via reverse API
Most plugins that use reverse API to PATCH settings updates to remote
server only do so when `useReverseAPI` is toggled, but not when the
relevant settings are being updated. So lets fix the precondition to
use the `m_useReverseAPI` flag instead.
2024-04-14 18:58:12 +02:00
..
CMakeLists.txt SimplePTT GPIO amd commands: finalization 2023-05-29 09:29:52 +02:00
readme.md Updated versions and changelogs 2023-05-30 00:05:33 +02:00
simpleptt.cpp Fix bug that prevents settings changes updates via reverse API 2024-04-14 18:58:12 +02:00
simpleptt.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttcommand.cpp Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttcommand.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttcommandoutputdialog.cpp Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttcommandoutputdialog.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttcommandoutputdialog.ui SimplePTT GPIO amd commands: finalization 2023-05-29 09:29:52 +02:00
simplepttgui.cpp Fix SimpltPTT device id; Add "None" Rx/Tx device option 2024-02-12 15:25:37 +08:00
simplepttgui.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttgui.ui SimplePTT GPIO amd commands: finalization 2023-05-29 09:29:52 +02:00
simplepttmessages.cpp Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttmessages.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttplugin.cpp Updated versions and changelogs 2024-04-14 11:41:00 +02:00
simplepttplugin.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttreport.cpp Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttreport.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttsettings.cpp Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttsettings.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttwebapiadapter.cpp Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttwebapiadapter.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00
simplepttworker.cpp Fix SimpltPTT device id; Add "None" Rx/Tx device option 2024-02-12 15:25:37 +08:00
simplepttworker.h Rewriting of copyright notices for plugins/features. Part of #1893 2023-11-18 13:12:18 +01:00

Simple PTT plugin

Introduction

This plugin controls switchover between a Rx (Device source) and Tx (Device sink). It has no other controls than an adjustable delay from Rx to Tx and back to Rx. Because of its simplicity it can also serve as a model to build other feature plugins.

Interface

PTT feature plugin GUI

1: Start/Stop plugin

This button starts or stops the plugin

2: PTT button

Click to switch from Rx to Tx and again to switch back to Rx. When in Tx mode the button is lit.

3: Status indicator

This LED type display shows the current PTT status:

  • Green: Rx runs
  • Red: Tx runs
  • Grey: None active (transient)

4: Vox control

PTT feature vox control

4.1: Activate vox system

Toggle this switch to activate or de-activate vox control. When activated the audio input level is monitored and appears in (4.5) and if the level exceeds the level set by (4.3) and displayed in (4.4) then the vox button turns green until vox goes off after the hold period (4.6). The vox system controls the PTT only if the vox PTT enable checkbox is checked (4.2). Thus you can set the appropriate level (4.3) before engaging PTT control.

Right click on this button to open the audio input device selection dialog.

4.2: Enable PTT control

Check this box to enable PTT control by the vox system.

4.3: Vox threshold level

Use this button to adjust the vox threshold level in power dB (0 dB = full range)

4.4: Vox threshold display

This is the value set by (4.3) in dB.

4.5: Audio input level

This is the audio input level in dB displayed when the vox system is active (4.1)

4.6: Vox hold period

The vox is held active for this amount of time in milliseconds after the audio input power goes below the threshold level (4.3)

5: Refresh list of devices

Use this button to refresh the list of devices (5) and (6)

6: Select Rx device set

Use this combo to select which Rx device is controlled

7: Select Tx device set

Use this combo to select which Tx device is controlled. If no device label appears you can use the refresh button (5) to re-populate the list. Else it means that there are no Tx devices in the SDRangel instance.

8: Show last command status and log

When a transition script (11) (13) is enabled this will show the log and status of the last execution of such script.

9: Transition delay from Rx to Tx

Value in milliseconds between Rx stop and Tx start

10: Transition delay from Tx to Rx

Value in milliseconds between Tx stop and Rx start

11: Enable Rx to Tx transition script

Enable/disable execution of a transition script (12) when PTT is switched from Rx to Tx.

12: Rx to Tx transition script

Click on the button with a folder icon to open a file dialog where you can locate the script to be executed when transitioning from Rx to Tx. The full path of the script (if any) is shown next to the button. When invoked 4 positional parameters are passed as arguments to the script in this order:

  • Rx device set index (integer)
  • Rx device center frequency (floating point scientific notation)
  • Tx device set index (integer)
  • Tx device center frequency (floating point scientific notation)

13: Enable Tx to Rx transition script

Enable/disable execution of a transition script (14) when PTT is switched from Tx to Rx.

14: Tx to Rx transition script

Click on the button with a folder icon to open a file dialog where you can locate the script to be executed when transitioning from Tx to Rx. The full path of the script (if any) is shown next to the button. When invoked 4 positional parameters are passed as arguments to the script in this order:

  • Rx device set index (integer)
  • Rx device center frequency (floating point scientific notation)
  • Tx device set index (integer)
  • Tx device center frequency (floating point scientific notation)

15: Enable Rx to Tx GPIO activation

If the controlling device (Rx or Tx specified with radio buttons (18) and (22)) has GPIO support it will use the mask (16) and values (16) bits to activate the corresponding GPIO pins of the device.

16: Rx to Tx GPIO mask bits

Specify which bits of the GPIO are activated (0x00 to 0xFF) during Rx to Tx transition. Bit value 0 to ignore the bit or 1 to take it.

17: Rx to Tx GPIO value bits

Specify the value of the GPIO bits that are activated (0x00 to 0xFF) during Rx to Tx transition. Masked bit positions are ignored and can take any value.

18: Set the Rx device as taking GPIO control

You can specify either the Rx or Tx device for GPIO control. Click on this radio button to specify the Rx device.

19: Enable Tx to Rx GPIO activation

If the controlling device (Rx or Tx specified with radio buttons (18) and (22)) has GPIO support it will use the mask (20) and values (21) bits to activate the corresponding GPIO pins of the device.

20: Tx to Rx GPIO mask bits

Specify which bits of the GPIO are activated (0x00 to 0xFF) during Tx to Rx transition. Bit value 0 to ignore the bit or 1 to take it.

21: Tx to Rx GPIO value bits

Specify the value of the GPIO bits that are activated (0x00 to 0xFF) during Tx to Rx transition. Masked bit positions are ignored and can take any value.

22: Set the Tx device as taking GPIO control

You can specify either the Rx or Tx device for GPIO control. Click on this radio button to specify the Tx device.