Universal Library

 

I/O Library for Measurement Computing Data Acquisition Products

KEY HIGHLIGHTS

The Universal Library (UL) for Windows includes programming libraries and components for developing 32-bit and 64-bit applications using Visual Studio® and other programming languages. UL supports Ethernet, USB, WLS, WEB, and most PCI and PCIe data acquisition (DAQ) products from MCC, and simplifies their configuration and operation.

Programming API for C®, C++®, C#®, Visual Basic®, and Visual Basic® .NET™ using Visual Studio® and other IDEs

Common set of function calls designed to work with most MCC hardware

Identical functions for each language

Includes 64-bit driver support for Windows® 11/10/8/7/XP
(supports Ethernet, USB, WLS, WEB, and most PCI and PCIe boards)

Included with MCC DAQ Software

Supported Operating Systems: Windows® 11/10/8/7/XP, 32-bit or 64-bit

Download MCC DAQ Software

Universal Library Help



Part Number Description Qty Price
Universal Library
Programming Windows® API for C®, C++®, C#®, Visual Basic®, and Visual Basic® .NET™ using Visual Studio® and other IDEs Included

Product Reviews


4 / 5
Ease of Use
3.7 / 5
Value
4.7 / 5
Technical Support
4.5 / 5

100% of new reviewers recommend this product


Universal Library
January 11, 2022
Straightforward to use

The universal library is overall easy to use. However, it seems a bit outdated. The C# version by default references WinForms and makes it difficult to integrate into modern UI or headless applications. I ended up writing a wrapper and referenced the C library instead.

  • Job Title: Researcher
  • Industry: Clinical Research, Medical Devices
  • Application:
  • From: CA
  • Company Size: 1-100
  • Software Used: C++/C#/VB

  • Ease of use
  • Value
  • Technical Support
Yes, I recommend this product!

Was this review helpful? Yes (4) / No (0)

Universal Library
February 20, 2014
Easy to integrate in DOS and LabView

I am responsible for development and support of a legacy control system. It is a hardware and software system for automotive engine research. Some of our equipment is no longer available, so we bought replacement hardware from MCC. I am glad we did. Their universal library works well. The documentation is complete and error-free. Their tech support emails are answered quickly. Great alternative to some of the more expensive hardware and software solutions out there.

  • Job Title: Postdoctoral Associate
  • Industry: Mechanical Engineering Research
  • From: Cambridge,MA
  • Company Size: 101-500
  • Software Used: C/C++

  • Ease of use
  • Value
  • Technical Support
Yes, I recommend this product!

Was this review helpful? Yes (8) / No (0)

Universal Library
August 09, 2013
Easy to Automate

We developed an automated calibration and test application using the Universal Library in C# with Visual Studio .NET 2010. The Universal Library can quickly integrate into an existing application by referencing a single DLL and adding a few lines of code. The API to the Universal Library provides flexible control over sampling rates, voltage ranges, etc. It is easy to grab a single sample or buffer a large number of points for additional statistical processing. The documentation for the C# API is very good and several example programs are included. Also, error codes are returned for API calls so it is easy to detect problems from disconnected equipment, invalid arguments, etc. So far, the application has been used with the USB-2404-UI and USB-2408-2AO DAQ's. The development with the USB-2404-UI was done first and went very smoothly. However, for the USB-2408-2AO, the sampling rates listed in the documentation were not consistently accepted by the Library or the unit. Some trial and error was needed to discover new values which did consistently work. Overall, a good experience developing with the Universal Library.

  • Job Title: Design Engineer
  • Industry: Electronics
  • Application: Calibration and Testing
  • From: Calgary, AB, Canada
  • Company Size: 1-100
  • Software Used: Other

  • Ease of use
  • Value
  • Technical Support
Yes, I recommend this product!

Was this review helpful? Yes (12) / No (0)




Yerzley Oscillograph is requiring me to have DAQ Universal Library. Is the library free to use? Is there a license required?

  • Job Title: IT
  • Industry:
  • Application:
13 months ago
Kate Illinois


Answers

The Universal Library is free to use and no license is required.

13 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

