From bce1dbbefe0594580aebd991f95d3e319df0b070 Mon Sep 17 00:00:00 2001
From: jgromes <jgromes@users.noreply.github.com>
Date: Mon, 5 Aug 2024 19:09:12 +0000
Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20=20@=2007987?=
 =?UTF-8?q?4345b7e95d9b2fed462d50a720117c45e55=20=F0=9F=9A=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 _a_f_s_k_8h_source.html        |   2 +-
 _a_p_r_s_8h_source.html        |   2 +-
 _a_x25_8h_source.html          | 325 ++++++++++++++++-----------------
 _f_e_c_8h_source.html          |   9 +-
 _physical_layer_8h_source.html |   2 +-
 5 files changed, 171 insertions(+), 169 deletions(-)

diff --git a/_a_f_s_k_8h_source.html b/_a_f_s_k_8h_source.html
index 4579c0ce..eafe8cf0 100644
--- a/_a_f_s_k_8h_source.html
+++ b/_a_f_s_k_8h_source.html
@@ -133,7 +133,7 @@ $(document).ready(function(){initNavTree('_a_f_s_k_8h_source.html',''); initResi
 <div class="ttc" id="aclass_a_f_s_k_client_html_a664c1de9b5cd792826a5a77ac5457bae"><div class="ttname"><a href="class_a_f_s_k_client.html#a664c1de9b5cd792826a5a77ac5457bae">AFSKClient::noTone</a></div><div class="ttdeci">int16_t noTone(bool keepOn=false)</div><div class="ttdoc">Stops transmitting audio tone.</div><div class="ttdef"><b>Definition:</b> AFSK.cpp:32</div></div>
 <div class="ttc" id="aclass_a_f_s_k_client_html_a6d2341901c83e45f853c077e60f1fa33"><div class="ttname"><a href="class_a_f_s_k_client.html#a6d2341901c83e45f853c077e60f1fa33">AFSKClient::tone</a></div><div class="ttdeci">int16_t tone(uint16_t freq, bool autoStart=true)</div><div class="ttdoc">Start transmitting audio tone.</div><div class="ttdef"><b>Definition:</b> AFSK.cpp:17</div></div>
 <div class="ttc" id="aclass_a_f_s_k_client_html_a89c7ab4759d37c9a032ac29fa9782eea"><div class="ttname"><a href="class_a_f_s_k_client.html#a89c7ab4759d37c9a032ac29fa9782eea">AFSKClient::AFSKClient</a></div><div class="ttdeci">AFSKClient(PhysicalLayer *phy, uint32_t pin)</div><div class="ttdoc">Default contructor.</div><div class="ttdef"><b>Definition:</b> AFSK.cpp:4</div></div>
-<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:238</div></div>
+<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:233</div></div>
 <div class="ttc" id="aclass_bell_client_html"><div class="ttname"><a href="class_bell_client.html">BellClient</a></div><div class="ttdoc">Client for Bell modem communication. The public interface is the same as Arduino Serial.</div><div class="ttdef"><b>Definition:</b> BellModem.h:57</div></div>
 <div class="ttc" id="aclass_f_s_k4_client_html"><div class="ttname"><a href="class_f_s_k4_client.html">FSK4Client</a></div><div class="ttdoc">Client for FSK-4 communication. The public interface is the same as Arduino Serial.</div><div class="ttdef"><b>Definition:</b> FSK4.h:15</div></div>
 <div class="ttc" id="aclass_hell_client_html"><div class="ttname"><a href="class_hell_client.html">HellClient</a></div><div class="ttdoc">Client for Hellschreiber transmissions.</div><div class="ttdef"><b>Definition:</b> Hellschreiber.h:90</div></div>
diff --git a/_a_p_r_s_8h_source.html b/_a_p_r_s_8h_source.html
index ba76b01b..a374060b 100644
--- a/_a_p_r_s_8h_source.html
+++ b/_a_p_r_s_8h_source.html
@@ -189,7 +189,7 @@ $(document).ready(function(){initNavTree('_a_p_r_s_8h_source.html',''); initResi
 <div class="ttc" id="aclass_a_p_r_s_client_html_a4d1468be141940a12fd3964957f79c1a"><div class="ttname"><a href="class_a_p_r_s_client.html#a4d1468be141940a12fd3964957f79c1a">APRSClient::begin</a></div><div class="ttdeci">int16_t begin(char sym, char *callsign=NULL, uint8_t ssid=0, bool alt=false)</div><div class="ttdoc">Initialization method.</div><div class="ttdef"><b>Definition:</b> APRS.cpp:17</div></div>
 <div class="ttc" id="aclass_a_p_r_s_client_html_aebc95b926fb3d37f8489f895aa576d0e"><div class="ttname"><a href="class_a_p_r_s_client.html#aebc95b926fb3d37f8489f895aa576d0e">APRSClient::sendPosition</a></div><div class="ttdeci">int16_t sendPosition(char *destCallsign, uint8_t destSSID, char *lat, char *lon, char *msg=NULL, char *time=NULL)</div><div class="ttdoc">Transmit position.</div><div class="ttdef"><b>Definition:</b> APRS.cpp:37</div></div>
 <div class="ttc" id="aclass_a_p_r_s_client_html_af8f28eba026b0f0a25c8ba54a96f4743"><div class="ttname"><a href="class_a_p_r_s_client.html#af8f28eba026b0f0a25c8ba54a96f4743">APRSClient::sendMicE</a></div><div class="ttdeci">int16_t sendMicE(float lat, float lon, uint16_t heading, uint16_t speed, uint8_t type, uint8_t *telem=NULL, size_t telemLen=0, char *grid=NULL, char *status=NULL, int32_t alt=RADIOLIB_APRS_MIC_E_ALTITUDE_UNUSED)</div><div class="ttdoc">Transmit position using Mic-E encoding.</div><div class="ttdef"><b>Definition:</b> APRS.cpp:81</div></div>
-<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:238</div></div>
+<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:233</div></div>
 <div class="ttc" id="aclass_physical_layer_html"><div class="ttname"><a href="class_physical_layer.html">PhysicalLayer</a></div><div class="ttdoc">Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....</div><div class="ttdef"><b>Definition:</b> PhysicalLayer.h:54</div></div>
 </div><!-- fragment --></div><!-- contents -->
 </div><!-- doc-content -->
diff --git a/_a_x25_8h_source.html b/_a_x25_8h_source.html
index 68049a14..e715a116 100644
--- a/_a_x25_8h_source.html
+++ b/_a_x25_8h_source.html
@@ -97,198 +97,193 @@ $(document).ready(function(){initNavTree('_a_x25_8h_source.html',''); initResiza
 <div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="preprocessor">#include &quot;../AFSK/AFSK.h&quot;</span></div>
 <div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;../BellModem/BellModem.h&quot;</span></div>
 <div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;../../utils/CRC.h&quot;</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
-<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">// macros to access bits in byte array, from http://www.mathcs.emory.edu/~cheung/Courses/255/Syllabus/1-C-intro/bit-array.html</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#define SET_BIT_IN_ARRAY(A, k)                                  ( A[(k/8)] |= (1 &lt;&lt; (k%8)) )</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#define CLEAR_BIT_IN_ARRAY(A, k)                                ( A[(k/8)] &amp;= ~(1 &lt;&lt; (k%8)) )</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#define TEST_BIT_IN_ARRAY(A, k)                                 ( A[(k/8)] &amp; (1 &lt;&lt; (k%8)) )</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#define GET_BIT_IN_ARRAY(A, k)                                  ( (A[(k/8)] &amp; (1 &lt;&lt; (k%8))) ? 1 : 0 )</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
-<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">// maximum callsign length in bytes</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_MAX_CALLSIGN_LEN                          6</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160; </div>
-<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">// flag field                                                                 MSB   LSB   DESCRIPTION</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_FLAG                                      0b01111110  </span><span class="comment">//  7     0     AX.25 frame start/end flag</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160; </div>
-<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">// address field</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_COMMAND_DEST                         0b10000000  </span><span class="comment">//  7     7     frame type: command (set in destination SSID)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_COMMAND_SOURCE                       0b00000000  </span><span class="comment">//  7     7                 command (set in source SSID)</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_RESPONSE_DEST                        0b00000000  </span><span class="comment">//  7     7                 response (set in destination SSID)</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_RESPONSE_SOURCE                      0b10000000  </span><span class="comment">//  7     7                 response (set in source SSID)</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HAS_NOT_BEEN_REPEATED                0b00000000  </span><span class="comment">//  7     7                 not repeated yet (set in repeater SSID)</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HAS_BEEN_REPEATED                    0b10000000  </span><span class="comment">//  7     7                 repeated (set in repeater SSID)</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_RESERVED_BITS                        0b01100000  </span><span class="comment">//  6     5     reserved bits in SSID</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HDLC_EXTENSION_CONTINUE              0b00000000  </span><span class="comment">//  0     0     HDLC extension bit: next octet contains more address information</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HDLC_EXTENSION_END                   0b00000001  </span><span class="comment">//  0     0                         address field end</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160; </div>
-<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="comment">// control field</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_SET_ASYNC_BAL_MODE              0b01101100  </span><span class="comment">//  7     2     U frame type: set asynchronous balanced mode (connect request)</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_SET_ASYNC_BAL_MODE_EXT          0b00101100  </span><span class="comment">//  7     2                   set asynchronous balanced mode extended (connect request with module 128)</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_DISCONNECT                      0b01000000  </span><span class="comment">//  7     2                   disconnect request</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_DISCONNECT_MODE                 0b00001100  </span><span class="comment">//  7     2                   disconnect mode (system busy or disconnected)</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_UNNUMBERED_ACK                  0b01100000  </span><span class="comment">//  7     2                   unnumbered acknowledge</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_FRAME_REJECT                    0b10000100  </span><span class="comment">//  7     2                   frame reject</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_UNNUMBERED_INFORMATION          0b00000000  </span><span class="comment">//  7     2                   unnumbered information</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_EXHANGE_IDENTIFICATION          0b10101100  </span><span class="comment">//  7     2                   exchange ID</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_TEST                            0b11100000  </span><span class="comment">//  7     2                   test</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_POLL_FINAL_ENABLED                0b00010000  </span><span class="comment">//  4     4     control field poll/final bit: enabled</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_POLL_FINAL_DISABLED               0b00000000  </span><span class="comment">//  4     4                                   disabled</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_RECEIVE_READY                   0b00000000  </span><span class="comment">//  3     2     S frame type: receive ready (system ready to receive)</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_RECEIVE_NOT_READY               0b00000100  </span><span class="comment">//  3     2                   receive not ready (TNC buffer full)</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_REJECT                          0b00001000  </span><span class="comment">//  3     2                   reject (out of sequence or duplicate)</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_SELECTIVE_REJECT                0b00001100  </span><span class="comment">//  3     2                   selective reject (single frame repeat request)</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_INFORMATION_FRAME                 0b00000000  </span><span class="comment">//  0     0     frame type: information (I frame)</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_SUPERVISORY_FRAME                 0b00000001  </span><span class="comment">//  1     0                 supervisory (S frame)</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_UNNUMBERED_FRAME                  0b00000011  </span><span class="comment">//  1     0                 unnumbered (U frame)</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160; </div>
-<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">// protocol identifier field</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ISO_8208                              0x01</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_TCP_IP_COMPRESSED                     0x06</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_TCP_IP_UNCOMPRESSED                   0x07</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_SEGMENTATION_FRAGMENT                 0x08</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_TEXNET_DATAGRAM_PROTOCOL              0xC3</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_LINK_QUALITY_PROTOCOL                 0xC4</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_APPLETALK                             0xCA</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_APPLETALK_ARP                         0xCB</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ARPA_INTERNET_PROTOCOL                0xCC</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ARPA_ADDRESS_RESOLUTION               0xCD</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_FLEXNET                               0xCE</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_NET_ROM                               0xCF</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_NO_LAYER_3                            0xF0</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ESCAPE_CHARACTER                      0xFF</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160; </div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html">   76</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_a_x25_frame.html">AX25Frame</a> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;  <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">   81</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>[RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1];</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &quot;../../utils/FEC.h&quot;</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160; </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">// maximum callsign length in bytes</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_MAX_CALLSIGN_LEN                          6</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">// flag field                                                                 MSB   LSB   DESCRIPTION</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_FLAG                                      0b01111110  </span><span class="comment">//  7     0     AX.25 frame start/end flag</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160; </div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">// address field</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_COMMAND_DEST                         0b10000000  </span><span class="comment">//  7     7     frame type: command (set in destination SSID)</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_COMMAND_SOURCE                       0b00000000  </span><span class="comment">//  7     7                 command (set in source SSID)</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_RESPONSE_DEST                        0b00000000  </span><span class="comment">//  7     7                 response (set in destination SSID)</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_RESPONSE_SOURCE                      0b10000000  </span><span class="comment">//  7     7                 response (set in source SSID)</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HAS_NOT_BEEN_REPEATED                0b00000000  </span><span class="comment">//  7     7                 not repeated yet (set in repeater SSID)</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HAS_BEEN_REPEATED                    0b10000000  </span><span class="comment">//  7     7                 repeated (set in repeater SSID)</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_RESERVED_BITS                        0b01100000  </span><span class="comment">//  6     5     reserved bits in SSID</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HDLC_EXTENSION_CONTINUE              0b00000000  </span><span class="comment">//  0     0     HDLC extension bit: next octet contains more address information</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_SSID_HDLC_EXTENSION_END                   0b00000001  </span><span class="comment">//  0     0                         address field end</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="comment">// control field</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_SET_ASYNC_BAL_MODE              0b01101100  </span><span class="comment">//  7     2     U frame type: set asynchronous balanced mode (connect request)</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_SET_ASYNC_BAL_MODE_EXT          0b00101100  </span><span class="comment">//  7     2                   set asynchronous balanced mode extended (connect request with module 128)</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_DISCONNECT                      0b01000000  </span><span class="comment">//  7     2                   disconnect request</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_DISCONNECT_MODE                 0b00001100  </span><span class="comment">//  7     2                   disconnect mode (system busy or disconnected)</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_UNNUMBERED_ACK                  0b01100000  </span><span class="comment">//  7     2                   unnumbered acknowledge</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_FRAME_REJECT                    0b10000100  </span><span class="comment">//  7     2                   frame reject</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_UNNUMBERED_INFORMATION          0b00000000  </span><span class="comment">//  7     2                   unnumbered information</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_EXHANGE_IDENTIFICATION          0b10101100  </span><span class="comment">//  7     2                   exchange ID</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_U_TEST                            0b11100000  </span><span class="comment">//  7     2                   test</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_POLL_FINAL_ENABLED                0b00010000  </span><span class="comment">//  4     4     control field poll/final bit: enabled</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_POLL_FINAL_DISABLED               0b00000000  </span><span class="comment">//  4     4                                   disabled</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_RECEIVE_READY                   0b00000000  </span><span class="comment">//  3     2     S frame type: receive ready (system ready to receive)</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_RECEIVE_NOT_READY               0b00000100  </span><span class="comment">//  3     2                   receive not ready (TNC buffer full)</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_REJECT                          0b00001000  </span><span class="comment">//  3     2                   reject (out of sequence or duplicate)</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_S_SELECTIVE_REJECT                0b00001100  </span><span class="comment">//  3     2                   selective reject (single frame repeat request)</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_INFORMATION_FRAME                 0b00000000  </span><span class="comment">//  0     0     frame type: information (I frame)</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_SUPERVISORY_FRAME                 0b00000001  </span><span class="comment">//  1     0                 supervisory (S frame)</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_CONTROL_UNNUMBERED_FRAME                  0b00000011  </span><span class="comment">//  1     0                 unnumbered (U frame)</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="comment">// protocol identifier field</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ISO_8208                              0x01</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_TCP_IP_COMPRESSED                     0x06</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_TCP_IP_UNCOMPRESSED                   0x07</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_SEGMENTATION_FRAGMENT                 0x08</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_TEXNET_DATAGRAM_PROTOCOL              0xC3</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_LINK_QUALITY_PROTOCOL                 0xC4</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_APPLETALK                             0xCA</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_APPLETALK_ARP                         0xCB</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ARPA_INTERNET_PROTOCOL                0xCC</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ARPA_ADDRESS_RESOLUTION               0xCD</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_FLEXNET                               0xCE</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_NET_ROM                               0xCF</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_NO_LAYER_3                            0xF0</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#define RADIOLIB_AX25_PID_ESCAPE_CHARACTER                      0xFF</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html">   71</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_a_x25_frame.html">AX25Frame</a> {</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;  <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">   76</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>[RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1];</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">   81</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>;</div>
 <div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
-<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">   86</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">   86</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>[RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1];</div>
 <div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160; </div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">   91</a></span>&#160;    <span class="keywordtype">char</span> <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>[RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1];</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">   91</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>;</div>
 <div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
-<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">   96</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">   96</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">numRepeaters</a>;</div>
 <div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
-<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">  101</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">numRepeaters</a>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">  101</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>;</div>
 <div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
-<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">  106</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">  106</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">protocolID</a>;</div>
 <div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160; </div>
-<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">  111</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">protocolID</a>;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">  111</a></span>&#160;    uint16_t <a class="code" href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">infoLen</a>;</div>
 <div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160; </div>
-<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">  116</a></span>&#160;    uint16_t <a class="code" href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">infoLen</a>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#adce5294af25f09df752997d33ac0e87f">  116</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#adce5294af25f09df752997d33ac0e87f">rcvSeqNumber</a>;</div>
 <div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160; </div>
-<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#adce5294af25f09df752997d33ac0e87f">  121</a></span>&#160;    uint8_t <a class="code" href="class_a_x25_frame.html#adce5294af25f09df752997d33ac0e87f">rcvSeqNumber</a>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a4c0fdf148d3b779d48441d45af87add2">  121</a></span>&#160;    uint16_t <a class="code" href="class_a_x25_frame.html#a4c0fdf148d3b779d48441d45af87add2">sendSeqNumber</a>;</div>
 <div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160; </div>
-<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a4c0fdf148d3b779d48441d45af87add2">  126</a></span>&#160;    uint16_t <a class="code" href="class_a_x25_frame.html#a4c0fdf148d3b779d48441d45af87add2">sendSeqNumber</a>;</div>
-<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160; </div>
-<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="preprocessor">    #if !RADIOLIB_STATIC_ONLY</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">  132</a></span>&#160;      uint8_t* <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;<span class="preprocessor">    #if !RADIOLIB_STATIC_ONLY</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">  127</a></span>&#160;      uint8_t* <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>;</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160; </div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">  132</a></span>&#160;      <span class="keywordtype">char</span>** <a class="code" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">repeaterCallsigns</a>;</div>
 <div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160; </div>
-<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">  137</a></span>&#160;      <span class="keywordtype">char</span>** <a class="code" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">repeaterCallsigns</a>;</div>
-<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
-<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">  142</a></span>&#160;      uint8_t* <a class="code" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">repeaterSSIDs</a>;</div>
-<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;<span class="preprocessor">    #else</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;      uint8_t <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>[RADIOLIB_STATIC_ARRAY_SIZE];</div>
+<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">  137</a></span>&#160;      uint8_t* <a class="code" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">repeaterSSIDs</a>;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="preprocessor">    #else</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;      uint8_t <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>[RADIOLIB_STATIC_ARRAY_SIZE];</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160; </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;      <span class="keywordtype">char</span> <a class="code" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">repeaterCallsigns</a>[8][RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1];</div>
 <div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
-<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;      <span class="keywordtype">char</span> <a class="code" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">repeaterCallsigns</a>[8][RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1];</div>
-<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
-<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;      uint8_t <a class="code" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">repeaterSSIDs</a>[8];</div>
-<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
-<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>);</div>
-<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
-<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>, uint8_t <a class="code" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">protocolID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>);</div>
-<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160; </div>
-<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>, uint8_t <a class="code" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">protocolID</a>, uint8_t* <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>, uint16_t <a class="code" href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">infoLen</a>);</div>
-<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160; </div>
-<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_frame.html">AX25Frame</a>&amp; frame);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;      uint8_t <a class="code" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">repeaterSSIDs</a>[8];</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160; </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>, uint8_t <a class="code" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">protocolID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>);</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160; </div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">destCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">destSSID</a>, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">srcCallsign</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">srcSSID</a>, uint8_t <a class="code" href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">control</a>, uint8_t <a class="code" href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">protocolID</a>, uint8_t* <a class="code" href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">info</a>, uint16_t <a class="code" href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">infoLen</a>);</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160; </div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <a class="code" href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_frame.html">AX25Frame</a>&amp; frame);</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160; </div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;    <a class="code" href="class_a_x25_frame.html#ab84a13f720ada37aee6201a560d9dc5a">~AX25Frame</a>();</div>
 <div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160; </div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;    <a class="code" href="class_a_x25_frame.html#ab84a13f720ada37aee6201a560d9dc5a">~AX25Frame</a>();</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160; </div>
-<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <a class="code" href="class_a_x25_frame.html">AX25Frame</a>&amp; <a class="code" href="class_a_x25_frame.html#a52e7e5f6f48c3e62544721d2a5e00640">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_frame.html">AX25Frame</a>&amp; frame);</div>
-<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160; </div>
-<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;    int16_t <a class="code" href="class_a_x25_frame.html#a7f2d9f4f1ba29d0fd9f9f3f2cf03f797">setRepeaters</a>(<span class="keywordtype">char</span>** <a class="code" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">repeaterCallsigns</a>, uint8_t* <a class="code" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">repeaterSSIDs</a>, uint8_t <a class="code" href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">numRepeaters</a>);</div>
-<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160; </div>
-<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_a_x25_frame.html#a4696a8eede8bac85f0ee6de6fee79ea8">setRecvSequence</a>(uint8_t seqNumber);</div>
-<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160; </div>
-<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_a_x25_frame.html#a026e9b96fa69018590fcf6842df8be70">setSendSequence</a>(uint8_t seqNumber);</div>
-<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;};</div>
-<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160; </div>
-<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="class_a_x25_client.html">  238</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_a_x25_client.html">AX25Client</a> {</div>
-<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  <span class="keyword">public</span>:</div>
-<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client</a>(<a class="code" href="class_physical_layer.html">PhysicalLayer</a>* phy);</div>
-<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160; </div>
-<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;<span class="preprocessor">    #if !RADIOLIB_EXCLUDE_AFSK</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client</a>(<a class="code" href="class_a_f_s_k_client.html">AFSKClient</a>* aud);</div>
-<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160; </div>
-<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    <a class="code" href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_client.html">AX25Client</a>&amp; ax25);</div>
-<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    </div>
-<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    <a class="code" href="class_a_x25_client.html">AX25Client</a>&amp; <a class="code" href="class_a_x25_client.html#aad6b806d6f8601ec04d6b11bcde37733">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_client.html">AX25Client</a>&amp; ax25);</div>
-<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160; </div>
-<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a74a43c60c84e4150b9508c83e461d24e">setCorrection</a>(int16_t mark, int16_t space, <span class="keywordtype">float</span> length = 1.0f);</div>
-<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160; </div>
-<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    <span class="comment">// basic methods</span></div>
-<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160; </div>
-<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#aadeefb210a0b5170d4e8d281c2257e73">begin</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* srcCallsign, uint8_t srcSSID = 0x00, uint8_t preLen = 8);</div>
-<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160; </div>
-<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="preprocessor">    #if defined(RADIOLIB_BUILD_ARDUINO)</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a985790943f3f3e06a2dfdd36977d0b98">transmit</a>(String&amp; str, <span class="keyword">const</span> <span class="keywordtype">char</span>* destCallsign, uint8_t destSSID = 0x00);</div>
-<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160; </div>
-<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a985790943f3f3e06a2dfdd36977d0b98">transmit</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* str, <span class="keyword">const</span> <span class="keywordtype">char</span>* destCallsign, uint8_t destSSID = 0x00);</div>
-<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160; </div>
-<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a341db993853c6817a8f6c7087ead0ba6">sendFrame</a>(<a class="code" href="class_a_x25_frame.html">AX25Frame</a>* frame);</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    <a class="code" href="class_a_x25_frame.html">AX25Frame</a>&amp; <a class="code" href="class_a_x25_frame.html#a52e7e5f6f48c3e62544721d2a5e00640">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_frame.html">AX25Frame</a>&amp; frame);</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160; </div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    int16_t <a class="code" href="class_a_x25_frame.html#a7f2d9f4f1ba29d0fd9f9f3f2cf03f797">setRepeaters</a>(<span class="keywordtype">char</span>** <a class="code" href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">repeaterCallsigns</a>, uint8_t* <a class="code" href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">repeaterSSIDs</a>, uint8_t <a class="code" href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">numRepeaters</a>);</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160; </div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_a_x25_frame.html#a4696a8eede8bac85f0ee6de6fee79ea8">setRecvSequence</a>(uint8_t seqNumber);</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="class_a_x25_frame.html#a026e9b96fa69018590fcf6842df8be70">setSendSequence</a>(uint8_t seqNumber);</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;};</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160; </div>
+<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="class_a_x25_client.html">  233</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_a_x25_client.html">AX25Client</a> {</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client</a>(<a class="code" href="class_physical_layer.html">PhysicalLayer</a>* phy);</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160; </div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;<span class="preprocessor">    #if !RADIOLIB_EXCLUDE_AFSK</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;    <span class="keyword">explicit</span> <a class="code" href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client</a>(<a class="code" href="class_a_f_s_k_client.html">AFSKClient</a>* aud);</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160; </div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    <a class="code" href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_client.html">AX25Client</a>&amp; ax25);</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    </div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    <a class="code" href="class_a_x25_client.html">AX25Client</a>&amp; <a class="code" href="class_a_x25_client.html#aad6b806d6f8601ec04d6b11bcde37733">operator=</a>(<span class="keyword">const</span> <a class="code" href="class_a_x25_client.html">AX25Client</a>&amp; ax25);</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160; </div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a74a43c60c84e4150b9508c83e461d24e">setCorrection</a>(int16_t mark, int16_t space, <span class="keywordtype">float</span> length = 1.0f);</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160; </div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    <span class="comment">// basic methods</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160; </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#aadeefb210a0b5170d4e8d281c2257e73">begin</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* srcCallsign, uint8_t srcSSID = 0x00, uint8_t preLen = 8);</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160; </div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="preprocessor">    #if defined(RADIOLIB_BUILD_ARDUINO)</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a985790943f3f3e06a2dfdd36977d0b98">transmit</a>(String&amp; str, <span class="keyword">const</span> <span class="keywordtype">char</span>* destCallsign, uint8_t destSSID = 0x00);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160; </div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a985790943f3f3e06a2dfdd36977d0b98">transmit</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* str, <span class="keyword">const</span> <span class="keywordtype">char</span>* destCallsign, uint8_t destSSID = 0x00);</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160; </div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    int16_t <a class="code" href="class_a_x25_client.html#a341db993853c6817a8f6c7087ead0ba6">sendFrame</a>(<a class="code" href="class_a_x25_frame.html">AX25Frame</a>* frame);</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160; </div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="preprocessor">#if !RADIOLIB_GODMODE</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;  <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="class_a_p_r_s_client.html">APRSClient</a>;</div>
 <div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160; </div>
-<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="preprocessor">#if !RADIOLIB_GODMODE</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;  <span class="keyword">private</span>:</div>
-<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="class_a_p_r_s_client.html">APRSClient</a>;</div>
-<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160; </div>
-<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    <a class="code" href="class_physical_layer.html">PhysicalLayer</a>* phyLayer;</div>
-<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;<span class="preprocessor">    #if !RADIOLIB_EXCLUDE_AFSK</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    <a class="code" href="class_a_f_s_k_client.html">AFSKClient</a>* audio;</div>
-<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    <a class="code" href="class_bell_client.html">BellClient</a>* bellModem;</div>
-<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;<span class="preprocessor">    #endif</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160; </div>
-<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <span class="keywordtype">char</span> sourceCallsign[RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1] = { 0 };</div>
-<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    uint8_t sourceSSID = 0;</div>
-<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;    uint16_t preambleLen = 0;</div>
-<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160; </div>
-<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    <span class="keywordtype">void</span> getCallsign(<span class="keywordtype">char</span>* buff);</div>
-<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    uint8_t getSSID();</div>
-<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;};</div>
-<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160; </div>
-<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;<span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160; </div>
-<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;    <a class="code" href="class_physical_layer.html">PhysicalLayer</a>* phyLayer;</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;<span class="preprocessor">    #if !RADIOLIB_EXCLUDE_AFSK</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    <a class="code" href="class_a_f_s_k_client.html">AFSKClient</a>* audio;</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;    <a class="code" href="class_bell_client.html">BellClient</a>* bellModem;</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;<span class="preprocessor">    #endif</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160; </div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;    <span class="keywordtype">char</span> sourceCallsign[RADIOLIB_AX25_MAX_CALLSIGN_LEN + 1] = { 0 };</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    uint8_t sourceSSID = 0;</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    uint16_t preambleLen = 0;</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160; </div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <span class="keywordtype">void</span> getCallsign(<span class="keywordtype">char</span>* buff);</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    uint8_t getSSID();</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;};</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160; </div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160; </div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="preprocessor">#endif</span></div>
 <div class="ttc" id="aclass_a_f_s_k_client_html"><div class="ttname"><a href="class_a_f_s_k_client.html">AFSKClient</a></div><div class="ttdoc">Client for audio-based transmissions. Requires Arduino tone() function, and a module capable of direc...</div><div class="ttdef"><b>Definition:</b> AFSK.h:16</div></div>
 <div class="ttc" id="aclass_a_p_r_s_client_html"><div class="ttname"><a href="class_a_p_r_s_client.html">APRSClient</a></div><div class="ttdoc">Client for APRS communication.</div><div class="ttdef"><b>Definition:</b> APRS.h:85</div></div>
-<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:238</div></div>
+<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:233</div></div>
 <div class="ttc" id="aclass_a_x25_client_html_a341db993853c6817a8f6c7087ead0ba6"><div class="ttname"><a href="class_a_x25_client.html#a341db993853c6817a8f6c7087ead0ba6">AX25Client::sendFrame</a></div><div class="ttdeci">int16_t sendFrame(AX25Frame *frame)</div><div class="ttdoc">Transmit arbitrary AX.25 frame.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:283</div></div>
 <div class="ttc" id="aclass_a_x25_client_html_a74a43c60c84e4150b9508c83e461d24e"><div class="ttname"><a href="class_a_x25_client.html#a74a43c60c84e4150b9508c83e461d24e">AX25Client::setCorrection</a></div><div class="ttdeci">int16_t setCorrection(int16_t mark, int16_t space, float length=1.0f)</div><div class="ttdoc">Set AFSK tone correction offset. On some platforms, this is required to get the audio produced by the...</div><div class="ttdef"><b>Definition:</b> AX25.cpp:232</div></div>
 <div class="ttc" id="aclass_a_x25_client_html_a985790943f3f3e06a2dfdd36977d0b98"><div class="ttname"><a href="class_a_x25_client.html#a985790943f3f3e06a2dfdd36977d0b98">AX25Client::transmit</a></div><div class="ttdeci">int16_t transmit(const char *str, const char *destCallsign, uint8_t destSSID=0x00)</div><div class="ttdoc">Transmit unnumbered information (UI) frame.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:270</div></div>
 <div class="ttc" id="aclass_a_x25_client_html_aad6b806d6f8601ec04d6b11bcde37733"><div class="ttname"><a href="class_a_x25_client.html#aad6b806d6f8601ec04d6b11bcde37733">AX25Client::operator=</a></div><div class="ttdeci">AX25Client &amp; operator=(const AX25Client &amp;ax25)</div><div class="ttdoc">Overload for assignment operator.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:216</div></div>
 <div class="ttc" id="aclass_a_x25_client_html_aadeefb210a0b5170d4e8d281c2257e73"><div class="ttname"><a href="class_a_x25_client.html#aadeefb210a0b5170d4e8d281c2257e73">AX25Client::begin</a></div><div class="ttdeci">int16_t begin(const char *srcCallsign, uint8_t srcSSID=0x00, uint8_t preLen=8)</div><div class="ttdoc">Initialization method.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:244</div></div>
 <div class="ttc" id="aclass_a_x25_client_html_ab074563d4d22a42d5ea9ad1693d6f373"><div class="ttname"><a href="class_a_x25_client.html#ab074563d4d22a42d5ea9ad1693d6f373">AX25Client::AX25Client</a></div><div class="ttdeci">AX25Client(PhysicalLayer *phy)</div><div class="ttdoc">Constructor for 2-FSK mode.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:187</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html"><div class="ttname"><a href="class_a_x25_frame.html">AX25Frame</a></div><div class="ttdoc">Abstraction of AX.25 frame format.</div><div class="ttdef"><b>Definition:</b> AX25.h:76</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html"><div class="ttname"><a href="class_a_x25_frame.html">AX25Frame</a></div><div class="ttdoc">Abstraction of AX.25 frame format.</div><div class="ttdef"><b>Definition:</b> AX25.h:71</div></div>
 <div class="ttc" id="aclass_a_x25_frame_html_a026e9b96fa69018590fcf6842df8be70"><div class="ttname"><a href="class_a_x25_frame.html#a026e9b96fa69018590fcf6842df8be70">AX25Frame::setSendSequence</a></div><div class="ttdeci">void setSendSequence(uint8_t seqNumber)</div><div class="ttdoc">Method to set send sequence number.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:183</div></div>
 <div class="ttc" id="aclass_a_x25_frame_html_a138d97d90a371bef7ebd86cce1cc4979"><div class="ttname"><a href="class_a_x25_frame.html#a138d97d90a371bef7ebd86cce1cc4979">AX25Frame::AX25Frame</a></div><div class="ttdeci">AX25Frame(const char *destCallsign, uint8_t destSSID, const char *srcCallsign, uint8_t srcSSID, uint8_t control)</div><div class="ttdoc">Overloaded constructor, for frames without info field.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:5</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a29eb08c9e72bbaced8d37dcb2343ee94"><div class="ttname"><a href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">AX25Frame::repeaterCallsigns</a></div><div class="ttdeci">char ** repeaterCallsigns</div><div class="ttdoc">Array of repeater callsigns.</div><div class="ttdef"><b>Definition:</b> AX25.h:137</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a38f7fb6a4a6344b5892c3a3cdf26c585"><div class="ttname"><a href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">AX25Frame::srcCallsign</a></div><div class="ttdeci">char srcCallsign[RADIOLIB_AX25_MAX_CALLSIGN_LEN+1]</div><div class="ttdoc">Callsign of the source station.</div><div class="ttdef"><b>Definition:</b> AX25.h:91</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a29eb08c9e72bbaced8d37dcb2343ee94"><div class="ttname"><a href="class_a_x25_frame.html#a29eb08c9e72bbaced8d37dcb2343ee94">AX25Frame::repeaterCallsigns</a></div><div class="ttdeci">char ** repeaterCallsigns</div><div class="ttdoc">Array of repeater callsigns.</div><div class="ttdef"><b>Definition:</b> AX25.h:132</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a38f7fb6a4a6344b5892c3a3cdf26c585"><div class="ttname"><a href="class_a_x25_frame.html#a38f7fb6a4a6344b5892c3a3cdf26c585">AX25Frame::srcCallsign</a></div><div class="ttdeci">char srcCallsign[RADIOLIB_AX25_MAX_CALLSIGN_LEN+1]</div><div class="ttdoc">Callsign of the source station.</div><div class="ttdef"><b>Definition:</b> AX25.h:86</div></div>
 <div class="ttc" id="aclass_a_x25_frame_html_a4696a8eede8bac85f0ee6de6fee79ea8"><div class="ttname"><a href="class_a_x25_frame.html#a4696a8eede8bac85f0ee6de6fee79ea8">AX25Frame::setRecvSequence</a></div><div class="ttdeci">void setRecvSequence(uint8_t seqNumber)</div><div class="ttdoc">Method to set receive sequence number.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:179</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a4c0fdf148d3b779d48441d45af87add2"><div class="ttname"><a href="class_a_x25_frame.html#a4c0fdf148d3b779d48441d45af87add2">AX25Frame::sendSeqNumber</a></div><div class="ttdeci">uint16_t sendSeqNumber</div><div class="ttdoc">Send sequence number.</div><div class="ttdef"><b>Definition:</b> AX25.h:126</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a50c63276facf8126f0f8555b1fc6b2c9"><div class="ttname"><a href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">AX25Frame::srcSSID</a></div><div class="ttdeci">uint8_t srcSSID</div><div class="ttdoc">SSID of the source station.</div><div class="ttdef"><b>Definition:</b> AX25.h:96</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a4c0fdf148d3b779d48441d45af87add2"><div class="ttname"><a href="class_a_x25_frame.html#a4c0fdf148d3b779d48441d45af87add2">AX25Frame::sendSeqNumber</a></div><div class="ttdeci">uint16_t sendSeqNumber</div><div class="ttdoc">Send sequence number.</div><div class="ttdef"><b>Definition:</b> AX25.h:121</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a50c63276facf8126f0f8555b1fc6b2c9"><div class="ttname"><a href="class_a_x25_frame.html#a50c63276facf8126f0f8555b1fc6b2c9">AX25Frame::srcSSID</a></div><div class="ttdeci">uint8_t srcSSID</div><div class="ttdoc">SSID of the source station.</div><div class="ttdef"><b>Definition:</b> AX25.h:91</div></div>
 <div class="ttc" id="aclass_a_x25_frame_html_a52e7e5f6f48c3e62544721d2a5e00640"><div class="ttname"><a href="class_a_x25_frame.html#a52e7e5f6f48c3e62544721d2a5e00640">AX25Frame::operator=</a></div><div class="ttdeci">AX25Frame &amp; operator=(const AX25Frame &amp;frame)</div><div class="ttdoc">Overload for assignment operator.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:108</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a5b196079b539dc417ca65dd4ad622f8f"><div class="ttname"><a href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">AX25Frame::control</a></div><div class="ttdeci">uint8_t control</div><div class="ttdoc">The control field.</div><div class="ttdef"><b>Definition:</b> AX25.h:106</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a5b63c6b6f69e0ac47ba9230ad39c6830"><div class="ttname"><a href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">AX25Frame::repeaterSSIDs</a></div><div class="ttdeci">uint8_t * repeaterSSIDs</div><div class="ttdoc">Array of repeater SSIDs.</div><div class="ttdef"><b>Definition:</b> AX25.h:142</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a75e8ad33c2540ede5bb130050f6ffc41"><div class="ttname"><a href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">AX25Frame::infoLen</a></div><div class="ttdeci">uint16_t infoLen</div><div class="ttdoc">Number of bytes in the information field.</div><div class="ttdef"><b>Definition:</b> AX25.h:116</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a5b196079b539dc417ca65dd4ad622f8f"><div class="ttname"><a href="class_a_x25_frame.html#a5b196079b539dc417ca65dd4ad622f8f">AX25Frame::control</a></div><div class="ttdeci">uint8_t control</div><div class="ttdoc">The control field.</div><div class="ttdef"><b>Definition:</b> AX25.h:101</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a5b63c6b6f69e0ac47ba9230ad39c6830"><div class="ttname"><a href="class_a_x25_frame.html#a5b63c6b6f69e0ac47ba9230ad39c6830">AX25Frame::repeaterSSIDs</a></div><div class="ttdeci">uint8_t * repeaterSSIDs</div><div class="ttdoc">Array of repeater SSIDs.</div><div class="ttdef"><b>Definition:</b> AX25.h:137</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a75e8ad33c2540ede5bb130050f6ffc41"><div class="ttname"><a href="class_a_x25_frame.html#a75e8ad33c2540ede5bb130050f6ffc41">AX25Frame::infoLen</a></div><div class="ttdeci">uint16_t infoLen</div><div class="ttdoc">Number of bytes in the information field.</div><div class="ttdef"><b>Definition:</b> AX25.h:111</div></div>
 <div class="ttc" id="aclass_a_x25_frame_html_a7f2d9f4f1ba29d0fd9f9f3f2cf03f797"><div class="ttname"><a href="class_a_x25_frame.html#a7f2d9f4f1ba29d0fd9f9f3f2cf03f797">AX25Frame::setRepeaters</a></div><div class="ttdeci">int16_t setRepeaters(char **repeaterCallsigns, uint8_t *repeaterSSIDs, uint8_t numRepeaters)</div><div class="ttdoc">Method to set the repeater callsigns and SSIDs.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:143</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_a7fe9805148e2dd46d163cd989473dbff"><div class="ttname"><a href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">AX25Frame::destCallsign</a></div><div class="ttdeci">char destCallsign[RADIOLIB_AX25_MAX_CALLSIGN_LEN+1]</div><div class="ttdoc">Callsign of the destination station.</div><div class="ttdef"><b>Definition:</b> AX25.h:81</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_aa82f006b84b71b9c5d036a4946a65988"><div class="ttname"><a href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">AX25Frame::info</a></div><div class="ttdeci">uint8_t * info</div><div class="ttdoc">The info field.</div><div class="ttdef"><b>Definition:</b> AX25.h:132</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_aa8895fea37220c82f68bd320331595c8"><div class="ttname"><a href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">AX25Frame::protocolID</a></div><div class="ttdeci">uint8_t protocolID</div><div class="ttdoc">The protocol identifier (PID) field.</div><div class="ttdef"><b>Definition:</b> AX25.h:111</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_a7fe9805148e2dd46d163cd989473dbff"><div class="ttname"><a href="class_a_x25_frame.html#a7fe9805148e2dd46d163cd989473dbff">AX25Frame::destCallsign</a></div><div class="ttdeci">char destCallsign[RADIOLIB_AX25_MAX_CALLSIGN_LEN+1]</div><div class="ttdoc">Callsign of the destination station.</div><div class="ttdef"><b>Definition:</b> AX25.h:76</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_aa82f006b84b71b9c5d036a4946a65988"><div class="ttname"><a href="class_a_x25_frame.html#aa82f006b84b71b9c5d036a4946a65988">AX25Frame::info</a></div><div class="ttdeci">uint8_t * info</div><div class="ttdoc">The info field.</div><div class="ttdef"><b>Definition:</b> AX25.h:127</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_aa8895fea37220c82f68bd320331595c8"><div class="ttname"><a href="class_a_x25_frame.html#aa8895fea37220c82f68bd320331595c8">AX25Frame::protocolID</a></div><div class="ttdeci">uint8_t protocolID</div><div class="ttdoc">The protocol identifier (PID) field.</div><div class="ttdef"><b>Definition:</b> AX25.h:106</div></div>
 <div class="ttc" id="aclass_a_x25_frame_html_ab84a13f720ada37aee6201a560d9dc5a"><div class="ttname"><a href="class_a_x25_frame.html#ab84a13f720ada37aee6201a560d9dc5a">AX25Frame::~AX25Frame</a></div><div class="ttdeci">~AX25Frame()</div><div class="ttdoc">Default destructor.</div><div class="ttdef"><b>Definition:</b> AX25.cpp:90</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_ad27453a838ba90f917a1a9853358bb9a"><div class="ttname"><a href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">AX25Frame::numRepeaters</a></div><div class="ttdeci">uint8_t numRepeaters</div><div class="ttdoc">Number of repeaters to be used.</div><div class="ttdef"><b>Definition:</b> AX25.h:101</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_adce5294af25f09df752997d33ac0e87f"><div class="ttname"><a href="class_a_x25_frame.html#adce5294af25f09df752997d33ac0e87f">AX25Frame::rcvSeqNumber</a></div><div class="ttdeci">uint8_t rcvSeqNumber</div><div class="ttdoc">Receive sequence number.</div><div class="ttdef"><b>Definition:</b> AX25.h:121</div></div>
