Questions about new mini usb interface board VM 167

wanted to ask a few questions

is it compatible with the programming dll for the 8055 - so i can use the same code ?

does it have a counter feature like the 8055

will its cost be higher or lower than the 8055

very interested in this product

can i try a prototype out

what exactly are its dimensions ?

regards

All available specs can be found here:
http://www.velleman.eu/distributor/products/view/?id=384006

Actual cost has not been determined but will be lower than K8055.

Sorry, no prototypes for testing.

the spec does not tell me if there is a counter feature like on the dig 1 and 2 channels in the 8055

does it use the same code as the 8055

Yes they do:

1 x 32 bit pulse counter up to 1MHz input frequency>>

Code is not compatible with K8055.

can you show me a list of the commands the dll will accept please

Here is the link to download the DLL manual:
box.net/shared/ucozu2yseh

thanks for the link

it looks straightforward

is there a way using code i can identify if the 8055 or the 167 is attached ?

The only way seems to be to use OpenDevice(CardAddress) for the K8055 to check if connected.
For VM167 you can use OpenDevices() and then also Connected() function to check if card is still connected.

The VM167 is using full speed USB communication and is much faster than the K8055.
A difference compared to the K8055 is that the VM167 needs a driver to be installed when the card is first time plugged in.

Additional question:

It seems possible to mix the new VM167 and the VM140 boards on one PC, if the new .dll is used (and of course giving them different addresses).
But I haven’t found anything about mixing VM167 and VM110 (K8055) boards on the same PC (I have one VM110 aready installed). Although different addresses can be given (0 and 1 for VM167 and 2 and 3 for VM110), they use different .dll’s but the same function name calls like ReadDigitalChannel, etc.
That makes that a mix is impossible, except if the new .dll also supports the VM110. Is that the case?

The problem of the same function names in the two DLLs can be avoided by different ways:

  1. You can use different namespaces for the two DLL functions.
    See this thread for more info: viewtopic.php?f=3&t=2295

  2. In Visual Basic you can use the Alias name. Here an example:

Private Declare Sub VM167SetAllDigital Lib "vm167.dll" Alias "SetAllDigital" (ByVal CardAddress As Integer)And here how to use the function:

InOutMode(CardAddress, 0, 0) VM167SetAllDigital(CardAddress)
3. You can use DllImport and specify own function name and the DLL entry point.
Mor more info see:
msdn.microsoft.com/en-us/library/aa446536.aspx
msdn.microsoft.com/en-us/library … point.aspx

[quote]Just as with the .NET Framework, the Declare statement supports the Alias clause that allows you to specify that the function has a different name in the DLL. This is useful when the function name in the DLL conflicts with a keyword or another function already defined in your code. The DllImportAttribute attribute supports this feature as well, through the EntryPoint property that can be added to the attribute declaration, as follows.

[DllImport("coredll.dll", EntryPoint="SHGetSpecialFolderPath")] static extern bool GetFolderPath( //the rest of the declaration[/quote]
Here a Visual C++ 2008 Express axample:

[DllImport("vm167.dll", EntryPoint = "SetAllDigital", CharSet=CharSet::Ansi)] static void VM167SetAllDigital(int CardAddress);
And here how to use the function:

InOutMode(CardAddress, 0, 0); VM167SetAllDigital(CardAddress);

Vel255,

Thanks a lot! Never used the Alias function, but in this case we will try it to avoid conflicts between the boards.
I will buy a VM167 as soon as available, it just meets what I need!

This looks like an excellent product

the counter will operate up to 1mhz !

please can you advise how small a pulse width will trigger a counter event

Regards

The VM167 can count pulses if the pulse width is 0.5us or more and the pulse amplitude is 5V.

Is there anyway i can modify the vm167 so it has 2 counter channels?