1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-08 17:46:03 -05:00
sdrangel/plugins/channelrx/demodpager
2022-01-09 05:27:12 +01:00
..
CMakeLists.txt Add support for character set mapping in Pager demod 2021-07-19 17:57:13 +01:00
pagerdemod.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
pagerdemod.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
pagerdemodbaseband.cpp Pager demod: API: complete settings and implement reporting 2021-11-09 21:57:56 +01:00
pagerdemodbaseband.h Pager demod: API: complete settings and implement reporting 2021-11-09 21:57:56 +01:00
pagerdemodcharsetdialog.cpp Pager: Add extra Hebrew charaters. Use reverse option, instead of right-to-left, as Hebrew appears to be transmitted last first 2021-07-28 15:00:43 +01:00
pagerdemodcharsetdialog.h Add support for character set mapping in Pager demod 2021-07-19 17:57:13 +01:00
pagerdemodcharsetdialog.ui Pager: Add extra Hebrew charaters. Use reverse option, instead of right-to-left, as Hebrew appears to be transmitted last first 2021-07-28 15:00:43 +01:00
pagerdemodgui.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
pagerdemodgui.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
pagerdemodgui.ui Merge CSV code in to a single file. 2021-11-04 12:33:43 +00:00
pagerdemodplugin.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
pagerdemodplugin.h
pagerdemodsettings.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
pagerdemodsettings.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
pagerdemodsink.cpp Pager demod: API: complete settings and implement reporting 2021-11-09 21:57:56 +01:00
pagerdemodsink.h Pager demod: optimize feed samples to scope and set sample rate in scope GUI 2021-07-13 18:03:12 +02:00
pagerdemodwebapiadapter.cpp
pagerdemodwebapiadapter.h
readme.md Merge CSV code in to a single file. 2021-11-04 12:33:43 +00:00

Pager demodulator plugin

Introduction

This plugin can be used to demodulate POCSAG pager messages.

Interface

Pager Demodulator plugin GUI

1: Frequency shift from center frequency of reception

Use the wheels to adjust the frequency shift in Hz from the center frequency of reception. 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 received in the pass band.

3: Level meter in dB

  • top bar (green): average value
  • bottom bar (blue green): instantaneous peak value
  • tip vertical bar (bright green): peak hold value

4: BW - RF Bandwidth

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

5: Dev - Frequency deviation

Adjusts the expected frequency deviation in 0.1 kHz steps from 1 to 6 kHz. POCSAG uses FSK with a +/- 4.5 kHz shift.

6: Mod - Modulation

Specifies the pager modulation. Currently only POCSAG is supported.

POCSAG uses FSK with 4.5kHz frequency shift, at 512, 1200 or 2400 baud. High frequency is typically 0, with low 1, but occasionally this appears to be reversed, so the demodulator supports either. Data is framed as specified in ITU-R M.584-2: https://www.itu.int/dms_pubrec/itu-r/rec/m/R-REC-M.584-2-199711-I!!PDF-E.pdf

7: Baud

Specifies the baud rate. For POCSAG, this can be 512, 1200 or 2400.

8: Decode

Specifies how messages are decoded in the Message column in the table:

  • Standard - As per ITU-R M.584-2 - Function 0 = numeric, function 1-3 = alphanumeric.
  • Inverted - Function 3 = numeric, function 0-2 = alphanumeric.
  • Numeric - Always decode as numeric.
  • Alphanumeric - Always decode as alphanumeric.
  • Heuristic - The plugin will try to guess based on the content of the message.

The table has Numeric and Alphanumeric columns which always display the corresponding decode.

9: Character encoding

Click to open the character encoding dialog, which allows a mapping from the received 7-bit alphanumeric characters to Unicode.

Character encoding dialog

Each row contains a mapping from a 7-bit value to a Unicode code point. Values should be entered in hexideicmal

10: Find

Entering a regular expression in the Find field displays only messages where the address matches the given regular expression.

11: Clear Messages from table

Pressing this button clears all messages from the table.

12: UDP

When checked, received messages are forwarded to the specified UDP address (12) and port (13).

The messages are forwarded as null terminated ASCII strings, in the format: data time address function alpha numeric

13: UDP address

IP address of the host to forward received messages to via UDP.

14: UDP port

UDP port number to forward received messages to.

15: Start/stop Logging Messages to .csv File

When checked, writes all received messages to a .csv file.

16: .csv Log Filename

Click to specify the name of the .csv file which received messages are logged to.

17: Read Data from .csv File

Click to specify a previously written .csv log file, which is read and used to update the table.

Received Messages Table

The received messages table displays each pager message received.

Pager Demodulator messages table

  • Date - The date the message was received.
  • Time - The time the message was received.
  • Address - The 21-bit pager address the message is for.
  • Message - The decoded message, as per Decode setting (8). This will be empty for "tone only" messages (i.e. when the pager beeps without a message).
  • Function - Function bits. In some instances this is used to specify the encoding of the message (Numeric/alphanumeric). In others, it is the pager source address.
  • Alpha - Message decoded as alphanumeric text, regardless of Decode setting (8)
  • Numeric - Message decoded as numeric, regardless of Decode setting (8).
  • Even PE - Number of even parity errors detected in the code words of the message.
  • BCH PE - Number of uncorrectable BCH parity errors detected in the code words of the message.

Right clicking on the table header allows you to select which columns to show. The columns can be reordered by left clicking and dragging the column header. Right clicking on an item in the table allows you to copy the value to the clipboard.