-<div class="ttc" id="aclass_a_x25_frame_html_af62935e56dc24bca5d2e2aeb932b63f8"><div class="ttname"><a href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">AX25Frame::destSSID</a></div><div class="ttdeci">uint8_t destSSID</div><div class="ttdoc">SSID of the destination station.</div><div class="ttdef"><b>Definition:</b> AX25.h:86</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_ad27453a838ba90f917a1a9853358bb9a"><div class="ttname"><a href="class_a_x25_frame.html#ad27453a838ba90f917a1a9853358bb9a">AX25Frame::numRepeaters</a></div><div class="ttdeci">uint8_t numRepeaters</div><div class="ttdoc">Number of repeaters to be used.</div><div class="ttdef"><b>Definition:</b> AX25.h:96</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_adce5294af25f09df752997d33ac0e87f"><div class="ttname"><a href="class_a_x25_frame.html#adce5294af25f09df752997d33ac0e87f">AX25Frame::rcvSeqNumber</a></div><div class="ttdeci">uint8_t rcvSeqNumber</div><div class="ttdoc">Receive sequence number.</div><div class="ttdef"><b>Definition:</b> AX25.h:116</div></div>
+<div class="ttc" id="aclass_a_x25_frame_html_af62935e56dc24bca5d2e2aeb932b63f8"><div class="ttname"><a href="class_a_x25_frame.html#af62935e56dc24bca5d2e2aeb932b63f8">AX25Frame::destSSID</a></div><div class="ttdeci">uint8_t destSSID</div><div class="ttdoc">SSID of the destination station.</div><div class="ttdef"><b>Definition:</b> AX25.h:81</div></div>
 <div class="ttc" id="aclass_bell_client_html"><div class="ttname"><a href="class_bell_client.html">BellClient</a></div><div class="ttdoc">Client for Bell modem communication. The public interface is the same as Arduino Serial.</div><div class="ttdef"><b>Definition:</b> BellModem.h:57</div></div>
 <div class="ttc" id="aclass_physical_layer_html"><div class="ttname"><a href="class_physical_layer.html">PhysicalLayer</a></div><div class="ttdoc">Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....</div><div class="ttdef"><b>Definition:</b> PhysicalLayer.h:54</div></div>
 </div><!-- fragment --></div><!-- contents -->
diff --git a/_f_e_c_8h_source.html b/_f_e_c_8h_source.html
index 4dd41fed..b4d7ac74 100644
--- a/_f_e_c_8h_source.html
+++ b/_f_e_c_8h_source.html
@@ -135,7 +135,14 @@ $(document).ready(function(){initNavTree('_f_e_c_8h_source.html',''); initResiza
 <div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">// the global singleton</span></div>
 <div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="keyword">extern</span> <a class="code" href="class_radio_lib_b_c_h.html">RadioLibBCH</a> RadioLibBCHInstance;</div>
 <div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160; </div>
-<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">// macros to access bits in byte array, from http://www.mathcs.emory.edu/~cheung/Courses/255/Syllabus/1-C-intro/bit-array.html</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="preprocessor">#define SET_BIT_IN_ARRAY(A, k)                                  ( A[(k/8)] |= (1 &lt;&lt; (k%8)) )</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="preprocessor">#define CLEAR_BIT_IN_ARRAY(A, k)                                ( A[(k/8)] &amp;= ~(1 &lt;&lt; (k%8)) )</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="preprocessor">#define TEST_BIT_IN_ARRAY(A, k)                                 ( A[(k/8)] &amp; (1 &lt;&lt; (k%8)) )</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;<span class="preprocessor">#define GET_BIT_IN_ARRAY(A, k)                                  ( (A[(k/8)] &amp; (1 &lt;&lt; (k%8))) ? 1 : 0 )</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160; </div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160; </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="preprocessor">#endif</span></div>
 <div class="ttc" id="aclass_radio_lib_b_c_h_html"><div class="ttname"><a href="class_radio_lib_b_c_h.html">RadioLibBCH</a></div><div class="ttdoc">Class to calculate Bose–Chaudhuri–Hocquenghem (BCH) class of forward error correction codes....</div><div class="ttdef"><b>Definition:</b> FEC.h:26</div></div>
 <div class="ttc" id="aclass_radio_lib_b_c_h_html_a39d55c0292e4c9337ee0672cd5241118"><div class="ttname"><a href="class_radio_lib_b_c_h.html#a39d55c0292e4c9337ee0672cd5241118">RadioLibBCH::RadioLibBCH</a></div><div class="ttdeci">RadioLibBCH()</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition:</b> FEC.cpp:4</div></div>
 <div class="ttc" id="aclass_radio_lib_b_c_h_html_aba6f10d4ac2d40eb2222d1081a34c88b"><div class="ttname"><a href="class_radio_lib_b_c_h.html#aba6f10d4ac2d40eb2222d1081a34c88b">RadioLibBCH::begin</a></div><div class="ttdeci">void begin(uint8_t n, uint8_t k, uint32_t poly)</div><div class="ttdoc">Initialization method.</div><div class="ttdef"><b>Definition:</b> FEC.cpp:21</div></div>
diff --git a/_physical_layer_8h_source.html b/_physical_layer_8h_source.html
index 5d352a28..ad91f44f 100644
--- a/_physical_layer_8h_source.html
+++ b/_physical_layer_8h_source.html
@@ -302,7 +302,7 @@ $(document).ready(function(){initNavTree('_physical_layer_8h_source.html',''); i
 <div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160; </div>
 <div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor">#endif</span></div>
 <div class="ttc" id="aclass_a_f_s_k_client_html"><div class="ttname"><a href="class_a_f_s_k_client.html">AFSKClient</a></div><div class="ttdoc">Client for audio-based transmissions. Requires Arduino tone() function, and a module capable of direc...</div><div class="ttdef"><b>Definition:</b> AFSK.h:16</div></div>
-<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:238</div></div>
+<div class="ttc" id="aclass_a_x25_client_html"><div class="ttname"><a href="class_a_x25_client.html">AX25Client</a></div><div class="ttdoc">Client for AX25 communication.</div><div class="ttdef"><b>Definition:</b> AX25.h:233</div></div>
 <div class="ttc" id="aclass_bell_client_html"><div class="ttname"><a href="class_bell_client.html">BellClient</a></div><div class="ttdoc">Client for Bell modem communication. The public interface is the same as Arduino Serial.</div><div class="ttdef"><b>Definition:</b> BellModem.h:57</div></div>
 <div class="ttc" id="aclass_f_s_k4_client_html"><div class="ttname"><a href="class_f_s_k4_client.html">FSK4Client</a></div><div class="ttdoc">Client for FSK-4 communication. The public interface is the same as Arduino Serial.</div><div class="ttdef"><b>Definition:</b> FSK4.h:15</div></div>
 <div class="ttc" id="aclass_hell_client_html"><div class="ttname"><a href="class_hell_client.html">HellClient</a></div><div class="ttdoc">Client for Hellschreiber transmissions.</div><div class="ttdef"><b>Definition:</b> Hellschreiber.h:90</div></div>