Dim display. This has an immediate effect on the display, no need to use the send-buffer-to-display node -- buffer contents are not changed.
dim-display
@/dim-display
Dim display. This has an immediate effect on the display, no need to use the send-buffer-to-display node -- buffer contents are not changed.
DEV@/ssd1306-oled-i2c-device
An SSD1306 OLED device.
DIMboolean
TRUE to enable lower brightness mode, FALSE for full brightness.
UPDpulse
Update. Triggers action.
DONEpulse
Pulses on completion.
To use the node in your project you should have the wayland/ssd1306-oled-i2c 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
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_SSD1306` class instance
auto display = getValue<input_DEV>(ctx);
auto dim_display = getValue<input_DIM>(ctx);
display->dim(dim_display);
emitValue<output_DONE>(ctx, 1);
}