is-data-ready

wayland/scd4x-co2-rh-temp/is-data-ready

Check whether new measurement data is available for read-out.
is-data-ready
@/is-data-ready
Check whether new measurement data is available for read-out.
DEV@/scd4x-device
An SCD4X device.
UPDpulse
Update.
is-data-ready
Ready
OK
DEV
UPD
OKpulse
Pulse on successful check of data availability.
Readyboolean
True if new data available, false otherwise.
To use the node in your project you should have the wayland/scd4x-co2-rh-temp library installed. Use the “File → Add Library” menu item in XOD IDE if you don’t have it yet. See Using libraries for more info.

C++ implementation

#pragma XOD evaluate_on_pin disable
#pragma XOD evaluate_on_pin enable input_UPD

node {

    void evaluate(Context ctx) {
        // The node responds only if there is an input pulse
        if (!isInputDirty<input_UPD>(ctx))
            return;

        auto sensor = getValue<input_DEV>(ctx);

        bool isDataReady = false;

        auto sensorError = sensor->getDataReadyFlag(isDataReady);
        if (sensorError) {
            raiseError(ctx);
            return;
        }

        emitValue<output_OK>(ctx, 1);
        emitValue<output_Ready>(ctx, isDataReady);

    }
}