Jakub,

I'll look into this. The issues you're reporting with the binary are
probably what I'll want to try to reproduce first. Can you be more specific
as to the behavior of your system during the crash you're reporting?
Screenshots would be useful if there are dialogs present during / after the
crash.

Beyond that, it sounds like you've had this system up and running with a B
series in the past, right? This would imply that you've installed the
Windows USB driver successfully:
http://files.ettus.com/manual/page_transport.html#transport_usb_installwin and
that you can see the B series device in the Windows Device manager when
connected.

Sam

On Thu, Aug 29, 2019 at 3:11 AM Jakub Rybka via USRP-users <
usrp-users@lists.ettus.com> wrote:

>    Hello,
>
> I have encountered a strange problem using UHD 3.13 and 3.14 releases
> under Windows. I am using X310 USRPs for some time now, and didn't have
> any problem with them. My development environment is Windows 10, VS2017,
> boost 1.67 and UHD versions 3.13 and 3.14. When I tried to use my
> software with B200mini USRP device, UHD completely crashed. I did some
> investigation, and found out, that even original Ettus Research binary
> distribution crashes on USB devices.
>
> Even this tiny bit of code crashes when compiled and run under Windows:
>
> int UHD_SAFE_MAIN(int argc, char *argv[])
> {
>    std::string hint = "";
>    uhd::device_addrs_t addrs;
>
>    addrs = uhd::device::find(hint, uhd::device::ANY);
> }
>
> If you want to verify this does not work with USB devices at all, just
> run uhd_find_devices from UHD 3.14.1.0 binary release on bus series
> USRPs. I did use
>
> http://files.ettus.com/binaries/uhd/uhd_003.014.001.000-release/Windows-10-x64/uhd_3.14.1.0-release_Winx64_VS2017.exe
>
> I did trace the problem with uhd::device::find to destructor
> ~libusb_device_impl(void), which calls libusb_unref_device. This should
> be called after libusb_free_device_list in libusb_device_list_impl, but
> when tracing the code, strange jumps occurs, and I suspect devices are
> unreferenced in destructor before they can be freed (but not
> unreferenced) in libusb_free_device_list. This works perfectly under
> linux, but not in Windows. It can be some compiler optimization problem.
>
> This is not the only problem in UHD, just *any* attempts to use USB
> devices fails. uhd::usrp::multi_usrp::make for example runs, but throws
> some 4 exceptions.
>
> More strangely, I suspect there is more to Windows UHD trouble. If I do
> this: uhd::device_addr_t addr; code fails with exception, with no USRP
> devices connected. It is very similar to
>
> http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/2018-July/057279.html
> .
>
> Does anyone have any clue how to resolve this issue ? I am using linux
> as primary development OS with UHD, and I am not as fluent with MSVC
> compilers. I am using Windows just to compile Windows version of my USRP
> software.
>
> Variants tested:
>
> Visual Studio 2015 and Visual Studio 2017, in their latest patch
> versions.
> Boost 1.67, 1.68, 1.69 and 1.70
> libusb 1.0.22 and 1.0.23rc3
> debug and release, static and dynamic, and static and dynamic runtime
> versions of all three libraries.
>
> None does work.
>
> Best regards,
>
> Jakub Rybka
>
> _______________________________________________
> USRP-users mailing list
> USRP-users@lists.ettus.com
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to