A lot of companies are starting to migrate their .NET Framework applications to .NET 5/6. Do you plan to release a .NET 5/6 version of MccDaq.dll?

  • Job Title: Software Developer
  • Industry:
  • Application:
21 months ago
FBR127 Viborg, Denmark


Answers

Measurement Computing is currently researching the demand for .NET 5/6 (CORE) support within our customer base. Based on our findings we will start investigating the process and changes needed to our Universal Library for .NET 5/6 (CORE) support. Please check back periodically for updates.

21 months ago
Measurement Computing

Was this answer helpful? Yes (6) / No (1)

Does the library support using analog input trigger (CH1-CH4) with USB-1604HS-2AO?

  • Job Title: CTO
  • Industry:
  • Application:
27 months ago
YuvaInbar Israel


Answers

Yes, the Universal Library supports analog input triggering when using the USB-1604HS-2AO.

27 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

Is there an example of software with the USB-PDISO8 card communicating with the C # programming language?

  • Job Title: Ing. Programación
  • Industry:
  • Application:
29 months ago
Martin2515 Juarez, Mexico


Answers

The 4 example programs that support the USB-PDISO8 model are named: ULDI04, ULDI05, ULDO04, ULDO05. When you installed the Universal Library, the C# examples were installed here: C:\Users\Public\Documents\Measurement Computing\DAQ\C#

29 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

I am attempting to get the sample application DaqDevDiscovery02 to work on my PC, but the application is unable to communicate with my temperature logger (WebDAQ 316). To be more specific, the routine GetNetDeviceDescriptor() throws an exception when called with the appropriate parameters (in my case: 192.168.36.240, 54211, 5000). I am running on a Windows 7 64-bit platform and all services packs installed. Can anyone help me understand what is going on...? Thanks...

  • Job Title: H/W Design Engineer
  • Industry: Computer
  • Application: Testing/Validation
60 months ago
Steve514 Montreal, Quebec


Answers

We have since documented and posted examples of how to access data from a WebDAQ programmatically, via the WebDAQ-specific API (which is called the REST API): https://www.mccdaq.com/downloads/WebDAQ/REST-API/

45 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

The WebDAQ logger Series does not work with the Universal Library. The WebDAQ does not have an API. All of its software is installed on the unit itself, and its configuration and data retrieval is performed via a web browser on your PC/device.

60 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

is it possible to set different sample rate for each channel. For our application E-1608 is selected and we need sampling rate of 200 KHz for channel 1 with analog input range of ±1 V, 6667 Hz for 2 - 7 channel with ±10 V and 100Hz for 8th channel with 0-10V. If yes how will it be implemented using c#.

  • Job Title: Software developer
  • Industry:
  • Application:
74 months ago
Rao


Answers

Sample all channels at the highest rate then subsample for lower rates.

65 months ago
Phil1950

Was this answer helpful? Yes (3) / No (1)

The E-1608 hardware architecture allows only one sample rate during a scan, which applies to all channels. This is true of all of our devices.

74 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

I would like to use slower waves (Square Waves) when testing software. For example a peak every 10 seconds. Is there way I can create that in demo1.dat?

  • Job Title: Subject Matter Expert
  • Industry: Civil Enforcement
  • Application:
76 months ago
Steveash85 UK


Answers

Hello, The binary file format of Demo.dat is not published, though is available by contacting tech support. Note that you could collect some data using the UL example program named ULFI01, which saves data to this same legacy file format.

76 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

In the help info it states the following: C# .NET public static ErrorInfo ReleaseDaqDevice(int boardNum) Whereas the DaqBoard is required as stated in the examples: MccDaq.DaqDeviceManager.ReleaseDaqDevice(daqBoard);

  • Job Title: PhD Student
  • Industry:
  • Application:
76 months ago
John Belgium


Answers

Hi John - The example program is indeed the correct usage. Thank you for passing along this documentation error, which we will log for correction.

76 months ago
Measurement Computing

Was this answer helpful? Yes (4) / No (0)

Does the MccDaq.dll (.net) run on windows 10 64 bit?

  • Job Title: s.w
  • Industry:
  • Application:
77 months ago
gkhan Europe


Answers

Hello - Universal Library & InstaCal version 6.51 and higher were fully tested with Win10-64. MCCDAQ.DLL is part of this package.

