Open Source Mobile Communications: Issueshttps://osmocom.org/https://osmocom.org/favicon.ico?16647414092024-03-22T05:59:54ZOpen Source Mobile Communications
Redmine rtl-sdr - Bug #6413 (New): Incorrect Debian/Debian-like binary packageshttps://osmocom.org/issues/64132024-03-22T05:59:54ZFFY00
<p>Hi,</p>
<p>It seems the binary packages for Debian and Debian-like distributions, such as Ubuntu, for librtlsdr are incorrect.</p>
<p>You are shipping a librtlsdr0 package for 2.x version, which has a SO version with a major of 2. The correct package should be librtlsdr2. Not shipping a .so.0 in a librtlsdr0 package means that all software that was built against it will now result in an unresolved linker dependency.</p>
<p>With that said, I would also recommend the SO version to not be tied to the project version, as that would require all existing packages to be rebuilt against the new library package, even if there weren't any ABI changes. I don't know if there were any ABI changes between .so.0 and .so.2, but if there weren't, I would recommend for rtl-sdr 2.x to still ship a SO with a 0 major version (in this case, also a .so.2 now, since version 2.x has already been released with that SO name).</p>
<p>Cheers,<br />Filipe LaĆns</p> libosmo-sccp + libosmo-sigtran - Bug #6356 (New): DLGLOBAL ERROR Trying to dispatch event 17 to n...https://osmocom.org/issues/63562024-02-08T22:27:51Zneelsnhofmeyr@sysmocom.de
<p>ML reports:</p>
<p>DLGLOBAL ERROR Trying to dispatch event 17 to non-existent FSM instance! (osmo_ss7_as.c:118)</p>
<p>during startup of both osmo-msc and osmo-bsc.<br />Probably related: <a class="external" href="https://gerrit.osmocom.org/c/libosmo-sccp/+/35348">https://gerrit.osmocom.org/c/libosmo-sccp/+/35348</a></p> OsmoDia2GSUP - Bug #6148 (New): config file not installed not used by systemd service in debianhttps://osmocom.org/issues/61482023-08-24T16:37:25Zpespin
<ul>
<li>The config file under examples/sys.config is not being installed by debian/ rules afaict.</li>
<li>We should actually move that under doc/examples like the other osmocom projects, and install it under /usr/share and /etc like we do in other osmocom projects.</li>
<li>Probably also rename the file s/sys.config/osmo_dia2gsup.config/</li>
<li>Also, the systemd service under contrib/systemd doesn't seem to be using the config file. It should be passed as env var in the systemd file:<br /><pre>
ERL_FLAGS='-config /etc/osmocom/osmo_dia2gsup.config' osmo-dia2gsup
</pre></li>
</ul> OsmocomBB - Bug #6125 (New): LLC GIA/GEA (auth/encryption) not yet testedhttps://osmocom.org/issues/61252023-07-31T14:34:12Zpespin
<p>Ms-side gprs ("modem" app) still has the LLC auth/encryption algos untested (not known to work yet).</p>
<p>The code in libosmo-gprs-llc ported from osmo-pcu is there, but passing/filling the proper params in related primitives.<br />Also, some code in libosmo-gprs-llc needs to be updated/fixed.</p> OsmoPCU - Bug #6118 (New): osmo-pcu assigns multi-slot TBFs over PACCH to MS with unknwon ms_classhttps://osmocom.org/issues/61182023-07-28T15:06:48Zpespin
<p>When the DL/UL TBF assignment happens over CCCH (PCH, AGCH) we don't have this problem, since assignment over CCH can only assign a single TS.<br />However, once that TBF is assigned and MS jumps to packet-active mode (PDCH), new TBF assignment can happen over PACCH.</p>
<p>It can be that at that point in time, the PCU doesn't know the MultiSlot Class of the MS, because the MS used 1phase access (aka no PktResourceReq containing RadioAccessCap) and the SGSN didn't provide the PCU with it during BSSGP-DL-UNITDATA (because it neither knows it).</p>
<p>As a result, when allocating a DL TBF at that time, the current alloc_algo, if the ms_class is not known (=0), it assumes ms_class=12:<br /><pre>
#define DEFAULT_MSLOT_CLASS 12
</pre></p>
<p>As a result, it ends up assigning up to 4 TS to an MS which may not support it (eg. because it's ms_class=1 but didn't inform the PCU about it, like "modem" osmocom-bb app currently).</p>
<p>Current behavior basically breaks proper operation of MS with ms_class<12 (fortunately most MS nowadays are ms_class=12 or higher).</p> rtl-sdr - Bug #6012 (New): Update wiki for macos buildhttps://osmocom.org/issues/60122023-04-22T23:40:42Zmores
<p>If you follow instructions for "Building with autotools:" you will get:</p>
<p>./configure: line 12636: syntax error near unexpected token `LIBUSB,'<br />./configure: line 12636: `PKG_CHECK_MODULES(LIBUSB, libusb-1.0 >= 1.0)'</p>
<p>on macos.</p>
<p>Please update wiki to include:</p>
<p>autoreconf -i -I/opt/homebrew/share/aclocal</p> rtl-sdr - Bug #6005 (New): rtl-test and rtl-sdr exit code=-5 when running on Windows 10 WSL and U...https://osmocom.org/issues/60052023-04-16T23:27:10Zmluckham
<p>While trying to get radiosonde_auto_rx 6.0 to work on Windows 10 WSL and Ubuntu, neither the RTL-SDR.COM dongle nor an older DVB-T+DAB+FM dongle were detected by auto_rx.py. Increasing the log level to debug showed that rtl_sdr was returning a non-zero error code.</p>
<p>Echoing the return code ($#) after running rtl_sdr or rtl_test on the command line, -5 is being returned instead of zero. Modifying auto_rx/autorx/utils.py to accept a return code of 5 allowed the SDR to be detected and operate normally.</p>
<p>Moving to the rtl-sdr code, in librtlsdr.c, the rtl_read_async() method returns -5 from the variable 'r' if a non-zero error was returned from r=libusb_cancel_transfer. The main also returns the non-zero value of 'r' which is the problem.</p>
<p>I reported these findings on: [<a class="external" href="https://github.com/projecthorus/radiosonde_auto_rx/issues/765">https://github.com/projecthorus/radiosonde_auto_rx/issues/765</a> [<a class="external" href="https://github.com/projecthorus/radiosonde_auto_rx/issues/765">https://github.com/projecthorus/radiosonde_auto_rx/issues/765</a>]].</p>
<p>Moving on to Windows 10 WSL, the dorssel/usbipd-win project bridges Windows 10 USB devices to the Ubuntu environment. I submitted a request for assistance to the project and they advised how to capture debug information. Their response: [<a class="external" href="https://github.com/dorssel/usbipd-win/issues/572">https://github.com/dorssel/usbipd-win/issues/572</a> [<a class="external" href="https://github.com/dorssel/usbipd-win/issues/572">https://github.com/dorssel/usbipd-win/issues/572</a>]]</p>
<p>Here is the code change that I made to librtlsdr.c to absorb the error code and return the normal exit code=0. There are two changes flagged with the comment '// Mike'. I don't know whether this change is generic enough - it just works in this situation.</p>
<pre><code class="c syntaxhl">
<span class="kt">int</span> <span class="nf">rtlsdr_read_async</span><span class="p">(</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="n">rtlsdr_read_async_cb_t</span> <span class="n">cb</span><span class="p">,</span> <span class="kt">void</span> <span class="o">*</span><span class="n">ctx</span><span class="p">,</span>
<span class="kt">uint32_t</span> <span class="n">buf_num</span><span class="p">,</span> <span class="kt">uint32_t</span> <span class="n">buf_len</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">unsigned</span> <span class="kt">int</span> <span class="n">i</span><span class="p">;</span>
<span class="kt">int</span> <span class="n">r</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="k">struct</span> <span class="n">timeval</span> <span class="n">tv</span> <span class="o">=</span> <span class="p">{</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">0</span> <span class="p">};</span>
<span class="k">struct</span> <span class="n">timeval</span> <span class="n">zerotv</span> <span class="o">=</span> <span class="p">{</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span> <span class="p">};</span>
<span class="k">enum</span> <span class="n">rtlsdr_async_status</span> <span class="n">next_status</span> <span class="o">=</span> <span class="n">RTLSDR_INACTIVE</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">dev</span><span class="p">)</span>
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="n">RTLSDR_INACTIVE</span> <span class="o">!=</span> <span class="n">dev</span><span class="o">-></span><span class="n">async_status</span><span class="p">)</span>
<span class="k">return</span> <span class="o">-</span><span class="mi">2</span><span class="p">;</span>
<span class="n">dev</span><span class="o">-></span><span class="n">async_status</span> <span class="o">=</span> <span class="n">RTLSDR_RUNNING</span><span class="p">;</span>
<span class="n">dev</span><span class="o">-></span><span class="n">async_cancel</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="n">dev</span><span class="o">-></span><span class="n">cb</span> <span class="o">=</span> <span class="n">cb</span><span class="p">;</span>
<span class="n">dev</span><span class="o">-></span><span class="n">cb_ctx</span> <span class="o">=</span> <span class="n">ctx</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="n">buf_num</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_num</span> <span class="o">=</span> <span class="n">buf_num</span><span class="p">;</span>
<span class="k">else</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_num</span> <span class="o">=</span> <span class="n">DEFAULT_BUF_NUMBER</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="n">buf_len</span> <span class="o">></span> <span class="mi">0</span> <span class="o">&&</span> <span class="n">buf_len</span> <span class="o">%</span> <span class="mi">512</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> <span class="cm">/* len must be multiple of 512 */</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_len</span> <span class="o">=</span> <span class="n">buf_len</span><span class="p">;</span>
<span class="k">else</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_len</span> <span class="o">=</span> <span class="n">DEFAULT_BUF_LENGTH</span><span class="p">;</span>
<span class="n">_rtlsdr_alloc_async_buffers</span><span class="p">(</span><span class="n">dev</span><span class="p">);</span>
<span class="k">for</span><span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_num</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
<span class="n">libusb_fill_bulk_transfer</span><span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">xfer</span><span class="p">[</span><span class="n">i</span><span class="p">],</span>
<span class="n">dev</span><span class="o">-></span><span class="n">devh</span><span class="p">,</span>
<span class="mh">0x81</span><span class="p">,</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf</span><span class="p">[</span><span class="n">i</span><span class="p">],</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_len</span><span class="p">,</span>
<span class="n">_libusb_callback</span><span class="p">,</span>
<span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="p">)</span><span class="n">dev</span><span class="p">,</span>
<span class="n">BULK_TIMEOUT</span><span class="p">);</span>
<span class="n">r</span> <span class="o">=</span> <span class="n">libusb_submit_transfer</span><span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">xfer</span><span class="p">[</span><span class="n">i</span><span class="p">]);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">r</span> <span class="o"><</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
<span class="n">fprintf</span><span class="p">(</span><span class="n">stderr</span><span class="p">,</span> <span class="s">"Failed to submit transfer %i</span><span class="se">\n</span><span class="s">"</span>
<span class="s">"Please increase your allowed "</span>
<span class="s">"usbfs buffer size with the "</span>
<span class="s">"following command:</span><span class="se">\n</span><span class="s">"</span>
<span class="s">"echo 0 > /sys/module/usbcore"</span>
<span class="s">"/parameters/usbfs_memory_mb</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">i</span><span class="p">);</span>
<span class="n">dev</span><span class="o">-></span><span class="n">async_status</span> <span class="o">=</span> <span class="n">RTLSDR_CANCELING</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">while</span> <span class="p">(</span><span class="n">RTLSDR_INACTIVE</span> <span class="o">!=</span> <span class="n">dev</span><span class="o">-></span><span class="n">async_status</span><span class="p">)</span> <span class="p">{</span>
<span class="n">r</span> <span class="o">=</span> <span class="n">libusb_handle_events_timeout_completed</span><span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">ctx</span><span class="p">,</span> <span class="o">&</span><span class="n">tv</span><span class="p">,</span>
<span class="o">&</span><span class="n">dev</span><span class="o">-></span><span class="n">async_cancel</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">r</span> <span class="o"><</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
<span class="n">fprintf</span><span class="p">(</span><span class="n">stderr</span><span class="p">,</span> <span class="s">"libusb_handle_events_timeout_completed returned: %d</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">r</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">r</span> <span class="o">==</span> <span class="n">LIBUSB_ERROR_INTERRUPTED</span><span class="p">)</span> <span class="cm">/* stray signal */</span>
<span class="k">continue</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">if</span> <span class="p">(</span><span class="n">RTLSDR_CANCELING</span> <span class="o">==</span> <span class="n">dev</span><span class="o">-></span><span class="n">async_status</span><span class="p">)</span> <span class="p">{</span>
<span class="n">next_status</span> <span class="o">=</span> <span class="n">RTLSDR_INACTIVE</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">dev</span><span class="o">-></span><span class="n">xfer</span><span class="p">)</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">for</span><span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">dev</span><span class="o">-></span><span class="n">xfer_buf_num</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">dev</span><span class="o">-></span><span class="n">xfer</span><span class="p">[</span><span class="n">i</span><span class="p">])</span>
<span class="k">continue</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="n">LIBUSB_TRANSFER_CANCELLED</span> <span class="o">!=</span>
<span class="n">dev</span><span class="o">-></span><span class="n">xfer</span><span class="p">[</span><span class="n">i</span><span class="p">]</span><span class="o">-></span><span class="n">status</span><span class="p">)</span> <span class="p">{</span>
<span class="n">r</span> <span class="o">=</span> <span class="n">libusb_cancel_transfer</span><span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">xfer</span><span class="p">[</span><span class="n">i</span><span class="p">]);</span>
<span class="n">fprintf</span><span class="p">(</span><span class="n">stderr</span><span class="p">,</span> <span class="s">"libusb_cancel_transfer : %d</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">r</span><span class="p">);</span>
<span class="cm">/* handle events after canceling
* to allow transfer status to
* propagate */</span>
<span class="cp">#ifdef _WIN32
</span> <span class="n">Sleep</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
<span class="cp">#endif
</span> <span class="n">libusb_handle_events_timeout_completed</span><span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">ctx</span><span class="p">,</span>
<span class="o">&</span><span class="n">zerotv</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="c1">// Mike: first call return r=0, after that r=-5, final call</span>
<span class="k">if</span> <span class="p">(</span><span class="n">r</span> <span class="o"><</span> <span class="mi">0</span><span class="p">)</span>
<span class="k">continue</span><span class="p">;</span>
<span class="n">next_status</span> <span class="o">=</span> <span class="n">RTLSDR_CANCELING</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="c1">// Mike</span>
<span class="k">if</span> <span class="p">(</span><span class="n">r</span> <span class="o"><</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
<span class="n">fprintf</span><span class="p">(</span><span class="n">stderr</span><span class="p">,</span> <span class="s">"final r return value %d, reset to 0"</span><span class="p">,</span> <span class="n">r</span><span class="p">);</span>
<span class="n">r</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">if</span> <span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">dev_lost</span> <span class="o">||</span> <span class="n">RTLSDR_INACTIVE</span> <span class="o">==</span> <span class="n">next_status</span><span class="p">)</span> <span class="p">{</span>
<span class="cm">/* handle any events that still need to
* be handled before exiting after we
* just cancelled all transfers */</span>
<span class="n">libusb_handle_events_timeout_completed</span><span class="p">(</span><span class="n">dev</span><span class="o">-></span><span class="n">ctx</span><span class="p">,</span>
<span class="o">&</span><span class="n">zerotv</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="n">_rtlsdr_free_async_buffers</span><span class="p">(</span><span class="n">dev</span><span class="p">);</span>
<span class="n">dev</span><span class="o">-></span><span class="n">async_status</span> <span class="o">=</span> <span class="n">next_status</span><span class="p">;</span>
<span class="k">return</span> <span class="n">r</span><span class="p">;</span>
<span class="p">}</span>
<span class="kt">int</span> <span class="nf">rtlsdr_cancel_async</span><span class="p">(</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="n">dev</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">dev</span><span class="p">)</span>
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
<span class="cm">/* if streaming, try to cancel gracefully */</span>
<span class="k">if</span> <span class="p">(</span><span class="n">RTLSDR_RUNNING</span> <span class="o">==</span> <span class="n">dev</span><span class="o">-></span><span class="n">async_status</span><span class="p">)</span> <span class="p">{</span>
<span class="n">dev</span><span class="o">-></span><span class="n">async_status</span> <span class="o">=</span> <span class="n">RTLSDR_CANCELING</span><span class="p">;</span>
<span class="n">dev</span><span class="o">-></span><span class="n">async_cancel</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
<span class="cm">/* if called while in pending state, change the state forcefully */</span>
<span class="c">#if 0
if (RTLSDR_INACTIVE != dev->async_status) {
dev->async_status = RTLSDR_INACTIVE;
return 0;
}
#endif
</span> <span class="k">return</span> <span class="o">-</span><span class="mi">2</span><span class="p">;</span>
<span class="p">}</span>
<span class="kt">uint32_t</span> <span class="nf">rtlsdr_get_tuner_clock</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">dev</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">uint32_t</span> <span class="n">tuner_freq</span><span class="p">;</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">dev</span><span class="p">)</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="cm">/* read corrected clock value */</span>
<span class="k">if</span> <span class="p">(</span><span class="n">rtlsdr_get_xtal_freq</span><span class="p">((</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="p">)</span><span class="n">dev</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="o">&</span><span class="n">tuner_freq</span><span class="p">))</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="k">return</span> <span class="n">tuner_freq</span><span class="p">;</span>
<span class="p">}</span>
<span class="kt">int</span> <span class="nf">rtlsdr_i2c_write_fn</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="kt">uint8_t</span> <span class="n">addr</span><span class="p">,</span> <span class="kt">uint8_t</span> <span class="o">*</span><span class="n">buf</span><span class="p">,</span> <span class="kt">int</span> <span class="n">len</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">dev</span><span class="p">)</span>
<span class="k">return</span> <span class="n">rtlsdr_i2c_write</span><span class="p">(((</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="p">)</span><span class="n">dev</span><span class="p">),</span> <span class="n">addr</span><span class="p">,</span> <span class="n">buf</span><span class="p">,</span> <span class="n">len</span><span class="p">);</span>
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
<span class="p">}</span>
<span class="kt">int</span> <span class="nf">rtlsdr_i2c_read_fn</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="kt">uint8_t</span> <span class="n">addr</span><span class="p">,</span> <span class="kt">uint8_t</span> <span class="o">*</span><span class="n">buf</span><span class="p">,</span> <span class="kt">int</span> <span class="n">len</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">dev</span><span class="p">)</span>
<span class="k">return</span> <span class="n">rtlsdr_i2c_read</span><span class="p">(((</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="p">)</span><span class="n">dev</span><span class="p">),</span> <span class="n">addr</span><span class="p">,</span> <span class="n">buf</span><span class="p">,</span> <span class="n">len</span><span class="p">);</span>
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
<span class="p">}</span>
<span class="kt">int</span> <span class="nf">rtlsdr_set_bias_tee_gpio</span><span class="p">(</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="kt">int</span> <span class="n">gpio</span><span class="p">,</span> <span class="kt">int</span> <span class="n">on</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">dev</span><span class="p">)</span>
<span class="k">return</span> <span class="o">-</span><span class="mi">1</span><span class="p">;</span>
<span class="n">rtlsdr_set_gpio_output</span><span class="p">(</span><span class="n">dev</span><span class="p">,</span> <span class="n">gpio</span><span class="p">);</span>
<span class="n">rtlsdr_set_gpio_bit</span><span class="p">(</span><span class="n">dev</span><span class="p">,</span> <span class="n">gpio</span><span class="p">,</span> <span class="n">on</span><span class="p">);</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
<span class="kt">int</span> <span class="nf">rtlsdr_set_bias_tee</span><span class="p">(</span><span class="n">rtlsdr_dev_t</span> <span class="o">*</span><span class="n">dev</span><span class="p">,</span> <span class="kt">int</span> <span class="n">on</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">return</span> <span class="n">rtlsdr_set_bias_tee_gpio</span><span class="p">(</span><span class="n">dev</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">on</span><span class="p">);</span>
<span class="p">}</span>
</code></pre> rtl-sdr - Bug #5922 (New): rtl_sdr bytes_to_read wraparound for n > 2**31https://osmocom.org/issues/59222023-02-23T21:33:58Znikolicj
<p>In rtl_sdr: bytes_to_read wraps around for larger captures (e.g. when trying to log 1000s of IQ samples at 2.4M samples/s):</p>
<p>rtl_sdr test.iq -f 440000000 -s 2400000 -g 34 -n 2400000000</p>
<p>I attached a patch that fixes it (I lack the permission to open a PR). Tested on a 64bit Ubuntu 22.04 machine.</p> osmo-fl2k - Bug #5918 (New): -flto broken in releasehttps://osmocom.org/issues/59182023-02-22T15:34:15Zzero_chaos
<p>Hi! It's been a while since your last tag, and some notable fixes have gone in. I know there isn't a ton of active development lately, but that seems like all the more reason for a fresh tag. I am currently testing link time optimization stuff in Gentoo, and came across this bug:<br /><a class="external" href="https://bugs.gentoo.org/861959">https://bugs.gentoo.org/861959</a><br />It seems to be fixed by <a class="external" href="https://gitea.osmocom.org/sdr/osmo-fl2k/commit/d56968352c626dda51552bb469ac23a8964d6d29">https://gitea.osmocom.org/sdr/osmo-fl2k/commit/d56968352c626dda51552bb469ac23a8964d6d29</a> , however, there seem to be a lot of additional desirable fixes.<br />Please consider tagging a new release.</p> OCTOI - Osmocom Community TDM over IP - Bug #5883 (New): GPS sync sometimes goes to hold overhttps://osmocom.org/issues/58832023-01-30T00:06:12Ztnt
<p>Last occurrences :</p>
<p>Sun Nov 27th 01:00<br />Thu Dec 6th 21:46 <br />Sun Dec 18th 01:00 <br />Wed Dec 28th 13:36<br />Sun Jan 29th 01:00</p>
<p>So at least 3 of them happened on Sundays, at 1 am local time (so 00:00 UTC), which also seems to correspond to the moment the GPS resets its 'ppr` messages counter to 0 ...</p> SDR (Software Defined Radio) - Bug #5850 (New): OBS mingw builds not updated since 2019https://osmocom.org/issues/58502023-01-04T12:14:33Zlaforge
<p>We do have <code>network:osmocom:mingw</code> windows builds of rtl-sdr and osmo-fl2k for 32bit and 64bit systems at <a class="external" href="https://build.opensuse.org/project/subprojects/network:osmocom:mingw">https://build.opensuse.org/project/subprojects/network:osmocom:mingw</a> - which don't appear to have seen any updates since 2019.</p>
<p>I guess we should either make sure they are updated, or remove them altogether.</p>
<p>If we want to keep them updated/maintained, we might also want to migrate them to <a class="external" href="https://obs.osmocom.org/">https://obs.osmocom.org/</a> where all our other builds are done these days.</p> OsmocomBB - Bug #5831 (New): SE K2x0i: built-in SIM reader is not workinghttps://osmocom.org/issues/58312022-12-15T23:46:08Zfixeria
<p>Currently the mobile app fails to use built-in SIM reader of my Sony Ericsson K200i:</p>
<pre>
DMM INFO subscriber.c:596 Requesting SIM file 0x2fe2
DSIM INFO sim.c:223 got new job: SIM_JOB_READ_BINARY (handle=00000004)
DSIM INFO sim.c:712 go MF
DSIM INFO sim.c:256 SELECT (file=0x3f00)
DSIM INFO sim.c:181 sending APDU (class 0xa0, ins 0xa4)
DSIM INFO sim.c:200 Using built-in SIM reader
DSIM INFO sim.c:901 received APDU (len=0 sw1=0x00 sw2=0x00)
DSIM INFO sim.c:979 command failed
DSIM INFO sim.c:147 sending result to callback function (type=1)
</pre>
<p>This is what the firmware log looks like:</p>
<pre>
OsmocomBB Layer 1 (revision osmocon_v0.0.0-2885-g86f46edd-modified)
======================================================================
Device ID code: 0xb496
Device Version code: 0x0000
ARM ID code: 0xfff3
cDSP ID code: 0x0128
Die ID code: e515201ce51557b9
======================================================================
REG_DPLL=0x2413
CNTL_ARM_CLK=0xf0a1
CNTL_CLK=0xff91
CNTL_RST=0xfff7
CNTL_ARM_DIV=0xfff9
======================================================================
Power up simcard:
key=20 pressed
key=20 released
Checking TIFFS for the RF calibration records
...
L1CTL_RESET_REQ: FULL!
SIM Request (7): a0 a4 00 00 02 3f 00
SIM: ACK read failed
SIM Response (2): 00 00
</pre>
<p>Note the <code>key=20 pressed/released</code>, I wasn't actually pressing anything.</p> E1/T1 Hardware Interface (including icE1usb) - Bug #5708 (New): rs422: Support runtime re-init of...https://osmocom.org/issues/57082022-10-13T18:46:17Ztnt
<p>Currently if the GPS receiver side doesn't have power, init will fail and never recover without a reboot.</p>
<p>This is because without power on that side, we can't talk to the I2C IO expander on the isolated side to initialize it and set up the RS422 transceiver ...</p>
<p>Solution is that if we haven't seen NMEA messages in a few seconds, try to re-init the I2C IO expander (default state on reset/power loss is everything disabled to be safe).</p>
<p>One thing to pay attention to is that I2C is slow. And the current I2C driver code is blocking, so we'd need to check the init sequence isn't too long and doesn't block the main loop processing for too long which would cause USB over/underflows ...</p> OsmoSGSN - Bug #5398 (New): Null pointer access at "uectx" in ranap_iu_txhttps://osmocom.org/issues/53982022-01-10T12:45:11Zpespin
<p>It seems the timer sending RAU accept is kept ongoing even after the Iu conn has been released. Then apparently due to that msg->dst is NULL.</p>
<pre>
20220110121956305 DMM <0000> /git/osmo-iuh/src/ranap_common_cn.c:240 Received unsupported RANAP unsuccessful outcome procedure Security Mode Control (CO) from RNC, ignoring
20220110121956305 DMM <0000> /git/osmo-iuh/src/ranap_common_cn.c:309 Not calling cn_ranap_handle_co() due to rc=-1
20220110121956305 DMM <0000> /git/osmo-iuh/src/ranap_common_cn.c:270 Not freeing unsupported RANAP unsuccessful outcome procedure (CO) from RNC
20220110121958657 DMM <0000> /git/osmo-sgsn/src/sgsn/gprs_gmm.c:1491 MM(901700000043320/ccec2b9d) <- GMM ROUTING AREA UPDATE ACCEPT
20220110121958657 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:464 Transmitting L3 Message as RANAP DT (SCCP conn_id 5)
20220110121958657 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1731 Received SCCP User Primitive (N-DATA.request)
20220110121958657 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1772 SCCP-SCOC(5)[0x612000006220]{ACTIVE}: Received Event N-DATA.req
20220110121958657 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:401 sccp_scrc_rx_scoc_conn_msg: HDR=(CO:CODT,V=0,LEN=0), PART(T=Routing Context,L=4,D=00000000), PART(T=Destination Reference,L=4,D=000003f0), PART(T=Data,L=36,D=0014402000000200104014130809002a32f40728b6631805f4ccec2b9d1716003b400100)
20220110121958657 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:280 m3ua_hmdc_rx_from_l2(): dpc=189=0.23.5 not local, message is for routing
20220110121958658 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:227 Found route for dpc=189=0.23.5: pc=0=0.0.0 mask=0x0=0.0.0 via AS as-clnt-OsmoSGSN proto=m3ua
20220110121958658 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:235 rt->dest.as proto is M3UA for dpc=189=0.23.5
20220110121958658 DLSS7 <001f> /git/libosmo-sccp/src/m3ua.c:508 XUA_AS(as-clnt-OsmoSGSN)[0x612000003e20]{AS_ACTIVE}: Received Event AS-TRANSFER.req
20220110121958658 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110121958658 DLINP <0015> /git/libosmo-netif/src/stream.c:352 [CONNECTED] osmo_stream_cli_write(): sending 76 bytes of data
20220110121958658 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122000787 DLGSUP <001d> /git/osmo-hlr/src/gsupclient/gsup_client.c:266 GSUP ping callback (connected, got PONG)
20220110122000788 DLGSUP <001d> /git/osmo-hlr/src/gsupclient/gsup_client.c:288 GSUP sending PING
20220110122000788 DLINP <0015> /git/libosmo-abis/src/input/ipa.c:139 127.0.0.1:4222 connected write
20220110122000788 DLINP <0015> /git/libosmo-abis/src/input/ipa.c:89 127.0.0.1:4222 sending data
20220110122000788 DLINP <0015> /git/libosmo-abis/src/input/ipa.c:139 127.0.0.1:4222 connected write
20220110122000788 DLINP <0015> /git/libosmo-abis/src/input/ipa.c:89 127.0.0.1:4222 sending data
20220110122000788 DLINP <0015> /git/libosmo-abis/src/input/ipa.c:135 127.0.0.1:4222 connected read
20220110122000788 DLINP <0015> /git/libosmo-abis/src/input/ipa.c:56 127.0.0.1:4222 message received
20220110122000788 DLMI <0017> /git/libosmocore/src/gsm/ipa.c:524 PONG!
20220110122000788 DLGSUP <001d> /git/osmo-hlr/src/gsupclient/gsup_client.c:225 GSUP receiving PONG
20220110122001489 DLINP <0015> /git/libosmo-netif/src/stream.c:445 [CONNECTED] osmo_stream_cli_fd_cb(): connected read
20220110122001489 DLINP <0015> /git/libosmo-netif/src/stream.c:324 [CONNECTED] osmo_stream_cli_read(): message received
20220110122001489 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7.c:1906 0: asp-asp-clnt-OsmoSGSN: xua_cli_read_cb(): sctp_recvmsg() returned 52 (flags=0x80)
20220110122001489 DLM3UA <0022> /git/libosmo-sccp/src/m3ua.c:714 0: asp-asp-clnt-OsmoSGSN: Received M3UA Message (XFER:DATA)
20220110122001489 DLM3UA <0022> /git/libosmo-sccp/src/m3ua.c:543 0: asp-asp-clnt-OsmoSGSN: m3ua_rx_xfer
20220110122001489 DLM3UA <0022> /git/libosmo-sccp/src/m3ua.c:566 0: asp-asp-clnt-OsmoSGSN: m3ua_rx_xfer(): M3UA data header: opc=189=0.23.5 dpc=188=0.23.4
20220110122001489 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:276 m3ua_hmdc_rx_from_l2(): found dpc=188=0.23.4 as local
20220110122001489 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:472 scrc_rx_mtp_xfer_ind_xua: HDR=(CO:CODT,V=0,LEN=0), PART(T=Destination Reference,L=4,D=00000005), PART(T=Segmentation,L=4,D=00000000), PART(T=Data,L=13,D=000b40090000010004400209c0)
20220110122001489 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1664 Received CO:CODT for local reference 5
20220110122001489 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1698 SCCP-SCOC(5)[0x612000006220]{ACTIVE}: Received Event RCOC-DT1.ind
20220110122001489 DLSCCP <0020> /git/libosmo-sccp/src/sccp_user.c:175 Delivering N-DATA.indication to SCCP User 'OsmoSGSN-IuPS'
20220110122001490 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:818 sccp_sap_up(N-DATA.indication)
20220110122001490 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:869 N-DATA.ind(5, 00 0b 40 09 00 00 01 00 04 40 02 09 c0 )
20220110122001490 DMM <0000> /git/osmo-iuh/src/ranap_common_cn.c:42 Rx CO IM (Iu Release Request)
20220110122001490 DMM <0000> ranap_decoder.c:2422 Decoding message RANAP_Iu_ReleaseRequestIEs (ranap_decoder.c:2422)
20220110122001490 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:577 handle_co(dir=1, proc=11)
20220110122001490 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:519 Received Iu Release Request, Sending Release Command
20220110122001490 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1731 Received SCCP User Primitive (N-DATA.request)
20220110122001490 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1772 SCCP-SCOC(5)[0x612000006220]{ACTIVE}: Received Event N-DATA.req
20220110122001490 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:401 sccp_scrc_rx_scoc_conn_msg: HDR=(CO:CODT,V=0,LEN=0), PART(T=Routing Context,L=4,D=00000000), PART(T=Destination Reference,L=4,D=000003f0), PART(T=Data,L=13,D=000100090000010004400209c0)
20220110122001490 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:280 m3ua_hmdc_rx_from_l2(): dpc=189=0.23.5 not local, message is for routing
20220110122001490 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:227 Found route for dpc=189=0.23.5: pc=0=0.0.0 mask=0x0=0.0.0 via AS as-clnt-OsmoSGSN proto=m3ua
20220110122001490 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:235 rt->dest.as proto is M3UA for dpc=189=0.23.5
20220110122001490 DLSS7 <001f> /git/libosmo-sccp/src/m3ua.c:508 XUA_AS(as-clnt-OsmoSGSN)[0x612000003e20]{AS_ACTIVE}: Received Event AS-TRANSFER.req
20220110122001491 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122001491 DLINP <0015> /git/libosmo-netif/src/stream.c:352 [CONNECTED] osmo_stream_cli_write(): sending 52 bytes of data
20220110122001491 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122001497 DLINP <0015> /git/libosmo-netif/src/stream.c:445 [CONNECTED] osmo_stream_cli_fd_cb(): connected read
20220110122001497 DLINP <0015> /git/libosmo-netif/src/stream.c:324 [CONNECTED] osmo_stream_cli_read(): message received
20220110122001497 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7.c:1906 0: asp-asp-clnt-OsmoSGSN: xua_cli_read_cb(): sctp_recvmsg() returned 52 (flags=0x80)
20220110122001497 DLM3UA <0022> /git/libosmo-sccp/src/m3ua.c:714 0: asp-asp-clnt-OsmoSGSN: Received M3UA Message (XFER:DATA)
20220110122001498 DLM3UA <0022> /git/libosmo-sccp/src/m3ua.c:543 0: asp-asp-clnt-OsmoSGSN: m3ua_rx_xfer
20220110122001498 DLM3UA <0022> /git/libosmo-sccp/src/m3ua.c:566 0: asp-asp-clnt-OsmoSGSN: m3ua_rx_xfer(): M3UA data header: opc=189=0.23.5 dpc=188=0.23.4
20220110122001498 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:276 m3ua_hmdc_rx_from_l2(): found dpc=188=0.23.4 as local
20220110122001498 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:472 scrc_rx_mtp_xfer_ind_xua: HDR=(CO:RELRE,V=0,LEN=0), PART(T=Destination Reference,L=4,D=00000005), PART(T=Source Reference,L=4,D=000003f0), PART(T=Cause,L=4,D=00000300), PART(T=Data,L=7,D=20010003000000)
20220110122001498 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1664 Received CO:RELRE for local reference 5
20220110122001498 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1698 SCCP-SCOC(5)[0x612000006220]{ACTIVE}: Received Event RCOC-RELEASED.ind
20220110122001498 DLSCCP <0020> /git/libosmo-sccp/src/sccp_user.c:175 Delivering N-DISCONNECT.indication to SCCP User 'OsmoSGSN-IuPS'
20220110122001498 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:818 sccp_sap_up(N-DISCONNECT.indication)
20220110122001498 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:843 N-DISCONNECT.ind(5)
20220110122001498 DMM <0000> /git/osmo-iuh/src/ranap_common_cn.c:136 Rx CO SO (Iu Release)
20220110122001498 DMM <0000> ranap_decoder.c:68 Decoding message RANAP_Iu_ReleaseCompleteIEs (ranap_decoder.c:68)
20220110122001498 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:577 handle_co(dir=2, proc=1)
20220110122001498 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:122 Submit Iu event to upper layer: RANAP_IU_EVENT_IU_RELEASE
20220110122001498 DMM <0000> /git/osmo-sgsn/src/sgsn/gprs_ranap.c:137 MM(901700000043320/ccec2b9d) IU release (cause=RANAP_IU_EVENT_IU_RELEASE)
20220110122001498 DMM <0000> /git/osmo-sgsn/src/sgsn/gprs_ranap.c:138 MM_STATE_Iu(3)[0x612000005920]{Idle}: Received Event E_PMM_PS_CONN_RELEASE
20220110122001498 DMM <0000> /git/osmo-sgsn/src/sgsn/gprs_ranap.c:138 MM_STATE_Iu(3)[0x612000005920]{Idle}: Event E_PMM_PS_CONN_RELEASE not permitted
20220110122001498 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1731 Received SCCP User Primitive (N-DISCONNECT.request)
20220110122001498 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1772 SCCP-SCOC(5)[0x612000006220]{ACTIVE}: Received Event N-DISCONNECT.req
20220110122001498 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:401 sccp_scrc_rx_scoc_conn_msg: HDR=(CO:RELRE,V=0,LEN=0), PART(T=Routing Context,L=4,D=00000000), PART(T=Destination Reference,L=4,D=000003f0), PART(T=Source Reference,L=4,D=00000005), PART(T=Cause,L=4,D=00000300)
20220110122001498 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:280 m3ua_hmdc_rx_from_l2(): dpc=189=0.23.5 not local, message is for routing
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:227 Found route for dpc=189=0.23.5: pc=0=0.0.0 mask=0x0=0.0.0 via AS as-clnt-OsmoSGSN proto=m3ua
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:235 rt->dest.as proto is M3UA for dpc=189=0.23.5
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/m3ua.c:508 XUA_AS(as-clnt-OsmoSGSN)[0x612000003e20]{AS_ACTIVE}: Received Event AS-TRANSFER.req
20220110122001499 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1057 SCCP-SCOC(5)[0x612000006220]{ACTIVE}: state_chg to DISCONN_PEND
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:401 sccp_scrc_rx_scoc_conn_msg: HDR=(CO:RELCO,V=0,LEN=0), PART(T=Routing Context,L=4,D=00000000), PART(T=Destination Reference,L=4,D=000003f0), PART(T=Source Reference,L=4,D=00000005)
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:280 m3ua_hmdc_rx_from_l2(): dpc=189=0.23.5 not local, message is for routing
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:227 Found route for dpc=189=0.23.5: pc=0=0.0.0 mask=0x0=0.0.0 via AS as-clnt-OsmoSGSN proto=m3ua
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:235 rt->dest.as proto is M3UA for dpc=189=0.23.5
20220110122001499 DLSS7 <001f> /git/libosmo-sccp/src/m3ua.c:508 XUA_AS(as-clnt-OsmoSGSN)[0x612000003e20]{AS_ACTIVE}: Received Event AS-TRANSFER.req
20220110122001499 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1073 SCCP-SCOC(5)[0x612000006220]{DISCONN_PEND}: state_chg to IDLE
20220110122001499 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:520 SCCP-SCOC(5)[0x612000006220]{IDLE}: Terminating (cause = OSMO_FSM_TERM_REQUEST)
20220110122001499 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:520 SCCP-SCOC(5)[0x612000006220]{IDLE}: Freeing instance
20220110122001499 DLSCCP <0020> /git/libosmocore/src/fsm.c:568 SCCP-SCOC(5)[0x612000006220]{IDLE}: Deallocated
20220110122001499 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122001500 DLINP <0015> /git/libosmo-netif/src/stream.c:352 [CONNECTED] osmo_stream_cli_write(): sending 44 bytes of data
20220110122001500 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122001500 DLINP <0015> /git/libosmo-netif/src/stream.c:352 [CONNECTED] osmo_stream_cli_write(): sending 40 bytes of data
20220110122001500 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122002291 DMM <0000> /git/osmo-sgsn/src/sgsn/gprs_gmm.c:1491 MM(901700000015259/f634a4dd) <- GMM ROUTING AREA UPDATE ACCEPT
20220110122002291 DRANAP <000b> /git/osmo-iuh/src/iu_client.c:464 Transmitting L3 Message as RANAP DT (SCCP conn_id 6)
20220110122002292 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1731 Received SCCP User Primitive (N-DATA.request)
20220110122002292 DLSCCP <0020> /git/libosmo-sccp/src/sccp_scoc.c:1772 SCCP-SCOC(6)[0x6120000063a0]{ACTIVE}: Received Event N-DATA.req
20220110122002292 DLSS7 <001f> /git/libosmo-sccp/src/sccp_scrc.c:401 sccp_scrc_rx_scoc_conn_msg: HDR=(CO:CODT,V=0,LEN=0), PART(T=Routing Context,L=4,D=00000000), PART(T=Destination Reference,L=4,D=000003f1), PART(T=Data,L=36,D=0014402000000200104014130809002a32f40728b6631805f4f634a4dd1716003b400100)
20220110122002292 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:280 m3ua_hmdc_rx_from_l2(): dpc=189=0.23.5 not local, message is for routing
20220110122002292 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:227 Found route for dpc=189=0.23.5: pc=0=0.0.0 mask=0x0=0.0.0 via AS as-clnt-OsmoSGSN proto=m3ua
20220110122002292 DLSS7 <001f> /git/libosmo-sccp/src/osmo_ss7_hmrt.c:235 rt->dest.as proto is M3UA for dpc=189=0.23.5
20220110122002292 DLSS7 <001f> /git/libosmo-sccp/src/m3ua.c:508 XUA_AS(as-clnt-OsmoSGSN)[0x612000003e20]{AS_ACTIVE}: Received Event AS-TRANSFER.req
20220110122002292 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122002292 DLINP <0015> /git/libosmo-netif/src/stream.c:352 [CONNECTED] osmo_stream_cli_write(): sending 76 bytes of data
20220110122002292 DLINP <0015> /git/libosmo-netif/src/stream.c:449 [CONNECTED] osmo_stream_cli_fd_cb(): connected write
20220110122004659 DMM <0000> /git/osmo-sgsn/src/sgsn/gprs_gmm.c:1491 MM(901700000043320/ccec2b9d) <- GMM ROUTING AREA UPDATE ACCEPT
/git/osmo-iuh/src/iu_client.c:464:2: runtime error: member access within null pointer of type 'struct ranap_ue_conn_ctx'
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff679e94a in ranap_iu_tx (msg_nas=msg_nas@entry=0x61d00004b0e0, sapi=sapi@entry=1 '\001') at /git/osmo-iuh/src/iu_client.c:464
464 LOGPIU(LOGL_INFO, "Transmitting L3 Message as RANAP DT (SCCP conn_id %u)\n",
(gdb) bt
#0 0x00007ffff679e94a in ranap_iu_tx (msg_nas=msg_nas@entry=0x61d00004b0e0,
sapi=sapi@entry=1 '\001')
at /git/osmo-iuh/src/iu_client.c:464
#1 0x00005555556a1587 in gsm48_gmm_sendmsg (msg=msg@entry=0x61d00004b0e0,
command=command@entry=0, mm=mm@entry=0x617000003560,
encryptable=encryptable@entry=true)
at /git/osmo-sgsn/src/sgsn/gprs_gmm.c:137
#2 0x00005555556a8190 in gsm48_tx_gmm_ra_upd_ack (mm=mm@entry=0x617000003560)
at /git/osmo-sgsn/src/sgsn/gprs_gmm.c:1536
#3 0x00005555556b0ee6 in mmctx_timer_cb (_mm=0x617000003560)
at /git/osmo-sgsn/src/sgsn/gprs_gmm.c:2181
#4 0x00007ffff51aad35 in osmo_timers_update ()
at /git/libosmocore/src/timer.c:269
#5 0x00007ffff51ae70a in _osmo_select_main (polling=polling@entry=0)
at /git/libosmocore/src/select.c:394
#6 0x00007ffff51ae778 in osmo_select_main (polling=polling@entry=0)
at /git/libosmocore/src/select.c:438
#7 0x00005555556f7826 in main (argc=<optimized out>, argv=0x7fffffffe128)
at /git/osmo-sgsn/src/sgsn/sgsn_main.c:542
(gdb) l
459 {
460 struct ranap_ue_conn_ctx *uectx = msg_nas->dst;
461 struct msgb *msg;
462 struct osmo_scu_prim *prim;
463
464 LOGPIU(LOGL_INFO, "Transmitting L3 Message as RANAP DT (SCCP conn_id %u)\n",
465 uectx->conn_id);
466
467 msg = ranap_new_msg_dt(sapi, msg_nas->data, msgb_length(msg_nas));
468 msgb_free(msg_nas);
(gdb) print uectx
$1 = (struct ranap_ue_conn_ctx *) 0x0
</pre> libosmocore - Bug #5346 (New): osmo-release.sh doesn't work with %{sover} macro in spec.inhttps://osmocom.org/issues/53462021-12-09T07:26:09Zlaforge
<p>When trying to release a new version of osmo-remsim, I run into the following error:</p>
<pre>
make REL=major release 415/0/0
Releasing 0.2.2.126-7382 -> 1.0.0...
OK: dependency specific versions in configure.ac and debian/control match
OK: dependency specific versions in configure.ac and contrib/*.spec.in match
OK: Found matching debian/lib*2.install for LIBVERSION=2:0:0
OK: Found 'Package: lib*2' in debian/control for LIBVERSION=2:0:0
ERROR: Found no matching '%files -n lib*2' in contrib/*.spec.in for LIBVERSION=2:0:0
make: *** [osmo-release.mk:9: release] Error 1
</pre>
<p>this seems to relate to the spec.in file using a %{sover} macro. This seems to be the case ever since this spec file was introduced to osmo-remsim, so I suppose the check in osmo-release.sh is more recent and didn't consider this situation?</p> OsmoPCU - Bug #5309 (New): osmo-pcu: Support rejecting multiple TBFs upon tx of Packet Access Rejecthttps://osmocom.org/issues/53092021-11-15T13:40:44Zpespin
<p>According to TS 44.060 Table 11.2.1, Packet Access Reject can contain multiple "Reject struct".<br />Hence, we can reject several TBFs in a single Dl RLCMAC block, which may come really handy in the case where all resources are allocated and hence we are congested.</p>
<p>In order to do that, I'd probably do it in 2 steps:<br />1- Get rid of "dummy UL TBF" used to handle Packet Access Reject through tbf_ul_ass_fsm. It's a nightmare maintaining those specially allocated TBFs which end up behaving differently that usual TBFs. Let's rather introduce some some "struct reject_req", hence a differenatiated structure and add specific handling for it in gprs_rlcmacn_sched.cpp, similar to what we do with SBA.<br />2- Add some sort of reject_pool, where the new reject_req are stored when we nowadays create a dummy tbf, and make the scheduler use that to request whether it should schedule any. Then, inside reject_pool implementation, we can keep a list of pending requests and generate a message adding as many requests as possible each time. Probably the best is to have a reject_pool per pdch object, since the reject are expected at some specific "control" Ts.</p> OsmoPCU - Bug #5227 (New): osmo-pcu: Attempt recovery of TBF when one of its assigned PDCH TS bec...https://osmocom.org/issues/52272021-09-03T17:55:52Zpespin
<p>Currently, when a PDCH TS becomes disabled (eg: dynamic TS is required for a voice call), we are currently freeing immediately all existing TBFs which were attached to that TBF.</p>
<p>This looks really rude and simple way to overcome the scenario. By doing so, it means all ongoing TBFs cease to transmit or receive data, hence breaking all connections and keeping them broken for a while.<br />Even worse: The MS with active TBF will stay listening on that TS and trying to decode whatever is sent to another MS (be it TCH, SDCCH, etc.).</p>
<p>Hence, we should try to find a way to attempt some sort of recovery for as many MS as possible, by telling the MS that PDCH is no longer available and it shouldn't listen on it. Even better, we should try to relocate the MS to a potential better set of PDCH TS.</p>
That probably involves sending some RLCMAC DL Control Block to the MS. Hence, we should check during pdch disable:
<ul>
<li>If MS has only 1 PDCH TS assigned and it's the one we are disabling, we can do nothing, keep the tbf_free().</li>
<li>If MS has more than 1 PDCH TS assigned and the PDCH being disabled is its control_ts, change the control_ts to another PDCH TS.</li>
<li>Internally mark to avoid RX/TX on the PDCH being disabled, and do all the process to change the active PDCH set.</li>
</ul>
<p>Related code in osmo-pcu which may be of interest:<br /><pre>
gprs_rlcmac_pdch::disable()
gprs_rlcmac_pdch::free_resources()
pdch_free_all_tbf()
tbf_free()
handle_timeout_X2002()
tbf_assign_control_ts()
tbf_update()
gprs_rlcmac_tbf::update()
tbf_dl_trigger_ass()
tbf_assign_control_ts()
</pre></p> rtl-sdr - Bug #5220 (New): Undefined reference to libusb_dev_mem_freehttps://osmocom.org/issues/52202021-08-28T22:14:52Zphysnoct
<p>Linker didn't found the libusb-1.0.<br />Libusb-1.0 is installed in /usr/local</p> OsmoPCU - Bug #5212 (New): apparently T3193 is by default not set to its defined default valuehttps://osmocom.org/issues/52122021-08-12T13:04:36Zneelsnhofmeyr@sysmocom.de
<p>When I run osmo-pcu and launch a ttcn3 test (PCU_Tests.TC_mt_ping_pong) so that a BTS is present,<br />'show bts-timers' lists:</p>
<pre><code>OsmoPCU# show bts-timer<br /> BTS0:<br /> ...<br /> T3193 = 1600 ms Reuse of TFI(s) after reception of final PACKET DOWNLINK ACK/NACK from MS for TBF (default: 100 ms)<br /> ...</code></pre>
<p>Notice that T3193 is set to 1600 ms, although its default says 100 ms.<br />I looked for anything that might alter the timeout in the ttcn3 code, but could not find anything.</p> OsmoPCU - Bug #5149 (New): osmo-pcu fails to allocate all DL-TBF possible slots under specific sc...https://osmocom.org/issues/51492021-05-10T12:57:58Zpespin
<p>The issue is shown by TTCN3 PCU_Tests.TC_dl_multislot_tbf_ms_class_from_sgsn, where 4 slots are allocated to the DL TBF despite the PCU knowing at that time that the MS_CLASS supports concurrent 8-TX/8-RX.</p>
<p>The scenario is quite corner case, hence I'm marking the ticket as "Lower" priority. It can only happen if pcu is configured to not force two-phase access, then MS starts a UL TBF 1-phase access (hence without ms_class info) and without having interacted recently with the network (MS not in the MS cache in PCU).<br />In this case, when the UL TBF is allocated and slots for both UL and DL are reserved, since ms_class is unknown (0), DEFAULT_MSLOT_CLASS (12) is picked to reserve the slots. Hence, if afterwards we send some data SGSN->MS (containing MS Radio Access Capability), the DL TBF is created but the DL slots were already reserved before (using the default class 12), hence not all possible slots are used.</p>
<p>The main problem is that osmo-pcu allocator reserves both UL and DL for an MS whenever 1 TBF is created, and that's expected to have whenever the 1st TBF is created (see alloc_algorithm_b() when it calls find_multi_slots()).</p>
<p>In order to fix this case, we'd need to do, upon ms_set_ms_class()/ms_set_egprs_ms_class():<br /><pre>
if (ms->ms_class == 0 && ms_class_ > 0) {
if (ms->dl_tbf && !ms->ul_tbf) {
/* update reserved mask for reserved_ul_slots */
} else {
/* update reserved mask for reserved_dl_slots */
}
}
</pre></p>
<p>In order to implement the "/* update reserved mask for reserved_dl_slots */" part, one could split find_multi_slots() into pieces and try to reuse some of that, or simply copy-paste the function and change it to select the best slot set for a direction while keeping the direction already having a TBF in the current fixed size.</p>
<p>I'm still not sure though if we can really have this sort of scenario in real life, that's also another point why I mark the ticket as low.<br />If we ever find such a case in real life capture or we figure out an exact test which really makes sense, we can go on implementing what I mentioned above.</p> OsmoMGW - Bug #5044 (New): potential null pointer dereferenceshttps://osmocom.org/issues/50442021-02-24T11:48:29Zlaforge
<p>gcc on OpenSUSE_Factory warns as follows:<br /><pre>
[ 69s] CCLD osmo-mgw
[ 70s] ../libosmo-mgcp/mgcp_osmux.c: In function 'osmux_conn_lookup.constprop':
[ 70s] ../libosmo-mgcp/mgcp_osmux.c:218:23: warning: potential null pointer dereference [-Wnull-dereference]
[ 70s] 218 | for (i = 0; i < trunk->number_endpoints; i++) {
[ 70s] | ^
[ 70s] ../libosmo-mgcp/mgcp_osmux.c:218:23: warning: potential null pointer dereference [-Wnull-dereference]
[ 70s] ../libosmo-mgcp/mgcp_vty.c: In function 'cfg_mgcp_omit_rtcp':
[ 70s] ../libosmo-mgcp/mgcp_vty.c:782:19: warning: potential null pointer dereference [-Wnull-dereference]
[ 70s] 782 | trunk->omit_rtcp = 1;
[ 70s] | ^
[ 70s] ../libosmo-mgcp/mgcp_vty.c:782:19: warning: potential null pointer dereference [-Wnull-dereference]
[ 73s] make[3]: Leaving directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/src/osmo-mgw'
[ 73s] make[3]: Entering directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/src'
[ 73s] make[3]: Nothing to be done for 'all-am'.
[ 73s] make[3]: Leaving directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/src'
[ 73s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/src'
[ 73s] Making all in tests
[ 73s] make[2]: Entering directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/tests'
[ 73s] Making all in mgcp_client
[ 73s] make[3]: Entering directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/tests/mgcp_client'
[ 74s] CC mgcp_client_test.o
[ 74s] CCLD mgcp_client_test
[ 75s] make[3]: Leaving directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/tests/mgcp_client'
[ 75s] Making all in mgcp
[ 75s] make[3]: Entering directory '/home/abuild/rpmbuild/BUILD/osmo-mgw-1.8.1/tests/mgcp'
[ 75s] CC mgcp_test.o
[ 76s] CCLD mgcp_test
[ 77s] mgcp_test.c: In function 'test_packet_loss_calc':
[ 77s] mgcp_test.c:1074:21: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1074 | packets_rx = &conn->rate_ctr_group->ctr[RTP_PACKETS_RX_CTR];
[ 77s] | ^
[ 77s] mgcp_test.c:1076:28: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1076 | state->stats.initialized = 1;
[ 77s] | ^
[ 77s] mgcp_test.c:1077:25: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1077 | state->stats.base_seq = pl_test_dat[i].base_seq;
[ 77s] | ^
[ 77s] mgcp_test.c:1078:24: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1078 | state->stats.max_seq = pl_test_dat[i].max_seq;
[ 77s] | ^
[ 77s] mgcp_test.c:1079:23: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1079 | state->stats.cycles = pl_test_dat[i].cycles;
[ 77s] | ^
[ 77s] mgcp_test.c:1074:21: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1074 | packets_rx = &conn->rate_ctr_group->ctr[RTP_PACKETS_RX_CTR];
[ 77s] | ^
[ 77s] mgcp_test.c:1076:28: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1076 | state->stats.initialized = 1;
[ 77s] | ^
[ 77s] mgcp_test.c:1077:25: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1077 | state->stats.base_seq = pl_test_dat[i].base_seq;
[ 77s] | ^
[ 77s] mgcp_test.c:1078:24: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1078 | state->stats.max_seq = pl_test_dat[i].max_seq;
[ 77s] | ^
[ 77s] mgcp_test.c:1079:23: warning: potential null pointer dereference [-Wnull-dereference]
[ 77s] 1079 | state->stats.cycles = pl_test_dat[i].cycles;
[ 77s] | ^
[ 78s] ../../src/libosmo-mgcp/mgcp_osmux.c: In function 'osmux_conn_lookup.constprop':
[ 78s] ../../src/libosmo-mgcp/mgcp_osmux.c:218:23: warning: potential null pointer dereference [-Wnull-dereference]
[ 78s] 218 | for (i = 0; i < trunk->number_endpoints; i++) {
[ 78s] | ^
[ 78s] ../../src/libosmo-mgcp/mgcp_osmux.c:218:23: warning: potential null pointer dereference [-Wnull-dereference]
</pre></p>
<p>we should check if there's any truth to it.</p> Cellular Network Infrastructure - Bug #5043 (New): CNI overview diagram lacks osmo-cbc and osmo-smlchttps://osmocom.org/issues/50432021-02-23T17:32:46Zlaforge
The overview diagram at <a class="external" href="https://osmocom.org/projects/cellular-infrastructure/wiki">https://osmocom.org/projects/cellular-infrastructure/wiki</a> needs an update:
<ul>
<li>OsmoCBC (cell broadcast centre) needs to be added to CN, with
<ul>
<li>CBSP interface to OsmoBSC, and </li>
<li>SABP to OsmoHNBGW (mark that grey or dashed as it's work in progress)</li>
</ul>
</li>
<li>OsmoSMLC (serving mobile location centre) needs to be added to RAN, with
<ul>
<li>Lb interface to OsmoBSC (no other interfaces)</li>
</ul>
</li>
<li>OsmoMSC should indicate its SGs interface to an external LTE EPC MME like open5gs</li>
</ul> gr-osmosdr - Bug #4942 (New): XTRX: Unable to compile due to errorhttps://osmocom.org/issues/49422021-01-12T20:29:05ZRFNOD
<p>Is it possible to change the following within gr-osmosdr/lib/xtrx/xtrx_obj.cc, Line 71?</p>
<p>++ int res = xtrx_open_list(path.c_str(), NULL, &_obj);<br />-- int res = xtrx_open_string(path.c_str(), &_obj);</p>
<p>After changing that line, I was able to compile gr-osmosdr.</p> rtl-sdr - Bug #4758 (New): rtl_tcp no longer works on macos 10.15 via macportshttps://osmocom.org/issues/47582020-09-17T04:41:25Zrhymepays
<p>rtl_tcp no longer works on MacOS 10.15 (catalina) installed via macports. I was able to install an old port in order to get it to work. It appears that the code which sets up the tcp server contains a bug. The other executables in the package appear to work correctly.</p>
<p>Output from running rtl_tcp with no arguments:<br />Found 1 device(s):<br /> 0: Realtek, RTL2838UHIDIR, SN: 00000001</p>
<p>Using device 0: Generic RTL2832U OEM<br />Found Rafael Micro R820T tuner<br />[R82XX] PLL not locked!<br />Tuned to 100000000 Hz.<br />rtl_tcp bind error: Invalid argumentlistening...<br />Use the device argument 'rtl_tcp=127.0.0.1:1234' in OsmoSDR (gr-osmosdr) source<br />to receive samples in GRC and control rtl_tcp parameters (frequency, gain, ...).</p>
<p>Output from dtruss of networking syscalls:<br />socket(0x2, 0x1, 0x6) = 5 0<br />setsockopt(0x5, 0xFFFF, 0x4) = 0 0<br />setsockopt(0x5, 0xFFFF, 0x80) = 0 0<br />bind(0x5, 0x7FFEEC5BAB20, 0x80) = -1 22<br />listen(0x5, 0x1, 0x0) = 0 0</p>
<p>I am not sure which commit introduced the bug but it is between be2e4f89 and d794155b.<br />Last known good commit: be2e4f89<br />Commit which contains issue: d794155b</p> OsmoBTS - Bug #4446 (New): osmo-bts doesn't actually ever connect() its RTP/UDP socketshttps://osmocom.org/issues/44462020-03-08T21:49:32Zlaforge
<p>In Abis/IP we are using fully-symmetric RTP over a UDP flow between a given set of IP:Port tuples on either side of the Abis link. As such, we would normally expect that the sockets are not just bound to a local port on the BTS side, but that they're also connect()ed to the remote side.</p>
<p>We are using <code>osmo_rtp_socket_connect()</code> in <a class="source" href="https://osmocom.org/projects/osmobts/repository/osmo-bts/entry/src/common/rtp.c">source:src/common/rtp.c</a> and asume that this actually happens, but a look in netstat indicates differently :(</p> OsmoTRX - Bug #3067 (New): osmo-trx usrp b100 time out and packet loss between host and devicehttps://osmocom.org/issues/30672018-03-15T16:30:22Zyangkkokk
<p>i used new branch master
<p>osmo-trx -C doc/examples/osmo-trx-limesdr.cfg</p>
</p>
<p>Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:84<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.323 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.418 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:85<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.459 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.503 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:86<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.549 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.634 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:87<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.716 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:88<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.801 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:89<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013829712] ClockInterface: sending IND CLOCK 1696638<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.847 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.925 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:90<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 488.958 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 489.007 sec.<br />Thu Mar 15 16:25:15 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:91<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 489.087 sec.<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:92<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 489.169 sec.<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:93<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 489.198 sec.<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 489.29 sec.<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:94<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=2992628816] Packet loss between host and device at 489.374 sec.<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] new latency: 7:95<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:16 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] reduced latency: 6:95<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] UHD: Device send timed out<br />Thu Mar 15 16:25:17 2018 DMAIN <0000> Logger.cpp:53 [tid=3013862480] Transmit error 0</p> OsmoSMSC - Bug #1690 (New): Insert: Generate message ID (e.g. UUID)https://osmocom.org/issues/16902016-04-06T12:26:34Zzecke
<p>Generate amessage id and use it consistently in debugging. Use a custom id before it even hits the DB. This allows to understand number re-writing being executed even before the message is stored in the database.</p> SDR (Software Defined Radio) - Bug #1474 (New): USB Claim Interface Errorhttps://osmocom.org/issues/14742016-02-19T22:50:52Z
<p>Hello,</p>
<p>I have heard lots of good things about this code. I have currently tried it on Win7HP and <a class="wiki-page new" href="https://osmocom.org/projects/sdr/wiki/WinXPH">WinXPH</a> but in both cases I see the error below.</p>
<p>C:\SpectrumAnalyser>rtl_sdr /tmp/capture.bin -s 1.8e6 -f 392e6<br />Found 1 device(s):<br /> 0: ezcap USB 2.0 DVB-T/DAB/FM dongle</p>
<p>Using device 0: ezcap USB 2.0 DVB-T/DAB/FM dongle<br />usb_claim_interface error -12<br />Failed to open rtlsdr device #0.</p>
<p>C:\SpectrumAnalyser></p>
<p>----<br />Best regards, John.</p> OsmocomBB - Bug #1458 (New): AGC broken (strong cell cannot be syncedhttps://osmocom.org/issues/14582016-02-19T22:48:42Zlaforge
<p>There seems to be a problem when trying to sync to particularly strong cells, as we overload the input of the ADC.</p>
<p>As we're doing power measurements anyway, we need to use the received power level as input to the SCH and FCCH task and not start those with some default power level</p> Miscellaneous Projects - Bug #64 (New): osmo-bts-amp: 2.2uF capacitors next to PA need to be 0603...https://osmocom.org/issues/642016-02-19T22:47:33Zlaforge
<p>0805 capacitors are typically higher thant the PA module and would thus interfere with mounting it against a heatsink. Thus, we're using 0603 capacitors in 2.2uF, and the footprint can (and should) be shrinked from the current 0805</p>