Skip to content

Device features aren't periodically scanned by default #34

@henriquesimoes

Description

@henriquesimoes

Some time ago I noticed that database records generated by the GenICam makeDb.py script do not include a periodic SCAN. In addition, ADAravis doesn't have its own scan thread to read the feature values and update the readback PVs that are I/O Intr, which means such features will only be read by default during initialization or when processing a user request (by calling GenICamFeatureSet::readAll, e.g. in writeInt32). For most features, this isn't a problem because they are static. The problem arises when they are values that change overtime, such as temperature.

By digging a bit further along with @ericonr, we noticed that the refactoring done to move from aravisGigE to ADGenICam + ADAravis dropped a reading mechanism that took place when no acquisition was running. There is no commit that explains the rationale for this in either repositories. What was that?

As of now, users can somewhat overcome this by overriding the automatically generated records to define a scan period for each readback PV of interest. The downsides of this are that it requires a manual intervention for having parameters properly handled and it is device-specific, which hinders the deploy for new devices (where feature names might change, as do their corresponding PVs).

Let me know if I'm missing something.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions