RadioLibSmol/classn_r_f24.html
2021-07-18 08:20:46 +00:00

1645 lines
96 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>RadioLib: nRF24 Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">RadioLib
</div>
<div id="projectbrief">Universal wireless communication library for Arduino</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classn_r_f24.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classn_r_f24-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">nRF24 Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Control class for nRF24 module.
<a href="classn_r_f24.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="n_r_f24_8h_source.html">nRF24.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for nRF24:</div>
<div class="dyncontent">
<div class="center">
<img src="classn_r_f24.png" usemap="#nRF24_map" alt=""/>
<map id="nRF24_map" name="nRF24_map">
<area href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN...." alt="PhysicalLayer" shape="rect" coords="0,0,93,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab12de8d953c2384c5fff09b4abf65d1e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ab12de8d953c2384c5fff09b4abf65d1e">nRF24</a> (<a class="el" href="class_module.html">Module</a> *mod)</td></tr>
<tr class="memdesc:ab12de8d953c2384c5fff09b4abf65d1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <a href="classn_r_f24.html#ab12de8d953c2384c5fff09b4abf65d1e">More...</a><br /></td></tr>
<tr class="separator:ab12de8d953c2384c5fff09b4abf65d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60eb59262c5004b587b1d8177706ff28"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a60eb59262c5004b587b1d8177706ff28">begin</a> (int16_t freq=2400, int16_t dataRate=1000, int8_t power=-12, uint8_t addrWidth=5)</td></tr>
<tr class="memdesc:a60eb59262c5004b587b1d8177706ff28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialization method. <a href="classn_r_f24.html#a60eb59262c5004b587b1d8177706ff28">More...</a><br /></td></tr>
<tr class="separator:a60eb59262c5004b587b1d8177706ff28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a033287e33c532638c11e2775a073f297"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a033287e33c532638c11e2775a073f297">sleep</a> ()</td></tr>
<tr class="memdesc:a033287e33c532638c11e2775a073f297"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the module to sleep mode. <a href="classn_r_f24.html#a033287e33c532638c11e2775a073f297">More...</a><br /></td></tr>
<tr class="separator:a033287e33c532638c11e2775a073f297"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5957f06a891d3d9c07e87b59c239ce56"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a5957f06a891d3d9c07e87b59c239ce56">standby</a> () override</td></tr>
<tr class="memdesc:a5957f06a891d3d9c07e87b59c239ce56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the module to standby mode. <a href="classn_r_f24.html#a5957f06a891d3d9c07e87b59c239ce56">More...</a><br /></td></tr>
<tr class="separator:a5957f06a891d3d9c07e87b59c239ce56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a583d505bd3a638ecc5576dd2dd95f044"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a583d505bd3a638ecc5576dd2dd95f044">transmit</a> (uint8_t *data, size_t len, uint8_t addr) override</td></tr>
<tr class="memdesc:a583d505bd3a638ecc5576dd2dd95f044"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blocking binary transmit method. Overloads for string-based transmissions are implemented in <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a>. <a href="classn_r_f24.html#a583d505bd3a638ecc5576dd2dd95f044">More...</a><br /></td></tr>
<tr class="separator:a583d505bd3a638ecc5576dd2dd95f044"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a239e94511d9ee67ad3d64a49a5c4d7ac"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a239e94511d9ee67ad3d64a49a5c4d7ac">receive</a> (uint8_t *data, size_t len) override</td></tr>
<tr class="memdesc:a239e94511d9ee67ad3d64a49a5c4d7ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blocking binary receive method. Overloads for string-based transmissions are implemented in <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a>. <a href="classn_r_f24.html#a239e94511d9ee67ad3d64a49a5c4d7ac">More...</a><br /></td></tr>
<tr class="separator:a239e94511d9ee67ad3d64a49a5c4d7ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a090bb64f65309efabfa1ffd86daa2303"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a090bb64f65309efabfa1ffd86daa2303">transmitDirect</a> (uint32_t frf=0) override</td></tr>
<tr class="memdesc:a090bb64f65309efabfa1ffd86daa2303"><td class="mdescLeft">&#160;</td><td class="mdescRight">Starts direct mode transmission. <a href="classn_r_f24.html#a090bb64f65309efabfa1ffd86daa2303">More...</a><br /></td></tr>
<tr class="separator:a090bb64f65309efabfa1ffd86daa2303"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a415d86947742e981bfcf7f2371f8605c"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a415d86947742e981bfcf7f2371f8605c">receiveDirect</a> () override</td></tr>
<tr class="memdesc:a415d86947742e981bfcf7f2371f8605c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy direct mode reception method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a415d86947742e981bfcf7f2371f8605c">More...</a><br /></td></tr>
<tr class="separator:a415d86947742e981bfcf7f2371f8605c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf9323748b1a850e6ddc6f6d48f4cfb3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#abf9323748b1a850e6ddc6f6d48f4cfb3">setIrqAction</a> (void(*func)(void))</td></tr>
<tr class="memdesc:abf9323748b1a850e6ddc6f6d48f4cfb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets interrupt service routine to call when IRQ activates. <a href="classn_r_f24.html#abf9323748b1a850e6ddc6f6d48f4cfb3">More...</a><br /></td></tr>
<tr class="separator:abf9323748b1a850e6ddc6f6d48f4cfb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42fdc828b49f2b8e15457189bd57d917"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a42fdc828b49f2b8e15457189bd57d917">startTransmit</a> (uint8_t *data, size_t len, uint8_t addr) override</td></tr>
<tr class="memdesc:a42fdc828b49f2b8e15457189bd57d917"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven binary transmit method. IRQ will be activated when full packet is transmitted. Overloads for string-based transmissions are implemented in <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a>. <a href="classn_r_f24.html#a42fdc828b49f2b8e15457189bd57d917">More...</a><br /></td></tr>
<tr class="separator:a42fdc828b49f2b8e15457189bd57d917"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4f443da5d90e032e5f2f65420515f9c"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#af4f443da5d90e032e5f2f65420515f9c">startReceive</a> ()</td></tr>
<tr class="memdesc:af4f443da5d90e032e5f2f65420515f9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven receive method. IRQ will be activated when full packet is received. <a href="classn_r_f24.html#af4f443da5d90e032e5f2f65420515f9c">More...</a><br /></td></tr>
<tr class="separator:af4f443da5d90e032e5f2f65420515f9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a410fb78acb4ed358818c132687b8857a"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a410fb78acb4ed358818c132687b8857a">readData</a> (uint8_t *data, size_t len) override</td></tr>
<tr class="memdesc:a410fb78acb4ed358818c132687b8857a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data received after calling startReceive method. <a href="classn_r_f24.html#a410fb78acb4ed358818c132687b8857a">More...</a><br /></td></tr>
<tr class="separator:a410fb78acb4ed358818c132687b8857a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abec5f9dba44a019e23c8bf516f104fad"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#abec5f9dba44a019e23c8bf516f104fad">setFrequency</a> (int16_t freq)</td></tr>
<tr class="memdesc:abec5f9dba44a019e23c8bf516f104fad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets carrier frequency. Allowed values range from 2400 MHz to 2525 MHz. <a href="classn_r_f24.html#abec5f9dba44a019e23c8bf516f104fad">More...</a><br /></td></tr>
<tr class="separator:abec5f9dba44a019e23c8bf516f104fad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f3ec2196733a2e2476f50690967f285"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a1f3ec2196733a2e2476f50690967f285">setDataRate</a> (int16_t dataRate)</td></tr>
<tr class="memdesc:a1f3ec2196733a2e2476f50690967f285"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets data rate. Allowed values are 2000, 1000 or 250 kbps. <a href="classn_r_f24.html#a1f3ec2196733a2e2476f50690967f285">More...</a><br /></td></tr>
<tr class="separator:a1f3ec2196733a2e2476f50690967f285"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a824453d547c0b42ac1988acb42032ca4"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a824453d547c0b42ac1988acb42032ca4">setOutputPower</a> (int8_t power)</td></tr>
<tr class="memdesc:a824453d547c0b42ac1988acb42032ca4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets output power. Allowed values are -18, -12, -6 or 0 dBm. <a href="classn_r_f24.html#a824453d547c0b42ac1988acb42032ca4">More...</a><br /></td></tr>
<tr class="separator:a824453d547c0b42ac1988acb42032ca4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b01677f5ce6bee54da8fc7098c339f4"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a5b01677f5ce6bee54da8fc7098c339f4">setAddressWidth</a> (uint8_t addrWidth)</td></tr>
<tr class="memdesc:a5b01677f5ce6bee54da8fc7098c339f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets address width of transmit and receive pipes in bytes. Allowed values are 3, 4 or 5 bytes. <a href="classn_r_f24.html#a5b01677f5ce6bee54da8fc7098c339f4">More...</a><br /></td></tr>
<tr class="separator:a5b01677f5ce6bee54da8fc7098c339f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0e1f2dddf810213410a420205bbd8af"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#aa0e1f2dddf810213410a420205bbd8af">setTransmitPipe</a> (uint8_t *addr)</td></tr>
<tr class="memdesc:aa0e1f2dddf810213410a420205bbd8af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets address of transmit pipe. The address width must be the same as the same as the configured in setAddressWidth. <a href="classn_r_f24.html#aa0e1f2dddf810213410a420205bbd8af">More...</a><br /></td></tr>
<tr class="separator:aa0e1f2dddf810213410a420205bbd8af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31bcc5a8c3747bf08a273dbdadc5481a"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a31bcc5a8c3747bf08a273dbdadc5481a">setReceivePipe</a> (uint8_t pipeNum, uint8_t *addr)</td></tr>
<tr class="memdesc:a31bcc5a8c3747bf08a273dbdadc5481a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets address of receive pipes 0 or 1. The address width must be the same as the same as the configured in setAddressWidth. <a href="classn_r_f24.html#a31bcc5a8c3747bf08a273dbdadc5481a">More...</a><br /></td></tr>
<tr class="separator:a31bcc5a8c3747bf08a273dbdadc5481a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5bc08aef88d8cf41c38369044005da8"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ab5bc08aef88d8cf41c38369044005da8">setReceivePipe</a> (uint8_t pipeNum, uint8_t addrByte)</td></tr>
<tr class="memdesc:ab5bc08aef88d8cf41c38369044005da8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets address of receive pipes 2 - 5. The first 2 - 4 address bytes for these pipes are the same as for address pipe 1, only the last byte can be set. <a href="classn_r_f24.html#ab5bc08aef88d8cf41c38369044005da8">More...</a><br /></td></tr>
<tr class="separator:ab5bc08aef88d8cf41c38369044005da8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dd39e5c0efee1f0c2a14f729eb4426a"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a4dd39e5c0efee1f0c2a14f729eb4426a">disablePipe</a> (uint8_t pipeNum)</td></tr>
<tr class="memdesc:a4dd39e5c0efee1f0c2a14f729eb4426a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables specified receive pipe. <a href="classn_r_f24.html#a4dd39e5c0efee1f0c2a14f729eb4426a">More...</a><br /></td></tr>
<tr class="separator:a4dd39e5c0efee1f0c2a14f729eb4426a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f0b08fd8e58db36f6c1926cc3eac6a9"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a3f0b08fd8e58db36f6c1926cc3eac6a9">getStatus</a> (uint8_t mask=0xFF)</td></tr>
<tr class="memdesc:a3f0b08fd8e58db36f6c1926cc3eac6a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets <a class="el" href="classn_r_f24.html" title="Control class for nRF24 module.">nRF24</a> status register. <a href="classn_r_f24.html#a3f0b08fd8e58db36f6c1926cc3eac6a9">More...</a><br /></td></tr>
<tr class="separator:a3f0b08fd8e58db36f6c1926cc3eac6a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9204ee787b425e2c9e8422bb7939a37"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ad9204ee787b425e2c9e8422bb7939a37">isCarrierDetected</a> ()</td></tr>
<tr class="memdesc:ad9204ee787b425e2c9e8422bb7939a37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if carrier was detected during last RX. <a href="classn_r_f24.html#ad9204ee787b425e2c9e8422bb7939a37">More...</a><br /></td></tr>
<tr class="separator:ad9204ee787b425e2c9e8422bb7939a37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5170284f0a5535de7d00216d450b87a4"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a5170284f0a5535de7d00216d450b87a4">setFrequencyDeviation</a> (float freqDev) override</td></tr>
<tr class="memdesc:a5170284f0a5535de7d00216d450b87a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy configuration method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a5170284f0a5535de7d00216d450b87a4">More...</a><br /></td></tr>
<tr class="separator:a5170284f0a5535de7d00216d450b87a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23ea1749c21863ebc5bd3a2b08d64f3b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a23ea1749c21863ebc5bd3a2b08d64f3b">getPacketLength</a> (bool update=true) override</td></tr>
<tr class="memdesc:a23ea1749c21863ebc5bd3a2b08d64f3b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query modem for the packet length of received payload. <a href="classn_r_f24.html#a23ea1749c21863ebc5bd3a2b08d64f3b">More...</a><br /></td></tr>
<tr class="separator:a23ea1749c21863ebc5bd3a2b08d64f3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3eb45884a5730ac1c339c7ba4f7b5282"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a3eb45884a5730ac1c339c7ba4f7b5282">setCrcFiltering</a> (bool crcOn=true)</td></tr>
<tr class="memdesc:a3eb45884a5730ac1c339c7ba4f7b5282"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable CRC filtering and generation. <a href="classn_r_f24.html#a3eb45884a5730ac1c339c7ba4f7b5282">More...</a><br /></td></tr>
<tr class="separator:a3eb45884a5730ac1c339c7ba4f7b5282"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca941c9235ba1212257288554eb4b7fe"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#aca941c9235ba1212257288554eb4b7fe">setAutoAck</a> (bool autoAckOn=true)</td></tr>
<tr class="memdesc:aca941c9235ba1212257288554eb4b7fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable auto-acknowledge packets on all pipes. <a href="classn_r_f24.html#aca941c9235ba1212257288554eb4b7fe">More...</a><br /></td></tr>
<tr class="separator:aca941c9235ba1212257288554eb4b7fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1c3419442d93abeede39e7fda4db62e"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ac1c3419442d93abeede39e7fda4db62e">setAutoAck</a> (uint8_t pipeNum, bool autoAckOn)</td></tr>
<tr class="memdesc:ac1c3419442d93abeede39e7fda4db62e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable auto-acknowledge packets on given pipe. <a href="classn_r_f24.html#ac1c3419442d93abeede39e7fda4db62e">More...</a><br /></td></tr>
<tr class="separator:ac1c3419442d93abeede39e7fda4db62e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0db248d2bcdb4ca2b401e8e638442916"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a0db248d2bcdb4ca2b401e8e638442916">setDataShaping</a> (uint8_t sh) override</td></tr>
<tr class="memdesc:a0db248d2bcdb4ca2b401e8e638442916"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy data shaping configuration method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a0db248d2bcdb4ca2b401e8e638442916">More...</a><br /></td></tr>
<tr class="separator:a0db248d2bcdb4ca2b401e8e638442916"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0429a9d6524005065e6fac21aaebdcbf"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a0429a9d6524005065e6fac21aaebdcbf">setEncoding</a> (uint8_t encoding) override</td></tr>
<tr class="memdesc:a0429a9d6524005065e6fac21aaebdcbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy encoding configuration method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a0429a9d6524005065e6fac21aaebdcbf">More...</a><br /></td></tr>
<tr class="separator:a0429a9d6524005065e6fac21aaebdcbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cc7cd54db2a6af1c9183a2d0653fe2e"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a5cc7cd54db2a6af1c9183a2d0653fe2e">randomByte</a> ()</td></tr>
<tr class="memdesc:a5cc7cd54db2a6af1c9183a2d0653fe2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy random method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a5cc7cd54db2a6af1c9183a2d0653fe2e">More...</a><br /></td></tr>
<tr class="separator:a5cc7cd54db2a6af1c9183a2d0653fe2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3da63a447659f92153654d31a5d2854c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a3da63a447659f92153654d31a5d2854c">setDirectAction</a> (void(*func)(void))</td></tr>
<tr class="memdesc:a3da63a447659f92153654d31a5d2854c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a3da63a447659f92153654d31a5d2854c">More...</a><br /></td></tr>
<tr class="separator:a3da63a447659f92153654d31a5d2854c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db0cd487b03f937afc0bc2e3eccb6f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a2db0cd487b03f937afc0bc2e3eccb6f6">readBit</a> (RADIOLIB_PIN_TYPE pin)</td></tr>
<tr class="memdesc:a2db0cd487b03f937afc0bc2e3eccb6f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dummy method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. <a href="classn_r_f24.html#a2db0cd487b03f937afc0bc2e3eccb6f6">More...</a><br /></td></tr>
<tr class="separator:a2db0cd487b03f937afc0bc2e3eccb6f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab139a34e03a6fd5a781cd54da21d308f"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ab139a34e03a6fd5a781cd54da21d308f">transmit</a> (__FlashStringHelper *fstr, uint8_t addr=0)</td></tr>
<tr class="memdesc:ab139a34e03a6fd5a781cd54da21d308f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arduino Flash String transmit method. <a href="classn_r_f24.html#ab139a34e03a6fd5a781cd54da21d308f">More...</a><br /></td></tr>
<tr class="separator:ab139a34e03a6fd5a781cd54da21d308f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb62c5a521aafc1e0525c58e9364482b"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#aeb62c5a521aafc1e0525c58e9364482b">transmit</a> (String &amp;str, uint8_t addr=0)</td></tr>
<tr class="memdesc:aeb62c5a521aafc1e0525c58e9364482b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arduino String transmit method. <a href="classn_r_f24.html#aeb62c5a521aafc1e0525c58e9364482b">More...</a><br /></td></tr>
<tr class="separator:aeb62c5a521aafc1e0525c58e9364482b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a492b2d057dd803c3884fa1adc8e22534"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a492b2d057dd803c3884fa1adc8e22534">transmit</a> (const char *str, uint8_t addr=0)</td></tr>
<tr class="memdesc:a492b2d057dd803c3884fa1adc8e22534"><td class="mdescLeft">&#160;</td><td class="mdescRight">C-string transmit method. <a href="classn_r_f24.html#a492b2d057dd803c3884fa1adc8e22534">More...</a><br /></td></tr>
<tr class="separator:a492b2d057dd803c3884fa1adc8e22534"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af81565ee82ef9a7de9c5663c745f4ef7"><td class="memItemLeft" align="right" valign="top">virtual int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#af81565ee82ef9a7de9c5663c745f4ef7">transmit</a> (uint8_t *data, size_t len, uint8_t addr=0)=0</td></tr>
<tr class="memdesc:af81565ee82ef9a7de9c5663c745f4ef7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Binary transmit method. Must be implemented in module class. <a href="classn_r_f24.html#af81565ee82ef9a7de9c5663c745f4ef7">More...</a><br /></td></tr>
<tr class="separator:af81565ee82ef9a7de9c5663c745f4ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb1b090348d9091bfa3a0b5ba3d85b36"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#afb1b090348d9091bfa3a0b5ba3d85b36">receive</a> (String &amp;str, size_t len=0)</td></tr>
<tr class="memdesc:afb1b090348d9091bfa3a0b5ba3d85b36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arduino String receive method. <a href="classn_r_f24.html#afb1b090348d9091bfa3a0b5ba3d85b36">More...</a><br /></td></tr>
<tr class="separator:afb1b090348d9091bfa3a0b5ba3d85b36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ad4c6a8ac267f8ac590260414ffcda3"><td class="memItemLeft" align="right" valign="top">virtual int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a2ad4c6a8ac267f8ac590260414ffcda3">receive</a> (uint8_t *data, size_t len)=0</td></tr>
<tr class="memdesc:a2ad4c6a8ac267f8ac590260414ffcda3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Binary receive method. Must be implemented in module class. <a href="classn_r_f24.html#a2ad4c6a8ac267f8ac590260414ffcda3">More...</a><br /></td></tr>
<tr class="separator:a2ad4c6a8ac267f8ac590260414ffcda3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af068e6e862c99e39d0261a7971dd56db"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#af068e6e862c99e39d0261a7971dd56db">startTransmit</a> (String &amp;str, uint8_t addr=0)</td></tr>
<tr class="memdesc:af068e6e862c99e39d0261a7971dd56db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven Arduino String transmit method. Unlike the standard transmit method, this one is non-blocking. Interrupt pin will be activated when transmission finishes. <a href="classn_r_f24.html#af068e6e862c99e39d0261a7971dd56db">More...</a><br /></td></tr>
<tr class="separator:af068e6e862c99e39d0261a7971dd56db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a923654706eff5118ef6e84214e837f27"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a923654706eff5118ef6e84214e837f27">startTransmit</a> (const char *str, uint8_t addr=0)</td></tr>
<tr class="memdesc:a923654706eff5118ef6e84214e837f27"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven Arduino String transmit method. Unlike the standard transmit method, this one is non-blocking. Interrupt pin will be activated when transmission finishes. <a href="classn_r_f24.html#a923654706eff5118ef6e84214e837f27">More...</a><br /></td></tr>
<tr class="separator:a923654706eff5118ef6e84214e837f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41a1de0ebffe7b65de6fd8cceb9a5123"><td class="memItemLeft" align="right" valign="top">virtual int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#a41a1de0ebffe7b65de6fd8cceb9a5123">startTransmit</a> (uint8_t *data, size_t len, uint8_t addr=0)=0</td></tr>
<tr class="memdesc:a41a1de0ebffe7b65de6fd8cceb9a5123"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven binary transmit method. <a href="classn_r_f24.html#a41a1de0ebffe7b65de6fd8cceb9a5123">More...</a><br /></td></tr>
<tr class="separator:a41a1de0ebffe7b65de6fd8cceb9a5123"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8eed0e888a7c8742e89d2b850977de2"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ae8eed0e888a7c8742e89d2b850977de2">readData</a> (String &amp;str, size_t len=0)</td></tr>
<tr class="memdesc:ae8eed0e888a7c8742e89d2b850977de2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data that was received after calling startReceive method. <a href="classn_r_f24.html#ae8eed0e888a7c8742e89d2b850977de2">More...</a><br /></td></tr>
<tr class="separator:ae8eed0e888a7c8742e89d2b850977de2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8b6c756eb4b92855433ca389d73c632"><td class="memItemLeft" align="right" valign="top">virtual int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classn_r_f24.html#ae8b6c756eb4b92855433ca389d73c632">readData</a> (uint8_t *data, size_t len)=0</td></tr>
<tr class="memdesc:ae8b6c756eb4b92855433ca389d73c632"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data that was received after calling startReceive method. <a href="classn_r_f24.html#ae8b6c756eb4b92855433ca389d73c632">More...</a><br /></td></tr>
<tr class="separator:ae8b6c756eb4b92855433ca389d73c632"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_physical_layer"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_physical_layer')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_physical_layer.html">PhysicalLayer</a></td></tr>
<tr class="memitem:a5e02457f1d519cf81b1590a182321c62 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a5e02457f1d519cf81b1590a182321c62">PhysicalLayer</a> (float freqStep, size_t maxPacketLength)</td></tr>
<tr class="memdesc:a5e02457f1d519cf81b1590a182321c62 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <a href="class_physical_layer.html#a5e02457f1d519cf81b1590a182321c62">More...</a><br /></td></tr>
<tr class="separator:a5e02457f1d519cf81b1590a182321c62 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab139a34e03a6fd5a781cd54da21d308f inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ab139a34e03a6fd5a781cd54da21d308f">transmit</a> (__FlashStringHelper *fstr, uint8_t addr=0)</td></tr>
<tr class="memdesc:ab139a34e03a6fd5a781cd54da21d308f inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arduino Flash String transmit method. <a href="class_physical_layer.html#ab139a34e03a6fd5a781cd54da21d308f">More...</a><br /></td></tr>
<tr class="separator:ab139a34e03a6fd5a781cd54da21d308f inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb62c5a521aafc1e0525c58e9364482b inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#aeb62c5a521aafc1e0525c58e9364482b">transmit</a> (String &amp;str, uint8_t addr=0)</td></tr>
<tr class="memdesc:aeb62c5a521aafc1e0525c58e9364482b inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arduino String transmit method. <a href="class_physical_layer.html#aeb62c5a521aafc1e0525c58e9364482b">More...</a><br /></td></tr>
<tr class="separator:aeb62c5a521aafc1e0525c58e9364482b inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a492b2d057dd803c3884fa1adc8e22534 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a492b2d057dd803c3884fa1adc8e22534">transmit</a> (const char *str, uint8_t addr=0)</td></tr>
<tr class="memdesc:a492b2d057dd803c3884fa1adc8e22534 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">C-string transmit method. <a href="class_physical_layer.html#a492b2d057dd803c3884fa1adc8e22534">More...</a><br /></td></tr>
<tr class="separator:a492b2d057dd803c3884fa1adc8e22534 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb1b090348d9091bfa3a0b5ba3d85b36 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#afb1b090348d9091bfa3a0b5ba3d85b36">receive</a> (String &amp;str, size_t len=0)</td></tr>
<tr class="memdesc:afb1b090348d9091bfa3a0b5ba3d85b36 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arduino String receive method. <a href="class_physical_layer.html#afb1b090348d9091bfa3a0b5ba3d85b36">More...</a><br /></td></tr>
<tr class="separator:afb1b090348d9091bfa3a0b5ba3d85b36 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af068e6e862c99e39d0261a7971dd56db inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#af068e6e862c99e39d0261a7971dd56db">startTransmit</a> (String &amp;str, uint8_t addr=0)</td></tr>
<tr class="memdesc:af068e6e862c99e39d0261a7971dd56db inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven Arduino String transmit method. Unlike the standard transmit method, this one is non-blocking. Interrupt pin will be activated when transmission finishes. <a href="class_physical_layer.html#af068e6e862c99e39d0261a7971dd56db">More...</a><br /></td></tr>
<tr class="separator:af068e6e862c99e39d0261a7971dd56db inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a923654706eff5118ef6e84214e837f27 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a923654706eff5118ef6e84214e837f27">startTransmit</a> (const char *str, uint8_t addr=0)</td></tr>
<tr class="memdesc:a923654706eff5118ef6e84214e837f27 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interrupt-driven Arduino String transmit method. Unlike the standard transmit method, this one is non-blocking. Interrupt pin will be activated when transmission finishes. <a href="class_physical_layer.html#a923654706eff5118ef6e84214e837f27">More...</a><br /></td></tr>
<tr class="separator:a923654706eff5118ef6e84214e837f27 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8eed0e888a7c8742e89d2b850977de2 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ae8eed0e888a7c8742e89d2b850977de2">readData</a> (String &amp;str, size_t len=0)</td></tr>
<tr class="memdesc:ae8eed0e888a7c8742e89d2b850977de2 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads data that was received after calling startReceive method. <a href="class_physical_layer.html#ae8eed0e888a7c8742e89d2b850977de2">More...</a><br /></td></tr>
<tr class="separator:ae8eed0e888a7c8742e89d2b850977de2 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a977e5236693960bb1c79090a201e9e1c inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a977e5236693960bb1c79090a201e9e1c">getFreqStep</a> () const</td></tr>
<tr class="memdesc:a977e5236693960bb1c79090a201e9e1c inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the module frequency step size that was set in constructor. <a href="class_physical_layer.html#a977e5236693960bb1c79090a201e9e1c">More...</a><br /></td></tr>
<tr class="separator:a977e5236693960bb1c79090a201e9e1c inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd9171bd71aa80fb86113b612c42de53 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#acd9171bd71aa80fb86113b612c42de53">random</a> (int32_t max)</td></tr>
<tr class="memdesc:acd9171bd71aa80fb86113b612c42de53 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get truly random number in range 0 - max. <a href="class_physical_layer.html#acd9171bd71aa80fb86113b612c42de53">More...</a><br /></td></tr>
<tr class="separator:acd9171bd71aa80fb86113b612c42de53 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76113e10481743094a1cd0280692b0a9 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a76113e10481743094a1cd0280692b0a9">random</a> (int32_t min, int32_t max)</td></tr>
<tr class="memdesc:a76113e10481743094a1cd0280692b0a9 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get truly random number in range min - max. <a href="class_physical_layer.html#a76113e10481743094a1cd0280692b0a9">More...</a><br /></td></tr>
<tr class="separator:a76113e10481743094a1cd0280692b0a9 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88a10657bd2215a11a2331f937414b55 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a88a10657bd2215a11a2331f937414b55">startDirect</a> ()</td></tr>
<tr class="memdesc:a88a10657bd2215a11a2331f937414b55 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Configure module parameters for direct modes. Must be called prior to "ham" modes like RTTY or AX.25. Only available in FSK mode. <a href="class_physical_layer.html#a88a10657bd2215a11a2331f937414b55">More...</a><br /></td></tr>
<tr class="separator:a88a10657bd2215a11a2331f937414b55 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e378fe136a498ea485a9c10f5e15aab inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a8e378fe136a498ea485a9c10f5e15aab">setDirectSyncWord</a> (uint32_t syncWord, uint8_t len)</td></tr>
<tr class="memdesc:a8e378fe136a498ea485a9c10f5e15aab inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set sync word to be used to determine start of packet in direct reception mode. <a href="class_physical_layer.html#a8e378fe136a498ea485a9c10f5e15aab">More...</a><br /></td></tr>
<tr class="separator:a8e378fe136a498ea485a9c10f5e15aab inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab57182d32646861ef0d865e2740d6b26 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ab57182d32646861ef0d865e2740d6b26">available</a> ()</td></tr>
<tr class="memdesc:ab57182d32646861ef0d865e2740d6b26 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of direct mode bytes currently available in buffer. <a href="class_physical_layer.html#ab57182d32646861ef0d865e2740d6b26">More...</a><br /></td></tr>
<tr class="separator:ab57182d32646861ef0d865e2740d6b26 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a929662904e9af2611e098dc13b91c977 inherit pub_methods_class_physical_layer"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a929662904e9af2611e098dc13b91c977">read</a> ()</td></tr>
<tr class="memdesc:a929662904e9af2611e098dc13b91c977 inherit pub_methods_class_physical_layer"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get data from direct mode buffer. <a href="class_physical_layer.html#a929662904e9af2611e098dc13b91c977">More...</a><br /></td></tr>
<tr class="separator:a929662904e9af2611e098dc13b91c977 inherit pub_methods_class_physical_layer"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Control class for nRF24 module. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ab12de8d953c2384c5fff09b4abf65d1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab12de8d953c2384c5fff09b4abf65d1e">&#9670;&nbsp;</a></span>nRF24()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">nRF24::nRF24 </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_module.html">Module</a> *&#160;</td>
<td class="paramname"><em>mod</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Default constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mod</td><td>Instance of <a class="el" href="class_module.html" title="Implements all common low-level SPI/UART/I2C methods to control the wireless module....">Module</a> that will be used to communicate with the radio. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a60eb59262c5004b587b1d8177706ff28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60eb59262c5004b587b1d8177706ff28">&#9670;&nbsp;</a></span>begin()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::begin </td>
<td>(</td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>freq</em> = <code>2400</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>dataRate</em> = <code>1000</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int8_t&#160;</td>
<td class="paramname"><em>power</em> = <code>-12</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addrWidth</em> = <code>5</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialization method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">freq</td><td>Carrier frequency in MHz. Defaults to 2400 MHz.</td></tr>
<tr><td class="paramname">dataRate</td><td>Data rate to be used in kbps. Defaults to 1000 kbps.</td></tr>
<tr><td class="paramname">power</td><td>Output power in dBm. Defaults to -12 dBm.</td></tr>
<tr><td class="paramname">addrWidth</td><td>Address width in bytes. Defaults to 5 bytes.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a4dd39e5c0efee1f0c2a14f729eb4426a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4dd39e5c0efee1f0c2a14f729eb4426a">&#9670;&nbsp;</a></span>disablePipe()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::disablePipe </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>pipeNum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Disables specified receive pipe. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pipeNum</td><td>Receive pipe to be disabled.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a23ea1749c21863ebc5bd3a2b08d64f3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23ea1749c21863ebc5bd3a2b08d64f3b">&#9670;&nbsp;</a></span>getPacketLength()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t nRF24::getPacketLength </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>update</em> = <code>true</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Query modem for the packet length of received payload. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">update</td><td>Update received packet length. Will return cached value when set to false.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Length of last received packet in bytes. </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a0bd6046e068ef63e3f2b6bead48e02a7">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a3f0b08fd8e58db36f6c1926cc3eac6a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f0b08fd8e58db36f6c1926cc3eac6a9">&#9670;&nbsp;</a></span>getStatus()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::getStatus </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mask</em> = <code>0xFF</code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets <a class="el" href="classn_r_f24.html" title="Control class for nRF24 module.">nRF24</a> status register. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mask</td><td>Bit mask to be used on the returned register value.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Status register value or <a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="ad9204ee787b425e2c9e8422bb7939a37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9204ee787b425e2c9e8422bb7939a37">&#9670;&nbsp;</a></span>isCarrierDetected()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool nRF24::isCarrierDetected </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Checks if carrier was detected during last RX. </p>
<dl class="section return"><dt>Returns</dt><dd>Whatever the carrier was above threshold. </dd></dl>
</div>
</div>
<a id="a5cc7cd54db2a6af1c9183a2d0653fe2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5cc7cd54db2a6af1c9183a2d0653fe2e">&#9670;&nbsp;</a></span>randomByte()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint8_t nRF24::randomByte </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy random method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="section return"><dt>Returns</dt><dd>Always returns 0. </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a34543b885aa57ade08a4c659991e523e">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a2db0cd487b03f937afc0bc2e3eccb6f6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2db0cd487b03f937afc0bc2e3eccb6f6">&#9670;&nbsp;</a></span>readBit()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void nRF24::readBit </td>
<td>(</td>
<td class="paramtype">RADIOLIB_PIN_TYPE&#160;</td>
<td class="paramname"><em>pin</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pin</td><td>Ignored. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="class_physical_layer.html#a9b720e7776ad7ea805932578907b0058">PhysicalLayer</a>.</p>
</div>
</div>
<a id="ae8eed0e888a7c8742e89d2b850977de2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8eed0e888a7c8742e89d2b850977de2">&#9670;&nbsp;</a></span>readData() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::readData</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads data that was received after calling startReceive method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Address of Arduino String to save the received data.</td></tr>
<tr><td class="paramname">len</td><td>Expected number of characters in the message.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a410fb78acb4ed358818c132687b8857a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a410fb78acb4ed358818c132687b8857a">&#9670;&nbsp;</a></span>readData() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::readData </td>
<td>(</td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads data received after calling startReceive method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Pointer to array to save the received binary data.</td></tr>
<tr><td class="paramname">len</td><td>Number of bytes that will be received. Must be known in advance for binary transmissions.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#ae8b6c756eb4b92855433ca389d73c632">PhysicalLayer</a>.</p>
</div>
</div>
<a id="ae8b6c756eb4b92855433ca389d73c632"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae8b6c756eb4b92855433ca389d73c632">&#9670;&nbsp;</a></span>readData() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int16_t PhysicalLayer::readData</td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads data that was received after calling startReceive method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Pointer to array to save the received binary data.</td></tr>
<tr><td class="paramname">len</td><td>Number of bytes that will be received. Must be known in advance for binary transmissions.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="afb1b090348d9091bfa3a0b5ba3d85b36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb1b090348d9091bfa3a0b5ba3d85b36">&#9670;&nbsp;</a></span>receive() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::receive</td>
</tr>
</table>
</div><div class="memdoc">
<p>Arduino String receive method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Address of Arduino String to save the received data.</td></tr>
<tr><td class="paramname">len</td><td>Expected number of characters in the message. Leave as 0 if expecting a unknown size packet</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a239e94511d9ee67ad3d64a49a5c4d7ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a239e94511d9ee67ad3d64a49a5c4d7ac">&#9670;&nbsp;</a></span>receive() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::receive </td>
<td>(</td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>len</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Blocking binary receive method. Overloads for string-based transmissions are implemented in <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Binary data to be sent.</td></tr>
<tr><td class="paramname">len</td><td>Number of bytes to send.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a2ad4c6a8ac267f8ac590260414ffcda3">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a2ad4c6a8ac267f8ac590260414ffcda3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ad4c6a8ac267f8ac590260414ffcda3">&#9670;&nbsp;</a></span>receive() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int16_t PhysicalLayer::receive</td>
</tr>
</table>
</div><div class="memdoc">
<p>Binary receive method. Must be implemented in module class. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Pointer to array to save the received binary data.</td></tr>
<tr><td class="paramname">len</td><td>Number of bytes that will be received. Must be known in advance for binary transmissions.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a415d86947742e981bfcf7f2371f8605c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a415d86947742e981bfcf7f2371f8605c">&#9670;&nbsp;</a></span>receiveDirect()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::receiveDirect </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy direct mode reception method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a46b22145b33e97cf6065ed826799b6b4">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a5b01677f5ce6bee54da8fc7098c339f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b01677f5ce6bee54da8fc7098c339f4">&#9670;&nbsp;</a></span>setAddressWidth()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setAddressWidth </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addrWidth</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets address width of transmit and receive pipes in bytes. Allowed values are 3, 4 or 5 bytes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">addrWidth</td><td>Address width to be set in bytes.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="aca941c9235ba1212257288554eb4b7fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca941c9235ba1212257288554eb4b7fe">&#9670;&nbsp;</a></span>setAutoAck() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setAutoAck </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>autoAckOn</em> = <code>true</code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enable or disable auto-acknowledge packets on all pipes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">autoAckOn</td><td>Enable (true) or disable (false) auto-acks.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="ac1c3419442d93abeede39e7fda4db62e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac1c3419442d93abeede39e7fda4db62e">&#9670;&nbsp;</a></span>setAutoAck() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setAutoAck </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>pipeNum</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>autoAckOn</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enable or disable auto-acknowledge packets on given pipe. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pipeNum</td><td>Number of pipe to which enable / disable auto-acks.</td></tr>
<tr><td class="paramname">autoAckOn</td><td>Enable (true) or disable (false) auto-acks.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a3eb45884a5730ac1c339c7ba4f7b5282"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3eb45884a5730ac1c339c7ba4f7b5282">&#9670;&nbsp;</a></span>setCrcFiltering()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setCrcFiltering </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>crcOn</em> = <code>true</code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Enable CRC filtering and generation. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">crcOn</td><td>Set or unset CRC check.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a1f3ec2196733a2e2476f50690967f285"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f3ec2196733a2e2476f50690967f285">&#9670;&nbsp;</a></span>setDataRate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setDataRate </td>
<td>(</td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>dataRate</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets data rate. Allowed values are 2000, 1000 or 250 kbps. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">dataRate</td><td>Data rate to be set in kbps.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a0db248d2bcdb4ca2b401e8e638442916"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0db248d2bcdb4ca2b401e8e638442916">&#9670;&nbsp;</a></span>setDataShaping()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setDataShaping </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>sh</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy data shaping configuration method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">sh</td><td>Ignored.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#ab643a814dce48f71a13bf6ea23f44cbd">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a3da63a447659f92153654d31a5d2854c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3da63a447659f92153654d31a5d2854c">&#9670;&nbsp;</a></span>setDirectAction()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void nRF24::setDirectAction </td>
<td>(</td>
<td class="paramtype">void(*)(void)&#160;</td>
<td class="paramname"><em>func</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">func</td><td>Ignored. </td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="class_physical_layer.html#ab76fe7d3e0f453a807b205161c980086">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a0429a9d6524005065e6fac21aaebdcbf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0429a9d6524005065e6fac21aaebdcbf">&#9670;&nbsp;</a></span>setEncoding()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setEncoding </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>encoding</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy encoding configuration method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">sh</td><td>Ignored.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a7d3419227d201d6912b77784636d437d">PhysicalLayer</a>.</p>
</div>
</div>
<a id="abec5f9dba44a019e23c8bf516f104fad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abec5f9dba44a019e23c8bf516f104fad">&#9670;&nbsp;</a></span>setFrequency()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setFrequency </td>
<td>(</td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>freq</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets carrier frequency. Allowed values range from 2400 MHz to 2525 MHz. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">freq</td><td>Carrier frequency to be set in MHz.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a5170284f0a5535de7d00216d450b87a4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5170284f0a5535de7d00216d450b87a4">&#9670;&nbsp;</a></span>setFrequencyDeviation()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setFrequencyDeviation </td>
<td>(</td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>freqDev</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Dummy configuration method, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">freqDev</td><td>Dummy frequency deviation parameter, no configuration will be changed.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#ab9060e8ab7a2da192b3bf53b3501553b">PhysicalLayer</a>.</p>
</div>
</div>
<a id="abf9323748b1a850e6ddc6f6d48f4cfb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf9323748b1a850e6ddc6f6d48f4cfb3">&#9670;&nbsp;</a></span>setIrqAction()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void nRF24::setIrqAction </td>
<td>(</td>
<td class="paramtype">void(*)(void)&#160;</td>
<td class="paramname"><em>func</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets interrupt service routine to call when IRQ activates. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">func</td><td>ISR to call. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a824453d547c0b42ac1988acb42032ca4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a824453d547c0b42ac1988acb42032ca4">&#9670;&nbsp;</a></span>setOutputPower()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setOutputPower </td>
<td>(</td>
<td class="paramtype">int8_t&#160;</td>
<td class="paramname"><em>power</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets output power. Allowed values are -18, -12, -6 or 0 dBm. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">power</td><td>Output power to be set in dBm.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a31bcc5a8c3747bf08a273dbdadc5481a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31bcc5a8c3747bf08a273dbdadc5481a">&#9670;&nbsp;</a></span>setReceivePipe() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setReceivePipe </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>pipeNum</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>addr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets address of receive pipes 0 or 1. The address width must be the same as the same as the configured in setAddressWidth. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pipeNum</td><td>Number of pipe to which the address shall be set. Either 0 or 1, other pipes are handled using overloaded method.</td></tr>
<tr><td class="paramname">addr</td><td>Address from which nRF24 shall receive new packets on the specified pipe.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="ab5bc08aef88d8cf41c38369044005da8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5bc08aef88d8cf41c38369044005da8">&#9670;&nbsp;</a></span>setReceivePipe() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setReceivePipe </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>pipeNum</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addrByte</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets address of receive pipes 2 - 5. The first 2 - 4 address bytes for these pipes are the same as for address pipe 1, only the last byte can be set. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pipeNum</td><td>Number of pipe to which the address shall be set. Allowed values range from 2 to 5.</td></tr>
<tr><td class="paramname">addrByte</td><td>LSB of address from which nRF24 shall receive new packets on the specified pipe.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="aa0e1f2dddf810213410a420205bbd8af"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0e1f2dddf810213410a420205bbd8af">&#9670;&nbsp;</a></span>setTransmitPipe()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::setTransmitPipe </td>
<td>(</td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>addr</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets address of transmit pipe. The address width must be the same as the same as the configured in setAddressWidth. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">addr</td><td>Address to which the next packet shall be transmitted.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a033287e33c532638c11e2775a073f297"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a033287e33c532638c11e2775a073f297">&#9670;&nbsp;</a></span>sleep()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::sleep </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the module to sleep mode. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a5957f06a891d3d9c07e87b59c239ce56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5957f06a891d3d9c07e87b59c239ce56">&#9670;&nbsp;</a></span>standby()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::standby </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the module to standby mode. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a0e77da761a2cbb5c9535df0bdea993f9">PhysicalLayer</a>.</p>
</div>
</div>
<a id="af4f443da5d90e032e5f2f65420515f9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af4f443da5d90e032e5f2f65420515f9c">&#9670;&nbsp;</a></span>startReceive()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::startReceive </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Interrupt-driven receive method. IRQ will be activated when full packet is received. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a923654706eff5118ef6e84214e837f27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a923654706eff5118ef6e84214e837f27">&#9670;&nbsp;</a></span>startTransmit() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::startTransmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>Interrupt-driven Arduino String transmit method. Unlike the standard transmit method, this one is non-blocking. Interrupt pin will be activated when transmission finishes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>C-string that will be transmitted.</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="af068e6e862c99e39d0261a7971dd56db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af068e6e862c99e39d0261a7971dd56db">&#9670;&nbsp;</a></span>startTransmit() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::startTransmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>Interrupt-driven Arduino String transmit method. Unlike the standard transmit method, this one is non-blocking. Interrupt pin will be activated when transmission finishes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Address of Arduino String that will be transmitted.</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a42fdc828b49f2b8e15457189bd57d917"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42fdc828b49f2b8e15457189bd57d917">&#9670;&nbsp;</a></span>startTransmit() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::startTransmit </td>
<td>(</td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Interrupt-driven binary transmit method. IRQ will be activated when full packet is transmitted. Overloads for string-based transmissions are implemented in <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Binary data to be sent.</td></tr>
<tr><td class="paramname">len</td><td>Number of bytes to send.</td></tr>
<tr><td class="paramname">addr</td><td>Dummy address parameter, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a41a1de0ebffe7b65de6fd8cceb9a5123">PhysicalLayer</a>.</p>
</div>
</div>
<a id="a41a1de0ebffe7b65de6fd8cceb9a5123"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41a1de0ebffe7b65de6fd8cceb9a5123">&#9670;&nbsp;</a></span>startTransmit() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int16_t PhysicalLayer::startTransmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>Interrupt-driven binary transmit method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Binary data that will be transmitted.</td></tr>
<tr><td class="paramname">len</td><td>Length of binary data to transmit (in bytes).</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="ab139a34e03a6fd5a781cd54da21d308f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab139a34e03a6fd5a781cd54da21d308f">&#9670;&nbsp;</a></span>transmit() <span class="overload">[1/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::transmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>Arduino Flash String transmit method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Pointer to Arduino Flash String that will be transmitted.</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a492b2d057dd803c3884fa1adc8e22534"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a492b2d057dd803c3884fa1adc8e22534">&#9670;&nbsp;</a></span>transmit() <span class="overload">[2/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::transmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>C-string transmit method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>C-string that will be transmitted.</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="aeb62c5a521aafc1e0525c58e9364482b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb62c5a521aafc1e0525c58e9364482b">&#9670;&nbsp;</a></span>transmit() <span class="overload">[3/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int16_t PhysicalLayer::transmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>Arduino String transmit method. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>Address of Arduino string that will be transmitted.</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a583d505bd3a638ecc5576dd2dd95f044"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a583d505bd3a638ecc5576dd2dd95f044">&#9670;&nbsp;</a></span>transmit() <span class="overload">[4/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::transmit </td>
<td>(</td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>addr</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Blocking binary transmit method. Overloads for string-based transmissions are implemented in <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Binary data to be sent.</td></tr>
<tr><td class="paramname">len</td><td>Number of bytes to send.</td></tr>
<tr><td class="paramname">addr</td><td>Dummy address parameter, to ensure <a class="el" href="class_physical_layer.html" title="Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....">PhysicalLayer</a> compatibility.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#af81565ee82ef9a7de9c5663c745f4ef7">PhysicalLayer</a>.</p>
</div>
</div>
<a id="af81565ee82ef9a7de9c5663c745f4ef7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af81565ee82ef9a7de9c5663c745f4ef7">&#9670;&nbsp;</a></span>transmit() <span class="overload">[5/5]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int16_t PhysicalLayer::transmit</td>
</tr>
</table>
</div><div class="memdoc">
<p>Binary transmit method. Must be implemented in module class. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>Binary data that will be transmitted.</td></tr>
<tr><td class="paramname">len</td><td>Length of binary data to transmit (in bytes).</td></tr>
<tr><td class="paramname">addr</td><td>Node address to transmit the packet to. Only used in FSK mode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
</div>
</div>
<a id="a090bb64f65309efabfa1ffd86daa2303"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a090bb64f65309efabfa1ffd86daa2303">&#9670;&nbsp;</a></span>transmitDirect()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t nRF24::transmitDirect </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>frf</em> = <code>0</code></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Starts direct mode transmission. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">frf</td><td>Raw RF frequency value. Defaults to 0, required for quick frequency shifts in RTTY.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
<p>Implements <a class="el" href="class_physical_layer.html#a4b04eb6155b06d8ef400131c647d54e7">PhysicalLayer</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>src/modules/nRF24/<a class="el" href="n_r_f24_8h_source.html">nRF24.h</a></li>
<li>src/modules/nRF24/nRF24.cpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="classn_r_f24.html">nRF24</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
</ul>
</div>
</body>
</html>