Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RPi get_version error with flrig 1.3.42 #798

Closed
mdblack98 opened this issue Sep 14, 2021 · 1 comment
Closed

RPi get_version error with flrig 1.3.42 #798

mdblack98 opened this issue Sep 14, 2021 · 1 comment
Labels
bug critical A problem for common operations with WSJT-X, GPredict, RigPi, etc. needs test Patches have been submitted but need testing to close issue
Milestone

Comments

@mdblack98
Copy link
Contributor

trying this anyway. The first issue I hit using WSJT-X v2.5.0 RC6 and the version of flrig in the Raspberry Pi OS repos, which is 1.3.42, is this error on initialization ("Settings->Radio->Test CAT"):

Hamlib error: Feature not available
flrig_open: get_version failed: Feature not available
flrig.c(511):read_transaction return(0)
flrig.c(594):flrig_transaction return(11)
flrig.c(594):flrig_transaction return(11)flrig.c(801):flrig_open return(11)
rig.c(1026):rig_open return(11) while opening connection to rig

@mdblack98 mdblack98 added bug critical A problem for common operations with WSJT-X, GPredict, RigPi, etc. labels Sep 14, 2021
@mdblack98 mdblack98 added this to the 4.3.2 milestone Sep 14, 2021
@mdblack98 mdblack98 added the needs test Patches have been submitted but need testing to close issue label Sep 14, 2021
@mdblack98
Copy link
Contributor Author

I take that back, perhaps I can help here. I tried using "Settings->Radio->Mode->Data/Pkt" in WSJT-X and got this crash in the Hamlib flrig back end:
Thread 15 "QThread" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fd6a06040 (LWP 25625)]
0x00000055559ae05c in modeMapGetFLRig (modeHamlib=2048) at /home/pi/hamlib-prefix/src/rigs/dummy/flrig.c:680
680 if (modeMap[i].mode_hamlib == modeHamlib && strlen(modeMap[i].mode_flrig) > 0)
(gdb) bt
#0 0x00000055559ae05c in modeMapGetFLRig (modeHamlib=2048) at /home/pi/hamlib-prefix/src/rigs/dummy/flrig.c:680
#1 0x00000055559b2b90 in flrig_set_mode (rig=0x55706ad460, vfo=1, mode=2048, width=-1) at /home/pi/hamlib-prefix/src/rigs/dummy/flrig.c:1420
#2 0x000000555594d530 in rig_set_mode (rig=0x55706ad460, vfo=1, mode=2048, width=-1) at /home/pi/hamlib-prefix/src/src/rig.c:2253
#3 0x00000055558a4454 in HamlibTransceiver::do_frequency (this=0x557068e580, f=21074000, m=Transceiver::DIG_U, no_ignore=false) at /home/pi/wsjtx-prefix/src/Transceiver/HamlibTransceiver.cpp:899
#4 0x0000005555939b10 in TransceiverBase::set (this=0x557068e580, s=..., sequence_number=7) at /home/pi/wsjtx-prefix/src/Transceiver/TransceiverBase.cpp:87
#5 0x00000055557ac660 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0, 1>, QtPrivate::List<Transceiver::TransceiverState const&, unsigned int>, void, void (Transceiver::)(Transceiver::TransceiverState const&, unsigned int)>::call (f=&virtual table offset 96, o=0x557068e580, arg=0x557000bee0) at /usr/include/aarch64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:134
#6 0x00000055557aada8 in QtPrivate::FunctionPointer<void (Transceiver::
)(Transceiver::TransceiverState const&, unsigned int)>::call<QtPrivate::List<Transceiver::TransceiverState const&, unsigned int>, void> (f=&virtual table offset 96, o=0x557068e580, arg=0x557000bee0) at /usr/include/aarch64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:167
#7 0x00000055557a8348 in QtPrivate::QSlotObject<void (Transceiver::)(Transceiver::TransceiverState const&, unsigned int), QtPrivate::List<Transceiver::TransceiverState const&, unsigned int>, void>::impl (which=1, this_=0x55702396c0, r=0x557068e580, a=0x557000bee0, ret=0x0) at /usr/include/aarch64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:396
#8 0x0000007ff671106c in QObject::event(QEvent
) () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#9 0x0000007ff73bf3d4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/aarch64-linux-gnu/libQt5Widgets.so.5
#10 0x0000007ff73c6a8c in QApplication::notify(QObject*, QEvent*) () from /usr/lib/aarch64-linux-gnu/libQt5Widgets.so.5
#11 0x00000055557b2c10 in ExceptionCatchingApplication::notify (this=0x7fffffeda0, receiver=0x557068e580, e=0x556fd10760) at /home/pi/wsjtx-prefix/src/ExceptionCatchingApplication.hpp:31
#12 0x0000007ff66e5618 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#13 0x0000007ff66e8820 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#14 0x0000007ff673cb50 in ?? () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#15 0x0000007ff3cbb754 in g_main_context_dispatch () from /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#16 0x0000007ff3cbb9c8 in ?? () from /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#17 0x0000007ff3cbba64 in g_main_context_iteration () from /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#18 0x0000007ff673c04c in QEventDispatcherGlib::processEvents(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#19 0x0000007ff66e3ed8 in QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#20 0x0000007ff652c124 in QThread::exec() () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#21 0x0000007ff6537444 in ?? () from /usr/lib/aarch64-linux-gnu/libQt5Core.so.5
#22 0x0000007ff7aad7e4 in start_thread (arg=0x7fffff9bcf) at pthread_create.c:486
#23 0x0000007ff6096adc in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:78
(gdb) p i
$1 = 2
(gdb) p modeMap[0]
$3 = {mode_hamlib = 4, mode_flrig = 0x7fa8006030 "|USB|"}
(gdb) p modeMap[1]
$4 = {mode_hamlib = 8, mode_flrig = 0x7fa8006130 "|LSB|"}
(gdb) p modeMap[2]
$5 = {mode_hamlib = 2048, mode_flrig = 0x0}
(gdb)

Seems the index on madeMap is not being bounds checked. This was using your patch for the flrig version check applied to the Hamlib-4.3 branch at commit bacb20a .

73
Bill
G4WJS.

wutje pushed a commit to wutje/Hamlib that referenced this issue Sep 16, 2021
@mdblack98 mdblack98 modified the milestones: 4.3.2, 4.4 Oct 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug critical A problem for common operations with WSJT-X, GPredict, RigPi, etc. needs test Patches have been submitted but need testing to close issue
Projects
None yet
Development

No branches or pull requests

1 participant