<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Hello,</p><p class=MsoNormal>I’m trying to switch the state of the pin J2_3 of my xb100 through the argument line of the osmosdr block in gnuradio.</p><p class=MsoNormal><br>To do this, I added this code to the file bladerf_common.cc</p><div><table class=MsoNormalTable border=0 cellspacing=3 cellpadding=0><tr><td style='padding:0in 0in 4.5pt 9.0pt'><div><p class=MsoNormal><span style='color:#888888'>1<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 2<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 3<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 4<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 5<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 6<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 7<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 8<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'> 9<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>10<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>11<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>12<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>13<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>14<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>15<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>16<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>17<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>18<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>19<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>20<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>21<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>22<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>23<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>24<o:p></o:p></span></p><p class=MsoNormal><span style='color:#888888'>25</span><span style='font-size:10.0pt;color:#888888'><o:p></o:p></span></p></div></td><td style='padding:0in 0in 4.5pt 9.0pt'><div><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>  </span><i><span style='color:#008800'>/* Support of the XB100 to control pin J2_3 through the argument line*/</span></i><span style='color:black'><o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>  </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'> ( dict.count(</span><span style='color:#BB4444'>"xb100"</span><span style='color:black'>) ) {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>    </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'> (bladerf_expansion_attach(_dev.get(), BLADERF_XB_100)) {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      std</span><span style='color:#666666'>::</span><span style='color:black'>cout </span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"Could not attach XB-100"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>    } </span><b><span style='color:#AA22FF'>else</span></b><span style='color:black'> {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      _xb_100_attached </span><span style='color:#666666'>=</span><span style='color:black'> </span><b><span style='color:#AA22FF'>true</span></b><span style='color:black'>;<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      std</span><span style='color:#666666'>::</span><span style='color:black'>cout </span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"Expension XB-100 attached"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      <o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'> ( bladerf_expansion_gpio_dir_masked_write(_dev.get(),BLADERF_XB100_PIN_J2_3,  </span><span style='color:#666666'>1</span><span style='color:black'>)) {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>        std</span><span style='color:#666666'>::</span><span style='color:black'>cout</span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"Could not set TRX pin direction"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      }<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'><o:p> </o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      std</span><span style='color:#666666'>::</span><span style='color:black'>cout </span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"J2_3 output direction selected"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'> ( dict[</span><span style='color:#BB4444'>"xb100"</span><span style='color:black'>] </span><span style='color:#666666'>==</span><span style='color:black'> </span><span style='color:#BB4444'>"TX"</span><span style='color:black'> ) {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>        </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'>(bladerf_expansion_gpio_masked_write (_dev.get(),BLADERF_XB100_PIN_J2_3, BLADERF_XB100_PIN_J2_3)){<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>          std</span><span style='color:#666666'>::</span><span style='color:black'>cout</span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"sorry, but I cannot set pin to 1"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;}<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      }<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'><o:p> </o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      </span><b><span style='color:#AA22FF'>else</span></b><span style='color:black'> </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'>(dict[</span><span style='color:#BB4444'>"xb100"</span><span style='color:black'>] </span><span style='color:#666666'>==</span><span style='color:black'> </span><span style='color:#BB4444'>"RX"</span><span style='color:black'> ) {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>        </span><b><span style='color:#AA22FF'>if</span></b><span style='color:black'>(bladerf_expansion_gpio_masked_write (_dev.get(),BLADERF_XB100_PIN_J2_3, </span><span style='color:#666666'>0</span><span style='color:black'>)){<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>          std</span><span style='color:#666666'>::</span><span style='color:black'>cout</span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"sorry, but I cannot set pin to 1"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;}<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>      } </span><b><span style='color:#AA22FF'>else</span></b><span style='color:black'> {<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>        std</span><span style='color:#666666'>::</span><span style='color:black'>cout</span><span style='color:#666666'><<</span><span style='color:black'> </span><span style='color:#BB4444'>"Wrong parameter specified, should be TX or RX"</span><span style='color:black'> </span><span style='color:#666666'><<</span><span style='color:black'> std</span><span style='color:#666666'>::</span><span style='color:black'>endl;}<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>    }<o:p></o:p></span></p><p class=MsoNormal style='background:#EEEEEE'><span style='color:black'>  }<o:p></o:p></span></p></div></td></tr></table></div><p class=MsoNormal>In my osmosdr bloc, I added this argument “ xb100=tx”  but I don’t have my 5V on my pin :(</p><p class=MsoNormal>I don’t understand why the pin is not setted when I start my flowgraph… Could you help me please?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thank you</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Samuel Verdon</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>