init

rcb71/seeed-lcd-16x2/init

No description
init
@/init
DEV@/text-lcd-rgb-device
I2Cxod/i2c/i2c
UPDpulse
init
DEV
I2C
UPD
DEV_
DONE
DONEpulse
DEV_@/text-lcd-rgb-device
To use the node in your project you should have the rcb71/seeed-lcd-16x2 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) {
        auto t = getValue<input_DEV>(ctx);
        auto wire = getValue<input_I2C>(ctx);
        if (isInputDirty<input_UPD>(ctx))
            return;
        
        t.lcd->begin(t.cols, t.rows, LCD_5x8DOTS, *wire);
        emitValue<output_DONE>(ctx, 1);

        emitValue<output_DEV_>(ctx, t);
    }
}