The wireless module is currently called wsda_200_device_module and is located here: openDAQ\modules\wsda_200_device_module.
Example projects device_server and function_block_example have been modified to demonstrate the wsda_200_device_module. The renderer in the ref_fb_module has also been modified to accomodate timestamp jitter without drawing gaps in the data. Use of the wsda_200_device_module with out the modified renderer in the ref_fb_module will likely show gaps in the data. These gaps do not represent dropped packets.
A wireless node and a base station are currently required to run the module. The node must be configured and set sampling through SensorConnect. Please reach out to [email protected] or [email protected] for instructions.
JEFF’S NOTE: These instructions are to address an issue that is only present on windows builds. Linux builds work fine. The issue is that MSCL requires an old version of boost. These instructions detail how to install boost for MSCL on a windows machine.
There are two solutions so that manual installation of boost will not be required in the future:
-
update MSCL so that it uses the current version of boost
-
figure out how to link to an earlier version of boost in the windows build (as currently occurs on Linux machines)
Setup your LIB_PATH which will contain some MSCL dependencies
Create the directory where you want your libraries. I suggest using C:\libs and will use that for the rest of the instructions
Set the LIB_PATH environment variable to C:\libs I suggest setting this in the system environment variables
Install boost into your LIB_PATH
Create the directory C:\libs\boost
Download the 64 bit and 32 bit installers for boost
Install both of them to C:\libs\boost\boost_1_68_0
Install OpenSSL into your LIB_PATH
Create the directory C:\libs\openssl
Extract the contents of this file into the directory so that the files are directly in the openssl directory. For example, C:\libs\openssl\README.txt should exist, not C:\libs\openssl\openssl-1.1.0f-vs2015\README.txt
Clone the repo: git clone https://github.com/LORD-MicroStrain/openDAQ.git
Then follow the build instructions documented in the openDAQ README
SDK that bridges the gap between data acquisition devices, in an era where incompatibility is the norm
openDAQ is a software development kit that allows for easy integration of data acquisition devices into its ecosystem. It provides a simple generic API that allows users to connect to Data Acquisition (DAQ) devices that are compliant with openDAQ and any of its supported open standards. With the SDK, users can configure properties of devices and read their measurement data. It also contains a framework for developing custom signal processing blocks that process and analyse signal data. In a world where DAQ devices do not readily communicate, openDAQ provides a common language for all to speak while also embracing existing standards such as MQTT and XCP via Ethernet.
- Simple connection to openDAQ-enabled devices, allowing for property visualisation/configuration and data streaming.
- Simple integration of existing data acquisition devices into the openDAQ ecosystem.
- SDK that runs the same code on both the device (server) and application (client).
- Signal processing framework that allows for implementation of custom data processing blocks that run on any SDK instance (device or application).
- OPC UA for structure/property transfer, WebSocket streaming for data.
- API built of C++ pure abstract classes that can be passed across shared library boundaries regardless of compiler and platform used.
- C++ pointer wrappers that allow for C++ features to be used in conjunction with the openDAQ pure abstract classes.
- Wrappers for Python and Delphi (C# in development).
The Doxygen documentation can be built by enabling the OPENDAQ_BUILD_DOCUMENTATION cmake flag. The user guide documentation can be built with Antora by following the guide found in docs/Antora/README.md.
OS | Platform | GCC 7.3.1+ | Clang 5+ | VC++ (v14.1+) |
Windows (Visual Studio) |
x86, x64 | / | ✅ | ✅ |
arm64 | ||||
Windows (MinGW) |
x86, x64 | ☑️ | ☑️ | / |
Linux | x86, x64 | ✅ | ✅ | |
armhfv7, aarch64 | ☑️ | ☑️ | ||
MacOS (>= 10.15) |
x64 | ☑️ | ✅ | |
arm64 | ☑️ | ☑️ | ||
iOS | arm64 | 🛠️ | 🛠️ | |
Android | aarch64 | 🛠️ | 🛠️ |
✅ | Actively supported (checked with CI) |
☑️ | Actively supported (no CI) |
Not actively supported | |
🛠️ | Requires some manual changes or special configuration |
- CMake 3.24 or higher: https://cmake.org/ (might come with development environment like Visual Studio)
- Git: https://git-scm.com/
- Compiler:
- (msvc) Visual Studio 2017 or higher with installed Workload for C++
- (gcc windows) MSYS2: http://www.msys2.org, https://github.com/msys2/msys2/wiki/MSYS2-installation
- (gcc) Ninja build system: https://ninja-build.org/
- Python3: https://www.python.org/downloads/
- (optional) Boost C++ Library: https://sourceforge.net/projects/boost/files/boost-binaries/ , http://theboostcpplibraries.com
- If installed, set CMake option
OPENDAQ_ALWAYS_FETCH_BOOST=OFF
to allow the SDK to use it. - See also document BUILD.md.
- If installed, set CMake option
See Required tools before building above.
git clone [email protected]:openDAQ/openDAQ.git
cd openDAQ
In the repository root folder execute the following command to list available presets then select the one that fits you and generate CMake project:
cmake --list-presets=all
cmake --preset "x64/msvc-22/full"
ℹ️ If for any reason there is no preset for your compiler (version) you can list the "CMake generators" and specify one to override the closest preset (e.g. to use Visual Studio 2019):
cmake -G cmake --preset "x64/msvc-17/full" -G "Visual Studio 16 2019"
Open and build build/x64/msvc-22/full/openDAQ.sln
using Visual Studio (if one msvc
preset had been used above).
Or use command line:
# build from repository root
cmake --build build/x64/msvc-22/full
# or move to build directory
cd build/x64/msvc-22/full
cmake --build .
For other compilers than msvc
one can add parameter -j 4
to the build command to specify the number of parallel builds
(see cmake.org: Build a Project with CMake).
For example in Ubuntu
sudo apt-get update
sudo apt-get install -y git build-essential lld cmake ninja-build mono-complete python3
git clone [email protected]:openDAQ/openDAQ.git
cd openDAQ
In the repository root folder execute the following command to list available presets then select the one that fits you and generate CMake project:
cmake --list-presets=all
cmake --preset "x64/gcc/full/debug"
# build from repository root
cmake --build build/x64/gcc/full/debug
# or move to build directory
cd build/x64/gcc/full/debug
cmake --build .
More information about advanced building options can be found in BUILD.md document.