Open Source Mobile Communications: Issueshttps://osmocom.org/https://osmocom.org/favicon.ico?16647414092024-03-22T17:52:06ZOpen Source Mobile Communications
Redmine E1/T1 Hardware Interface (including icE1usb) - Support #6416 (Feedback): Serial debug tty port speedhttps://osmocom.org/issues/64162024-03-22T17:52:06Zpfassberg
<p>I'm trying to read the debug info from the firmware in icE1usb via the 2.5 mm serial connector. I'm using the sysmocom CP2102-25 cable.</p>
<p>The documentation states that the serial speed is 1000000 bps.</p>
<p>Unfortunately I only receive garbage. I have tested with a number of other other speeds but can't get it to work. I assume that the debug output should be in text format.</p>
<p>Any ideas?</p>
<p>// Peter</p> E1/T1 Hardware Interface (including icE1usb) - Support #6412 (New): No alignmenthttps://osmocom.org/issues/64122024-03-20T21:47:23Zpfassberg
<p>I'm testing icE1usb to connect a ISDN PBX to a switch partly over SDH.<br /><pre>
SS7/ISDN Switch - (STM-1) - ADM - (E1) - icE1usb - (IP) - icE1usb - (E1) - PABX
</pre></p>
<p>In the PABX side I have no problems, but between the ADM and the icE1usb I have problem to get the icE1usb aligned.</p>
<p>If I use a loopback cable I can get the ADM and the icE1usb aligned. But when I connect them only the ADM get aligned, never the icE1usb. The icE1usb don't act at all. The green LED keeps flashing and nothing in the logs or stat.</p>
<p>If I connect a Cisco modem pool to the same ADM port it immediately get aligned. I have MGWs and other stuff connected to the same ADM with no problems.</p>
<p>I've measured the voltage and find roughly 4 V Vp-p from icE1usb and 5 V Vp-p from the ADM.</p>
<p>I do not use CRC4 but I can't find any CRC4 settings in osmo-e1d config.</p>
<p>Any clues about what is going on and how to debug this?</p>
<p>// Peter</p> OsmoHNodeB - Support #6153 (Feedback): List of supported FemtoCellhttps://osmocom.org/issues/61532023-08-28T03:29:18ZKira
<p>Hello. The question is: Which femtocells are supported by OsmoIuH and do not require special skills in magic to run 3G?</p>
<p>Thank you for your help!</p> Distributed GSM - Support #4737 (New): How to configure Queries gsup.hlr.123456789.imsi, sip.voic...https://osmocom.org/issues/47372020-08-31T05:37:37Zedgard21031969
<p>Hello,</p>
<p>I work on D-GSM to test it with FreeSWITCH, but after configuration, all of my following command give "not-found" answer.</p>
<p>edgard@osmocom-u16-svr:~$ osmo-mslookup-client sip.voice.1001.msisdn<br />query result last age v4_ip v4_port v6_ip v6_port<br />sip.voice.1001.msisdn not-found last 0<br />edgard@osmocom-u16-svr:~$ osmo-mslookup-client gsup.hlr.901700000014701.imsi<br />query result last age v4_ip v4_port v6_ip v6_port<br />gsup.hlr.901700000014701.imsi not-found last 0<br />edgard@osmocom-u16-svr:~$ osmo-mslookup-client gsup.hlr.111111.imsi<br />query result last age v4_ip v4_port v6_ip v6_port<br />gsup.hlr.111111.imsi not-found last 0<br />edgard@osmocom-u16-svr:~$ osmo-mslookup-client gsup.hlr.1001.msisdn sip.voice.10 01.msisdn smpp.sms.1001.msisdn foo.1001.msisdn<br />query result last age v4_ip v4_port v6_ip v6_port<br />foo.1001.msisdn not-found last 0<br />smpp.sms.1001.msisdn not-found last 0<br />sip.voice.1001.msisdn not-found last 0<br />gsup.hlr.1001.msisdn not-found last 0<br />edgard@osmocom-u16-svr:~$ osmo-mslookup-client --csv-headers gsup.hlr.9017000000 14701.imsi<br />osmo-mslookup-client: unrecognized option '--csv-headers'<br />Error in command line options. Exiting.<br />edgard@osmocom-u16-svr:~$ osmo-mslookup-client -f json gsup.hlr.901700000014701. imsi
{"query": "gsup.hlr.901700000014701.imsi", "result": "not-found", "last": true, "age": 0}<br />edgard@osmocom-u16-svr:~$</p>
<p>Did I forget something about queries in my configuration? How can I implemente URL notation, typical mslookup queries look like pleae?<br /> gsup.hlr.123456789.imsi<br /> sip.voice.123.msisdn<br /> smpp.sms.123.msisdn</p>
<p>My osmo-hlr.cfg configuration is:<br />!<br />! OsmoHLR example configuration<br />!<br />log stderr<br /> logging filter all 1<br /> logging color 1<br /> logging print category 1<br /> logging print category-hex 0<br /> logging print level 1<br /> logging print file basename last<br /> logging print extended-timestamp 1<br /> logging level main notice<br /> logging level db notice<br /> logging level auc notice<br /> logging level ss notice<br /> logging level linp error<br />!<br />line vty<br /> bind 127.0.0.1<br />ctrl<br /> bind 127.0.0.1<br />hlr<br /> gsup<br /> bind ip 127.0.0.1<br /> bind ip 192.168.43.84<br /> bind ip 0.0.0.0<br /> ipa-name hlr-23<br /> subscriber-create-on-demand 5 cs+ps<br /> subscriber-create-on-demand 5 none<br /> store-imei<br />mslookup<br /> mdns bind 239.192.23.42 4266<br /> mdns domain-suffix mdns.osmocom.org<br /> mdns bind<br /> server<br /> service sip.voice at 192.168.43.84 5060<br /> service smpp.sms at 192.168.43.84 2775<br /> service gsup.hlr at 192.168.43.84 4222</p>
<p>Thanks to your help</p> OsmoBSC - Support #4621 (New): feedback: osmo-bsc modifies the LAI in LU Accept messages, and the...https://osmocom.org/issues/46212020-06-18T16:36:53Zneelsnhofmeyr@sysmocom.de
<p>looking at osmo_bsc_filter.c, I notice that we probably don't want any of this to remain in osmo-bsc:<br /><a class="external" href="http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/osmo_bsc_filter.c#n110">http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/osmo_bsc_filter.c#n110</a></p>
<ul>
<li>we are modifying the LAI in a Location Updating Accept message. I'm pretty sure we don't want to do this in osmo-bsc ever.<br /> <a class="external" href="http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/osmo_bsc_filter.c#n135">http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/osmo_bsc_filter.c#n135</a></li>
</ul>
<ul>
<li>we are modifying the MM info, see bsc_patch_mm_info()<br /> <a class="external" href="http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/osmo_bsc_filter.c#n32">http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/osmo_bsc_filter.c#n32</a><br /> I'm least sure about the timezone information that osmo-bsc overwrites in the MM info,<br /> I dimly remember an explicit request to be able to run BSCs in different time zones...</li>
</ul>
<p>Which parts of this can be dropped?</p> OsmoMSC - Support #4612 (New): test handover on non-voice call conn (no CC transaction present)https://osmocom.org/issues/46122020-06-14T12:21:24Zneelsnhofmeyr@sysmocom.de
<p>The current inter-BSC handover code in osmo-msc looks like it is only capable of handling conns that have an active CC transaction.<br />But in fact handover could happen on any kind of conn, it is not required to be a voice call, at all.</p>
<p>Make sure that osmo-msc handles non-voice handovers without crashing, by implementing ttcn3 tests for inter-BSC HO without a CC transaction.</p> OP25 - Support #4593 (New): Link to samples on the wiki is deadhttps://osmocom.org/issues/45932020-06-07T10:17:42Zollopa
<p>The samples page <a class="external" href="https://osmocom.org/projects/op25/wiki/SamplesPage">https://osmocom.org/projects/op25/wiki/SamplesPage</a> points to this url for samples:<br /><a class="external" href="http://op25.osmocom.org/p25-samples">http://op25.osmocom.org/p25-samples</a></p>
<p>Which gives a 502 error.</p> OsmocomBB - Support #4581 (New): compiler error assert.h no such filehttps://osmocom.org/issues/45812020-06-04T17:43:06ZTomMaier
<p>Hello,</p>
<p>this is my first time using osmocom and I am not really experienced with gcc so it is quite possible that I am just doing something stupid.<br />When I try to make osmocom-bb I get the following error</p>
<p>../../src/timer.c:37:20: fatal error: assert.h: No such file or directory<br />#include <assert.h></p>
<p>What could I be doing wrong?</p>
<p>-Tom</p> Ericsson RBS 6xxx - Support #4534 (Stalled): Take pictures of RBS6k gear for documentationhttps://osmocom.org/issues/45342020-05-05T18:27:31Zlaforge
In order to improve the wiki with pictures and to later on create documentation describing the various inter-connections etc., it would be great to have some<br />useful quality picturs of the RBS6k equipment, that is (primarily) at this point:
<ul>
<li>RRUS</li>
<li>RUS</li>
<li>DUG20</li>
<li>DUL20</li>
<li>RBS6601 (2U rack)</li>
</ul>
Focus should be on
<ul>
<li>any kind of connectors (RF, E1, Ethernet, etc.)</li>
<li>any kind of LEDs / buttons</li>
<li>anything else that might be relevant to the user.</li>
</ul>
<p>Please add the (basic cropped) pictures to the related wiki pages of the respective equipment here.</p> OsmocomBB - Support #4471 (New): Received FTMTOOL from phone, ramloader has abortedhttps://osmocom.org/issues/44712020-03-29T09:57:52Zyeppo
<p>I want to run OsmocomBB`s bin on my Motorola C115 with CP2102 board. I wrote in terminal:<br /> yeppo@yeppo-machine:~/osmocombb/src$ sudo host/osmocon/osmocon -m c123xor -p /dev/ttyUSB0 target/firmware/board/compal_e88/hello_world.compalram.bin<br />and got this:<br />got 1 bytes from modem, data looks like: 00 .<br />got 1 bytes from modem, data looks like: 04 .<br />got 1 bytes from modem, data looks like: f0 .<br />got 1 bytes from modem, data looks like: 1b .<br />got 3 bytes from modem, data looks like: f6 02 00 ...<br />got 1 bytes from modem, data looks like: 41 A<br />got 1 bytes from modem, data looks like: 01 .<br />got 1 bytes from modem, data looks like: 40 @<br />Received PROMPT1 from phone, responding with CMD<br />read_file(target/firmware/board/compal_e88/hello_world.compalram.bin): file_size=26044, hdr_len=4, dnload_len=26051<br />got 1 bytes from modem, data looks like: 66 f<br />got 1 bytes from modem, data looks like: 74 t<br />got 1 bytes from modem, data looks like: 6d m<br />got 1 bytes from modem, data looks like: 74 t<br />got 1 bytes from modem, data looks like: 6f o<br />got 1 bytes from modem, data looks like: 6f o<br />got 1 bytes from modem, data looks like: 6c l<br />Received FTMTOOL from phone, ramloader has aborted<br />got 1 bytes from modem, data looks like: 65 e<br />got 1 bytes from modem, data looks like: 72 r<br />got 1 bytes from modem, data looks like: 72 r<br />got 1 bytes from modem, data looks like: 6f o<br />got 1 bytes from modem, data looks like: 72 r</p>
<p>Wires from CP2102 board soldered directly to the phone(I tried to change combination with wires, but nothing not changed.)</p>
<p>Help me plz :)</p> rtl-sdr - Support #4367 (New): "Communications Toolbox Support Package for RTL-SDR Radio" from "M...https://osmocom.org/issues/43672020-01-17T17:18:02ZStarhowl
<p>When trying to install Communications Toolbox Support Package for RTL-SDR Radio from<br /><a class="external" href="https://de.mathworks.com/matlabcentral/fileexchange/44991-communications-toolbox-support-package-for-rtl-sdr-radio">https://de.mathworks.com/matlabcentral/fileexchange/44991-communications-toolbox-support-package-for-rtl-sdr-radio</a><br />, I get a 502-error from the installer on that webpage.</p>
<p>I posted an included link on Freenode, where to bot immediately delivered a 502 for<br /><a class="external" href="http://sdr.osmocom.org/trac/raw-attachment/wiki/rtl-sdr/RelWithDebInfo.zip">http://sdr.osmocom.org/trac/raw-attachment/wiki/rtl-sdr/RelWithDebInfo.zip</a><br />which appears to have moved to<br /><a class="external" href="https://osmocom.org/attachments/download/2242/RelWithDebInfo.zip">https://osmocom.org/attachments/download/2242/RelWithDebInfo.zip</a><br />instead.</p>
<p>Connecting via a German or US IP didn't resolve the issue, a different user on the same channel with the bot also confirmed the 502.</p>
<p>Can you please include the file at its former location to make the installer work again?</p> OsmoTRX - Support #4365 (Stalled): Create testsuite to test osmo-bts-trx+osmo-trx under high chan...https://osmocom.org/issues/43652020-01-15T13:51:22Zpespin
<p>The final aim of this task is to check if we run into CPU limitations of the Raspi CM3 of the LimeNet-micro when maximizing the channel load even of a single TRX.</p>
<p>Say, for example, 14 concurrent TCH/H with AMR inside on the 7 TS. It would be very interesting to see if that works, and if there is any margin on the CPU left, etc.</p>
<p>Quick way to test manually: Use osmo-bsc connected to osmo-bts-trx and use VTY command "bts <0-255> trx <0-255> timeslot <0-7> sub-slot <0-7> (activate|deactivate) (hr|fr|efr|amr) [<0-7>]"</p>
<p>"Automatic" testing: Use TTCN3, add test to BTS_Tests.ttcn:<br />As we even have that RTP source and sink you could even send some (random payload) RTP messages if you'd want, they just need to match in size and in terms of the RTP payload type. We don't care about the content of the RTP at all here.<br />Make sure the config/vty is configured for 7 timeslots at TCH/H and unlimited radio link timeout and then send the 14x CHAN ACT with the right channel mode (and if you want to add RTP, the IPA CRCX/MDCX).</p> Cellular Network Infrastructure - Support #4333 (Feedback): GSUP binary compatibility: add GSUP p...https://osmocom.org/issues/43332019-12-16T13:56:14Zneelsnhofmeyr@sysmocom.de
<p>I think it would be good to discuss binary compat in GSUP in general.<br />We're currently putting more and more functionality and weight on GSUP,<br />especially with D-GSM connecting several otherwise independent sites.<br />If we ever need to enhance parts of the protocol, it would be good to do<br />it in a way that allows in-band knowledge about what the coding should be.<br />Related:</p>
<ul>
<li>introduce ToN/NPI to MSISDN coding; this applies to the plain MSISDN IE,<br /> as well as the SMS-over-GSUP OA and DA IEs.</li>
<li>I am tweaking the Routing Error coding, where originally it sent the Source Name and Destination Name back unchanged<br /> -- which does not make sense when proxy routing comes into the picture.<br /> The Source/Destination Name must be swapped so that the error message reaches the originator of the request.</li>
</ul>
<p>One way would be to add new IEs for each change, either to supplement or replace previous IEs.<br />But to, for example, add ToN/NPI to MSISDN encoding, should be add new IEs for all of<br />MSISDN, SMS-OA and SMS-DA MSISDNs? Rather not. Should we add a new Routing Error message type? no.</p>
<p>It seems to me that the generally cleanest way to tweak the GSUP protocol<br />coding would be to introduce a protocol version IE.<br />Then we could allow clients to encode in both old and new formats...</p>
<p>To not send a new coding to an old client, osmo-hlr would also<br />need to keep track of which GSUP site speaks which protocol version.</p>
<p>Another way would be to add explicit new IEs for every binary incompatibility,<br />either supplementing current IEs, or replacing them (and using a new IE discriminator).</p>
<p>One idea is a protocol version communicated during IPA handshake,<br />where the client also sends the IPA unit name.<br />A problem here is that a GSUP proxy may have recent protocol capability, while it forwards for older clients.<br />If an older client is proxied, the final destination may still assume a newer client only because<br />the proxy in-between is.</p>
<p>Another idea is a Version IE (osmo_gsup_message.version), that can be sent for every GSUP message.<br />Absence of the version tag would imply version == 0. It would in fact only be strictly required to be included<br />if any encoded IE has an encoding that is not identical to version 0.</p>
<p>The gsup.c encoding/decoding could then switch() on the protocol version and encode/decode differently.</p>
<p>Does it make sense to implement such, for example to fix the MSISDN coding in SMS-over-GSUP and the plain MSISDN IE at the same time,<br />and to indicate that the Routing Error response contains the original requestor as Destination Name?</p> Distributed GSM - Support #4308 (New): thoughts about incorporating credit / billing in D-GSMhttps://osmocom.org/issues/43082019-12-04T14:04:46Zneelsnhofmeyr@sysmocom.de
<p>it is not a priority to really implement a working setup, but we should have a bit of a plan for the future, to not block progress later.</p>
<p>- how could credit management be standardized?<br />- how to handle link loss? keep a set amount of credit on each site to use even if the subscriber's home village is unreachable?<br />- think about credit for: voice, sms, data connections.<br />- Look at DIAMETER accounting specs, CCR / CCA <a class="external" href="https://en.wikipedia.org/wiki/Diameter_Credit-Control_Application">https://en.wikipedia.org/wiki/Diameter_Credit-Control_Application</a></p> OP25 - Support #4225 (New): Missing rules in cmake lists?https://osmocom.org/issues/42252019-10-11T17:40:30Z2CS350
<p>I got to about p3 percent and op25 gives this error.</p>
<p>Scanning dependencies of target pygen_op25_gr_op25_repeater_swig_26094<br />make<sup><a href="#fn2">2</a></sup>: <b>* No rule to make target 'op25/gr-op25_repeater/swig/op25_repeater_swig.py', needed by 'op25/gr-op25_repeater/swig/op25_repeater_swig.pyc'. Stop.<br />make<sup><a href="#fn1">1</a></sup>: <strong></b> [CMakeFiles/Makefile2:874: op25/gr-op25_repeater/swig/CMakeFiles/pygen_op25_gr_op25_repeater_swig_26094.dir/all] Error 2<br />make: <b></strong> [Makefile:130: all] Error 2<br />[ 26%] Built target gnuradio-op25<br />[ 29%] Built target test-op25<br />[ 30%] Built target _op25_swig_swig_tag<br />[ 32%] Built target _op25_swig_doc_tag<br />[ 36%] Built target op25_swig_swig_compilation<br />[ 38%] Built target _op25_swig<br />[ 40%] Built target pygen_op25_gr_op25_swig_388ba<br />[ 42%] Built target pygen_op25_gr_op25_python_4bea1<br />[ 42%] Built target pygen_op25_gr_op25_apps_383eb<br />[ 63%] Built target imbe_vocoder<br />[ 86%] Built target gnuradio-op25_repeater<br />[ 89%] Built target test-op25_repeater<br />[ 91%] Built target _op25_repeater_swig_swig_tag<br />make<sup><a href="#fn2">2</a></sup>: <strong></b> No rule to make target 'op25/gr-op25_repeater/swig/op25_repeater_swig.py', needed by 'op25/gr-op25_repeater/swig/op25_repeater_swig.pyc'. Stop.<br />make<sup><a href="#fn1">1</a></sup>: <b></strong> [CMakeFiles/Makefile2:874: op25/gr-op25_repeater/swig/CMakeFiles/pygen_op25_gr_op25_repeater_swig_26094.dir/all] Error 2<br />make: *</b> [Makefile:130: all] Error 2</p> Qualcomm Linux Modems by Quectel & Co - Support #4206 (New): Unbrick cpe router without web ui in...https://osmocom.org/issues/42062019-09-16T10:41:38Zjahcultura
<p>I have a router 4G cpe modem with linux embedded without web access and terminal does anyone know how to recover? I checked on the board has the points RX, TX, DLOAD, RESET_N, so I saw here only have SMD components so the only way to rewrite the firmware would be for these communication points. Note: I tried access via serial but stops at bootloader.</p>
<p>SERIAL LOG:<br />Format: Log Type - Time(microsec) - Message - Optional Info<br />Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic<br />S - QC_IMAGE_VERSION_STRING=BOOT.BF.3.1.2-00075<br />S - IMAGE_VARIANT_STRING=LAATANAZA<br />S - OEM_IMAGE_VERSION_STRING=ubuntu<br />S - Boot Config, 0x000002e0<br />B - 1216 - PBL, Start<br />B - 3723 - bootable_media_detect_entry, Start<br />B - 4454 - bootable_media_detect_success, Start<br />B - 4458 - elf_loader_entry, Start<br />B - 6701 - auth_hash_seg_entry, Start<br />B - 6923 - auth_hash_seg_exit, Start<br />B - 59917 - elf_segs_hash_verify_entry, Start<br />B - 107892 - PBL, End<br />B - 97478 - SBL1, Start<br />B - 146003 - pm_device_init, Start<br />B - 163114 - PM_SET_VAL:Skip<br />D - 15890 - pm_device_init, Delta<br />B - 164120 - boot_config_data_table_init, Start<br />D - 174948 - boot_config_data_table_init, Delta - (420 Bytes)<br />B - 342576 - CDT version:3,Platform ID:8,Major ID:1,Minor ID:0,Subtype:0<br />B - 348767 - sbl1_ddr_set_params, Start<br />B - 352580 - Pre_DDR_clock_init, Start<br />D - 244 - Pre_DDR_clock_init, Delta<br />D - 0 - sbl1_ddr_set_params, Delta<br />B - 365237 - pm_driver_init, Start<br />D - 4544 - pm_driver_init, Delta<br />B - 371642 - cpr_init, Start<br />D - 91 - cpr_init, Delta<br />B - 376156 - cpr_cx_mx_apc_vol_update, Start<br />D - 91 - cpr_cx_mx_apc_vol_update, Delta<br />B - 391071 - sbl1_qhsusb_al_do_fast_enum, Start<br />D - 0 - sbl1_qhsusb_al_do_fast_enum, Delta<br />B - 394060 - clock_init, Start<br />D - 152 - clock_init, Delta<br />B - 399855 - boot_flash_init, Start<br />D - 28670 - boot_flash_init, Delta<br />B - 500230 - Image Load, Start<br />D - 78172 - QSEE Image Loaded, Delta - (490820 Bytes)<br />B - 580049 - sbl1_efs_handle_cookies, Start<br />D - 0 - sbl1_efs_handle_cookies, Delta<br />B - 585661 - Devcfg Partition does not exist<br />B - 589839 - Image Load, Start<br />D - 518 - SEC Image Loaded, Delta - (2048 Bytes)<br />B - 597800 - Image Load, Start<br />D - 31994 - RPM Image Loaded, Delta - (152400 Bytes)<br />B - 629825 - Image Load, Start<br />D - 58804 - APPSBL Image Loaded, Delta - (367664 Bytes)<br />B - 688690 - QSEE Execution, Start<br />D - 152 - QSEE Execution, Delta<br />B - 694393 - SBL1, End<br />D - 599203 - SBL1, Delta<br />S - Throughput, 3000 KB/s (1013352 Bytes, 321860 us)<br />S - DDR Frequency, 240 MHz<br />Android Bootloader - UART_DM Initialized!!!<br />[0] welcome to lk<br />-----------------------------------------------------------------------<br />DMESG PART :</p>
<p>[ 0.000000] Booting Linux on physical CPU 0x0<br />[ 0.000000] Initializing cgroup subsys cpu<br />[ 0.000000] Initializing cgroup subsys cpuacct<br />[ 0.000000] Linux version 3.18.20 (wangshihong@ubuntu-238) (gcc version 4.9.2 (GCC) ) <a class="issue tracker-2 status-5 priority-5 priority-highest closed" title="Feature: port Dieter's windows code to mISDN (Closed)" href="https://osmocom.org/issues/1">#1</a> PREEMPT Mon Oct 22 19:35:14 CST 2018<br />[ 0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d<br />[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache<br />[ 0.000000] Machine model: Qualcomm Technologies, Inc. MDM <br />------------------------------------------------------------------------------------------------<br />Technical Specifications</p>
<p>LTE Support Bands FDD Band 1/3/5/7/8/28<br />WCDMA 850Mhz and 2100MHz<br />CPU frequency 533MHz<br />Flash + Memory 4Gb + 2 Gb DDR2<br />WIFI<br />2T2R 2.4GHz<br />802.11b/g/n, 300Mbps<br />Interface<br />1 x Power DC Port :<br />DC12V/1A<br />1 x RJ11<br />1x RJ45<br />10Mbps/100Mbps/1000<br />Mbps WAN/LAN Port<br />1x Power Button<br />1x Reset Button<br />1x WPS Button<br />1x 2FF Standard SIM card slot<br />1x USB port</p> Qualcomm Linux Modems by Quectel & Co - Support #4135 (New): how to use network inside ec20https://osmocom.org/issues/41352019-07-30T10:43:23Zchengj
<p>After i login to Quectel EC20's Linux system, i can't using it's network.<br />ifconfig show:<br />--------------------------------------------------------------------------------<br />root@mdm9607-perf:~# ifconfig bridge0 Link encap:Ethernet HWaddr 4A:D7:82:52:24:37 inet addr:192.168.225.1 Bcast:192.168.225.255 Mask:255.255.255.0 inet6 addr: fe80::48d7:82ff:fe4f:2134/64 Scope:Link UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:1 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:76 (76.0 B) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:28 errors:0 dropped:0 overruns:0 frame:0 TX packets:28 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2828 (2.7 KiB) TX bytes:2828 (2.7 KiB) rmnet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 UP RUNNING MTU:2000 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) root@mdm9607-perf:~# <br />-----------------------------------------------------------------------------</p>
<p>and route show:<br />---------------------------------------------------------------------------------<br />root@mdm9607-perf:~# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.225.0 * 255.255.255.0 U 0 0 0 bridge0<br />---------------------------------------------------------------------------------</p>
<p>How can i active the network? For example: ping xxxxxxxx.</p> rtl-sdr - Support #4080 (New): Receiving UTAs on 978 Mhzhttps://osmocom.org/issues/40802019-06-27T07:08:16Zwinadsb
<p>Is it possible to adapt rtl_adsb to receive UTA messages on 978 MHz as well, and create a binary executable for the benefit of Windows users?</p> OsmoGSMTester - Support #3931 (New): Contact quectel to get info about modem updates (hopefully l...https://osmocom.org/issues/39312019-04-15T13:40:48Zpespin
<p>We currently use EC20 modems to do GPRS testing under osmo-gsm-tester. It is known that those modems crash from time to time (dmesg shows device re-registering in kernel).</p>
<p>Let's try to do some quick investigation on what's needed to update the firmware on those modems, to get latest bugfixes and hopefully get less crashes (and thus more stable test results).</p>
<p>We should contact Quectel support regarding availability and procedure to flash new firmware, and ask them about required possibility to downgrade to known versions of the firmware if needed.</p> OsmoSGSN - Support #3920 (In Progress): PCAPs files of 3G PS for Osmocom network and Commercial onehttps://osmocom.org/issues/39202019-04-12T12:51:19Zefistokl
<p>In iphone-6s-q.pcap - commercial software, trace taken on 10.0.2.195:<br />(around between 10:22:44 and 10:23:17 I didn't have internet, maybe temporary fail of the system to respond to the packet 10754. All other time the data was working)<br />10.0.2.199 - nano3g ip.access S8<br />10.0.2.195 - (not osmocom) core network (without HLR and GGSN)<br />10.0.1.123 or 192.168.14.16 (same host) - GGSN and HLR</p>
<p>In iphone-6s-osmocom.pcap - osmocom based system. Data stopped working around 10:05:59 (time in the trace, or packet 3727), trace taken on 10.0.2.51:<br />10.0.2.52 - nano3g ip.access S8<br />10.0.2.51 - osmocom host (without HLR and GGSN)<br />10.0.1.123 or 192.168.14.16 (same host) - GGSN<br />172.48.1.5 - HLR</p>
<p>At first glance it seems that Osmo-SGSN doesn't respond properly to (GMM) Service Requests which come some time after initial PS activation. I haven't inspected the traces thoroughly yet.</p> OsmoBTS - Support #3863 (Stalled): setup testing of osmo-bts-oc2g on real hardware with ttcn3 and...https://osmocom.org/issues/38632019-03-26T16:21:06Zdexter
<p>In order to be able to debug problems with automatic interop testing a local instance of an osmocom-bb phone and BTS is required. TRXCONT/FAKETRX are exchanged with a real BTS/PHONE.</p> gr-osmosdr - Support #3819 (New): OSMO SDR blocks for GNUradiohttps://osmocom.org/issues/38192019-02-28T18:00:07Zchesir
<p>I installed GNUradio, and its GUI, gnuradio-companion, using pybombs. The use of pybombs for installation requires that one set up a prefix point, or directory, so that all installation files are under that directory. When I use the method outlined in <a class="external" href="https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR">https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR</a>, many files, including the RTL SDR Source block file, are installed, but I do not know which files, aside from (obviously) the block file, should be copied from the default installation locations to a directory under my prefix point for the blocks to actually work. Having copied only the RTL SDR Source block file, and attempting to execute the GRC flowgraph (which contains that one block), I am greeted with the error "Import Error: No module named osmosdr" What do I do?</p> OsmoBTS - Support #3751 (New): Ensure BTS Tests.ttcn results of OC-2G resemble what we know/expec...https://osmocom.org/issues/37512019-01-08T19:59:58Zlaforge
<p>Execution of BTS Tests.ttcn and resolution of any found test failures until the test results are comparable to those obtained with other hardware/PHY backends, such as osmo-bts-sysmo or osmo-bts-trx.</p> gr-osmosdr - Support #3512 (New): Bug #3462 on Arch Linux; gr-osmosdr install failshttps://osmocom.org/issues/35122018-08-31T14:58:01Z0pcom
<p>My application uses an SDRplay reciever, the errors in the build seem to be related to support for hardware I don't even have.</p>
<p>A suggestion of a workaround would be appreciated</p>
<p>The version listed in the AUR repositories is:<br />gr-osmosdr-nonfree-git-0.1.4.91</p>
<p>Fails the same way as with the instructions on github:</p>
<p>[user@host build]$ make<br />Scanning dependencies of target gnuradio-osmosdr<br />[ 1%] Building CXX object lib/CMakeFiles/gnuradio-osmosdr.dir/source_impl.cc.o<br />In file included from /home/user/gr-osmosdr/lib/bladerf/bladerf_source_c.h:26,<br /> from /home/user/gr-osmosdr/lib/source_impl.cc:72:<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:57:18: error: ‘bladerf_channel’ was not declared in this scope<br /> typedef std::map<bladerf_channel, bool> bladerf_channel_enable_map;<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:57:18: note: suggested alternative: ‘bladerf_image’<br /> typedef std::map<bladerf_channel, bool> bladerf_channel_enable_map;<br /> ^<sub>~~</sub>~~~~~~~~~~<br /> bladerf_image<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:57:39: error: template argument 1 is invalid<br /> typedef std::map<bladerf_channel, bool> bladerf_channel_enable_map;<br /> ^<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:57:39: error: template argument 3 is invalid<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:57:39: error: template argument 4 is invalid<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:60:18: error: ‘bladerf_channel’ was not declared in this scope<br /> typedef std::map<bladerf_channel, int> bladerf_channel_map;<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:60:18: note: suggested alternative: ‘bladerf_image’<br /> typedef std::map<bladerf_channel, int> bladerf_channel_map;<br /> ^<sub>~~</sub>~~~~~~~~~~<br /> bladerf_image<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:60:38: error: template argument 1 is invalid<br /> typedef std::map<bladerf_channel, int> bladerf_channel_map;<br /> ^<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:60:38: error: template argument 3 is invalid<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:60:38: error: template argument 4 is invalid<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:99:20: error: ‘bladerf_channel_layout’ was not declared in this scope<br /> size_t num_streams(bladerf_channel_layout layout);<br /> ^<sub>~~</sub>~~~~~~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:99:20: note: suggested alternative: ‘bladerf_channel_map’<br /> size_t num_streams(bladerf_channel_layout layout);<br /> ^<sub>~~</sub>~~~~~~~~~~~~~~~~~<br /> bladerf_channel_map<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:154:33: error: ‘bladerf_direction’ has not been declared<br /> void init(dict_t const &dict, bladerf_direction direction);<br /> ^<sub>~~</sub>~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:161:27: error: ‘bladerf_direction’ has not been declared<br /> size_t get_max_channels(bladerf_direction direction);<br /> ^<sub>~~</sub>~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:163:27: error: ‘bladerf_channel’ has not been declared<br /> void set_channel_enable(bladerf_channel ch, bool enable);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:164:27: error: ‘bladerf_channel’ has not been declared<br /> bool get_channel_enable(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:170:3: error: ‘bladerf_channel’ does not name a type; did you mean ‘bladerf_channel_map’?<br /> bladerf_channel str2channel(std::string const &ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br /> bladerf_channel_map<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:172:27: error: ‘bladerf_channel’ has not been declared<br /> std::string channel2str(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:174:22: error: ‘bladerf_channel’ has not been declared<br /> int channel2rfport(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:177:3: error: ‘bladerf_channel’ does not name a type; did you mean ‘bladerf_channel_map’?<br /> bladerf_channel chan2channel(bladerf_direction direction, size_t chan = 0);<br /> ^<sub>~~</sub>~~~~~~~~~~<br /> bladerf_channel_map<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:180:38: error: ‘bladerf_channel’ has not been declared<br /> osmosdr::meta_range_t sample_rates(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:182:39: error: ‘bladerf_channel’ has not been declared<br /> double set_sample_rate(double rate, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:184:26: error: ‘bladerf_channel’ has not been declared<br /> double get_sample_rate(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:187:36: error: ‘bladerf_channel’ has not been declared<br /> osmosdr::freq_range_t freq_range(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:189:39: error: ‘bladerf_channel’ has not been declared<br /> double set_center_freq(double freq, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:191:26: error: ‘bladerf_channel’ has not been declared<br /> double get_center_freq(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:194:43: error: ‘bladerf_channel’ has not been declared<br /> osmosdr::freq_range_t filter_bandwidths(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:196:42: error: ‘bladerf_channel’ has not been declared<br /> double set_bandwidth(double bandwidth, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:198:24: error: ‘bladerf_channel’ has not been declared<br /> double get_bandwidth(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:201:43: error: ‘bladerf_channel’ has not been declared<br /> std::vector<std::string> get_gain_names(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:203:40: error: ‘bladerf_channel’ has not been declared<br /> osmosdr::gain_range_t get_gain_range(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:206:40: error: ‘bladerf_channel’ has not been declared<br /> bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:209:38: error: ‘bladerf_channel’ has not been declared<br /> bool set_gain_mode(bool automatic, bladerf_channel ch,<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:212:22: error: ‘bladerf_channel’ has not been declared<br /> bool get_gain_mode(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:215:32: error: ‘bladerf_channel’ has not been declared<br /> double set_gain(double gain, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:217:57: error: ‘bladerf_channel’ has not been declared<br /> double set_gain(double gain, std::string const &name, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:219:19: error: ‘bladerf_channel’ has not been declared<br /> double get_gain(bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:221:44: error: ‘bladerf_channel’ has not been declared<br /> double get_gain(std::string const &name, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:224:41: error: ‘bladerf_direction’ has not been declared<br /> std::vector<std::string> get_antennas(bladerf_direction dir);<br /> ^<sub>~~</sub>~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:225:20: error: ‘bladerf_direction’ has not been declared<br /> bool set_antenna(bladerf_direction dir, size_t chan, const std::string &antenna);<br /> ^<sub>~~</sub>~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:228:57: error: ‘bladerf_channel’ has not been declared<br /> int set_dc_offset(std::complex<double> const &offset, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:230:59: error: ‘bladerf_channel’ has not been declared<br /> int set_iq_balance(std::complex<double> const &balance, bladerf_channel ch);<br /> ^<sub>~~</sub>~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:285:25: error: ‘bladerf_direction’ has not been declared<br /> bool is_antenna_valid(bladerf_direction dir, const std::string &antenna);<br /> ^<sub>~~</sub>~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:210:51: error: ‘BLADERF_GAIN_DEFAULT’ was not declared in this scope<br /> bladerf_gain_mode agc_mode = BLADERF_GAIN_DEFAULT);<br /> ^<sub>~~</sub>~~~~~~~~~~~~~~~<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_common.h:210:51: note: suggested alternative: ‘BLADERF_GAIN_MANUAL’<br /> bladerf_gain_mode agc_mode = BLADERF_GAIN_DEFAULT);<br /> ^<sub>~~</sub>~~~~~~~~~~~~~~~<br /> BLADERF_GAIN_MANUAL<br />In file included from /home/user/gr-osmosdr/lib/source_impl.cc:72:<br />/home/user/gr-osmosdr/lib/bladerf/bladerf_source_c.h:135:3: error: ‘bladerf_channel_layout’ does not name a type; did you mean ‘bladerf_channel_map’?<br /> bladerf_channel_layout _layout; /**< channel layout <strong>/<br /> ^<sub>~~</sub>~~~~~~~~~~~~~~~~~<br /> bladerf_channel_map<br />make<sup><a href="#fn2">2</a></sup>: <b></strong> [lib/CMakeFiles/gnuradio-osmosdr.dir/build.make:63: lib/CMakeFiles/gnuradio-osmosdr.dir/source_impl.cc.o] Error 1<br />make<sup><a href="#fn1">1</a></sup>: <strong></b> [CMakeFiles/Makefile2:141: lib/CMakeFiles/gnuradio-osmosdr.dir/all] Error 2<br />make: *</strong>* [Makefile:141: all] Error 2</p> SDR (Software Defined Radio) - Support #2764 (New): osmocom_fft & siggen can't access the X displayhttps://osmocom.org/issues/27642017-12-15T18:09:43Zfzy139
<p>Hi,<br />Using the RaspberryPi 3b Debian. BladeRF x40<br />Have build the GRosmosdr without error.</p>
<p>Now when I type the command in terminal,there is no graph of fft appear.<br />This error happened:<br />Client is not authorized to connect to ServerUnable to access the X display,is display set properly?</p>
<p>And I'm already build the libbladeRF and it's appeared in my enabled components.</p>
<p>thanks!</p> libosmocore - Support #2677 (New): Make stat_item available over ctrl interfacehttps://osmocom.org/issues/26772017-11-23T18:24:03Zmsuraev
<p>We should make stat-item available via ctrl interface same way we do for rate_ctr - the semantic is pretty similar, the only difference is that rate_ctr contain non-negative counter value while stat_item can contain arbitrary value.</p> OsmoBSC - Support #2622 (Stalled): Prepare automatic interop testing of OmsoBSC against NG40 core...https://osmocom.org/issues/26222017-11-07T21:46:30Zlaforge
<p>Please create a setup where the signaling tests (LU, MO-SMS, MT-SMS, USSD) can be done with osmocombb-mobile + virt_phy + osmo-bts-virtual + osmo-bsc against NG40.</p>
<p>This is in preparation of automatizing this task as soon as we have a scripting interface towards OsmocomBB "mobile"</p>
<p>Building all components should be automatic / scripted. It might be an idea to do this via Dockerfiles. Execution of the tests + checking results is not automatic yet, as this is pending the OsmocomBB "mobile" script interface.</p>
The goal is basically to have a single command/script to
<ul>
<li>build/install osmo-bsc, osmo-bts-virtual, virt-phy + mobile</li>
<li>might make sense to have
<ul>
<li>one docker image for osmo-bsc</li>
<li>one docker image for osmo-bts-virtual + virt_phy</li>
</ul></li>
</ul>
and then have another scripted way to
<ul>
<li>start N instances of each of them (except "mobile"), where the number of BSCs is different from the number of BTSs and again different from the number of virt-phy instances</li>
</ul> OsmoGSMTester - Support #2504 (New): check whether running osmo-* from docker images is feasible ...https://osmocom.org/issues/25042017-09-07T18:36:30Zneelsnhofmeyr@sysmocom.de
<p>using docker on the osmo-gsm-tester would help to solve / simplify a number of issues.<br />But does it work?</p>
<p>Try it out: build an osmo core-net in a docker image and attempt to run it on the osmo-gsm-tester-rnd.<br />Also try running several (different) images alongside each other.</p>
<p>Is there a bottleneck? Which one (disk space vs. RAM)?</p>
<p>In the extreme we would like to run each of the osmo-* binaries in an own image, being about 10 images in parallel.</p> OsmoGSMTester - Support #2497 (Stalled): Set up SIM cards with auth algo other than comp128v1https://osmocom.org/issues/24972017-09-06T15:16:58Zneelsnhofmeyr@sysmocom.de
<p>It appears all SIM cards currently in the osmo-gsm-tester rnd and prod setup are configured to use XOR auth.</p>
<p>(Edited)</p>
<p>We saw auth failing, but succeeding when setting the HLR to XOR.<br />XOR is currently not available, and the only reason that choosing XOR would lead to success is that the HLR does not provide any auth data and the MSC continues <strong>without</strong> authentication.</p>
<p>For authentication related test runs, we need to set 'network' / 'authentication required' in the osmo-msc.cfg,<br />and we should probably also set 'encryption a5 3' to see that the negotiated kc works for encryption.</p>
<p>We do not support XOR, and we should have more diverse auth algos in place.<br />Best would be one using Milenage (the 2G variant), one using comp128v1, one using comp128v3.</p>
<p>We then need to adjust the resources.conf and can set up different auth tests for the various algos.</p> rtl-sdr - Support #1983 (New): Add welle.io and rtl_fm_streamer to rtl-sdr app listhttps://osmocom.org/issues/19832017-03-14T22:14:32Zalbrechtl
<p>Hi,</p>
<p>I'm using you great rtl-sdr to receive DAB+ and FM. Is it possible that you add the following two programs to your rtl-sdr application list?</p>
<ul>
<li>welle.io (<a class="external" href="https://www.welle.io/">https://www.welle.io/</a>)</li>
<li>rtl_fm_streamer (<a class="external" href="https://github.com/AlbrechtL/rtl_fm_streamer">https://github.com/AlbrechtL/rtl_fm_streamer</a>)</li>
</ul>
<p>Thanks, Al</p>