<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.11"/> <title>libbladeRF: Gain control</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="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> <script type="text/javascript"> $(document).ready(function() { init_search(); }); </script> <script type="text/x-mathjax-config"> MathJax.Hub.Config({ extensions: ["tex2jax.js"], jax: ["input/TeX","output/HTML-CSS"], }); </script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.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="projectlogo"><img alt="Logo" src="logo.png"/></td> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">libbladeRF  <span id="projectnumber">1.7.2</span> </div> <div id="projectbrief">Nuand bladeRF library</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.11 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li class="current"><a href="modules.html"><span>API Sections</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </li> </ul> </div> </div><!-- top --> <!-- 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="#define-members">Macros</a> | <a href="#enum-members">Enumerations</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Gain control</div> </div> </div><!--header--> <div class="contents"> <a name="details" id="details"></a><h2 class="groupheader">Description</h2> <p>These functions provide control over the device's RX and TX gain stages.</p> <p>In general, the gains should be incremented in the following order (and decremented in the reverse order).</p> <p><b>TX:</b> <code>TXVGA1</code>, <code>TXVGA2</code></p> <p><b>RX:</b> <code>LNA</code>, <code>RXVGA</code>, <code>RXVGA2</code></p> <p>These functions are thread-safe. </p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> Macros</h2></td></tr> <tr class="memitem:ga1c446f55efa9879dadb7d05cb4b749f4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga1c446f55efa9879dadb7d05cb4b749f4">BLADERF_RXVGA1_GAIN_MIN</a>   5</td></tr> <tr class="separator:ga1c446f55efa9879dadb7d05cb4b749f4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5ce0413b966cbfde676892b248f8bf38"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga5ce0413b966cbfde676892b248f8bf38">BLADERF_RXVGA1_GAIN_MAX</a>   30</td></tr> <tr class="separator:ga5ce0413b966cbfde676892b248f8bf38"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga03bc5dbab40474fec215d63f2e52f1dd"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga03bc5dbab40474fec215d63f2e52f1dd">BLADERF_RXVGA2_GAIN_MIN</a>   0</td></tr> <tr class="separator:ga03bc5dbab40474fec215d63f2e52f1dd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac9f351b0c361a0657920c426901648bc"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gac9f351b0c361a0657920c426901648bc">BLADERF_RXVGA2_GAIN_MAX</a>   30</td></tr> <tr class="separator:gac9f351b0c361a0657920c426901648bc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga03c0a73ad1a05a217531a4ca906a2d6c"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga03c0a73ad1a05a217531a4ca906a2d6c">BLADERF_TXVGA1_GAIN_MIN</a>   (-35)</td></tr> <tr class="separator:ga03c0a73ad1a05a217531a4ca906a2d6c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gadc339e42521881f64de600d0c413b2f9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gadc339e42521881f64de600d0c413b2f9">BLADERF_TXVGA1_GAIN_MAX</a>   (-4)</td></tr> <tr class="separator:gadc339e42521881f64de600d0c413b2f9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gade469c78446f2375790145162991b8bf"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gade469c78446f2375790145162991b8bf">BLADERF_TXVGA2_GAIN_MIN</a>   0</td></tr> <tr class="separator:gade469c78446f2375790145162991b8bf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac92d7b92e717964f32dbe7da6faa77b0"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gac92d7b92e717964f32dbe7da6faa77b0">BLADERF_TXVGA2_GAIN_MAX</a>   25</td></tr> <tr class="separator:gac92d7b92e717964f32dbe7da6faa77b0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3c9761fb133c0c3697a2bd987255f4eb"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga3c9761fb133c0c3697a2bd987255f4eb">BLADERF_LNA_GAIN_MID_DB</a>   3</td></tr> <tr class="separator:ga3c9761fb133c0c3697a2bd987255f4eb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac4c9283687396b9eecd9dc5578c9c378"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gac4c9283687396b9eecd9dc5578c9c378">BLADERF_LNA_GAIN_MAX_DB</a>   6</td></tr> <tr class="separator:gac4c9283687396b9eecd9dc5578c9c378"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> <tr class="memitem:ga61ff30f82a42e90653a4cf69d43f9cc2"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga61ff30f82a42e90653a4cf69d43f9cc2">bladerf_lna_gain</a> { <a class="el" href="group___f_n___g_a_i_n.html#gga61ff30f82a42e90653a4cf69d43f9cc2afa8d1b4a4a673670b3bb5faf3e4c8d47">BLADERF_LNA_GAIN_UNKNOWN</a>, <a class="el" href="group___f_n___g_a_i_n.html#gga61ff30f82a42e90653a4cf69d43f9cc2aa340246b693671deb1a3019f3ae20a5e">BLADERF_LNA_GAIN_BYPASS</a>, <a class="el" href="group___f_n___g_a_i_n.html#gga61ff30f82a42e90653a4cf69d43f9cc2a5e378fb4fc523947c2128f5f8ad762eb">BLADERF_LNA_GAIN_MID</a>, <a class="el" href="group___f_n___g_a_i_n.html#gga61ff30f82a42e90653a4cf69d43f9cc2a44bfef7aeacd7e0698d613b222e16e7a">BLADERF_LNA_GAIN_MAX</a> }</td></tr> <tr class="separator:ga61ff30f82a42e90653a4cf69d43f9cc2"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:ga5a32dd46a54c815aa2005e50c1a5c894"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga5a32dd46a54c815aa2005e50c1a5c894">bladerf_set_txvga2</a> (struct bladerf *dev, int gain)</td></tr> <tr class="separator:ga5a32dd46a54c815aa2005e50c1a5c894"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabf942f2c71da5dc24c22a2db13d00ec9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gabf942f2c71da5dc24c22a2db13d00ec9">bladerf_get_txvga2</a> (struct bladerf *dev, int *gain)</td></tr> <tr class="separator:gabf942f2c71da5dc24c22a2db13d00ec9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga89706116066f01d7a6eeb9e18dbd0db3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga89706116066f01d7a6eeb9e18dbd0db3">bladerf_set_txvga1</a> (struct bladerf *dev, int gain)</td></tr> <tr class="separator:ga89706116066f01d7a6eeb9e18dbd0db3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga489dcefe571ce05062d1893c5d4055ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga489dcefe571ce05062d1893c5d4055ae">bladerf_get_txvga1</a> (struct bladerf *dev, int *gain)</td></tr> <tr class="separator:ga489dcefe571ce05062d1893c5d4055ae"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0fb476f5db160d14f5d5b0de5ac26ed1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga0fb476f5db160d14f5d5b0de5ac26ed1">bladerf_set_lna_gain</a> (struct bladerf *dev, <a class="el" href="group___f_n___g_a_i_n.html#ga61ff30f82a42e90653a4cf69d43f9cc2">bladerf_lna_gain</a> gain)</td></tr> <tr class="separator:ga0fb476f5db160d14f5d5b0de5ac26ed1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga45945f5ac16d9fcd130132073aa9ba58"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga45945f5ac16d9fcd130132073aa9ba58">bladerf_get_lna_gain</a> (struct bladerf *dev, <a class="el" href="group___f_n___g_a_i_n.html#ga61ff30f82a42e90653a4cf69d43f9cc2">bladerf_lna_gain</a> *gain)</td></tr> <tr class="separator:ga45945f5ac16d9fcd130132073aa9ba58"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf03c4ba526c3cbf1f4372046ba76d371"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gaf03c4ba526c3cbf1f4372046ba76d371">bladerf_set_rxvga1</a> (struct bladerf *dev, int gain)</td></tr> <tr class="separator:gaf03c4ba526c3cbf1f4372046ba76d371"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3d0e15fa8563427bba526011c0ae5508"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#ga3d0e15fa8563427bba526011c0ae5508">bladerf_get_rxvga1</a> (struct bladerf *dev, int *gain)</td></tr> <tr class="separator:ga3d0e15fa8563427bba526011c0ae5508"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa4a4d20aaec40727d45378f432023b93"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gaa4a4d20aaec40727d45378f432023b93">bladerf_set_rxvga2</a> (struct bladerf *dev, int gain)</td></tr> <tr class="separator:gaa4a4d20aaec40727d45378f432023b93"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gafab6b8702140006e478c01ae7880e391"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gafab6b8702140006e478c01ae7880e391">bladerf_get_rxvga2</a> (struct bladerf *dev, int *gain)</td></tr> <tr class="separator:gafab6b8702140006e478c01ae7880e391"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae6646e44c8438346b3e1ab76b6e74c5a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___f_n___g_a_i_n.html#gae6646e44c8438346b3e1ab76b6e74c5a">bladerf_set_gain</a> (struct bladerf *dev, <a class="el" href="group___f_n___m_o_d_u_l_e.html#gab12571146a3d4c5d79ac497a74b3fb5e">bladerf_module</a> mod, int gain)</td></tr> <tr class="separator:gae6646e44c8438346b3e1ab76b6e74c5a"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Macro Definition Documentation</h2> <a class="anchor" id="gac4c9283687396b9eecd9dc5578c9c378"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_LNA_GAIN_MAX_DB   6</td> </tr> </table> </div><div class="memdoc"> <p>Gain in db of the LNA at max setting </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00567">567</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="ga3c9761fb133c0c3697a2bd987255f4eb"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_LNA_GAIN_MID_DB   3</td> </tr> </table> </div><div class="memdoc"> <p>Gain in dB of the LNA at mid setting </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00566">566</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="ga5ce0413b966cbfde676892b248f8bf38"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_RXVGA1_GAIN_MAX   30</td> </tr> </table> </div><div class="memdoc"> <p>Maximum RXVGA1 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00536">536</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="ga1c446f55efa9879dadb7d05cb4b749f4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_RXVGA1_GAIN_MIN   5</td> </tr> </table> </div><div class="memdoc"> <p>Minimum RXVGA1 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00533">533</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="gac9f351b0c361a0657920c426901648bc"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_RXVGA2_GAIN_MAX   30</td> </tr> </table> </div><div class="memdoc"> <p>Maximum RXVGA2 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00542">542</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="ga03bc5dbab40474fec215d63f2e52f1dd"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_RXVGA2_GAIN_MIN   0</td> </tr> </table> </div><div class="memdoc"> <p>Minimum RXVGA2 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00539">539</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="gadc339e42521881f64de600d0c413b2f9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_TXVGA1_GAIN_MAX   (-4)</td> </tr> </table> </div><div class="memdoc"> <p>Maximum TXVGA1 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00548">548</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="ga03c0a73ad1a05a217531a4ca906a2d6c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_TXVGA1_GAIN_MIN   (-35)</td> </tr> </table> </div><div class="memdoc"> <p>Minimum TXVGA1 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00545">545</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="gac92d7b92e717964f32dbe7da6faa77b0"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_TXVGA2_GAIN_MAX   25</td> </tr> </table> </div><div class="memdoc"> <p>Maximum TXVGA2 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00554">554</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <a class="anchor" id="gade469c78446f2375790145162991b8bf"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define BLADERF_TXVGA2_GAIN_MIN   0</td> </tr> </table> </div><div class="memdoc"> <p>Minimum TXVGA2 gain, in dB </p> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00551">551</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <h2 class="groupheader">Enumeration Type Documentation</h2> <a class="anchor" id="ga61ff30f82a42e90653a4cf69d43f9cc2"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">enum <a class="el" href="group___f_n___g_a_i_n.html#ga61ff30f82a42e90653a4cf69d43f9cc2">bladerf_lna_gain</a></td> </tr> </table> </div><div class="memdoc"> <p>LNA gain options </p> <table class="fieldtable"> <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga61ff30f82a42e90653a4cf69d43f9cc2afa8d1b4a4a673670b3bb5faf3e4c8d47"></a>BLADERF_LNA_GAIN_UNKNOWN </td><td class="fielddoc"> <p>Invalid LNA gain </p> </td></tr> <tr><td class="fieldname"><a class="anchor" id="gga61ff30f82a42e90653a4cf69d43f9cc2aa340246b693671deb1a3019f3ae20a5e"></a>BLADERF_LNA_GAIN_BYPASS </td><td class="fielddoc"> <p>LNA bypassed - 0dB gain </p> </td></tr> <tr><td class="fieldname"><a class="anchor" id="gga61ff30f82a42e90653a4cf69d43f9cc2a5e378fb4fc523947c2128f5f8ad762eb"></a>BLADERF_LNA_GAIN_MID </td><td class="fielddoc"> <p>LNA Mid Gain (MAX-6dB) </p> </td></tr> <tr><td class="fieldname"><a class="anchor" id="gga61ff30f82a42e90653a4cf69d43f9cc2a44bfef7aeacd7e0698d613b222e16e7a"></a>BLADERF_LNA_GAIN_MAX </td><td class="fielddoc"> <p>LNA Max Gain </p> </td></tr> </table> <p>Definition at line <a class="el" href="libblade_r_f_8h_source.html#l00559">559</a> of file <a class="el" href="libblade_r_f_8h_source.html">libbladeRF.h</a>.</p> </div> </div> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="ga45945f5ac16d9fcd130132073aa9ba58"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_get_lna_gain </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="group___f_n___g_a_i_n.html#ga61ff30f82a42e90653a4cf69d43f9cc2">bladerf_lna_gain</a> * </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get the LNA gain</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Pointer to the set gain level </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga3d0e15fa8563427bba526011c0ae5508"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_get_rxvga1 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get the pre-LPF VGA gain</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Pointer to the set gain level </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gafab6b8702140006e478c01ae7880e391"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_get_rxvga2 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get the post-LPF VGA gain</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Pointer to the set gain level </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga489dcefe571ce05062d1893c5d4055ae"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_get_txvga1 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get the post-LPF gain in dB</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Pointer to returned gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="gabf942f2c71da5dc24c22a2db13d00ec9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_get_txvga2 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Get the PA gain in dB</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Pointer to returned gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="gae6646e44c8438346b3e1ab76b6e74c5a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_set_gain </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="group___f_n___m_o_d_u_l_e.html#gab12571146a3d4c5d79ac497a74b3fb5e">bladerf_module</a> </td> <td class="paramname"><em>mod</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set combined gain values</p> <p>This function computes the optimal LNA, RXVGA1, and RVGA2 gains for a requested amount of RX gain, and computes the optimal TXVGA1 and TXVGA2 gains for a requested amount of TX gain.</p> <p>Values outside the valid gain range will be clipped.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">mod</td><td>Module </td></tr> <tr><td class="paramname">gain</td><td>Desired gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="ga0fb476f5db160d14f5d5b0de5ac26ed1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_set_lna_gain </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="group___f_n___g_a_i_n.html#ga61ff30f82a42e90653a4cf69d43f9cc2">bladerf_lna_gain</a> </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the LNA gain</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Desired gain level</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="gaf03c4ba526c3cbf1f4372046ba76d371"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_set_rxvga1 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the pre-LPF VGA gain</p> <p>Values outside the range of [ <a class="el" href="group___f_n___g_a_i_n.html#ga1c446f55efa9879dadb7d05cb4b749f4">BLADERF_RXVGA1_GAIN_MIN</a>, <a class="el" href="group___f_n___g_a_i_n.html#ga5ce0413b966cbfde676892b248f8bf38">BLADERF_RXVGA1_GAIN_MAX</a> ] will be clamped.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Desired gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="gaa4a4d20aaec40727d45378f432023b93"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_set_rxvga2 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the post-LPF VGA gain</p> <p>Values outside the range of [ <a class="el" href="group___f_n___g_a_i_n.html#ga03bc5dbab40474fec215d63f2e52f1dd">BLADERF_RXVGA2_GAIN_MIN</a>, <a class="el" href="group___f_n___g_a_i_n.html#gac9f351b0c361a0657920c426901648bc">BLADERF_RXVGA2_GAIN_MAX</a> ] will be clamped.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Desired gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="ga89706116066f01d7a6eeb9e18dbd0db3"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_set_txvga1 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the post-LPF gain in dB</p> <p>Values outside the range of [ <a class="el" href="group___f_n___g_a_i_n.html#ga03c0a73ad1a05a217531a4ca906a2d6c">BLADERF_TXVGA1_GAIN_MIN</a>, <a class="el" href="group___f_n___g_a_i_n.html#gadc339e42521881f64de600d0c413b2f9">BLADERF_TXVGA1_GAIN_MAX</a> ] will be clamped.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Desired gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> <a class="anchor" id="ga5a32dd46a54c815aa2005e50c1a5c894"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="libblade_r_f_8h.html#a5e3652cae8b48c1ad174f0b06bbd06d0">API_EXPORT</a> int <a class="el" href="libblade_r_f_8h.html#a66285a1fe575693f5f275b212891222e">CALL_CONV</a> bladerf_set_txvga2 </td> <td>(</td> <td class="paramtype">struct bladerf * </td> <td class="paramname"><em>dev</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>gain</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Set the PA gain in dB</p> <p>Values outside the range of [ <a class="el" href="group___f_n___g_a_i_n.html#gade469c78446f2375790145162991b8bf">BLADERF_TXVGA2_GAIN_MIN</a>, <a class="el" href="group___f_n___g_a_i_n.html#gac92d7b92e717964f32dbe7da6faa77b0">BLADERF_TXVGA2_GAIN_MAX</a> ] will be clamped.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dev</td><td>Device handle </td></tr> <tr><td class="paramname">gain</td><td>Desired gain</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 on success, value from <a class="el" href="group___r_e_t_c_o_d_e_s.html">Error codes</a> list on failure </dd></dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Wed Jun 29 2016 16:51:01 for libbladeRF by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.11 </small></address> </body> </html>