77 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (1)

What code would I need to create a simple ramp on my D to A output?

  • Job Title: mechanical engineer
  • Industry: Test instrumentation
  • Application: light control
79 months ago
HeyCliff San Diego


Answers

Measurement Computing manufactures many products that can output waveforms. Writing a program to do so can be done but is not as simple as one might think. To assist our customers we have created a KnowledgeBase article outlining the steps on how to get this done here: http://kb.mccdaq.com/KnowledgebaseArticle50503.aspx?Keywords=Analog+output+scan My recommendation would be to use our TracerDAQ PRO Virtual Instrument application. One of the supported applications is a “Function Generator” that is all set to go out of the box and supports a “Sweep” function. http://mccdaq.com/daq-software/tracerdaq-pro.aspx

79 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

Hi, I'd like to use the TC-32 multi channel tempetrure monitor in VB. Is there a VB dll or something that would enable the TC-32? Regards, Mike

  • Job Title: RF Test Engineer
  • Industry: WISP
  • Application: temp testing product
80 months ago
Mike Boston MA


Answers

All MCC products ship with our I/O library called the Universal Library. The Universal Library is a programming API for C®, C++®, C#®, Visual Basic®, and Visual Basic® .NET™ using Visual Studio® and other IDEs.

80 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

I am using a pair of USB-3101FS units to simulate signals amd operating in Background AND Continuous mode. The documentation says a call to GetStatus to get the current index of the buffer, CurrentIndex should wrap at the buffer size . But I added a check for CurrentIndex > Buffersize and set a break point there and lo and behold, it does not appear to be wrapping. Am I doing something incorrectly? Current Count does not wrap as the documentation states.

  • Job Title: Software Engineer
  • Industry: Transportation:Railroad
  • Application: Hot Bearing Detector Track Equipment Simulator
80 months ago
TGoergen Independence, MO


Answers

Oops. My Bad. Gave the call to AoOutScan the file size, not the buffer size. fix is int)Math.Min(HBDNumSamples,BuffSize), as in: ULStat = HBDDaqBoard.AOutScan(HBD_LowChan, HBD_HighChan, (int)Math.Min(HBDNumSamples,BuffSize), ref DataRate, Gain, HBDMemHandle, Options); I have to handles files smaller than the buffer size, and larger (some WAY large, run for two or three minutes at 11009 sample/sec/channel)

80 months ago
tgoergen

Was this answer helpful? Yes (3) / No (0)

We tested this hardware model today using the current UL version (6.52), and curIndex does wrap as expected … at the buffer size. Perhaps you are outputting on multiple channels, and have added a multiplier to set the needed buffer size (since all of these numbers are not per-channel).

80 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

I need to read and store 6 channels of analog data sampled at 30khz, will a USB-1608 handle this requirement and should I be able to read and store the data with a low power PC running Windows 8 or 10?

  • Job Title: System programmer
  • Industry: Mining
  • Application: vibration monitoring
86 months ago
sigfreund Gainesville, Fl


Answers

The USB-1608FS-Plus or the USB-1608G series are both cable of handling 6 channels at 30 kS/sec each. We have not had any problems to date regarding PCs having issues running our 1608 DAQ devices. With that said you should not have any issues running a continuous analog input scan on 6 channels using our Universal Library. Data storage is left up to the end user. Please refer to our knowledge base article which can be viewed here: http://kb.mccdaq.com/KnowledgebaseArticle50453.aspx?Keywords=USB-1608G This KB article demonstrates how to continuously collect data using the USB-1608G.

86 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

I am using usbDio32hs.And I am not able to call a universal library API's in my program(Javascript) .I have installed the MCCdaq software in my PC . How to create instance of it and how can I make use of API's .Please answer me.

  • Job Title: trainee
  • Industry: Automation
  • Application: Automation
86 months ago
div India


Answers

MCC does not have support for JavaScript. The programming languages C++, C# and VB are supported for execution on Windows. The Java programming language is supported for execution on Android, but Java is not at all related to JavaScript.

86 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

Apparently I need to make a library and didn't seen anything after download. Please point in some direction? "undefined reference to `[email protected]'"

  • Job Title: President
  • Industry: Engineering
  • Application:
