Ham Radio
Ham Radio, Electronics, Software and more...

Home » Electronics » Pagers » POCSAG Encoding
POCSAG Encoding [message #37] Sun, 22 January 2006 22:59
root is currently offline  root
Messages: 208
Registered: December 2004
Senior Member

You do not have a problem let me explain how POCSAG is encoded so that you
can understand why you are getting these results................

00000000000000000011101101001001 Cap Code 8 seen as 32 bits- Alphanumeric

In the example above the MSB is the bit on the left and is called bit 32.
bit 32 is a zero if the codeword is a cap code and a 1 if it is data.
bit 31 to bit 14 is where the Capcode is placed, the lower 3 bits of the
capcode are discarded and not sent (I will explain why in a moment)
bits 13 and 12 are the function bits setting the page as
Alphanumeric/Numeric/Tone one/Tone two.
bits 11 to 2 are a CRC (Cyclic Redundency Checksum) this can be used to
correct up to 2 bit errors in the sent data. (This is a huge subject in its
own right)
bit 1 is an even parity bit.... if all the bits that are a 1 in the codeword
add up to an uneven number then this bit is set to one, if not then its set
to zero.

POCSAG data is sent as 32 bit codewords and after 16 codewords have been
sent then a syncronization codeword is sent and then another 16 codewords
and then another syncronization codeword and so on and so on.
Each 16 codewords is called a FRAME.
The Frame is further split into double codewords, that gives us a total of 8
pairs of codewords....... now if you remember we dropped the last 3 bits of
the CAP code..... 3 bits gives us a number from 0 to 7...... 0 to 7 is eight
Because we dropped these 3 bits it means that pager 7 wil have the same
codeword value as pager 0 and pager 1 and pager 2 etc etc.
So in order to make sure that each pager only gets the pages its meant to
get what we do is to send pager zero's capcode and message in the first
double pair after a syncronization codeword and pager one's capcode and
message in the second double pair after a syncronization codeword...... etc

So to recap.........
If you enter the Cap code 8, then the first thing my PE software does is to
convert it to 1....... If you enter a Cap code of 9 then that is also
converted to 1....... infact all capcodes from 8 to 16 are all converted
into 1...... but when they are transmitted they are sent at different points
in time.... the point in time that a page is sent decides its value for the
lower 3 bits that we discarded.
So Cap Codes 0 to 7 have a POCSAG codeword of 0
So Cap Codes 8 to 15 have a POCSAG codeword of 1
So Cap Codes 16 to 24 have a POCSAG codeword of 2
And so on..........
There are over 2 million different Cap codes but only just over 250 thousand
Cap Code codewords transmitted.

So what you are experiencing is exactly what is supposed to happen with
POCSAG data.

I hope this helps,

All the best
Clive Cooper.
PE Version 3 is now available at my website

Next Topic: Phrack Magazine - The Wonderful World of Pagers
Goto Forum:

Current Time: Tue Dec 18 09:58:48 EST 2018

Total time taken to generate the page: 0.03026 seconds