LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

GPIB expert question

Dear list,

I have the following problem.

On one hand I have a USB-GPIB home made controller for which I have the
drivers for.

On the other hand I have many vi's already writen by labview in order to
acces to GPIB instruments.

By googling around, I found that a GPIB interface creates a gpib_32.dll
which labview access directly. It seems to be standard functions

Now I would like to write such a dll in order to interface it with my
driver.

I know that labview has some vi's for sending, receiving etc but I would
like to know which functions of the dll each of them calls.

How can I find this information, knowing that double cliking on the vi
does not open anything to see the block diagram of it.

Thanks

Alex
0 Kudos
Message 1 of 7
(3,309 Views)
You want to duplicate NI's GPIB driver for your hardware? Is that even legal?
0 Kudos
Message 2 of 7
(3,299 Views)
Dennis, I think he wants to create a DLL with his own homemade GPIB functions so that Labview GPIB functions would work with his DLL instead of gpib-32.dll.  To do so, one would have to know the internals of the standard GPIB-32.DLL and fashion his own DLL with similar function calls and parameters.  Then you would have to delete the standard gpib dll and rename the homebrewed dll to the same name as the standard dll.
- tbob

Inventor of the WORM Global
0 Kudos
Message 3 of 7
(3,289 Views)
The native LabVIEW GPIB functions use commands like ibwrt and ibrd and his home-brew DLL would have to have the same commands. It's duplicating those commands that I question. I don't know if they are covered by copyright. All of the function calls in NI's GPIB-32.DLL are documented in the NI-488.2 help file so, someone could do this, and I know vendors of other GPIB boards have done this and claimed compatibility, but I don't know if they've done this without paying some sort of license fee.
0 Kudos
Message 4 of 7
(3,287 Views)
Since the dll name would have to be duplicated, and all the function call names and conventions would also have to be duplicated, you could be right about copyright infringement and having to pay some sort of license fee.
- tbob

Inventor of the WORM Global
0 Kudos
Message 5 of 7
(3,280 Views)


@Dennis Knutson wrote:
The native LabVIEW GPIB functions use commands like ibwrt and ibrd and his home-brew DLL would have to have the same commands. It's duplicating those commands that I question. I don't know if they are covered by copyright. All of the function calls in NI's GPIB-32.DLL are documented in the NI-488.2 help file so, someone could do this, and I know vendors of other GPIB boards have done this and claimed compatibility, but I don't know if they've done this without paying some sort of license fee.


No, you can't copyright an interface to a library. This is the border line between other applications calling your library and your own library and documented in the according header files Decl-32.h and ni488.h distributed by NI. It has been tried to protect header files by copyright and nobody has succeeded to do so far. So that part is safe.

However the NI-488 and NI-488.2 API are rather complex and it won't be a weekend project to develop a compatible library for your own hardware. I even think that you won't be able to do this without a disassembler and some debugging tools because some of the details of the functional behaviour of the API are not really obvious from the header files nor the available documentation. However use of disassemblers and debuggers for reverse engineering are now illegal in the country of unlimited possibilities.

Another issue is that some aspects of the NI-488 software may be patented. I personally doubt the legal value of most software patents but challanging such a patent is a costly matter and this is in most cases enough to put competing products out of business.

Rolf Kalbermatter

Message Edited by rolfk on 02-09-2006 09:59 PM

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 6 of 7
(3,268 Views)
rolfk wrote:
> Dennis Knutson wrote:The native
> LabVIEW GPIB functions use commands like ibwrt and ibrd and his
> home-brew DLL would have to have the same commands. It's duplicating
> those commands that I question. I don't know if they are covered by
> copyright. All of the function calls in NI's GPIB-32.DLL are documented
> in the NI-488.2 help file so, someone could do this, and I know vendors
> of other GPIB boards have done this and claimed compatibility, but I
> don't know if they've done this without paying some sort of license
> fee. No, you can't copyright an interface
> to a library. This is the border line between other applications
> calling your library and your own library and documented in the
> according header files Decl-32.h and ni488.h distributed by NI. It has
> been tried to protect header files by copyright and nobody has
> succeeded to do so far. So that part is safe.
>
> However the NI-488 and NI-488.2 API are rather complex and it won't be
> a weekend project to develop a compatible library for your own
> hardware. I even think that you won't be able to do this without a
> disassembler and some debugging tools because some of the details of
> the functional behaviour of the API are not really obvious from the
> header files nor the available documentation. However use of
> disassemblers and debuggers for reverse engineering are now illegal in
> the country of unlimited possibilities.
>
> Another issue is that some aspects of the NI-488 software may be
> patented. I personally doubt the legal value of most software patents
> but challanging such a patent is a costly matter and this is in most
> cases enough to put competing products out of business.
>
> Rolf KalbermatterMessage Edited by rolfk on 02-09-2006 09:59 PM

Thank you for your feedback.

After reading it carefully I decided to change completely approach and
write/draw specialized vi's for my special purpose without trying to
completely highjack the gpib-32.dll

Thank you

Alex
0 Kudos
Message 7 of 7
(3,249 Views)