1481 lines
87 KiB
HTML
1481 lines
87 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.9.1"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>RadioLib: PhysicalLayer 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.9.1 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
|
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
|
|
/* @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&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&dn=gpl-2.0.txt GPL-v2 */
|
|
$(document).ready(function(){initNavTree('class_physical_layer.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> |
|
|
<a href="#friends">Friends</a> |
|
|
<a href="class_physical_layer-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">PhysicalLayer Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN. Also extracts some common module-independent methods. Using this interface class allows to use the protocols on various modules without much code duplicity. Because this class is used mainly as interface, all of its virtual members must be implemented in the module class.
|
|
<a href="class_physical_layer.html#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="_physical_layer_8h_source.html">PhysicalLayer.h</a>></code></p>
|
|
<div class="dynheader">
|
|
Inheritance diagram for PhysicalLayer:</div>
|
|
<div class="dyncontent">
|
|
<div class="center">
|
|
<img src="class_physical_layer.png" usemap="#PhysicalLayer_map" alt=""/>
|
|
<map id="PhysicalLayer_map" name="PhysicalLayer_map">
|
|
<area href="class_c_c1101.html" title="Control class for CC1101 module." alt="CC1101" shape="rect" coords="0,56,93,80"/>
|
|
<area href="class_r_f69.html" title="Control class for RF69 module. Also serves as base class for SX1231." alt="RF69" shape="rect" coords="103,56,196,80"/>
|
|
<area href="class_s_x126x.html" title="Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi..." alt="SX126x" shape="rect" coords="257,56,350,80"/>
|
|
<area href="class_s_x127x.html" title="Base class for SX127x series. All derived classes for SX127x (e.g. SX1278 or SX1272) inherit from thi..." alt="SX127x" shape="rect" coords="463,56,556,80"/>
|
|
<area href="class_s_x128x.html" title="Base class for SX128x series. All derived classes for SX128x (e.g. SX1280 or SX1281) inherit from thi..." alt="SX128x" shape="rect" coords="721,56,814,80"/>
|
|
<area href="class_si443x.html" title="Base class for Si443x series. All derived classes for Si443x (e.g. Si4431 or Si4432) inherit from thi..." alt="Si443x" shape="rect" coords="824,56,917,80"/>
|
|
<area href="classn_r_f24.html" title="Control class for nRF24 module." alt="nRF24" shape="rect" coords="927,56,1020,80"/>
|
|
<area href="class_s_x1231.html" title="Control class for SX1231 module. Overrides some methods from RF69 due to different register values." alt="SX1231" shape="rect" coords="103,112,196,136"/>
|
|
<area href="class_s_x1262.html" title="Derived class for SX1262 modules." alt="SX1262" shape="rect" coords="206,112,299,136"/>
|
|
<area href="class_s_x1268.html" title="Derived class for SX1268 modules." alt="SX1268" shape="rect" coords="309,112,402,136"/>
|
|
<area href="class_s_x1272.html" title="Derived class for SX1272 modules. Also used as base class for SX1273. Both modules use the same basic..." alt="SX1272" shape="rect" coords="412,112,505,136"/>
|
|
<area href="class_s_x1278.html" title="Derived class for SX1278 modules. Also used as base class for SX1276, SX1277, SX1279,..." alt="SX1278" shape="rect" coords="515,112,608,136"/>
|
|
<area href="class_s_x1281.html" title="Derived class for SX1281 modules." alt="SX1281" shape="rect" coords="721,112,814,136"/>
|
|
<area href="class_si4432.html" title="Derived class for Si4432 modules." alt="Si4432" shape="rect" coords="824,112,917,136"/>
|
|
<area href="class_l_l_c_c68.html" title="Derived class for LLCC68 modules." alt="LLCC68" shape="rect" coords="309,168,402,192"/>
|
|
<area href="class_s_x1261.html" title="Derived class for SX1261 modules." alt="SX1261" shape="rect" coords="309,224,402,248"/>
|
|
<area href="class_s_x1273.html" title="Derived class for SX1273 modules. Overrides some methods from SX1272 due to different parameter range..." alt="SX1273" shape="rect" coords="412,168,505,192"/>
|
|
<area href="class_r_f_m95.html" title="Derived class for RFM95 modules. Overrides some methods from SX1278 due to different parameter ranges..." alt="RFM95" shape="rect" coords="618,168,711,192"/>
|
|
<area href="class_r_f_m96.html" title="Derived class for RFM96 modules. Overrides some methods from SX1278 due to different parameter ranges..." alt="RFM96" shape="rect" coords="618,224,711,248"/>
|
|
<area href="class_s_x1276.html" title="Derived class for SX1276 modules. Overrides some methods from SX1278 due to different parameter range..." alt="SX1276" shape="rect" coords="618,280,711,304"/>
|
|
<area href="class_s_x1277.html" title="Derived class for SX1277 modules. Overrides some methods from SX1278 due to different parameter range..." alt="SX1277" shape="rect" coords="618,336,711,360"/>
|
|
<area href="class_s_x1279.html" title="Derived class for SX1279 modules. Overrides some methods from SX1278 due to different parameter range..." alt="SX1279" shape="rect" coords="618,392,711,416"/>
|
|
<area href="class_s_x1280.html" title="Derived class for SX1280 modules." alt="SX1280" shape="rect" coords="721,168,814,192"/>
|
|
<area href="class_si4430.html" title="Derived class for Si4430 modules." alt="Si4430" shape="rect" coords="927,168,1020,192"/>
|
|
<area href="class_si4431.html" title="Derived class for Si4431 modules." alt="Si4431" shape="rect" coords="927,224,1020,248"/>
|
|
</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:a5e02457f1d519cf81b1590a182321c62"><td class="memItemLeft" align="right" valign="top"> </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"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <a href="class_physical_layer.html#a5e02457f1d519cf81b1590a182321c62">More...</a><br /></td></tr>
|
|
<tr class="separator:a5e02457f1d519cf81b1590a182321c62"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab139a34e03a6fd5a781cd54da21d308f"><td class="memItemLeft" align="right" valign="top">int16_t </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"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aeb62c5a521aafc1e0525c58e9364482b"><td class="memItemLeft" align="right" valign="top">int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#aeb62c5a521aafc1e0525c58e9364482b">transmit</a> (String &str, uint8_t addr=0)</td></tr>
|
|
<tr class="memdesc:aeb62c5a521aafc1e0525c58e9364482b"><td class="mdescLeft"> </td><td class="mdescRight">Arduino String transmit method. <a href="class_physical_layer.html#aeb62c5a521aafc1e0525c58e9364482b">More...</a><br /></td></tr>
|
|
<tr class="separator:aeb62c5a521aafc1e0525c58e9364482b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a492b2d057dd803c3884fa1adc8e22534"><td class="memItemLeft" align="right" valign="top">int16_t </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"><td class="mdescLeft"> </td><td class="mdescRight">C-string transmit method. <a href="class_physical_layer.html#a492b2d057dd803c3884fa1adc8e22534">More...</a><br /></td></tr>
|
|
<tr class="separator:a492b2d057dd803c3884fa1adc8e22534"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af81565ee82ef9a7de9c5663c745f4ef7"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#af81565ee82ef9a7de9c5663c745f4ef7">transmit</a> (uint8_t *data, size_t len, uint8_t addr=0)=0</td></tr>
|
|
<tr class="memdesc:af81565ee82ef9a7de9c5663c745f4ef7"><td class="mdescLeft"> </td><td class="mdescRight">Binary transmit method. Must be implemented in module class. <a href="class_physical_layer.html#af81565ee82ef9a7de9c5663c745f4ef7">More...</a><br /></td></tr>
|
|
<tr class="separator:af81565ee82ef9a7de9c5663c745f4ef7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afb1b090348d9091bfa3a0b5ba3d85b36"><td class="memItemLeft" align="right" valign="top">int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#afb1b090348d9091bfa3a0b5ba3d85b36">receive</a> (String &str, size_t len=0)</td></tr>
|
|
<tr class="memdesc:afb1b090348d9091bfa3a0b5ba3d85b36"><td class="mdescLeft"> </td><td class="mdescRight">Arduino String receive method. <a href="class_physical_layer.html#afb1b090348d9091bfa3a0b5ba3d85b36">More...</a><br /></td></tr>
|
|
<tr class="separator:afb1b090348d9091bfa3a0b5ba3d85b36"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0e77da761a2cbb5c9535df0bdea993f9"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a0e77da761a2cbb5c9535df0bdea993f9">standby</a> ()=0</td></tr>
|
|
<tr class="memdesc:a0e77da761a2cbb5c9535df0bdea993f9"><td class="mdescLeft"> </td><td class="mdescRight">Sets module to standby. <a href="class_physical_layer.html#a0e77da761a2cbb5c9535df0bdea993f9">More...</a><br /></td></tr>
|
|
<tr class="separator:a0e77da761a2cbb5c9535df0bdea993f9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2ad4c6a8ac267f8ac590260414ffcda3"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a2ad4c6a8ac267f8ac590260414ffcda3">receive</a> (uint8_t *data, size_t len)=0</td></tr>
|
|
<tr class="memdesc:a2ad4c6a8ac267f8ac590260414ffcda3"><td class="mdescLeft"> </td><td class="mdescRight">Binary receive method. Must be implemented in module class. <a href="class_physical_layer.html#a2ad4c6a8ac267f8ac590260414ffcda3">More...</a><br /></td></tr>
|
|
<tr class="separator:a2ad4c6a8ac267f8ac590260414ffcda3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af068e6e862c99e39d0261a7971dd56db"><td class="memItemLeft" align="right" valign="top">int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#af068e6e862c99e39d0261a7971dd56db">startTransmit</a> (String &str, uint8_t addr=0)</td></tr>
|
|
<tr class="memdesc:af068e6e862c99e39d0261a7971dd56db"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a923654706eff5118ef6e84214e837f27"><td class="memItemLeft" align="right" valign="top">int16_t </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"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a41a1de0ebffe7b65de6fd8cceb9a5123"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a41a1de0ebffe7b65de6fd8cceb9a5123">startTransmit</a> (uint8_t *data, size_t len, uint8_t addr=0)=0</td></tr>
|
|
<tr class="memdesc:a41a1de0ebffe7b65de6fd8cceb9a5123"><td class="mdescLeft"> </td><td class="mdescRight">Interrupt-driven binary transmit method. <a href="class_physical_layer.html#a41a1de0ebffe7b65de6fd8cceb9a5123">More...</a><br /></td></tr>
|
|
<tr class="separator:a41a1de0ebffe7b65de6fd8cceb9a5123"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aeba51a21ad3c6d56b61a55061de7fc92"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#aeba51a21ad3c6d56b61a55061de7fc92">finishTransmit</a> ()=0</td></tr>
|
|
<tr class="memdesc:aeba51a21ad3c6d56b61a55061de7fc92"><td class="mdescLeft"> </td><td class="mdescRight">Clean up after transmission is done. <a href="class_physical_layer.html#aeba51a21ad3c6d56b61a55061de7fc92">More...</a><br /></td></tr>
|
|
<tr class="separator:aeba51a21ad3c6d56b61a55061de7fc92"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae8eed0e888a7c8742e89d2b850977de2"><td class="memItemLeft" align="right" valign="top">int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ae8eed0e888a7c8742e89d2b850977de2">readData</a> (String &str, size_t len=0)</td></tr>
|
|
<tr class="memdesc:ae8eed0e888a7c8742e89d2b850977de2"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae8b6c756eb4b92855433ca389d73c632"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ae8b6c756eb4b92855433ca389d73c632">readData</a> (uint8_t *data, size_t len)=0</td></tr>
|
|
<tr class="memdesc:ae8b6c756eb4b92855433ca389d73c632"><td class="mdescLeft"> </td><td class="mdescRight">Reads data that was received after calling startReceive method. <a href="class_physical_layer.html#ae8b6c756eb4b92855433ca389d73c632">More...</a><br /></td></tr>
|
|
<tr class="separator:ae8b6c756eb4b92855433ca389d73c632"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4b04eb6155b06d8ef400131c647d54e7"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a4b04eb6155b06d8ef400131c647d54e7">transmitDirect</a> (uint32_t frf=0)=0</td></tr>
|
|
<tr class="memdesc:a4b04eb6155b06d8ef400131c647d54e7"><td class="mdescLeft"> </td><td class="mdescRight">Enables direct transmission mode on pins DIO1 (clock) and DIO2 (data). Must be implemented in module class. While in direct mode, the module will not be able to transmit or receive packets. Can only be activated in FSK mode. <a href="class_physical_layer.html#a4b04eb6155b06d8ef400131c647d54e7">More...</a><br /></td></tr>
|
|
<tr class="separator:a4b04eb6155b06d8ef400131c647d54e7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a46b22145b33e97cf6065ed826799b6b4"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a46b22145b33e97cf6065ed826799b6b4">receiveDirect</a> ()=0</td></tr>
|
|
<tr class="memdesc:a46b22145b33e97cf6065ed826799b6b4"><td class="mdescLeft"> </td><td class="mdescRight">Enables direct reception mode on pins DIO1 (clock) and DIO2 (data). Must be implemented in module class. While in direct mode, the module will not be able to transmit or receive packets. Can only be activated in FSK mode. <a href="class_physical_layer.html#a46b22145b33e97cf6065ed826799b6b4">More...</a><br /></td></tr>
|
|
<tr class="separator:a46b22145b33e97cf6065ed826799b6b4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4928642e647f2dd5b614b87b681cb0a6"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a4928642e647f2dd5b614b87b681cb0a6">setFrequency</a> (float freq)=0</td></tr>
|
|
<tr class="memdesc:a4928642e647f2dd5b614b87b681cb0a6"><td class="mdescLeft"> </td><td class="mdescRight">Sets carrier frequency. Must be implemented in module class. <a href="class_physical_layer.html#a4928642e647f2dd5b614b87b681cb0a6">More...</a><br /></td></tr>
|
|
<tr class="separator:a4928642e647f2dd5b614b87b681cb0a6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a56e9cf39bc8847492f7f3cd67ebf1c46"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a56e9cf39bc8847492f7f3cd67ebf1c46">setBitRate</a> (float br)=0</td></tr>
|
|
<tr class="memdesc:a56e9cf39bc8847492f7f3cd67ebf1c46"><td class="mdescLeft"> </td><td class="mdescRight">Sets FSK bit rate. Only available in FSK mode. Must be implemented in module class. <a href="class_physical_layer.html#a56e9cf39bc8847492f7f3cd67ebf1c46">More...</a><br /></td></tr>
|
|
<tr class="separator:a56e9cf39bc8847492f7f3cd67ebf1c46"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab9060e8ab7a2da192b3bf53b3501553b"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ab9060e8ab7a2da192b3bf53b3501553b">setFrequencyDeviation</a> (float freqDev)=0</td></tr>
|
|
<tr class="memdesc:ab9060e8ab7a2da192b3bf53b3501553b"><td class="mdescLeft"> </td><td class="mdescRight">Sets FSK frequency deviation from carrier frequency. Only available in FSK mode. Must be implemented in module class. <a href="class_physical_layer.html#ab9060e8ab7a2da192b3bf53b3501553b">More...</a><br /></td></tr>
|
|
<tr class="separator:ab9060e8ab7a2da192b3bf53b3501553b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab643a814dce48f71a13bf6ea23f44cbd"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ab643a814dce48f71a13bf6ea23f44cbd">setDataShaping</a> (uint8_t sh)=0</td></tr>
|
|
<tr class="memdesc:ab643a814dce48f71a13bf6ea23f44cbd"><td class="mdescLeft"> </td><td class="mdescRight">Sets GFSK data shaping. Only available in FSK mode. Must be implemented in module class. <a href="class_physical_layer.html#ab643a814dce48f71a13bf6ea23f44cbd">More...</a><br /></td></tr>
|
|
<tr class="separator:ab643a814dce48f71a13bf6ea23f44cbd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7d3419227d201d6912b77784636d437d"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a7d3419227d201d6912b77784636d437d">setEncoding</a> (uint8_t encoding)=0</td></tr>
|
|
<tr class="memdesc:a7d3419227d201d6912b77784636d437d"><td class="mdescLeft"> </td><td class="mdescRight">Sets FSK data encoding. Only available in FSK mode. Must be implemented in module class. <a href="class_physical_layer.html#a7d3419227d201d6912b77784636d437d">More...</a><br /></td></tr>
|
|
<tr class="separator:a7d3419227d201d6912b77784636d437d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a977e5236693960bb1c79090a201e9e1c"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a977e5236693960bb1c79090a201e9e1c">getFreqStep</a> () const</td></tr>
|
|
<tr class="memdesc:a977e5236693960bb1c79090a201e9e1c"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0bd6046e068ef63e3f2b6bead48e02a7"><td class="memItemLeft" align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a0bd6046e068ef63e3f2b6bead48e02a7">getPacketLength</a> (bool update=true)=0</td></tr>
|
|
<tr class="memdesc:a0bd6046e068ef63e3f2b6bead48e02a7"><td class="mdescLeft"> </td><td class="mdescRight">Query modem for the packet length of received payload. Must be implemented in module class. <a href="class_physical_layer.html#a0bd6046e068ef63e3f2b6bead48e02a7">More...</a><br /></td></tr>
|
|
<tr class="separator:a0bd6046e068ef63e3f2b6bead48e02a7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acd9171bd71aa80fb86113b612c42de53"><td class="memItemLeft" align="right" valign="top">int32_t </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"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a76113e10481743094a1cd0280692b0a9"><td class="memItemLeft" align="right" valign="top">int32_t </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"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a34543b885aa57ade08a4c659991e523e"><td class="memItemLeft" align="right" valign="top">virtual uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a34543b885aa57ade08a4c659991e523e">randomByte</a> ()=0</td></tr>
|
|
<tr class="memdesc:a34543b885aa57ade08a4c659991e523e"><td class="mdescLeft"> </td><td class="mdescRight">Get one truly random byte from RSSI noise. Must be implemented in module class. <a href="class_physical_layer.html#a34543b885aa57ade08a4c659991e523e">More...</a><br /></td></tr>
|
|
<tr class="separator:a34543b885aa57ade08a4c659991e523e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a88a10657bd2215a11a2331f937414b55"><td class="memItemLeft" align="right" valign="top">int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a88a10657bd2215a11a2331f937414b55">startDirect</a> ()</td></tr>
|
|
<tr class="memdesc:a88a10657bd2215a11a2331f937414b55"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8e378fe136a498ea485a9c10f5e15aab"><td class="memItemLeft" align="right" valign="top">int16_t </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"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab76fe7d3e0f453a807b205161c980086"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ab76fe7d3e0f453a807b205161c980086">setDirectAction</a> (void(*func)(void))=0</td></tr>
|
|
<tr class="memdesc:ab76fe7d3e0f453a807b205161c980086"><td class="mdescLeft"> </td><td class="mdescRight">Set interrupt service routine function to call when data bit is receveid in direct mode. Must be implemented in module class. <a href="class_physical_layer.html#ab76fe7d3e0f453a807b205161c980086">More...</a><br /></td></tr>
|
|
<tr class="separator:ab76fe7d3e0f453a807b205161c980086"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9b720e7776ad7ea805932578907b0058"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a9b720e7776ad7ea805932578907b0058">readBit</a> (RADIOLIB_PIN_TYPE pin)=0</td></tr>
|
|
<tr class="memdesc:a9b720e7776ad7ea805932578907b0058"><td class="mdescLeft"> </td><td class="mdescRight">Function to read and process data bit in direct reception mode. Must be implemented in module class. <a href="class_physical_layer.html#a9b720e7776ad7ea805932578907b0058">More...</a><br /></td></tr>
|
|
<tr class="separator:a9b720e7776ad7ea805932578907b0058"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab57182d32646861ef0d865e2740d6b26"><td class="memItemLeft" align="right" valign="top">int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#ab57182d32646861ef0d865e2740d6b26">available</a> ()</td></tr>
|
|
<tr class="memdesc:ab57182d32646861ef0d865e2740d6b26"><td class="mdescLeft"> </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"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a429796eb2e7ea86781a2e8ca42af43f3"><td class="memItemLeft" align="right" valign="top"><a id="a429796eb2e7ea86781a2e8ca42af43f3"></a>
|
|
void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a429796eb2e7ea86781a2e8ca42af43f3">dropSync</a> ()</td></tr>
|
|
<tr class="memdesc:a429796eb2e7ea86781a2e8ca42af43f3"><td class="mdescLeft"> </td><td class="mdescRight">Forcefully drop synchronization. <br /></td></tr>
|
|
<tr class="separator:a429796eb2e7ea86781a2e8ca42af43f3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4d5b30493c8d7fcfb784e128362d596c"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a4d5b30493c8d7fcfb784e128362d596c">read</a> (bool drop=true)</td></tr>
|
|
<tr class="memdesc:a4d5b30493c8d7fcfb784e128362d596c"><td class="mdescLeft"> </td><td class="mdescRight">Get data from direct mode buffer. <a href="class_physical_layer.html#a4d5b30493c8d7fcfb784e128362d596c">More...</a><br /></td></tr>
|
|
<tr class="separator:a4d5b30493c8d7fcfb784e128362d596c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a47c1d94d2ad2fd7eb5d11480b44cc368"><td class="memItemLeft" align="right" valign="top">virtual int16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_physical_layer.html#a47c1d94d2ad2fd7eb5d11480b44cc368">setDIOMapping</a> (RADIOLIB_PIN_TYPE pin, uint8_t value)</td></tr>
|
|
<tr class="memdesc:a47c1d94d2ad2fd7eb5d11480b44cc368"><td class="mdescLeft"> </td><td class="mdescRight">Configure DIO pin mapping to get a given signal on a DIO pin (if available). <a href="class_physical_layer.html#a47c1d94d2ad2fd7eb5d11480b44cc368">More...</a><br /></td></tr>
|
|
<tr class="separator:a47c1d94d2ad2fd7eb5d11480b44cc368"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
|
|
Friends</h2></td></tr>
|
|
<tr class="memitem:acb94e5999123b5a1c63dd279b2a5a251"><td class="memItemLeft" align="right" valign="top"><a id="acb94e5999123b5a1c63dd279b2a5a251"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>AFSKClient</b></td></tr>
|
|
<tr class="separator:acb94e5999123b5a1c63dd279b2a5a251"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a018393f703a257e39cd263cccf4ffad5"><td class="memItemLeft" align="right" valign="top"><a id="a018393f703a257e39cd263cccf4ffad5"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>RTTYClient</b></td></tr>
|
|
<tr class="separator:a018393f703a257e39cd263cccf4ffad5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae5c5757c553100373984a416b6c3690a"><td class="memItemLeft" align="right" valign="top"><a id="ae5c5757c553100373984a416b6c3690a"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>MorseClient</b></td></tr>
|
|
<tr class="separator:ae5c5757c553100373984a416b6c3690a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afeb005bab389f137def61f1acc3714d3"><td class="memItemLeft" align="right" valign="top"><a id="afeb005bab389f137def61f1acc3714d3"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>HellClient</b></td></tr>
|
|
<tr class="separator:afeb005bab389f137def61f1acc3714d3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae8dd4f2f60ef4fd1fa1868a7a630ab20"><td class="memItemLeft" align="right" valign="top"><a id="ae8dd4f2f60ef4fd1fa1868a7a630ab20"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>SSTVClient</b></td></tr>
|
|
<tr class="separator:ae8dd4f2f60ef4fd1fa1868a7a630ab20"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0012621c1414f4c7573e961b57884a5b"><td class="memItemLeft" align="right" valign="top"><a id="a0012621c1414f4c7573e961b57884a5b"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>AX25Client</b></td></tr>
|
|
<tr class="separator:a0012621c1414f4c7573e961b57884a5b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac0313fe86041eb37d290019203e095d3"><td class="memItemLeft" align="right" valign="top"><a id="ac0313fe86041eb37d290019203e095d3"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>FSK4Client</b></td></tr>
|
|
<tr class="separator:ac0313fe86041eb37d290019203e095d3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a41ff2710d9e3a626becfa7a093900052"><td class="memItemLeft" align="right" valign="top"><a id="a41ff2710d9e3a626becfa7a093900052"></a>
|
|
class </td><td class="memItemRight" valign="bottom"><b>PagerClient</b></td></tr>
|
|
<tr class="separator:a41ff2710d9e3a626becfa7a093900052"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN. Also extracts some common module-independent methods. Using this interface class allows to use the protocols on various modules without much code duplicity. Because this class is used mainly as interface, all of its virtual members must be implemented in the module class. </p>
|
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a5e02457f1d519cf81b1590a182321c62"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5e02457f1d519cf81b1590a182321c62">◆ </a></span>PhysicalLayer()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">PhysicalLayer::PhysicalLayer </td>
|
|
<td>(</td>
|
|
<td class="paramtype">float </td>
|
|
<td class="paramname"><em>freqStep</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>maxPacketLength</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</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">freqStep</td><td>Frequency step of the synthesizer in Hz.</td></tr>
|
|
<tr><td class="paramname">maxPacketLength</td><td>Maximum length of packet that can be received by the module. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="ab57182d32646861ef0d865e2740d6b26"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab57182d32646861ef0d865e2740d6b26">◆ </a></span>available()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::available </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get the number of direct mode bytes currently available in buffer. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Number of available bytes. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aeba51a21ad3c6d56b61a55061de7fc92"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aeba51a21ad3c6d56b61a55061de7fc92">◆ </a></span>finishTransmit()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::finishTransmit </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Clean up after transmission is done. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a4587409a9b96a0c496cf12b3acac20c4">SX128x</a>, <a class="el" href="class_s_x127x.html#a7fd9cec52b7fbd0c69cbd861dc17549f">SX127x</a>, <a class="el" href="class_s_x126x.html#a8e22d67b64953c8b4da779d87d563f3e">SX126x</a>, <a class="el" href="class_si443x.html#a6792f13441a1bbb3340d2ba3d9abbec3">Si443x</a>, <a class="el" href="class_r_f69.html#a3e449fa06c9e76cf69585bfbeed1c46b">RF69</a>, <a class="el" href="classn_r_f24.html#af0c21ff66c011dfdc1ad12bc7dd11c2f">nRF24</a>, and <a class="el" href="class_c_c1101.html#af70ea860154cd6d2b2e2a6962e161c8f">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a977e5236693960bb1c79090a201e9e1c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a977e5236693960bb1c79090a201e9e1c">◆ </a></span>getFreqStep()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">float PhysicalLayer::getFreqStep </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Gets the module frequency step size that was set in constructor. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Synthesizer frequency step size in Hz. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0bd6046e068ef63e3f2b6bead48e02a7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0bd6046e068ef63e3f2b6bead48e02a7">◆ </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">virtual size_t PhysicalLayer::getPacketLength </td>
|
|
<td>(</td>
|
|
<td class="paramtype">bool </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Query modem for the packet length of received payload. Must be implemented in module class. </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>Implemented in <a class="el" href="class_s_x128x.html#a390fd0749b316eed67da7b54f4f24735">SX128x</a>, <a class="el" href="class_s_x127x.html#a462fa74275e67c296328a01f361892d5">SX127x</a>, <a class="el" href="class_s_x126x.html#ac4ef8c8751a3c09d64e431684840c987">SX126x</a>, <a class="el" href="class_si443x.html#a2d944669dc69ccd47f9e6c360f2ffd10">Si443x</a>, <a class="el" href="class_r_f69.html#a86a080086c0228d23e2cb77d2b1915c1">RF69</a>, <a class="el" href="classn_r_f24.html#a23ea1749c21863ebc5bd3a2b08d64f3b">nRF24</a>, and <a class="el" href="class_c_c1101.html#a122281f6a915b77ee9dafc9926e731a0">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="acd9171bd71aa80fb86113b612c42de53"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acd9171bd71aa80fb86113b612c42de53">◆ </a></span>random() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int32_t PhysicalLayer::random </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int32_t </td>
|
|
<td class="paramname"><em>max</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get truly random number in range 0 - max. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">max</td><td>The maximum value of the random number (non-inclusive).</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Random number. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a76113e10481743094a1cd0280692b0a9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a76113e10481743094a1cd0280692b0a9">◆ </a></span>random() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int32_t PhysicalLayer::random </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int32_t </td>
|
|
<td class="paramname"><em>min</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int32_t </td>
|
|
<td class="paramname"><em>max</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get truly random number in range min - max. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">min</td><td>The minimum value of the random number (inclusive).</td></tr>
|
|
<tr><td class="paramname">max</td><td>The maximum value of the random number (non-inclusive).</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Random number. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a34543b885aa57ade08a4c659991e523e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a34543b885aa57ade08a4c659991e523e">◆ </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">virtual uint8_t PhysicalLayer::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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get one truly random byte from RSSI noise. Must be implemented in module class. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>TRNG byte. </dd></dl>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a95637e8addc48b0e1c30c2cf6f54354a">SX128x</a>, <a class="el" href="class_s_x127x.html#a68cba1ff1e6bfd9b3034c97f3932e450">SX127x</a>, <a class="el" href="class_s_x126x.html#a819bb3ced0f184a63cbfbef408a68561">SX126x</a>, <a class="el" href="class_si443x.html#a74848176d435227e601c86ff37b0edbe">Si443x</a>, <a class="el" href="class_r_f69.html#a2023f0f22aad00a702bdf598c2154043">RF69</a>, <a class="el" href="classn_r_f24.html#a5cc7cd54db2a6af1c9183a2d0653fe2e">nRF24</a>, and <a class="el" href="class_c_c1101.html#a7ecf49d530ea7c29dd755f56db17d833">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4d5b30493c8d7fcfb784e128362d596c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4d5b30493c8d7fcfb784e128362d596c">◆ </a></span>read()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">uint8_t PhysicalLayer::read </td>
|
|
<td>(</td>
|
|
<td class="paramtype">bool </td>
|
|
<td class="paramname"><em>drop</em> = <code>true</code></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get data from direct mode buffer. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">drop</td><td>Drop synchronization on read - next reading will require waiting for the sync word again. Defautls to true.</td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>Byte from direct mode buffer. </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9b720e7776ad7ea805932578907b0058"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9b720e7776ad7ea805932578907b0058">◆ </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">virtual void PhysicalLayer::readBit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">RADIOLIB_PIN_TYPE </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Function to read and process data bit in direct reception mode. Must be implemented in module class. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">pin</td><td>Pin on which to read. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a2dd0ecae9f54cf6943cf702ae15f5039">SX128x</a>, <a class="el" href="class_s_x127x.html#a071442611a32154e8b3db7981f242a53">SX127x</a>, <a class="el" href="class_s_x126x.html#aff80db65e546934980feac7e6c81dd80">SX126x</a>, <a class="el" href="class_si443x.html#a45d3ffcb312c34a2f6391be6d609d7b7">Si443x</a>, <a class="el" href="class_r_f69.html#a0ca79ae99c3e0c9d7c097a7acefd6faa">RF69</a>, <a class="el" href="classn_r_f24.html#a2db0cd487b03f937afc0bc2e3eccb6f6">nRF24</a>, and <a class="el" href="class_c_c1101.html#a5cebec89fc0fa0f5ccbce28c6ce7d2dc">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae8eed0e888a7c8742e89d2b850977de2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae8eed0e888a7c8742e89d2b850977de2">◆ </a></span>readData() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::readData </td>
|
|
<td>(</td>
|
|
<td class="paramtype">String & </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>len</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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. When set to 0, the packet length will be retreived automatically. When more bytes than received are requested, only the number of bytes requested will be returned.</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="ae8b6c756eb4b92855433ca389d73c632"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae8b6c756eb4b92855433ca389d73c632">◆ </a></span>readData() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::readData </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t * </td>
|
|
<td class="paramname"><em>data</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>len</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </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 read. When set to 0, the packet length will be retreived automatically. When more bytes than received are requested, only the number of bytes requested will be returned.</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>Implemented in <a class="el" href="class_s_x128x.html#a94bca43258b09217fb476a2d8db784bb">SX128x</a>, <a class="el" href="class_s_x127x.html#abfc840e8d6fe5e222f0143be17876745">SX127x</a>, <a class="el" href="class_s_x126x.html#a3350cbfab628956c1a456383ac7bb2b2">SX126x</a>, <a class="el" href="class_si443x.html#ad00ff8b58c68118ad74fee82028aa71e">Si443x</a>, <a class="el" href="class_r_f69.html#a3983b66c83818b4082805bcafc712f00">RF69</a>, <a class="el" href="classn_r_f24.html#a410fb78acb4ed358818c132687b8857a">nRF24</a>, and <a class="el" href="class_c_c1101.html#a8c79975a7bbe8a37f8214ecd1f69ba22">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afb1b090348d9091bfa3a0b5ba3d85b36"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afb1b090348d9091bfa3a0b5ba3d85b36">◆ </a></span>receive() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::receive </td>
|
|
<td>(</td>
|
|
<td class="paramtype">String & </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>len</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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="a2ad4c6a8ac267f8ac590260414ffcda3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2ad4c6a8ac267f8ac590260414ffcda3">◆ </a></span>receive() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::receive </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t * </td>
|
|
<td class="paramname"><em>data</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>len</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </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>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a32b7b674d63c36f15b7f58a2cb837a99">SX128x</a>, <a class="el" href="class_s_x127x.html#adfe0d3f033a23ec2f3c2a407285d357c">SX127x</a>, <a class="el" href="class_s_x126x.html#ae3db6b29c482d94eef8a43cd8b5751c0">SX126x</a>, <a class="el" href="class_si443x.html#aabca3ba8eda212938febab1df2e764b4">Si443x</a>, <a class="el" href="class_r_f69.html#ae36e8e6042245621a182b29526fe2245">RF69</a>, <a class="el" href="classn_r_f24.html#a239e94511d9ee67ad3d64a49a5c4d7ac">nRF24</a>, and <a class="el" href="class_c_c1101.html#aedc1067d0334bb69ed5316146014097d">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a46b22145b33e97cf6065ed826799b6b4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a46b22145b33e97cf6065ed826799b6b4">◆ </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">virtual int16_t PhysicalLayer::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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Enables direct reception mode on pins DIO1 (clock) and DIO2 (data). Must be implemented in module class. While in direct mode, the module will not be able to transmit or receive packets. Can only be activated in FSK mode. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#aff7d86352c98771595375e17d19a2a97">SX128x</a>, <a class="el" href="class_s_x127x.html#aa7ac558d537c6364c4bc82c8f33e398f">SX127x</a>, <a class="el" href="class_s_x126x.html#a8a18aee2bf05793aa29b5cf6b47bb435">SX126x</a>, <a class="el" href="class_si443x.html#a178b471527813a608c04db7d3c9648d6">Si443x</a>, <a class="el" href="class_r_f69.html#abd556b0f455f9510213b17588a4baf1b">RF69</a>, <a class="el" href="classn_r_f24.html#a415d86947742e981bfcf7f2371f8605c">nRF24</a>, and <a class="el" href="class_c_c1101.html#ab053c185330519d58f364790108d29ac">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a56e9cf39bc8847492f7f3cd67ebf1c46"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a56e9cf39bc8847492f7f3cd67ebf1c46">◆ </a></span>setBitRate()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::setBitRate </td>
|
|
<td>(</td>
|
|
<td class="paramtype">float </td>
|
|
<td class="paramname"><em>br</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets FSK bit rate. Only available in FSK mode. Must be implemented in module class. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">br</td><td>Bit 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>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a465ac114dbe6844069b5cb989f87c3ee">SX128x</a>, <a class="el" href="class_s_x127x.html#a606d839b3a992c681ac9ad7ca6020022">SX127x</a>, <a class="el" href="class_s_x126x.html#a7deeef45d7f64a4018a3e56aaea4eb0e">SX126x</a>, <a class="el" href="class_si443x.html#ad43575e731dd7e66d5ad9e6dccd27170">Si443x</a>, <a class="el" href="class_r_f69.html#ad7f8132912a5dbf38c5cf676ac167d13">RF69</a>, <a class="el" href="classn_r_f24.html#a0873f58ae62e41cff99813e21cc8b02a">nRF24</a>, and <a class="el" href="class_c_c1101.html#aa53427cabcda0778f287ed1d850bbe37">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab643a814dce48f71a13bf6ea23f44cbd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab643a814dce48f71a13bf6ea23f44cbd">◆ </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">virtual int16_t PhysicalLayer::setDataShaping </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets GFSK data shaping. Only available in FSK mode. Must be implemented in module class. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">sh</td><td>Shaping to be set. See <a class="el" href="group__config__shaping.html">Data shaping filter values aliases.</a> for possible values.</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>Implemented in <a class="el" href="class_s_x128x.html#a99491c705e88dddc820f884b778f1660">SX128x</a>, <a class="el" href="class_s_x1278.html#afb740a4925b64d83d5edca10d93f0563">SX1278</a>, <a class="el" href="class_s_x1272.html#a91aca64124321c07a67f26b3c6934aea">SX1272</a>, <a class="el" href="class_s_x126x.html#a1d8f4deb555844b24c2426dd86e69676">SX126x</a>, <a class="el" href="class_si443x.html#ade08c79074c7e4414d34eefa25cee168">Si443x</a>, <a class="el" href="class_r_f69.html#a42b99e437454e92c6932c3b7acc1fc4a">RF69</a>, <a class="el" href="classn_r_f24.html#a0db248d2bcdb4ca2b401e8e638442916">nRF24</a>, and <a class="el" href="class_c_c1101.html#adf96e77f25b7e256891601bef04f35a6">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a47c1d94d2ad2fd7eb5d11480b44cc368"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a47c1d94d2ad2fd7eb5d11480b44cc368">◆ </a></span>setDIOMapping()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::setDIOMapping </td>
|
|
<td>(</td>
|
|
<td class="paramtype">RADIOLIB_PIN_TYPE </td>
|
|
<td class="paramname"><em>pin</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>value</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</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>Configure DIO pin mapping to get a given signal on a DIO pin (if available). </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">pin</td><td>Pin number onto which a signal is to be placed.</td></tr>
|
|
<tr><td class="paramname">value</td><td>The value that indicates which function to place on that pin. See chip datasheet for details.</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>Reimplemented in <a class="el" href="class_s_x127x.html#adbea7515add3d81c3024ceb0d570266b">SX127x</a>, <a class="el" href="class_r_f69.html#a4b879c689b19036411d884f6657f95db">RF69</a>, and <a class="el" href="class_c_c1101.html#a1acad996e9452c504cf0f89806c46c8a">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab76fe7d3e0f453a807b205161c980086"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab76fe7d3e0f453a807b205161c980086">◆ </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">virtual void PhysicalLayer::setDirectAction </td>
|
|
<td>(</td>
|
|
<td class="paramtype">void(*)(void) </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Set interrupt service routine function to call when data bit is receveid in direct mode. Must be implemented in module class. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">func</td><td>Pointer to interrupt service routine. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#aff1b549077b9d752f53bf9dfc6840236">SX128x</a>, <a class="el" href="class_s_x127x.html#aa3f409359eafa5988e8e4c2948735238">SX127x</a>, <a class="el" href="class_s_x126x.html#abbf8b4623da8c2caa83a8c3d35a44d0a">SX126x</a>, <a class="el" href="class_si443x.html#a55fae20e81755c8b014d080741d61913">Si443x</a>, <a class="el" href="class_r_f69.html#a7fd34332bec08828080b1b4a0f8c6e28">RF69</a>, <a class="el" href="classn_r_f24.html#a3da63a447659f92153654d31a5d2854c">nRF24</a>, and <a class="el" href="class_c_c1101.html#a5161fa10b19d857840579601ef565363">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8e378fe136a498ea485a9c10f5e15aab"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8e378fe136a498ea485a9c10f5e15aab">◆ </a></span>setDirectSyncWord()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::setDirectSyncWord </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint32_t </td>
|
|
<td class="paramname"><em>syncWord</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>len</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Set sync word to be used to determine start of packet in direct reception mode. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">syncWord</td><td>Sync word bits.</td></tr>
|
|
<tr><td class="paramname">len</td><td>Sync word length in bits. Set to zero to disable sync word matching.</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="a7d3419227d201d6912b77784636d437d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7d3419227d201d6912b77784636d437d">◆ </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">virtual int16_t PhysicalLayer::setEncoding </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets FSK data encoding. Only available in FSK mode. Must be implemented in module class. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">enc</td><td>Encoding to be used. See <a class="el" href="group__config__encoding.html">Encoding type aliases.</a> for possible values.</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>Implemented in <a class="el" href="class_s_x128x.html#a8720a388d2cd10fac3112b89f4a80947">SX128x</a>, <a class="el" href="class_s_x127x.html#abad2d455012bd28d304589c8164390eb">SX127x</a>, <a class="el" href="class_s_x126x.html#a2b3eb51117558c58384b03de4b7bfe60">SX126x</a>, <a class="el" href="class_si443x.html#a1382fc3b68f447e381613e6670747128">Si443x</a>, <a class="el" href="class_r_f69.html#aae828ce8dda16da4e54d2f18b1fb8af2">RF69</a>, <a class="el" href="classn_r_f24.html#a0429a9d6524005065e6fac21aaebdcbf">nRF24</a>, and <a class="el" href="class_c_c1101.html#ab4b98eb6af33d006306bb7514ed216ea">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4928642e647f2dd5b614b87b681cb0a6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4928642e647f2dd5b614b87b681cb0a6">◆ </a></span>setFrequency()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::setFrequency </td>
|
|
<td>(</td>
|
|
<td class="paramtype">float </td>
|
|
<td class="paramname"><em>freq</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets carrier frequency. Must be implemented in module class. </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>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a2043ef7bb806968b9d9dcb64561ca371">SX128x</a>, <a class="el" href="class_s_x1279.html#acf9b2087f5b661f06e9512bad36b3817">SX1279</a>, <a class="el" href="class_s_x1278.html#a4b14d432ef1bd72982f4771cac5b62e4">SX1278</a>, <a class="el" href="class_s_x1277.html#a42adde5eecccdca95214980848795e82">SX1277</a>, <a class="el" href="class_s_x1276.html#a657d75dced0af8c89c4e38535dd5b008">SX1276</a>, <a class="el" href="class_s_x1272.html#af409f50e51042cf9357c0a8267f762f8">SX1272</a>, <a class="el" href="class_s_x1268.html#abf338b7036d692a4a8ca6bf305c0cb12">SX1268</a>, <a class="el" href="class_s_x1262.html#abb018b820eb71ca6b0cd92c62affa767">SX1262</a>, <a class="el" href="class_si4432.html#aa0cdb6cb53bb0176803d5115356a8e84">Si4432</a>, <a class="el" href="class_si4430.html#a025a31861d1511090168e416140d0343">Si4430</a>, <a class="el" href="class_r_f_m96.html#ae2be63ae8365648098b84cc86475fb84">RFM96</a>, <a class="el" href="class_r_f_m95.html#a9dbe60f998ddc661282ebf454dba0f87">RFM95</a>, <a class="el" href="class_r_f69.html#ab467f0fc318e651d0cdfbc0399d4c34b">RF69</a>, <a class="el" href="classn_r_f24.html#a408278336cdf25fd205ecffea86c26e8">nRF24</a>, and <a class="el" href="class_c_c1101.html#a9592c023556c38c2b8066a23da96ae5e">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab9060e8ab7a2da192b3bf53b3501553b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab9060e8ab7a2da192b3bf53b3501553b">◆ </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">virtual int16_t PhysicalLayer::setFrequencyDeviation </td>
|
|
<td>(</td>
|
|
<td class="paramtype">float </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets FSK frequency deviation from carrier frequency. Only available in FSK mode. Must be implemented in module class. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">freqDev</td><td>Frequency deviation to be set (in kHz).</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>Implemented in <a class="el" href="class_s_x128x.html#a26d0d02e5e53a3172df9208fa343a3f1">SX128x</a>, <a class="el" href="class_s_x127x.html#a448ea8a6a6011a9cdddd4e09bd6c9679">SX127x</a>, <a class="el" href="class_s_x126x.html#a7cd95a5f2e39ae8fb1a3040e77fa21a3">SX126x</a>, <a class="el" href="class_si443x.html#a7c4e6caa95e5622f6f515ba0339a1c66">Si443x</a>, <a class="el" href="class_r_f69.html#adb9fbfedf95f34ac537815870b98a9be">RF69</a>, <a class="el" href="classn_r_f24.html#a5170284f0a5535de7d00216d450b87a4">nRF24</a>, and <a class="el" href="class_c_c1101.html#a0d69713b9f20c9de354c13c3167b18b3">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0e77da761a2cbb5c9535df0bdea993f9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0e77da761a2cbb5c9535df0bdea993f9">◆ </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">virtual int16_t PhysicalLayer::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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets module to standby. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="group__status__codes.html">Status Codes</a> </dd></dl>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#a2be8cc6c3b61b59cb6a6ca4f6a030b45">SX128x</a>, <a class="el" href="class_s_x127x.html#a760b8c5103128f122fbe489c6529ce41">SX127x</a>, <a class="el" href="class_s_x126x.html#a7a1579e2557c36a4a34b09039c0d0c71">SX126x</a>, <a class="el" href="class_si443x.html#ac45d2776df3ff338db154ead143fb7b8">Si443x</a>, <a class="el" href="class_r_f69.html#a20242499eb926ff7b7da6e3f74a9ece1">RF69</a>, <a class="el" href="classn_r_f24.html#a5957f06a891d3d9c07e87b59c239ce56">nRF24</a>, and <a class="el" href="class_c_c1101.html#a7612bf81e48086004c62548de2682266">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a88a10657bd2215a11a2331f937414b55"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a88a10657bd2215a11a2331f937414b55">◆ </a></span>startDirect()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::startDirect </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Configure module parameters for direct modes. Must be called prior to "ham" modes like RTTY or AX.25. Only available in FSK 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="a923654706eff5118ef6e84214e837f27"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a923654706eff5118ef6e84214e837f27">◆ </a></span>startTransmit() <span class="overload">[1/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::startTransmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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">◆ </a></span>startTransmit() <span class="overload">[2/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::startTransmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">String & </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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="a41a1de0ebffe7b65de6fd8cceb9a5123"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a41a1de0ebffe7b65de6fd8cceb9a5123">◆ </a></span>startTransmit() <span class="overload">[3/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::startTransmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t * </td>
|
|
<td class="paramname"><em>data</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>len</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </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>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#aef221e7d463c5228ce00ed6934512848">SX128x</a>, <a class="el" href="class_s_x127x.html#adc2f1379573b7a7b5ee8125ea3752083">SX127x</a>, <a class="el" href="class_s_x126x.html#ab843614658a79db7aa24e48d5b6e84f1">SX126x</a>, <a class="el" href="class_si443x.html#a402b4f5f11ba79e9cd4fb6ac0bfd9314">Si443x</a>, <a class="el" href="class_r_f69.html#a855dc194947b095b821ec1524ba6814c">RF69</a>, <a class="el" href="class_c_c1101.html#a0df2938e2509a8f2746b20ae0558d4ea">CC1101</a>, and <a class="el" href="classn_r_f24.html#a42fdc828b49f2b8e15457189bd57d917">nRF24</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab139a34e03a6fd5a781cd54da21d308f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab139a34e03a6fd5a781cd54da21d308f">◆ </a></span>transmit() <span class="overload">[1/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::transmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">__FlashStringHelper * </td>
|
|
<td class="paramname"><em>fstr</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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">◆ </a></span>transmit() <span class="overload">[2/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::transmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const char * </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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">◆ </a></span>transmit() <span class="overload">[3/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int16_t PhysicalLayer::transmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">String & </td>
|
|
<td class="paramname"><em>str</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></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="af81565ee82ef9a7de9c5663c745f4ef7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af81565ee82ef9a7de9c5663c745f4ef7">◆ </a></span>transmit() <span class="overload">[4/4]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int16_t PhysicalLayer::transmit </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint8_t * </td>
|
|
<td class="paramname"><em>data</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>len</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">uint8_t </td>
|
|
<td class="paramname"><em>addr</em> = <code>0</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">pure virtual</span></span> </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>
|
|
|
|
<p>Implemented in <a class="el" href="class_s_x128x.html#af253e1e45361de74aefd01a7c73c28f5">SX128x</a>, <a class="el" href="class_s_x127x.html#a9c4ea3285922bf01cebd2c8a706d9a29">SX127x</a>, <a class="el" href="class_s_x126x.html#aab18364237ddac0c56aeaf63f08cf009">SX126x</a>, <a class="el" href="class_si443x.html#a782748025e19ec6e597293afb6570bff">Si443x</a>, <a class="el" href="class_r_f69.html#a09ba80f60ee7974011a4b4f6c18c6847">RF69</a>, <a class="el" href="class_c_c1101.html#a7cb99a9200b21829b50e3fc3878573f4">CC1101</a>, and <a class="el" href="classn_r_f24.html#a583d505bd3a638ecc5576dd2dd95f044">nRF24</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4b04eb6155b06d8ef400131c647d54e7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4b04eb6155b06d8ef400131c647d54e7">◆ </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">virtual int16_t PhysicalLayer::transmitDirect </td>
|
|
<td>(</td>
|
|
<td class="paramtype">uint32_t </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">pure virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Enables direct transmission mode on pins DIO1 (clock) and DIO2 (data). Must be implemented in module class. While in direct mode, the module will not be able to transmit or receive packets. Can only be activated in FSK mode. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">frf</td><td>24-bit raw frequency value to start transmitting at. 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>Implemented in <a class="el" href="class_s_x128x.html#a53892566b0259d348158efe3c3c3601a">SX128x</a>, <a class="el" href="class_s_x127x.html#aefeeb9f7192e11a75b5dfb1ab8488e84">SX127x</a>, <a class="el" href="class_s_x126x.html#a921aa8afb8d33b2660731c1f8d67664b">SX126x</a>, <a class="el" href="class_si443x.html#a5a86a2032c4b876c1c8e4a7cf4730c99">Si443x</a>, <a class="el" href="class_r_f69.html#a222682569338abb49d6952430b6eebdd">RF69</a>, <a class="el" href="classn_r_f24.html#a090bb64f65309efabfa1ffd86daa2303">nRF24</a>, and <a class="el" href="class_c_c1101.html#a240eef8fa7d838d76f3c11086dc50e46">CC1101</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li>src/protocols/PhysicalLayer/<a class="el" href="_physical_layer_8h_source.html">PhysicalLayer.h</a></li>
|
|
<li>src/protocols/PhysicalLayer/PhysicalLayer.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="class_physical_layer.html">PhysicalLayer</a></li>
|
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|