87 months ago
SChalice California


Answers

The UL does include both 32-bit and 64-bit .LIB files for Microsoft C/C++, which you will find on your system at the following location: C:\Users\Public\Documents\Measurement Computing\DAQ\C. For other brand compilers, you likely need to use a utility from them to create a .LIB from either ourCBW32.DLL or CBW64.DLL.

87 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (1)

Is there a method to acquire the current calibration date in USB-TC

  • Job Title: Software Engineer
  • Industry: Space
  • Application: Temperature acquisition
87 months ago
nhJoat Manchester, NH


Answers

Currently, there is no method for extracting the current calibration date from your USB-TC. If you forward your serial number to [email protected] we can look up the last known calibration date for your USB-TC.

87 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

I have an application developt in Dev C++, and i used a NI device but i want to use one of your devices because of the flexibility in software development.

  • Job Title: Software Engineer
  • Industry:
  • Application:
89 months ago
Josep


Answers

Hello Josep, Compatibility with DEV C++ and our Universal Library has never been confirmed by Measurement Computing. However, as long as you can call in to a Windows 32bit API, you should have no problem interfacing with our Universal Library.

89 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

I have to use my own linearization as I am working with non-standard thermocouples. I have not found a method with UL to retrieve the temperature of the CJC sensor. I am shorting one channel to get the temperature of the connector block, which works fine, but is of Course not as precise as using the direct CJC sensor temperature value. Also I am loosing one channel. Your advice is very welcome.

  • Job Title: principal engineer
  • Industry: T&M
  • Application: evaluating special sensors
89 months ago
mike51 Germany


Answers

Hello - Reading the CJC directly is possible through our Universal Library. Please refer to our knowledgebase article at the below link for details: http://kb.mccdaq.com/KnowledgebaseArticle50172.aspx

89 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

  • Job Title: Engineer
  • Industry:
  • Application:
94 months ago
dq100


Answers

However, beginning with the recently released version UL 6.50, there is now formal support via the AInputMode method (or via the AChanInputMode method for models with per-channel configuration).

92 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

Historically this setting is made manually in InstaCal, since it affects the field wiring, and is unlikely to be changed often. Users of older versions of the UL would call the little known cbSetConfig function in CBW32.DLL. However, beginning with the recently released version UL 6.50, there is now more formal support via BoardConfig.SetNumAdChans in MCCDAQ.DLL.

94 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

I was wondering if I could write a code to convert the analog voltage input to current?I want to use this data logger to monitor the DC current of our biosensor.

  • Job Title: PhD students
  • Industry: Ohio University
  • Application: Sensor
96 months ago
Fazlollah Athens,OH


Answers

Hello Fazlollah, The USB-230 series supports a fixed +- 10 volt input range. Because of this you cannot just simply develop software code to allow the USB-230 to measure a current signal. To read your biosensor you will need some type of external signal conditioning. Now assuming that your biosensor outputs a 4-20 mA signal you could use a simple 249 ohm current shunt resistor across one of the differential inputs. This will create a 1-5 volt voltage drop across the shunt resistor. Which can then easily be read by any one of the USB-230 series DAQ devices. You can then write some software code to scale the voltage signal back into engineering units.

96 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

-boards and our asynchronous polling of these boards slows our real time programs (could be our poor programming choices). -We also want to add a few Digital Inputs with low software overhead. Any low cost suggestions.

  • Job Title: Professor
  • Industry: education
  • Application: Helicopter Simulator
96 months ago
Jim Tuscaloosa, AL


Answers

6.35 is the current driver release, with 6.50 coming out later this month. The rate at which digital inputs can be sampled is hardware limited, so a new version of our driver will not help. The USB-1608FS-PLUS’s digital inputs can be read up to 200 times per second. A different model to consider is the USB-1608G, as its digital inputs can be read at up to 4000 times per second. Note that the USB-1608G’s analog inputs are multiplexed rather than simultaneous.

96 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

