Closed auscompgeek closed 8 months ago
This is a bug in the revlib library, here's what I see on Linux under gdb:
(gdb) bt
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1 0x00007ffff7aae8a3 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
#2 0x00007ffff7a5c8ee in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3 0x00007ffff7a448ff in __GI_abort () at abort.c:79
#4 0x00007fffe96a4d19 in __gnu_cxx::__verbose_terminate_handler () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95
#5 0x00007fffe96b4f4c in __cxxabiv1::__terminate (handler=<optimized out>)
at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#6 0x00007fffe96b4fb7 in std::terminate () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:58
#7 0x00007fffe54362c2 in c_REVLib_FlushErrorsAndTerminate ()
from robotpy-rev/rev/_rev.cpython-38-x86_64-linux-gnu.so
#8 0x00007fffe5434873 in c_SparkMax_Create () from robotpy-rev/rev/_rev.cpython-38-x86_64-linux-gnu.so
#9 0x00007fffe542bfc2 in rev::CANSparkLowLevel::CANSparkLowLevel(int, rev::CANSparkLowLevel::MotorType) ()
from robotpy-rev/rev/_rev.cpython-38-x86_64-linux-gnu.so
#10 0x00007fffe542c53d in rev::CANSparkBase::CANSparkBase(int, rev::CANSparkLowLevel::MotorType) ()
from robotpy-rev/rev/_rev.cpython-38-x86_64-linux-gnu.so
#11 0x00007fffe542b42d in rev::CANSparkMax::CANSparkMax(int, rev::CANSparkLowLevel::MotorType) ()
from robotpy-rev/rev/_rev.cpython-38-x86_64-linux-gnu.so
#12 0x00007fffe536e244 in pybind11::detail::initimpl::construct_or_initialize<rev::CANSparkMax, int, rev::CANSparkLowLevel::MotorType, 0> () at robotpy-build/robotpy_build/pybind11/include/pybind11/detail/init.h:77
I sent an email reporting this to rev and got this response:
Thanks for reaching out to let us know about this! I've forwarded this information to our software team and hopefully, we will be able to improve this in an upcoming REVLib update.
Of note, this is new behaviour in the kickoff release. It worked fine in the beta.
@virtuald, have you heard anything from rev about an update or progress before I reach out?
The more paying customers annoy them the more likely they'll actually fix it.
Having the same issue
We just released REVLib v2024.2.1 which should fix this issue
@jfabellera that fixed it, thanks.
See #59 for a new issue that popped up in this release.
Problem description
Constructing a
CANSparkMax
withMotorType.kBrushed
in simulation causes the robot code to exit with SIGABRT.Operating System
MacOS
Installed Python Packages
Reproducible example code