Hi
here's a status update on the rigor-ds driver:
So far I managed to get the first readings. Displaying analog values in the
console works. Putting them into a .sr file and reopening them does not seem to
work. For the digital data this works fine, even opening in pulseview.
Currently I have an issue with the time base (time is far too large). I will
have a look into this later.
Note that, the “max 500 byte USB transfer bug" still exists and I had no time
to look into this.
However, if I select the rigor-ds driver in pulseview, the following happens
before is crashes:
[…]
sr: scpi_usbtmc: Successfully sent SCPI command: ':TRIG:EDGE:SLOP?'.
sr: scpi: Got response: 'NEG', length 3.
sr: rigol-ds: Current trigger slope NEG
sr: rigol-ds: ################ config_list
(process:34874): GLib-CRITICAL **: g_variant_ref: assertion 'value != NULL'
failed
Process 34874 stopped
* thread #1: tid = 0x20f721, 0x00000001012b3db0 libglib-2.0.0.dylib`g_bit_lock
+ 25, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1,
address=0x20)
frame #0: 0x00000001012b3db0 libglib-2.0.0.dylib`g_bit_lock + 25
libglib-2.0.0.dylib`g_bit_lock + 25:
-> 0x1012b3db0: movl (%rbx), %ecx
0x1012b3db2: movl %r14d, %edx
0x1012b3db5: orl %ecx, %edx
0x1012b3db7: movl %ecx, %eax
(lldb) bt
* thread #1: tid = 0x20f721, 0x00000001012b3db0 libglib-2.0.0.dylib`g_bit_lock
+ 25, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1,
address=0x20)
* frame #0: 0x00000001012b3db0 libglib-2.0.0.dylib`g_bit_lock + 25
frame #1: 0x000000010130cdba libglib-2.0.0.dylib`g_variant_n_children + 28
frame #2: 0x000000010130930f libglib-2.0.0.dylib`g_variant_iter_new + 63
frame #3: 0x00000001011fb6d7
libglibmm-2.4.1.dylib`Glib::VariantIter::VariantIter(Glib::VariantBase const&)
+ 17
frame #4: 0x0000000100027b14
pulseview`pv::binding::Device::bind_enum(this=0x00000001080d5b88,
name=0x00007fff5fbfcb68, gvar_list=<unavailable>,
getter=pv::prop::Property::Getter at 0x00007fff5fbfced0,
setter=pv::prop::Property::Setter at 0x00007fff5fbfcea0,
printer=function<QString (Glib::VariantBase)> at 0x00007fff5fbfce70)>,
std::__1::function<void (Glib::VariantBase)>, std::__1::function<QString
(Glib::VariantBase)>) + 116 at device.cpp:152
frame #5: 0x00000001000263d8
pulseview`pv::binding::Device::Device(this=0x00000001080d5b88,
configurable=shared_ptr<sigrok::Configurable> at 0x00007fff5fbfd028) + 2280 at
device.cpp:109
frame #6: 0x000000010003172e
pulseview`pv::popups::DeviceOptions::DeviceOptions(this=0x00000001080d5b20,
device=<unavailable>, parent=<unavailable>) + 142 at deviceoptions.cpp:42
frame #7: 0x0000000100037417
pulseview`pv::toolbars::MainBar::update_device_config_widgets(this=0x000000010a636e50)
+ 103 at mainbar.cpp:383
frame #8: 0x000000010003731b
pulseview`pv::toolbars::MainBar::update_device_list(this=<unavailable>) + 475
at mainbar.cpp:200
frame #9: 0x00000001000144ce
pulseview`pv::MainWindow::on_actionConnect_triggered() [inlined]
pv::MainWindow::update_device_list(this=<unavailable>) + 174 at
mainwindow.cpp:508
frame #10: 0x00000001000144c2
pulseview`pv::MainWindow::on_actionConnect_triggered(this=<unavailable>) + 162
at mainwindow.cpp:594
frame #11: 0x00000001000734aa
pulseview`pv::MainWindow::qt_static_metacall(_o=0x00007fff5fbff6f8,
_c=<unavailable>, _id=<unavailable>, _a=<unavailable>) + 346 at
moc_mainwindow.cxx:85
frame #12: 0x0000000100073698
pulseview`pv::MainWindow::qt_metacall(this=<unavailable>, _c=<unavailable>,
_id=6, _a=<unavailable>) + 56 at moc_mainwindow.cxx:133
frame #13: 0x0000000100eb49de QtCore`QMetaObject::activate(QObject*,
QMetaObject const*, int, void**) + 1980
frame #14: 0x00000001002915db QtGui`QAction::activate(QAction::ActionEvent)
+ 227
frame #15: 0x000000010061b581
QtGui`QMenuPrivate::activateCausedStack(QList<QPointer<QWidget> > const&,
QAction*, QAction::ActionEvent, bool) + 77
frame #16: 0x000000010061a336 QtGui`QMenuPrivate::activateAction(QAction*,
QAction::ActionEvent, bool) + 470
frame #17: 0x00000001002d822b QtGui`QWidget::event(QEvent*) + 687
frame #18: 0x000000010061e80d QtGui`QMenu::event(QEvent*) + 617
frame #19: 0x0000000100299032
QtGui`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 194
frame #20: 0x000000010029ac8a QtGui`QApplication::notify(QObject*, QEvent*)
+ 2686
frame #21: 0x0000000100007ce0
pulseview`Application::notify(this=<unavailable>, receiver=<unavailable>,
event=<unavailable>) + 16 at application.cpp:38
frame #22: 0x0000000100ea00ce
QtCore`QCoreApplication::notifyInternal(QObject*, QEvent*) + 118
frame #23: 0x0000000100299910
QtGui`QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*,
QWidget*, QWidget**, QPointer<QWidget>&, bool) + 448
frame #24: 0x00000001002512c6 QtGui`qt_mac_handleMouseEvent(NSEvent*,
QEvent::Type, Qt::MouseButton, QWidget*, bool) + 1300
frame #25: 0x00007fff8f157b5b AppKit`-[NSWindow _reallySendEvent:] + 756
frame #26: 0x00007fff8ebe116e AppKit`-[NSWindow sendEvent:] + 446
frame #27: 0x0000000100242497 QtGui`-[QCocoaPanel sendEvent:] + 113
frame #28: 0x00007fff8eb93451 AppKit`-[NSApplication sendEvent:] + 4183
frame #29: 0x000000010024dc0a QtGui`-[QNSApplication sendEvent:] + 97
frame #30: 0x00007fff8ea1f608 AppKit`-[NSApplication run] + 711
frame #31: 0x0000000100255f18
QtGui`QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
+ 1522
frame #32: 0x0000000100e9d6f1
QtCore`QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 77
frame #33: 0x0000000100e9d870
QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 370
frame #34: 0x000000010061d2ab QtGui`QMenu::exec(QPoint const&, QAction*) +
103
frame #35: 0x0000000100653299 QtGui`QToolButtonPrivate::popupTimerDone() +
1427
frame #36: 0x0000000100653505
QtGui`QToolButton::mousePressEvent(QMouseEvent*) + 209
frame #37: 0x00000001002d8216 QtGui`QWidget::event(QEvent*) + 666
frame #38: 0x00000001005a6257 QtGui`QAbstractButton::event(QEvent*) + 179
frame #39: 0x0000000100299032
QtGui`QApplicationPrivate::notify_helper(QObject*, QEvent*) + 194
frame #40: 0x000000010029ac8a QtGui`QApplication::notify(QObject*, QEvent*)
+ 2686
frame #41: 0x0000000100007ce0
pulseview`Application::notify(this=<unavailable>, receiver=<unavailable>,
event=<unavailable>) + 16 at application.cpp:38
frame #42: 0x0000000100ea00ce
QtCore`QCoreApplication::notifyInternal(QObject*, QEvent*) + 118
frame #43: 0x0000000100299910
QtGui`QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*,
QWidget*, QWidget**, QPointer<QWidget>&, bool) + 448
frame #44: 0x00000001002512c6 QtGui`qt_mac_handleMouseEvent(NSEvent*,
QEvent::Type, Qt::MouseButton, QWidget*, bool) + 1300
frame #45: 0x00007fff8f15aa18 AppKit`-[NSWindow _reallySendEvent:] + 12721
frame #46: 0x00007fff8ebe116e AppKit`-[NSWindow sendEvent:] + 446
frame #47: 0x0000000100249634 QtGui`-[QCocoaWindow sendEvent:] + 113
frame #48: 0x00007fff8eb93451 AppKit`-[NSApplication sendEvent:] + 4183
frame #49: 0x000000010024dc0a QtGui`-[QNSApplication sendEvent:] + 97
frame #50: 0x00007fff8ea1f608 AppKit`-[NSApplication run] + 711
frame #51: 0x0000000100255f18
QtGui`QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
+ 1522
frame #52: 0x0000000100e9d6f1
QtCore`QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 77
frame #53: 0x0000000100e9d870
QtCore`QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 370
frame #54: 0x0000000100ea051f QtCore`QCoreApplication::exec() + 199
frame #55: 0x00000001000059f2 pulseview`main(argc=2, argv=<unavailable>) +
1074 at main.cpp:164
frame #56: 0x00007fff984685c9 libdyld.dylib`start + 1
frame #57: 0x00007fff984685c9 libdyld.dylib`start + 1
Is this a bug of pulseview or of my driver?
Regards,
Juergen
------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
sigrok-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sigrok-devel