ADC20 issue with hrdlCloseUnit()

Post any questions you may have about our current range of USB data loggers
Post Reply
Thormidable
Newbie
Posts: 0
Joined: Wed May 13, 2015 12:18 pm

ADC20 issue with hrdlCloseUnit()

Post by Thormidable »

Hi,
Recently bought a Adc20 model and have been building a c++ application to use the data acquired. Everything seems to be working, but I have an issue with HRDLCloseUnit().

I supply the current Device_ID_Handle to the function and it will hang inside that call.
I have already stopped acquiring data with the call HRDLStop().
If I do not make this call (or in the cases where it doesn't crash), When I next run the application HRDLOpenUnit() doesn't return a valid ID. Once this has occurred I must unplug then re plugin the device for it to recognise it.

I have the exact same issue with the software supplied with the device (picolog recorder).
I go the latest driver and sdk versions from your website.

I run Windows 7 and am using Visual Studio 2013 to compile and run my application. I am compiling a 64 bit application and am using the 64 bit library.

Attached is the error message raised by the picolog recorder software.

Is there any other information that would be useful in investigating this query?

Thank you in advance,
Attachments
Picolog 20 Error Message.png
Picolog 20 Error Message.png (18.46 KiB) Viewed 5901 times

Hitesh

Re: ADC20 issue with hrdlCloseUnit()

Post by Hitesh »

Hi Thormidable,

What is the driver version of the PicoHRDL.dll that you are using? To find this, right-click on the dll, select Properties then click the details tab.

Are you connecting the ADC-20 via a USB 2.0 or USB 3.0 port?

Which version of PicoLog are you using? If you do not have PicoLog 5.24.2 installed please download it from https://www.picotech.com/downloads

Does the PicoLog application lock-up if you try to exit the program after recording data if you have not run your C++ appplication?

Regards,

Thormidable
Newbie
Posts: 0
Joined: Wed May 13, 2015 12:18 pm

Re: ADC20 issue with hrdlCloseUnit()

Post by Thormidable »

Hi Hitesh,
Thank you for the reply,

The dll version is 1.4.0.205.

Pretty sure I connected it to a Usb 2.0 port (I've been connecting it through a hub).

PicoLog recorder reports the release as 5.24.2

I have setup the logger on a fresh system. I have not run my program, and have the same bug issue just running PIcolog recorder.

Best Regards,

Will Thorley

Hitesh

Re: ADC20 issue with hrdlCloseUnit()

Post by Hitesh »

Hi Will,

Would it be possible to send the following information and to support@picotech.com so that this can be investigated further?
  • A PicoLog settings file for the setup you are running with using PicoLog 5.24.2 (click File -> Save as... and change the save as type type to 'Settings files (*.pls)'.
  • C++ source code with settings including that for data collection mode defined
Thanks,

Thormidable
Newbie
Posts: 0
Joined: Wed May 13, 2015 12:18 pm

Re: ADC20 issue with hrdlCloseUnit()

Post by Thormidable »

Hi,
Attached is the requested information.

IbxPicoPlugin.cpp relies on the rest of our codebase and so will not compile (however it should contain all the important information about how we set the values, run the logger and initialise and stop it). It is development code.

The Settings file has been saved from picolog recorder.

Best Regards,

Will Thorley
Attachments
IbxPicoPlugin.cpp
(13.44 KiB) Downloaded 516 times
WillThorleySettings.pls
(3.2 KiB) Downloaded 405 times

Hitesh

Re: ADC20 issue with hrdlCloseUnit()

Post by Hitesh »

Hi Will,

I've been able to reproduce the problem using a modified version of the C console example and have submitted a bug report relating to the driver.

Do you have any more information about when the issue occurs with PicoLog - is it on startup?

Thanks,

Thormidable
Newbie
Posts: 0
Joined: Wed May 13, 2015 12:18 pm

Re: ADC20 issue with hrdlCloseUnit()

Post by Thormidable »

Hi Hitesh,

It is hard to be specific, but what I can say is:

The problem is after closing down my program (and calling hrdlCloseUnit() ) when I try to get a handle to the device it returns a devicehandle of 0. Once this occurs I've found I must unplug the device from the machine and plug it back in.

Currently I only Call HRDLCloseUnit() when my program is closing down, I haven't tested Closing the unit and then re initialising it within a single program instance.

When I call HRDLCloseUnit() it occasionally hangs for an indeterminate period of time without returning. Usually after a few minutes, I will kill the program, so I don't know whether given time it would return. Usually If I kill the program, the logger will be registered correctly when I initialise the device the next time I run the program.

Other times, HRDLCloseUnit() returns quickly (most of the time). In these cases, when I try to get a Device Handle the next time I start the program it will return a handle of zero.

Both of these cases have occurred with and without starting to collect data.

I only have tried running the device in streaming mode.

Initially I thought I had made a mistake with my code, but upon seeing a similar issue with picolog recorder, I thought I should inquire further.

Hitesh

Re: ADC20 issue with hrdlCloseUnit()

Post by Hitesh »

Hi Will,

Thanks for your reply.

This is under investigation. If you could provide any information about the circumstances under which you get the issue with the PicoLog software, then I can see if I can reproduce it here and feed it back to our Development Team.

Update: Now fixed :D Please e-mail support@picotech.com and I can provide you with the drivers.

Regards,

Post Reply