













                          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) --------------|<-------------------------------------- -12v
                                     |                  |
    RTS (4/7) --------------|<--------       GND        - -
                   |                          |         _ +  1uF
                    --------->|-------        - -       |
                    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=<number>

eg:-

logbeep=100

Where <number> 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=<string>

Where <string> 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 <RIC>.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 <-Px> <-B512>

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] <data>

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


                           <<<<=====>>>>>