Windows compiler support is not thrilling mostly. The Linux compilers have been excellent in my experience, so it would be great to access the Universal Library on Windows OS's using the MinGW software. Yes, the MS C code is good, but I need to use Fortran in a large way, and the Linux world makes that very easy. I suspect this would be true for MinGW. I could contact Warren Jasper, the Linux driver writer on this as well.

  • Job Title: Software engineer
  • Industry: Software
  • Application: Data acquistion and processing
98 months ago
KactusKen Birmingham, AL


Answers

You can, I added a script to compile with MinGWs GCC to the sample folder: @echo off if (%1)==() goto syntax gcc -x c -g -L.. "%1" -lcbw64 -o "%~dpn1.exe" > err.log type err.log|more goto end :syntax echo - echo - Compiles a file with MinGWs gcc, linking Universal Library echo - echo - Syntax: echo - MakeGCC filename :end

47 months ago
Macros

Was this answer helpful? Yes (2) / No (0)

MCC does not offer support for MinGW compilers or for Fortran. The 3rd party Linux drivers you reference will not be leverageable onto Windows, given the IO needs of the USB bus and DAQ devices.

98 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

I was looking at some of the sample code in the Universal Library and noticed that all of them have a timer in a loop pulling the hardware for the data. Is there a way to connect to the hardware and listen to events (like when a port goes high?) then I can react to it? Instead of the loop an pull method? Maybe there is,and I missed it, but I'm looking for that in the 1024LS before I buy. Thanks!

  • Job Title: Software Engineer
  • Industry: Automotive
  • Application: Data collection
100 months ago
1024Events Colorado


Answers

MCC’s current offering of Digital I/O devices are software polled only. They cannot notify the PC of a certain data change or pattern match.

100 months ago

Was this answer helpful? Yes (5) / No (0)

Hi, I'm using the function ULStat0 = DaqBoard.DInScan(DigitalPortType.FirstPortA, InBufferSize, ref rateIn, DataInBuf, scanOptIn); The Port A0 on the PCI 2517 Board works and i configured the Port with DConfigPort. But still, I can't read e.g. 5V with the DInScan Function.

  • Job Title: Assisting Scientist
  • Industry:
  • Application:
100 months ago
RiceBall Germany


Answers

First, try our non-scanning example (ULDI01) to make sure there is no electric issue (i.e. make sure you can predictably read the expected 0 and 1 values when you connect proper logic low and logic high voltages). Then move on to the higher speed scanning example (ULDI03). Note that the digital I/O on the PCI-2500 series are 3.3V logic. They can tolerate 5V logic but avoid using pull resistors up to 5V.

100 months ago
Measurement Computing

Was this answer helpful? Yes (2) / No (0)

I use the universal library in C++, Visual Studio 2010. The cbw32.dll library loads about 7.5 sec and it causes a delay to start my application. Is there any way to load the library faster or to load only the functions which are used? I need only few func

  • Job Title:
  • Industry:
  • Application:
102 months ago
Pavel Toronto, ON, Canada


Answers

Hello Pavel - the new version of the Universal Library (Version 6.50) resolves this issue. It can be downloaded from: http://www.mccdaq.com/software.aspx

96 months ago
Measurement Computing

Was this answer helpful? Yes (4) / No (0)

That's good news. Please let me know as soon as new UL version will be released. Thank you.

102 months ago
Pavel

Was this answer helpful? Yes (3) / No (0)

Hello Pavel - We have performed additional testing, and the combined load and initialization time can be as long was what you reported. As a result, we expect to be able to reduce this (to well under 1 second) in an upcoming UL version.

102 months ago
MeasurementComputing

Was this answer helpful? Yes (4) / No (0)

The delay applies before reaching InitInstance() in my application and it is the same even when I temporary uninstall the board's driver. When I remove all universal library functions and cbw32.lib from my project, there is no delay. I think the source of this delay is in slow loading cbw32.dll file. Regards Pavel

102 months ago
Pavel

Was this answer helpful? Yes (2) / No (0)

Hello Pavel - 7.5 seconds sounds much too long for simply loading CBW32.DLL. 1-2 seconds is more typical. Perhaps your program is trying to call a function in the DLL as the program is loading. The first time a function (that accesses DAQ hardware) in the DLL is called, there is hardware initialization that is performed, which takes about 4-5 seconds. In summary, there are probably 2 delays at work here. We can’t reduce either, but perhaps you can postpone the second one, by not calling a DLL function until your program is fully loaded.

