sdrangel/plugins/channeltx/modwfm
Davide Gerhard 2e04d2fe9d
fix windows code to build with MSVC
- remove __attribute__((unused)) not supported on MSVC
- remove  __attribute((unused)) not supported on MSVC
- add symbol exports to RemoteDataReadQueue and RemoteDataQueue
- add export symbols to sdrsrv
2019-05-28 15:19:19 +02:00
..
CMakeLists.txt remove useless CMAKE_CURRENT_BINARY_DIR 2019-05-21 20:19:30 +02:00
readme.md Voice type modulators: corrected documentation on sound file input format 2019-01-22 13:30:54 +01:00
wfmmod.cpp Single channel API 2019-05-09 17:27:12 +02:00
wfmmod.h Single channel API 2019-05-09 17:27:12 +02:00
wfmmodgui.cpp Propagate change to channel UIs 2019-05-09 21:07:05 +02:00
wfmmodgui.h Fixed incomplete copyright headers (1) 2019-04-11 06:39:30 +02:00
wfmmodgui.ui Level meters: fixed text position and make sure appropriate font is used 2018-05-07 03:38:57 +02:00
wfmmodplugin.cpp fix windows code to build with MSVC 2019-05-28 15:19:19 +02:00
wfmmodplugin.h Single channel API 2019-05-09 17:27:12 +02:00
wfmmodsettings.cpp Fixed incomplete copyright headers (1) 2019-04-11 06:39:30 +02:00
wfmmodsettings.h Fixed incomplete copyright headers (1) 2019-04-11 06:39:30 +02:00

readme.md

WFM modulator plugin

Introduction

This plugin can be used to generate a wideband frequency modulated signal. "Wideband" means that the bandwidth can vary from 12.5 to 250 kHz.

Interface

WFM 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.

3: Channel power

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

4: Channel mute

Use this button to toggle mute for this channel.

5: RF bandwidth

This is the bandwidth in kHz of the channel signal filtered after modulation. It can be set in discrete values: 12.5, 25, 40, 60, 75, 80, 100, 125, 140, 160, 180, 200, 220 and 250 kHz

6: Audio frequency bandwidth

This is the bandwidth in khz of the modulating signal filtered before modulation. It can be set in kHz steps from 1 to 20 kHz

7: Frequency deviation

Adjusts the frequency deviation in 1 kHz steps from 0 to 100 kHz

8: Volume

This is the volume of the audio signal from 0.0 (mute) to 2.0 (maximum). It can be varied continuously in 0.1 steps using the dial button.

9: Level meter in %

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

You should aim at keeping the peak value below 100% using the volume control

10: Input source control

Modulator input source control GUI

10.1: Tone input select

Switches to the tone input. You must switch it off to make other inputs available.

10.2: Morse keyer input select

Switches to the Morse keyer input. You must switch it off to make other inputs available.

10.3: Tone frequency (kHz)

Adjusts the tone frequency from 0.1 to 2.5 kHz in 0.01 kHz steps

10.4: Audio input select and select audio input device

Left click to switch to the audio input. You must switch it off to make other inputs available.

Right click to select audio input device. See audio management documentation for details.

11: CW (Morse) text

Enter the text to be keyed when Morse input is active and in text mode

12: Clear CW text

Clears the CW (Morse) text

13: Morse keyer controls

Morse keyer control GUI

13.1: CW keying speed

Sets the CW speed in Words Per Minute (WPM). This is based on the word "PARIS" sent 5 times. For 5 WPM the dot length is 240 ms. In other terms the dot length is calculated as 1.2 / WPM seconds. The dot length is used as the base to compute other timings:

  • Element (dot or dash) silence separator: 1 dot length
  • Dash: 3 dot lengths
  • Character silence separator: 3 dot lengths
  • Word silence separator: 7 dot lengths

13.2: Dots keying

Switch this button to send dots continuously

13.3: Dashes keying

Switch this button to send dashes continuously

13.4: Text keying

Switch this button to send the text typed into the text box (11)

13.5: Text auto repeat

Switch this button to auto repeat the text keying

13.6: Text play/stop

Use this button to stop sending text. When resuming keying restarts at the start of text

14: Audio file path

The path to the selected audio file to be played or dots if unselected

15: Audio file play controls

Modulator audio file play control GUI

15.1: Audio file select

Opens a file dialog to select the audio file to be played. It must be mono 48 kHz F32LE raw format. Using sox a .wav file can be converted with this command: sox piano.wav -t raw -r 48k -c 1 -b 32 -L -e float piano.raw

15.2: Audio file loop

Audio replay file at the end

15.3: Play/pause file play

Toggle play/pause file play. When paused the slider below (18) can be used to randomly set the position in the file when re-starting.

16: Play file current position

This is the current audio file play position in time units relative to the start

17: Play file length

This is the audio file play length in time units

18: Play file position slider

This slider can be used to randomly set the current position in the file when file play is in pause state (button 15.3)