Work in progress, stay tuned
People involved: Jan BEHRENS, HPS, CeDeROM, DB.
LimeSDR utilities on FreeBSD
GQRX + LimeSDR Mini.
- TODO
LimeSuite FreeBSD Port.
[DONE] source port portsnap and binary package pkg available for everyone.
[DONE] commit to port tree: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252032.
[DONE] LimeSuite + SoapySDR module build.
- [DONE] build fix / patch upstream.
[DONE] cmake: https://github.com/myriadrf/LimeSuite/pull/329.
[DONE] wxString debug: https://github.com/myriadrf/LimeSuite/pull/332.
[DONE] connection remote: https://github.com/myriadrf/LimeSuite/pull/333.
[DONE] stream unit constructor: https://github.com/myriadrf/LimeSuite/pull/336.
[DONE] stream unite header: https://github.com/myriadrf/LimeSuite/pull/337.
- [TODO] less verbose console output even for GUI application.
one way to control LibUSB verbosity is using environmental variables like <code>LIBUSB_DEBUG=0 LimeSuiteGUI</code>.
- [DONE] compiler/linker errors in the Lime Suite (which contains more than the SoapySDR driver).
Known problems
Software / Utilities
LimeSuite and SoapySDR cannot open LimeSDR USB device while detect works fine.
- [ONGO] problem fixed. upstream / firmware updated.
- [TODO] make solution public.
- [TODO] verify the solution.
- [TODO] fix the device open problem.
- [TODO] unable to open usb device - find a cause of the problem - probably a LibUSB reset related.
[DONE] Make LimeSuite work with SoapySDR (LimeSuite generates a driver for SoapySDR).
[DONE] Create LimeSuite port for FreeBSD.
wx assertions on application startup.
- [TODO] problem fixed. upstream / firmware updated.
- [DONE] cause found.
[DONE] report issue on upstream github, done: https://github.com/myriadrf/LimeSuite/issues/338.
Software / OS / FreeBSD
Excessive debug output.
- [ONGO] problem fixed. upstream / firmware updated.
- [TODO] make solution public.
- [TODO] verify the solution.
- [TODO] fix the device open problem.
- Likely setting the verbosity level to a different value in FreeBSD could fix the issue, as maybe libusb on FreeBSD is just more verbose, but I’m not sure if there are any real errors or issues).
one way to control LibUSB verbosity is using environmental variables like <code>LIBUSB_DEBUG=0 LimeSuiteGUI</code>.
Firmware / USB
USB reset.
This is a FreeBSD related issue. See post on the freebsd-usb mailinglist: https://lists.freebsd.org/pipermail/freebsd-usb/2020-July/016715.html and its follow-ups.
- [TODO] analyze LibUSB reset problem that prevents LimeSDR working on FreeBSD.
- [TODO] enabling non-root FreeBSD users to execute a reset or removing the call from the driver, we’re still debating on how or if the first can be achieved).
Firmware / RADIO
`LimeSDR-Mini` Hardware Self-Test fail with `LimeQuickTest`.
[WFIX] problem won't fix: changes to testing application not welcome (see https://github.com/myriadrf/LimeSuite/issues/339).
[DONE] cause found: tests need to be performed with antennas disconnected (both RX and TX port empty) and device should be cold (board temperature over 40C will fail <code>RF Loopback Test</code>).
[DONE] report issue on upstream github, done: https://github.com/myriadrf/LimeSuite/issues/339
- [WFIX] some tests fail, depends on hardware and firmware relese. verify. confirmed with @cederom device on FreeBSD.
MCU error 3 / SXR tune failed.
Issue seems to be reproducible with a [test program](https://sapphire.magnetkern.de/paste_1d1b4528287690e1e2dc1200acb41427/limetest_2020-09-03_0731Z.c). Under FreeBSD, ensure that libLMS7Support.so of LimeSuite has been installed in /usr/local/lib/SoapySDR/modules0.7 and compile with: <code>cc -Wall -o limetest-mcu-error -I /usr/local/include limetest_2020-09-03_0731Z.c -L /usr/local/lib -l SoapySDR</code>. Further notes on that issue can be found in the thread [MCU error 3 (SXR tune failed) on LimeSDR USB](https://discourse.myriadrf.org/t/mcu-error-3-sxr-tune-failed-on-limesdr-usb/5303).
- [TODO] cause found: firmware / design error?
[DONE] report issue on upstream, done: https://github.com/myriadrf/LimeSuite/issues/340 and https://github.com/myriadrf/LimeSDR-Mini/issues/2.
- [TODO] problem fixed. upstream / firmware updated.
References
Lime Micro - Software defined radio technology for wireless networks.
LimeSDR - project main site.
LimeSDR-Mini - open-source device repository.
FreeBSD - FreeBSD is an operating system used to power modern servers, desktops, and embedded platforms.
FreshPorts - The Place For FreeBSD Ports - Most recent commits.