PD - POCSAG Decoder
User Documentation
Version 1.02 June 1995
Contents
1. Introduction
2. Registration
3. Installation
4. Interfacing
5. Configuration
5.1 PD.INI
5.1.1 General Parameters
5.1.2 Function Codes
5.2 PAGERS.INI
5.3 REJECT.INI
6. Running the program
6.1 Command Line Options
6.2 Supported Keys
6.3 Status Line
6.4 Normal Mode
6.5 Debug Mode
1. Introduction
PD, together with a receiver or scanner, allows the off-air decoding of
POCSAG paging signals at either 1200 or 512 bits/second. This makes it
extremely useful for the testing of paging transmitters and systems.
Decoding of both numeric and alphanumeric pager data is supported, as is
the hex dumping of raw POCSAG codewords.
PD runs on an IBM PC or equivalent, anything from an 8086 upwards. It
requires 512K of conventional memory and a small amount of hard disk
or floppy. Hard disk is recommended.
PD runs from DOS, running from Windows is not recommended.
2. Registration
PD is freely distributed as a shareware version. This has a timeout of
about 5 minutes, after which a registration message is displayed and
the program exits. Also the logging of pager data to disk is disabled.
To obtain a fully functional registered copy of PD send a cheque or money
order for 20.00 pounds sterling to:-
Peter Baston,
7 Allerton Close,
Pen-y-ffordd,
Clwyd,
CH4 0NJ,
U.K.
3. Installation
In order to install the program copy the following files into a directory
on a hard drive, or onto a floppy:-
PD.EXE Pocsag Decoder program
PD.INI Configuration file
PAGERS.INI List of pager codes (7 digit RIC's) to be logged
REJECT.INI List of pager codes to reject
PD.TXT This documentation file
4. Interfacing
The PD program requires serial POCSAG data to be applied to the CTS pin
of one of the PC's COM ports. RS232 levels are required, ie at least +/-
3v. PD is insensitive to polarity, ie it doesn't matter which way up mark
and space are.
As POCSAG is transmitted as direct FSK of the VHF/UHF carrier the ideal
way is to take the data direct from the discriminator, via a data slicer.
The following circuit, however, has been fairly successful, taking audio
directly from the receiver's speaker output:-
0.1 uF |\ +12v
---||-----------------------|- \|
AF IN | |741 \
---- | | /--------------------- Data Out
| \ ------|+ /| | CTS (pin 5/8)
| / 100K | |/-12v |
| \ | | GND ------ GND (pin 7/5)
GND / ----/\/\/\----
| | 100K
| \ N.B. Pin Numbers for com port are
GND / given as x/y, where x is for a 25
\ 10K way, y for a 9 way.
/
|
GND
The +/- 12v for the op-amp can be derived from unused signals on the COM
port (gives more like +/- 10v but works fine !):-
TxD (2/3) --------------||------- - - |
Diodes 1N4148 | - + 1uF GND
| |
DTR (20/4) ------------->|-------------------------------------- +12v
5. Configuration
5.1 PD.INI
The PD.INI file allows a limited amount of configuration of the PD program.
Any text editor can be used to edit this file. The file is divided up into
sections, headed by a name in square brackets, eg [general], [functions].
In each section are parameters, set to a value with an "=" sign, eg:-
logbeep=100
func1=alpha
5.1.1 General Parameters
These parameters come under the [general] heading. This version only supports
one parameter in this section
5.1.1.1 logbeep
This parameter allows the length of the "beep", sounded when a pager message
is logged, to be set. It's format is:-
logbeep=
eg:-
logbeep=100
Where is the length of the beep in milliseconds. A value of zero
turns off the beeping, this is the default.
5.1.2 Function Codes
These parameters come under the [functions] heading. Four parameters are
supported - func0, func1, func2 and func3. These allow the decoding of
the pager data to be determined by the function code, transmitted in the
address codeword. The format for setting these parameters is:-
funcx=
Where is one of:-
alpha - The message will be decoded as alphanumeric ASCII
data.
numeric - The message will be decoded as BCD numeric data.
raw - The message will be dumped in raw form, as hex
codewords
eg:-
func0=raw
func1=numeric
func2=numeric
func3=alpha
The program defaults to decoding all function codes as "alpha" data.
5.2 PAGERS.INI
This file contains a list of pager addresses to be logged and is simply
a list of 7 digit RIC's, eg:-
1234567
0012345
etc
This file may contain up to 100 addresses. Every time one of these
addresses is encountered it is highlighted on the screen, a beep is
sounded if configured, and the page is logged to disk with a date/time
stamp. The log filename is .TXT, eg 1234567.TXT.
5.3 REJECT.INI
This file contains a list of pager addresses to be rejected, eg to save
screen clutter. This file has the same format as described in 5.3 above.
6. Running the Program
6.1 Command Line Options
PD is run from the DOS prompt with the following format:-
PD
Where the command line options are:-
-Px Use COM port x. Default is COM1.
-B512 Forces 512 bits/second POCSAG decoding, default is 1200 bps.
6.2 Supported Keys
The following keys are supported whilst PD is running:-
ESC Exits the program
F1 Toggles between NORMAL and DEBUG modes
SPACE BAR Toggles PAUSE mode on and off
6.3 Status Line
After PD starts up it displays a status line across the top of the screen,
with a data area below. The status line is as shown below:-
NORMAL COM1 1200 * PD Version 1.02 * PAUSE REJ / 09:30:57
The items on the status line are described below, from left to right:-
* NORMAL/DEBUG indicator - shows which mode PD is currently operating in.
* COM port currently in use.
* Current POCSAG bit rate.
* Version of PD being used.
* PAUSE indicator - appears when paused by the space bar.
* REJ indicator - appears when a pager address matches one listed in
REJECT.INI
* Rotating signal indicator. Appears to rotate when data is being
received on the correct pin of the COM port. This is no indication of
good data, just that the levels are correct.
* The current time from the PC's real time clock.
6.4 Normal Mode
In NORMAL mode, as long as good POCSAG data is being received, lines of
the following form are displayed:-
[RIC] [Function Code]
eg:-
1234567 3 Please call 1234 - 5688
0345678 1 Test call
[RIC] is the 7-digit RIC pager address
[Function Code] is the transmitted function code 0,1,2 or 3
is numeric,alphanumeric or hex depending on the function code.
The data field may overflow onto multiple lines.
Before data is displayed in NORMAL mode the address codeword is checked
for errors and must be error-free. Subsequent data codewords are not
checked for errors. Some "garbling" of data may therefore occur if a
good signal is not being received, although received RIC codes are
guaranteed to be good.
6.5 Debug Mode.
In Debug mode the raw POCSAG codewords are dumped to the screen in hex
form, eg:-
7A89C197 7A89CI97 7A89C197 7A89C197 7A89C197 7A89C197 7A89C197 7A89C197
7A89C197 7A89C197 14083EE2 7A89C197 7A89C197 7A89C197 7A89C197 7A89C197
Any codewords which do not pass the BCH and parity error checking are
highlighted. This is very useful for checking the quality of the
received signal.
<<<<=====>>>>>