09-17-2017 10:36 PM
I have inherited a project using the 6133 DAQ board. The previous developer is long gone without leaving any information. All I have is C++ code. I believe LabVIEW was probably used to auto generate some code I've found, with file names such as tScarabInput.cpp tScarabInput.ipp, and tSSeries.cpp. I have not found any vi files. Is there a means to reverse engineer the c++ code to "recover" a vi? There is a massive array initialized for the InputScarab firmware image and another for FPGA_6123_6133.
Solved! Go to Solution.
09-18-2017 01:11 AM
I'm thinking that's rather like reverse-engineering a cake into its ingredients.
09-18-2017 03:26 AM
AFAIK, LabVIEW will only produce C(++) code when using the LabVIEW Embedded (Microprocessor SDK) toolkit. With normal development LabVIEW will never procure C++ code (not even internally, not even temporarily).
How sure are you this code was produced by LabVIEW? It seems a stretch to me.
Measurement Studio or CVI seem more likely to me, but I don't know much about it. If you post one\all of those files, we might get a clue...
09-18-2017 06:16 AM
wiebe@CARYA wrote:
Measurement Studio or CVI seem more likely to me, but I don't know much about it.
CVI is only ANSI C, so it only using *.c and *.h files for the code. Measurement Studio is the likely tool.
Now back to the original question...With cpp files, some people can write an equivalent program in LabVIEW. But I do not know of any tool that will do this automatically.
09-18-2017 06:23 AM
crossrulz wrote:Now back to the original question...
Well, in the original question, OP seems to thing LV created the C++ code:
>I believe LabVIEW was probably used to auto generate some code I've found...
So in this case my remark seems 100% on topic to me. It's just that this assumption is probably wrong.
09-18-2017 05:03 PM
After the replies I'm definitely not sure it was produced by LabVIEW. It's only that it's a N.I. product and LabVIEW seemed like the obvious choice. I will post a file shortly.
I forgot to say that the target operating system is QNX and was last built in 2008.
09-18-2017 05:05 PM
Here is one of the supposed auto generated files.
09-19-2017 02:26 AM
You might consider posting this in a new thread: "What NI product produced these c++ files". However, I'm pretty sure it wasn't LabVIEW. I'd put my money on Measurement Studio.
09-19-2017 04:45 AM
There might have been some LabVIEW magic involved in this, but I don't think this was generated from LabVIEW VIs. AFAIK Scarab was/is the name of one of the ASICs NI used on their ISA and early PCI boards to do DMA and other hardware related stuff and which gave them a huge advantage over the competition as they had a relatively cheap integrated bus controller for their boards with this, while the competition still was trying to get ISA boards working that were incorporating many discrete TTL logic chips. Besides it was a lot harder to reverse engineer ASICs and sell cheap copy cats of the hardware and point the users to download the software drivers from the original manufacturer, which was what killed the Keithley plugin cards more or less.
Most likely this is code derived from a DDK for the NI DAQ boards that you could purchase under special NDA agreements for targeting non-NI supported operating systems like QNX. NI supposedly gave you a framework which was pre-generated with some internal tools that you could then adapt to the specifics of your target system, if you felt the need to get something working for another OS than the NI supported Windows system. Most of this code is likely totally unnecessary if you target a Windows system, as it is all contained in the DAQmx API that covers a much more broad application range than these DDK kits ever could have done.
09-19-2017 11:07 PM
Good idea wiebe@CARYA. I have a new post for that request.