335 lines
8.4 KiB
Plaintext
335 lines
8.4 KiB
Plaintext
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
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.
|
|||
|
|
|||
|
|
|||
|
<<<<=====>>>>>
|
|||
|
|