read-luminosity

wayland/tsl2591-light-sensor/read-luminosity

Read luminosity (raw count) of full spectrum (visible and IR) and IR component. Subtract IR from FULL to get luminosity of visible light.
read-luminosity
@/read-luminosity
Read luminosity (raw count) of full spectrum (visible and IR) and IR component. Subtract IR from FULL to get luminosity of visible light.
DEV@/tsl2591-device
A tsl2591-device.
UPDpulse
Update. Trigger read.
read-luminosity
FULL
IR
DONE
DEV
UPD
DONEpulse
Pulse on completion.
IRnumber
Infrared luminosity (raw count).
FULLnumber
Luminosity (raw count) of full spectrum (visible and infrared).
To use the node in your project you should have the wayland/tsl2591-light-sensor 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

struct State {
};

{{ GENERATED_CODE }}

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

    // Get a pointer to the `Adafruit_TSL2591` class instance
    auto sensor = getValue<input_DEV>(ctx);
    uint32_t lum = sensor->getFullLuminosity();
    uint16_t ir, full;
    ir = lum >> 16;
    full = lum & 0xFFFF;
    emitValue<output_FULL>(ctx, full);
    emitValue<output_IR>(ctx, ir);
    emitValue<output_DONE>(ctx, 1);
}