2025 openDAQ Roadmap

:pushpin: Property Value Validation

  • Enforce validation on write operations.
  • Automatically revert values if validation fails.

:pushpin: Discovery Improvements

  • Allow device info fields to change at runtime.
  • Keep discovery data updated with property changes.
  • Include connected client information in responses.

:pushpin: IP Address Configurability

  • Support IP address changes over mDNS.
  • Improve flexibility in network configuration.

:pushpin: Python Binding for Mac

  • Provide full support for macOS in Python bindings.

:pushpin: Component Status Extension

  • Standardize statuses (e.g., Ok, Warning, Error).
  • Enable clear, human-readable status messages.
  • Notify clients on status changes.

:pushpin: Device Operation Modes

  • Define standard modes: Idle, Safe Operation, Operation.
  • Enable consistent control over when components process data.
  • Notify components of mode changes.

:pushpin: View-Only and Exclusive Control

  • Support exclusive control and view-only roles for connections.
  • Prevent conflicting configuration changes.
  • Enable safe parallel monitoring.

:pushpin: IRecorder Interface

  • Define a standard interface with start/stop methods.
  • Support consistent recording control across components.

:pushpin: Module Licensing

  • Introduce a standardized licensing API.
  • Allow custom vendor licensing and tamper detection.

:pushpin: Firmware Update

  • Support firmware updates via native client.
  • Include upload, progress tracking, and result reporting.
  • Restrict updates to authorized users.

:pushpin: C Bindings

  • Provide full-featured C bindings for the SDK.
  • Enable broader integration with external tools.

:pushpin: Factory Reset

  • Add standardized API to reset devices to factory state.
  • Ensure clear, consistent re-initialization support.

:pushpin: Binary File Upload / Download

  • Enable secure binary file transfers to and from devices.
  • Support progress reporting, validation, and access control.

:pushpin: Default Component Attributes

  • Support specifying and resetting default attribute values.
  • Prevent unrecoverable changes to component configurations.

:pushpin: Generalized Client-to-Device Streaming

  • Support multiple client-to-device streaming protocols.
  • Improve modularity and reduce code duplication.
  • Ensure backward compatibility with existing streaming.

:pushpin: Parquet Recorder / File Replay

  • Add support for storing data in Apache Parquet format.
  • Enable replay of recorded data as openDAQ signals.

:pushpin: Raspberry Pi Module

  • Establish Raspberry Pi as a reference platform.
  • Demonstrate best-practice device integration.
  • Serve as a standardized testing and validation environment.

:pushpin: LabVIEW Driver

  • Deliver a plug-and-play driver for easy device integration.
  • Support discovery, configuration, and data streaming in LabVIEW.
  • Include clear documentation and example projects.