102 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (1)

I will start a funded engine test project shortly. I am currently using Advantech PCI 1716 for DAQ. I designed and built my own IO interface. I want to purchase various products from MSC. I have my private software with visual interface on Borland6 C++ (X

  • Job Title: Head of Department
  • Industry: Automotive
  • Application: Internal Combustion Engine Research
103 months ago
Demir Kızılcaşar Mh., Atılım Caddesi, 06830 Ankara/Ankara, Turkey


Answers

Hello Demir - Unfortunately, our Universal Library no longer supports Borland compilers. A possible workaround would be to use the Implib.exe program within Borland to create an Import library file that would call into our C++ DLL that is provided with our Universal Library drivers.

102 months ago
MeasurementComputing

Was this answer helpful? Yes (3) / No (0)

I want to know what is the fastest sample rate of PCI DIO24/S and how to achieve it with Universal library, because the timer of PC has low resolution and accuracy ( 1ms i think ). When i see though TracerDAQ Strip Chart, the timebase is up to 1us. How ca

  • Job Title: Vision
  • Industry: Vision
  • Application: Vision
104 months ago
TrinhDinhNam Việt Nam


Answers

Hello -The PCI-DIO series does not support clocked pacing/reads. So software paced reads must be used. Calling the Universal Library’s DIn function in a tight loop, one 8-bit port can be polled every 20-25 uS (40 KHz – 50 KHz).

104 months ago
MeasurementComputing

Was this answer helpful? Yes (3) / No (0)

The Function DBitOut not working for FirstPortB or C. But the Function Dout working for all 3 port. I'm using SSR-RACK24 board and PCI-DIO24/S card, programming by visual studio ( C#).

  • Job Title:
  • Industry: Vision and automation
  • Application:
106 months ago
NamTrinhDinh Vietnam


Answers

The function cbDBitOut() can be a bit confusing but it does works for all three ports. Please refer to our knowledgebase article below for help in clarifying how the cbDBit() functions works. http://kb.mccdaq.com/KnowledgebaseArticle50121.aspx?Keywords=dbitout. You first need to configure the direction for all three ports, i.e. input or output. After the ports have been configured you can then run the cbDBitOut() function. To access FirstportB and C all you have to do is to offset the Bitnum + n. FirstportA = 0-7. FirstportB = 8-15 and FirstportC would = 16-23. Please contact technical support if you have any additional questions.

106 months ago
MeasurementComputing

Was this answer helpful? Yes (4) / No (1)

I want use a 1208 USB modulus with different channel to mesure a lot of physical parameters as motor speed, temperature, flowmeter, each of measurement is made in a specific Thread. Second question, if I use two different modulus (exemple: one 1208HS et

  • Job Title:
  • Industry:
  • Application:
106 months ago
GGEE Charlotte, NC, USA


Answers

Yes it is thread safe but an annoying problem is the inability to use the UL in multiple applications on the same system. For example, say you want to run multiple instances of the same (or different) application even though each instance uses their own modules (board IDs) subsequent applications will clobber I/O modules used in previous instances on the first call into UL. I have been able to prevent this by making an out of process COM wrapper around the UL !!! The idea is that my wrapper initiates the UL one time upon the first caller then closes it when the last application closes regardless of order. A bit tricky for sure! It is unfortunate that UL does not handle this !!! Presently I can handle SB-1208, USB-SWITCHSENSe and USB/PCI/PCIe-DIO24 with my 'wrapper' which soon will be ported to .NET.

93 months ago
gsengstock

Was this answer helpful? Yes (3) / No (0)

The recent release of UL version 6.50 added Device Discovery, whereby the user no longer has to run InstaCal (not applicable for PCI/PCIe devices). Using Device Discovery, the UL can now support multiple applications running on the same PC, each interfacing with its own USB DAQ device(s). Each application, as its first UL call, must call IgnoreInstaCal. Next call GetDaqDeviceInventory which returns a list of DAQ devices found on the PC (model and factory serial number). Lastly, call CreateDaqDevice for each DAQ device that the application is to use.

93 months ago
Measurement Computing

Was this answer helpful? Yes (3) / No (0)

Hello GGEE - Yes, the Universal Library is thread safe. Multiple different DAQ devices can be accessed from one program, and separate threads in the program can be used. Also separate threads can access the same DAQ device. Note that one specific scenario is not supported: Multiple programs running on the PC, that each access the Universal Library … not even if each program accesses a different DAQ device.

106 months ago
MeasurementComputing

Was this answer helpful? Yes (7) / No (0)

Using Visual Studio Express 2012. I have tried compiling and running C#.net and vb.net versions of ULDO0x examples but after compiling and attempting to execute, I get an unhandled exception error the description of which is almost unintelligible. I just

  • Job Title: Test Engineer
  • Industry: VCSEL
  • Application: DataCOM and TeleCOM
106 months ago
Fintest Allen, TX


Answers

Hello Fintest - All of the UL examples installed as part of MCCDAQ CD should work OK with C# Express 2012. Be sure to re-boot after installing the UL. Also, if the error string contains the word “null”, it's a sign of duplicate DLLs (CBW32.DLL) per a FAQ on our knowledgebase. If you’re still having difficulty, please contact MCC Technical Support.

106 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (0)

What is the correct way to determine the already plugged modules? -reading the CB.CFG (must not be actual) -getting from hardware-manager and compare to cb.cfg? Running Instacal and then start my program is not very user-friendly...

  • Job Title:
  • Industry:
  • Application:
112 months ago
Chris switzerland


Answers

UL version 6.50 contains new capability for programmers called Device Discovery. If an application is written to take advantage of this new Device Discovery capability, running InstaCal to discover devices is no longer required.

96 months ago
Measurement Computing

Was this answer helpful? Yes (4) / No (0)

Hi Chris – Thank you for your feedback. We realize the need/benefit for this and plan to address it in a future version.

111 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (0)

It seems that your "universal" library is the software for the universe 20 years ago under MS-DOS. Plug and Play meens, I get a e.g. USB-1208FS out of a tray connect it and run my software. Another user has a different module. Also I cannot manipulate the CF.CFG because it is written in a non structured format like XML. Another point is the missing object oriented way of the UL. _mccAD = New MccDaq.MccBoard(0) Dim dummy(5) As MccDaq.MccBoard For i As Integer = 0 To dummy.Length - 1 dummy(i) = New MccDaq.MccBoard(i) If dummy(i).BoardName.ToUpper.Contains("USB-QUAD08") Then _mccENC = New MccDaq.MccBoard(i) End If If dummy(i).BoardName.ToUpper.Contains("USB-1208FS") Then _mccAD = New MccDaq.MccBoard(i) End If Next If you want to use _mccAD further in this code the Visual Studio 2010 IDE vanishes without a trace... Please provide the UL with a function, which lists the available modules without running INSTACAL first. Regards Chris

111 months ago
Chris

Was this answer helpful? Yes (2) / No (0)

Hello Chris - To achieve your goal, the following is recommended: It Is assumed that InstaCal was run prior by the user, such that all boards had been recognized and that InstaCal has already added them to its board list (stored in CB.CFG). First use BoardName, with each possible board #. If no board entry is in CB.CFG for that board #, you will receive an empty string. Keep track of which board #s return a populated string. Note that being listed in CB.CFG does not mean that the board is physically present in the system (for example, a USB board may have been unplugged by the user). In order to verify the board is truly present, you must perform a function that the model supports, such as AIn or DIn, and if the function returns an error code of 0, then the board is physically present.

112 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (1)

  • Job Title: embedded developer
  • Industry: defence and aerospace
  • Application: center of gravity measurement
112 months ago
sivaram hyderabad


Answers

Thank you for your inquiry. DASYLab is not capable of creating a DLL file or an executable. In order to deploy your DASYLab program you will need to use a DASYLab Run Time license which installs the necessary files and allows for the execution of your DASYLab applications on target systems.

112 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (0)

Does this product work with VS2012 (v110) and/or VS2013? Are there libraries for x86 and x64 arch?

  • Job Title: Programmer
  • Industry: MLM
  • Application: Robotics and Automation
113 months ago
iceisfun Orem, UT


Answers

Yes, our Universal Library C examples can be used in any version of Visual Studio (certainly versions 6.0 thru 2013). We provide both 32-bit and 64-bit DLLs, as well as supporting files.

113 months ago
MeasurementComputing

Was this answer helpful? Yes (9) / No (0)

We are in process of a major design review and use PC104 for our embedded products. As part of the review, we are considering moving to Win7 from Win XP Your site indicates that the PC104 products are not supported under Win7. Are there plans for support?

  • Job Title: Chief Scientific Officer
  • Industry: Instrument manufacturer
  • Application: Industrial and academic biochemistry labs
116 months ago
Spinner Berwick, ME, USA


Answers

Hello Spinner - We will not support Windows 7 or Windows 8 for PC-104. We do, however, offer 2 USB products with the same form factor as PC-104 that are supported in Windows 7 and Windows 8. Please take a look at the USB-7202 (http://www.mccdaq.com/usb-data-acquisition/USB-7202.aspx) and the USB-7204 (http://www.mccdaq.com/usb-data-acquisition/USB-7204.aspx)

115 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (0)

We have a number of legacy instruments that require WinXP. We are updating the computers on these, and wonder if your PCIe boards have WinXP drivers available.

  • Job Title: Chief Scientific Officer
  • Industry: Instrument manufacturer
  • Application: Industrial and academic biochemistry labs
116 months ago
Spinner Berwick, ME, USA


Answers

Hi Spinner - Thank you for your inquiry. The current software that ships with our PCIe products supports both Windows XP and Windows 7/8.

116 months ago
MeasurementComputing

Was this answer helpful? Yes (3) / No (0)

Can we use latest universal library with Embarcadero C++ builder XE3 under Windows 32 and 64 bit?

  • Job Title:
  • Industry:
  • Application:
116 months ago
Nivram


Answers

To make lib for Embarcadero C++ do: For 32 Bit 1.) copy DLL file from c:\Program Files (x86)\Measurement Computing\DAQ\cbw32.dll to some directory 2.) use embarcadero tool implib: implib cbw32bc.lib cbw32.dll (for 32 bit version) Move or copy cwb32bc to c:\Users\Public\Documents\Measurement Computing\DAQ\C3.) use MakeBC32.bat to compile samples on c:\Users\Public\Documents\Measurement Computing\DAQ\C\Sample32 Note MakeBC32.bat is installed during regular instalation of Universal library. However there is missing cbw32bc.lib and support for 64 bit: cbw64bc.lib, makeBC64.bat ! 4. What is solutions for 64 bit ? for 64 bit MKEXP.EXE is the 64-bit Windows counterpart of IMPLIB.EXE Have someone suitable .bat file to compile and link? Measurement computing please add support also for Embarcadero compilers!

