It probably works with the ADC 20 as well, but it has only been tested on the ADC 24. We successfully got it to work on a Raspberry Pi (v1) without issue using the ARM build of the libpicohrdl drivers provided by PicoTech.
Feel free to use the library, and contribute patches, suggestions and bug reports!
We do have a strange issue with the ADC24 though. When it is first plugged in to the Pi, you have to start the program, wait for it to timeout (after maybe 30 seconds), then run it again. For some reason, the first time you run it, the handle returned by HRDLUnitOpen() is invalid (i.e. not >= 1), which causes my library to (correctly) report an error. After trying to open the unit again, it works. Hitesh also reproduced this problem (ticket number TS00080001) but that was in February and I've so far not seen a fix. It'd be nice to get this fixed in the firmware as my library does seem to follow the spec here!
Another issue is when you stop the program without calling HRDLCloseUnit(). After trying to open it again, you get a segfault or other C error. It'd be great to have some way to break a lock on the unit from a previous run, or reset it somehow by software. Right now I have to physically unplug and plug back in to fix this.
Unfortunately due to other pressing work, there has not been a fix for the issue, although this is something that hopefully will be looked into in the near future. We are aware of the second issue as well.
Dears,
do you have any news on the HDRLCloseUnit() issue? I have a picolog installed on a remote windows machine and everytime the machine suffers from an unexpected reboot (due to a powercut or and update for example) I have to physically unplug the device and plug it again. Is there a way to overcome this issue?