Skip to content

Commit

Permalink
Fix downlink CRC-8 calculation: *No* bitwise NOT
Browse files Browse the repository at this point in the history
  • Loading branch information
Jeija committed Jul 31, 2020
1 parent a3411c9 commit 05150fd
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 8 deletions.
2 changes: 1 addition & 1 deletion spec.tex
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
\usepackage{censor}
\usepackage{lipsum}
\usepackage[absolute,overlay]{textpos}
\usepackage{scrpage2}
\usepackage{scrlayer-scrpage}
\usepackage{array}
\usepackage{booktabs}
\usepackage{psfrag,xcolor}
Expand Down
10 changes: 3 additions & 7 deletions tex/downlink.tex
Original file line number Diff line number Diff line change
Expand Up @@ -696,7 +696,7 @@ \subsection{Implementation by Sigfox}
\end{equation}

The hexadecimal representation of this polynomial is \texttt{0x2f}.
No different than the uplink's \gls{crc}, the downlink's \gls{crc} can be calculated according to \Cref{eq:crc_basic_equation} presented in the introduction to \gls{crc} arithmetic (\Cref{sec:uplink_crc_introduction}) with a subsequent bitwise \texttt{NOT} operation.
Like the uplink's \gls{crc}, the downlink's \gls{crc} can be calculated according to \Cref{eq:crc_basic_equation} presented in the introduction to \gls{crc} arithmetic (\Cref{sec:uplink_crc_introduction}).

The make-up of the message polynomial $M(X)$ is depicted in \Cref{fig:downlink_crc_computation}:
The \gls{crc} checksum only depends on the constant-size contents of downlink payload and \gls{mac} tag.
Expand Down Expand Up @@ -731,13 +731,9 @@ \subsection{Implementation by Sigfox}
\node [rectangle, rounded corners = 3pt, fill = black!10!white, draw, thick, minimum width = 4cm, minimum height = 1.1cm] (crcfunction) at (30 * \pbitsize, \algoffsety) {\textbf{\texttt{\gls{crc}-8 ({\normalfont \ttfamily 0x2f})}}};
\draw [thick, -latex] (30 * \pbitsize, \pktoffsety - \lineheight) -- (crcfunction.north);

% bit flip operation
\node [rectangle, rounded corners = 3pt, fill = black!10!white, draw, thick, minimum width = 4cm, minimum height = 1.1cm, right = 1cm of crcfunction] (bitflip) {Bitwise \textbf{\texttt{NOT}}};
\draw [thick, -latex] (crcfunction.east) -- (bitflip.west);

% crc output
\node (tag) [right = 1cm of bitflip] {\gls{crc} checksum};
\draw [thick, -latex] (bitflip.east) -- (tag.west);
\node (tag) [right = 1cm of crcfunction] {\gls{crc} checksum};
\draw [thick, -latex] (crcfunction.east) -- (tag.west);
\end{tikzpicture}
\caption{Computation of the \gls{crc}-8 checksum depending on payload and \gls{mac} tag for a downlink packet}
\label{fig:downlink_crc_computation}
Expand Down

0 comments on commit 05150fd

Please sign in to comment.