116 months ago
Nivram

Was this answer helpful? Yes (4) / No (0)

Hello Nivram - MCC does not provide or test LIB files for Embarcadero C++. You should be able to create your own LIB file, using a tool/utility provided by Embarcadero that creates a LIB file based on a particular DLL. The DLL to reference is either CBW32.DLL or CBW64.DLL, depending on whether you want to make a 32-bit or 64-bit application (both should run on 64-bit Windows). Both DLLs are installed as part of InstaCal/UL. The header file (cbw.h) is also installed by the UL.

116 months ago
MeasurementComputing

Was this answer helpful? Yes (2) / No (0)

This version of the library does not have universal support Delphi?

  • Job Title:
  • Industry:
  • Application:
122 months ago
Davi


Answers

Our apologies, but the last version of the UL that supported Delphi was Version 6.1. You may still download this archived version from our ftp site at the following link: ftp://ftp.mccdaq.com/Archive/MCCDAQ_CD/Archive_6.10/

122 months ago
MeasurementComputing

Was this answer helpful? Yes (9) / No (0)

Universal Library Help     

1 Year Warranty

1 Year Warranty

All products are backed with a one year warranty. Buy with confidence.

30 Day Money Back Guarantee

30-Day
Guarantee

If you aren’t happy, simply return the product for a full refund (U.S. customers only).

Live Help

Live Help

Having trouble deciding which product is right for your application? Chat with one of our sales engineers.