14.3.3.2 CRC Calculation

The CRC polynomial used in IEEE 802.15.4 networks is defined by.

G16(x)=x16+x12+x5+1

The FCS shall be calculated for transmission using the following algorithm:

M(x)=b05-1+b1k-2+...+bk-2+bk-1

Let be the polynomial representing the sequence of bits for which the checksum is to be computed. Multiply M(x) by , giving the polynomial.

N(x)=M(x)·x16

Divide modulo two by the generator polynomial,, to obtain the remainder polynomial,

R(x)=r0x15+r1x14+...+r14+r15

The FCS field is given by the coefficients of the remainder polynomial, R(x).

Considering a five octet ACK frame. The MHR field consists of

0100 0000 0000 0000 0101 0110.

The leftmost bit (b0) is transmitted first in time. The FCS is in this case

0010 0111 1001 1110.

The leftmost bit (r0) is transmitted first in time.