<divclass="line"><aname="l00529"></a><spanclass="lineno"> 529</span> <spanclass="preprocessor"> #if RADIOLIB_DEBUG and defined(RADIOLIB_BUILD_ARDUINO)</span></div>
<divclass="line"><aname="l00530"></a><spanclass="lineno"> 530</span> <spanclass="keyword">static</span><spanclass="keywordtype">size_t</span> serialPrintf(<spanclass="keyword">const</span><spanclass="keywordtype">char</span>* format, ...);</div>
<divclass="ttc"id="aclass_module_html"><divclass="ttname"><ahref="class_module.html">Module</a></div><divclass="ttdoc">Implements all common low-level methods to control the wireless module. Every module class contains o...</div><divclass="ttdef"><b>Definition:</b> Module.h:68</div></div>
<divclass="ttc"id="aclass_module_html_a0c11551e12579bbabf57b19e12555b3c"><divclass="ttname"><ahref="class_module.html#a0c11551e12579bbabf57b19e12555b3c">Module::RFSWITCH_MAX_PINS</a></div><divclass="ttdeci">static const size_t RFSWITCH_MAX_PINS</div><divclass="ttdoc">The maximum number of pins supported by the RF switch code. Note: It is not recommended to use this c...</div><divclass="ttdef"><b>Definition:</b> Module.h:77</div></div>
<divclass="ttc"id="aclass_module_html_a1ad7bef7d380d3b6b88dca99bd35d640"><divclass="ttname"><ahref="class_module.html#a1ad7bef7d380d3b6b88dca99bd35d640">Module::SPIcheckStatusCb_t</a></div><divclass="ttdeci">int16_t(* SPIcheckStatusCb_t)(Module *mod)</div><divclass="ttdoc">Callback for validation SPI status.</div><divclass="ttdef"><b>Definition:</b> Module.h:169</div></div>
<divclass="ttc"id="aclass_module_html_a369e916626c821ecec85f25d5b46d752"><divclass="ttname"><ahref="class_module.html#a369e916626c821ecec85f25d5b46d752">Module::SPIgetRegValue</a></div><divclass="ttdeci">int16_t SPIgetRegValue(uint32_t reg, uint8_t msb=7, uint8_t lsb=0)</div><divclass="ttdoc">SPI read method that automatically masks unused bits. This method is the preferred SPI read mechanism...</div><divclass="ttdef"><b>Definition:</b> Module.cpp:55</div></div>
<divclass="ttc"id="aclass_module_html_a3a4fc4101fb3f134152b458c447b8ecb"><divclass="ttname"><ahref="class_module.html#a3a4fc4101fb3f134152b458c447b8ecb">Module::spiConfig</a></div><divclass="ttdeci">SPIConfig_t spiConfig</div><divclass="ttdoc">SPI configuration structure. The default configuration corresponds to register-access modules,...</div><divclass="ttdef"><b>Definition:</b> Module.h:199</div></div>
<divclass="ttc"id="aclass_module_html_a4483f0a39a523dd1b37b467d81418f7d"><divclass="ttname"><ahref="class_module.html#a4483f0a39a523dd1b37b467d81418f7d">Module::hal</a></div><divclass="ttdeci">RadioLibHal * hal</div><divclass="ttdoc">Hardware abstraction layer to be used.</div><divclass="ttdef"><b>Definition:</b> Module.h:163</div></div>
<divclass="ttc"id="aclass_module_html_a47978200f7e2e408fb64f506c81cee9f"><divclass="ttname"><ahref="class_module.html#a47978200f7e2e408fb64f506c81cee9f">Module::waitForMicroseconds</a></div><divclass="ttdeci">void waitForMicroseconds(uint32_t start, uint32_t len)</div><divclass="ttdoc">Wait for time to elapse, either using the microsecond timer, or the TimerFlag. Note that in interrupt...</div><divclass="ttdef"><b>Definition:</b> Module.cpp:435</div></div>
<divclass="ttc"id="aclass_module_html_a4add1a875bb88e91da232118201a78a8"><divclass="ttname"><ahref="class_module.html#a4add1a875bb88e91da232118201a78a8">Module::reflect</a></div><divclass="ttdeci">static uint32_t reflect(uint32_t in, uint8_t bits)</div><divclass="ttdoc">Function to reflect bits within a byte.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:453</div></div>
<divclass="ttc"id="aclass_module_html_a4ea888758b4a7784082d513a1e7849a4"><divclass="ttname"><ahref="class_module.html#a4ea888758b4a7784082d513a1e7849a4">Module::operator=</a></div><divclass="ttdeci">Module & operator=(const Module &mod)</div><divclass="ttdoc">Overload for assignment operator.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:33</div></div>
<divclass="ttc"id="aclass_module_html_a4ec27f0ba5e0009ea9661a5110526b52"><divclass="ttname"><ahref="class_module.html#a4ec27f0ba5e0009ea9661a5110526b52">Module::getGpio</a></div><divclass="ttdeci">uint32_t getGpio() const</div><divclass="ttdoc">Access method to get the pin number of second interrupt/GPIO.</div><divclass="ttdef"><b>Definition:</b> Module.h:393</div></div>
<divclass="ttc"id="aclass_module_html_a5699a937b62ba41387567b4d679b9377"><divclass="ttname"><ahref="class_module.html#a5699a937b62ba41387567b4d679b9377">Module::findRfSwitchMode</a></div><divclass="ttdeci">const RfSwitchMode_t * findRfSwitchMode(uint8_t mode) const</div><divclass="ttdoc">Find a mode in the RfSwitchTable.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:573</div></div>
<divclass="ttc"id="aclass_module_html_a5a67b3a63420d762ecba9448671c99bf"><divclass="ttname"><ahref="class_module.html#a5a67b3a63420d762ecba9448671c99bf">Module::OpMode_t</a></div><divclass="ttdeci">OpMode_t</div><divclass="ttdoc">Constants to use in a mode table set be setRfSwitchTable. These constants work for most radios,...</div><divclass="ttdef"><b>Definition:</b> Module.h:100</div></div>
<divclass="ttc"id="aclass_module_html_a5a67b3a63420d762ecba9448671c99bfa81cdd8986054c2ae5657eb5dfd536770"><divclass="ttname"><ahref="class_module.html#a5a67b3a63420d762ecba9448671c99bfa81cdd8986054c2ae5657eb5dfd536770">Module::MODE_END_OF_TABLE</a></div><divclass="ttdeci">@ MODE_END_OF_TABLE</div><divclass="ttdoc">End of table marker, use END_OF_MODE_TABLE constant instead. Value is zero to ensure zero-initialized...</div><divclass="ttdef"><b>Definition:</b> Module.h:105</div></div>
<divclass="ttc"id="aclass_module_html_a5efa7ae78cab1d7f43005e965923f769"><divclass="ttname"><ahref="class_module.html#a5efa7ae78cab1d7f43005e965923f769">Module::SPIcheckStream</a></div><divclass="ttdeci">int16_t SPIcheckStream()</div><divclass="ttdoc">Method to check the result of last SPI stream transfer.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:288</div></div>
<divclass="ttc"id="aclass_module_html_a60ca6b4cae98f7d935191a569d519913"><divclass="ttname"><ahref="class_module.html#a60ca6b4cae98f7d935191a569d519913">Module::SPIwriteRegister</a></div><divclass="ttdeci">void SPIwriteRegister(uint32_t reg, uint8_t data)</div><divclass="ttdoc">SPI basic write method. Use of this method is reserved for special cases, SPIsetRegValue should be us...</div><divclass="ttdef"><b>Definition:</b> Module.cpp:154</div></div>
<divclass="ttc"id="aclass_module_html_a7d3adea64acab11c47c804afc74bd4f3"><divclass="ttname"><ahref="class_module.html#a7d3adea64acab11c47c804afc74bd4f3">Module::setRfSwitchPins</a></div><divclass="ttdeci">void setRfSwitchPins(uint32_t rxEn, uint32_t txEn)</div><divclass="ttdoc">Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...</div><divclass="ttdef"><b>Definition:</b> Module.cpp:550</div></div>
<divclass="ttc"id="aclass_module_html_a9393088249856eab568126aeb2493e4a"><divclass="ttname"><ahref="class_module.html#a9393088249856eab568126aeb2493e4a">Module::SPIparseStatusCb_t</a></div><divclass="ttdeci">int16_t(* SPIparseStatusCb_t)(uint8_t in)</div><divclass="ttdoc">Callback for parsing SPI status.</div><divclass="ttdef"><b>Definition:</b> Module.h:166</div></div>
<divclass="ttc"id="aclass_module_html_aa6cac04c7cb6d5278a318db0966ad1a7"><divclass="ttname"><ahref="class_module.html#aa6cac04c7cb6d5278a318db0966ad1a7">Module::getCs</a></div><divclass="ttdeci">uint32_t getCs() const</div><divclass="ttdoc">Access method to get the pin number of SPI chip select.</div><divclass="ttdef"><b>Definition:</b> Module.h:375</div></div>
<divclass="ttc"id="aclass_module_html_aa6df70520aa015dd3a1bccdceae67232"><divclass="ttname"><ahref="class_module.html#aa6df70520aa015dd3a1bccdceae67232">Module::SPItransfer</a></div><divclass="ttdeci">void SPItransfer(uint16_t cmd, uint32_t reg, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes)</div><divclass="ttdoc">SPI single transfer method.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:170</div></div>
<divclass="ttc"id="aclass_module_html_ab250eb929068e0c890e16e8e6d7cd7e6"><divclass="ttname"><ahref="class_module.html#ab250eb929068e0c890e16e8e6d7cd7e6">Module::SPIreadRegister</a></div><divclass="ttdeci">uint8_t SPIreadRegister(uint32_t reg)</div><divclass="ttdoc">SPI basic read method. Use of this method is reserved for special cases, SPIgetRegValue should be use...</div><divclass="ttdef"><b>Definition:</b> Module.cpp:120</div></div>
<divclass="ttc"id="aclass_module_html_ab61bc5066c356e2d0d79f08a2bd0fbc9"><divclass="ttname"><ahref="class_module.html#ab61bc5066c356e2d0d79f08a2bd0fbc9">Module::getIrq</a></div><divclass="ttdeci">uint32_t getIrq() const</div><divclass="ttdoc">Access method to get the pin number of interrupt/GPIO.</div><divclass="ttdef"><b>Definition:</b> Module.h:381</div></div>
<divclass="ttc"id="aclass_module_html_ac308fa817a5c36c5dc724a0d15cefd4d"><divclass="ttname"><ahref="class_module.html#ac308fa817a5c36c5dc724a0d15cefd4d">Module::setRfSwitchTable</a></div><divclass="ttdeci">void setRfSwitchTable(const uint32_t(&pins)[RFSWITCH_MAX_PINS], const RfSwitchMode_t table[])</div><divclass="ttdoc">Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...</div><divclass="ttdef"><b>Definition:</b> Module.cpp:566</div></div>
<divclass="ttc"id="aclass_module_html_ac3586c8d4013cbdd22cf34032632c181"><divclass="ttname"><ahref="class_module.html#ac3586c8d4013cbdd22cf34032632c181">Module::SPItransferStream</a></div><divclass="ttdeci">int16_t SPItransferStream(uint8_t *cmd, uint8_t cmdLen, bool write, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes, bool waitForGpio, uint32_t timeout)</div><divclass="ttdoc">SPI single transfer method for modules with stream-type SPI interface (SX126x, SX128x etc....</div><divclass="ttdef"><b>Definition:</b> Module.cpp:311</div></div>
<divclass="ttc"id="aclass_module_html_ad6cddbf3aebec9717a1a381dd81ad398"><divclass="ttname"><ahref="class_module.html#ad6cddbf3aebec9717a1a381dd81ad398">Module::getRst</a></div><divclass="ttdeci">uint32_t getRst() const</div><divclass="ttdoc">Access method to get the pin number of hardware reset pin.</div><divclass="ttdef"><b>Definition:</b> Module.h:387</div></div>
<divclass="ttc"id="aclass_module_html_adacceb57ecfecb09150c135b2b44436f"><divclass="ttname"><ahref="class_module.html#adacceb57ecfecb09150c135b2b44436f">Module::SPIreadStream</a></div><divclass="ttdeci">int16_t SPIreadStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)</div><divclass="ttdoc">Method to perform a read transaction with SPI stream.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:232</div></div>
<divclass="ttc"id="aclass_module_html_ade75c5403a05156b43cc7562563ae2d7"><divclass="ttname"><ahref="class_module.html#ade75c5403a05156b43cc7562563ae2d7">Module::SPIsetRegValue</a></div><divclass="ttdeci">int16_t SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF)</div><divclass="ttdoc">Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:65</div></div>
<divclass="ttc"id="aclass_module_html_af99b0e74e67417a88f500ab7261ddd20"><divclass="ttname"><ahref="class_module.html#af99b0e74e67417a88f500ab7261ddd20">Module::SPIwriteStream</a></div><divclass="ttdeci">int16_t SPIwriteStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)</div><divclass="ttdoc">Method to perform a write transaction with SPI stream.</div><divclass="ttdef"><b>Definition:</b> Module.cpp:260</div></div>
<divclass="ttc"id="agroup__status__codes_html_gacc0baeb3e5fc99760a07d18ba55531b6"><divclass="ttname"><ahref="group__status__codes.html#gacc0baeb3e5fc99760a07d18ba55531b6">RADIOLIB_ERR_UNKNOWN</a></div><divclass="ttdeci">#define RADIOLIB_ERR_UNKNOWN</div><divclass="ttdoc">There was an unexpected, unknown error. If you see this, something went incredibly wrong....</div><divclass="ttdef"><b>Definition:</b> TypeDef.h:110</div></div>
<divclass="ttc"id="astruct_module_1_1_rf_switch_mode__t_html"><divclass="ttname"><ahref="struct_module_1_1_rf_switch_mode__t.html">Module::RfSwitchMode_t</a></div><divclass="ttdoc">Description of RF switch pin states for a single mode. See setRfSwitchTable for details.</div><divclass="ttdef"><b>Definition:</b> Module.h:84</div></div>
<divclass="ttc"id="astruct_module_1_1_rf_switch_mode__t_html_a2442217bfabfb124a3f46bb128aa7462"><divclass="ttname"><ahref="struct_module_1_1_rf_switch_mode__t.html#a2442217bfabfb124a3f46bb128aa7462">Module::RfSwitchMode_t::mode</a></div><divclass="ttdeci">uint8_t mode</div><divclass="ttdoc">RF switching mode, one of OpMode_t or a custom radio-defined value.</div><divclass="ttdef"><b>Definition:</b> Module.h:86</div></div>
<divclass="ttc"id="astruct_module_1_1_s_p_i_config__t_html_a1a088c02ed02361746621ffbc2526681"><divclass="ttname"><ahref="struct_module_1_1_s_p_i_config__t.html#a1a088c02ed02361746621ffbc2526681">Module::SPIConfig_t::stream</a></div><divclass="ttdeci">bool stream</div><divclass="ttdoc">Whether the SPI module is stream-type (SX126x/8x) or registrer access type (SX127x,...</div><divclass="ttdef"><b>Definition:</b> Module.h:177</div></div>
<divclass="ttc"id="astruct_module_1_1_s_p_i_config__t_html_a5b689d2722b8980a211a562ed394d23e"><divclass="ttname"><ahref="struct_module_1_1_s_p_i_config__t.html#a5b689d2722b8980a211a562ed394d23e">Module::SPIConfig_t::statusPos</a></div><divclass="ttdeci">uint8_t statusPos</div><divclass="ttdoc">Byte position of status command in SPI stream.</div><divclass="ttdef"><b>Definition:</b> Module.h:189</div></div>
<divclass="ttc"id="astruct_module_1_1_s_p_i_config__t_html_a9619dcb8b269bcbd125e5a05e6c0fc77"><divclass="ttname"><ahref="struct_module_1_1_s_p_i_config__t.html#a9619dcb8b269bcbd125e5a05e6c0fc77">Module::SPIConfig_t::parseStatusCb</a></div><divclass="ttdeci">SPIparseStatusCb_t parseStatusCb</div><divclass="ttdoc">Callback for parsing SPI status.</div><divclass="ttdef"><b>Definition:</b> Module.h:192</div></div>
<divclass="ttc"id="astruct_module_1_1_s_p_i_config__t_html_ac1e7f50d134ec054ed2074b846f1124e"><divclass="ttname"><ahref="struct_module_1_1_s_p_i_config__t.html#ac1e7f50d134ec054ed2074b846f1124e">Module::SPIConfig_t::checkStatusCb</a></div><divclass="ttdeci">SPIcheckStatusCb_t checkStatusCb</div><divclass="ttdoc">Callback for validation SPI status.</div><divclass="ttdef"><b>Definition:</b> Module.h:195</div></div>
<divclass="ttc"id="astruct_module_1_1_s_p_i_config__t_html_ae11c030be96a72cd09fdfe9778ecdd51"><divclass="ttname"><ahref="struct_module_1_1_s_p_i_config__t.html#ae11c030be96a72cd09fdfe9778ecdd51">Module::SPIConfig_t::err</a></div><divclass="ttdeci">int16_t err</div><divclass="ttdoc">Last recorded SPI error - only updated for modules that return status during SPI transfers.</div><divclass="ttdef"><b>Definition:</b> Module.h:180</div></div>
<divclass="ttc"id="astruct_module_1_1_s_p_i_config__t_html_aea9de89d206bd4e58dec59a9f63c4190"><divclass="ttname"><ahref="struct_module_1_1_s_p_i_config__t.html#aea9de89d206bd4e58dec59a9f63c4190">Module::SPIConfig_t::widths</a></div><divclass="ttdeci">size_t widths[3]</div><divclass="ttdoc">Bit widths of SPI addresses, commands and status bytes.</div><divclass="ttdef"><b>Definition:</b> Module.h:186</div></div>
<liclass="footer">Generated by <ahref="https://www.doxygen.org/index.html"><imgclass="footer"src="doxygen.svg"width="104"height="31"alt="doxygen"/></a> 1.9.1 </li>