You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A callsign is encoded backwards, from the last character to the first character. This means that the first character of the callsign is in the least significant bits of the address, while the last character is encode into the most significant bits of the address.
1676
1677
\item
1677
-
Since the space character has a value of zero, trailing spaces will not affect the encoded value. For example the calculated address of \texttt{'ABC'} is the same as \texttt{'ABC~'}, or \texttt{'ABC~~~~~~'}.
1678
+
Since the space character has a value of zero, trailing spaces will not affect the encoded value. For example the calculated address of \texttt{'ABC'} is the same as \texttt{'ABC~'}, or \texttt{'ABC~~~~~~'}. A callsign containing just one or more space characters encodes to an address of zero, and this address is reserved.
1678
1679
\item
1679
1680
If an uncoded address represents an amateur radio callsign it should be left-justified. That means that the first character will always be a digit or letter.
1680
1681
\item
1681
1682
Over 262 trillion address can be encoded from \texttt{0x1} (\texttt{A}) to \texttt{0xEE6B27FFFFFF} (\texttt{.........}) and only a fraction of these callsign actually look like an amateur radio callsign. Those encodable base-40 text strings that don't look like an amateur radio callsign can be used by applications for triggering events and features that their programs offer.
1682
1683
\item
1683
-
A callsign consisting of only spaces is invalid, because it would have a corresponding address of zero. That address is defined to be invalid.
1684
-
\item
1685
-
Using this scheme, there are over 19 trillion 48-bit addresses that can't be encoded by nine characters. Only one of these non-encodable addresses ($2^{48}-1$) has a specified use.
1684
+
Using this scheme, there are over 19 trillion 48-bit addresses that can't be encoded by nine characters from the above table. Only one of these non-encodable addresses ($2^{48}-1$) has a specified use.
1686
1685
\item
1687
1686
After the base-40 value is calculated, the final 6-byte address is the big endian encoded representation of the base-40 value. This is also called network byte order.
{\texttt{0x000000000001} \\\texttt{0xEE6B27FFFFFF}} & Standard & \textasciitilde{}262 trillion & "\texttt{A}" to "\texttt{.........}"\\
1715
1714
\hline
1716
-
{\texttt{0xEE6B28000000} \\\texttt{0xFFFFFFFFFFFE}} & Uncodable & \textasciitilde{}19 trillion & for application use \\
1715
+
{\texttt{0xEE6B28000000} \\\texttt{0xFFFFFFFFFFFE}} & Extended & \textasciitilde{}19 trillion & for application use \\
1717
1716
\hline
1718
1717
\texttt{0xFFFFFFFFFFFF} & BROADCAST & \texttt{1} & valid only for a destination \\
1719
1718
\hline[2pt]
@@ -1723,9 +1722,9 @@ \section{Encoded Addresses}
1723
1722
1724
1723
The BROADCAST address should only be used as a destination address. It means that the M17 stream or packet is intended for any capable M17 receivers.
1725
1724
1726
-
The Uncodable addresses can be used by applications for their own purposes and encoding/decoding algorithms for these addresses are left to the developer.
1725
+
The Reserved addresses can be used by applications for their own purposes and encoding/decoding algorithms for these addresses are left to the developer.
1727
1726
1728
-
For Codable addresses, the following encoding and decoding examples written in C will not treat the BROADCAST address. This is an implementation detail left to the developers.
1727
+
For Standard addresses, the following encoding and decoding examples written in C will not treat the BROADCAST address. This is an implementation detail left to the developers.
1729
1728
1730
1729
\pagebreak
1731
1730
@@ -1803,7 +1802,7 @@ \section{Decoder Example}
1803
1802
}
1804
1803
\end{lstlisting}
1805
1804
1806
-
For an example of how to encode and decode BROADCAST, or how to use part of the Uncodable address space,
1805
+
For an example of how to encode and decode BROADCAST, or how to use part of the Extended address space,
1807
1806
see \href{https://github.com/M17-Project/libm17}{https://github.com/M17-Project/libm17}.
0 commit comments