AgIsoStack-plus-plus icon indicating copy to clipboard operation
AgIsoStack-plus-plus copied to clipboard

[TC]: Add distance thresholds and handling of default process data

Open ad3154 opened this issue 6 months ago • 1 comments

Describe your changes

  • Added support for distance interval measurement commands to the TC client
    • Users can use the set_distance function on the TC client now to cause the client to evaluate all TC-configured distance interval measurement commands, which previously weren't really supported. Distance triggers are not often used, but at least we now support it. When the distance set to the client causes any process data variable to need to be resent, the client will now automatically query the user's value callback and send an update to the TC. In general it's very automated, but the user is required to manage the vehicle's total driven distance in the consuming application, maybe by using our speed and distance interfaces or via proprietary means.
  • Added support for defining and automatically querying a consuming application for a DDOP's default process data.
    • The TC requests a special DDI (57343 - Request Default Process Data) from device element 0 when it wants the client to send values to it using the default trigger method. Previously this wasn't really supported via the stack, so this adds generic handling of it. Users can add a callback which will be called when the TC requests this. Inside that callback, the user can tell the TC client to configure any number of default triggers, and we'll error check them against the DDOP content.

Fixes #485

How has this been tested?

  • [ ] Tested with TC
  • [ ] Tested via unit tests (needs a little improvement yet)

ad3154 avatar Jul 27 '24 22:07 ad3154