Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

Characteristic Locus
Inheritance object EPaperBase EPaperMonoBase > Il91874V03
Implements ISpiPeripheral IDisposable IGraphicsDisplay
Inherited Members EPaperMonoBase.ColorMode EPaperMonoBase.SupportedColorModes EPaperMonoBase.PixelBuffer EPaperMonoBase.EnabledColor EPaperMonoBase.DisabledColor EPaperMonoBase.imageBuffer EPaperMonoBase.Width EPaperMonoBase.Height EPaperMonoBase.Clear(bool) EPaperMonoBase.Fill(Color, bool) EPaperMonoBase.Fill(int, int, int, int, Color) EPaperMonoBase.Clear(bool, bool) EPaperMonoBase.DrawPixel(int, int, bool) EPaperMonoBase.DrawPixel(int, int, Color) EPaperMonoBase.InvertPixel(int, int) EPaperMonoBase.Show(int, int, int, int) EPaperMonoBase.Show() EPaperMonoBase.WriteBuffer(int, int, IPixelBuffer) EPaperMonoBase.Sleep() EPaperMonoBase.SendCommand(EPaperMonoBase.Command) EPaperBase.DefaultSpiBusSpeed EPaperBase.SpiBusSpeed EPaperBase.DefaultSpiBusMode EPaperBase.SpiBusMode EPaperBase.IsDisposed EPaperBase.commandBuffer EPaperBase.dataCommandPort EPaperBase.resetPort EPaperBase.chipSelectPort EPaperBase.busyPort EPaperBase.spiComms EPaperBase.DataState EPaperBase.CommandState EPaperBase.createdPorts EPaperBase.Write(byte) EPaperBase.Reset() EPaperBase.DelayMs(int) EPaperBase.SendCommand(byte) EPaperBase.SendData(int) EPaperBase.SendData(byte) EPaperBase.SendData(byte[]) EPaperBase.WaitUntilIdle() EPaperBase.Dispose() EPaperBase.Dispose(bool) object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() object.ReferenceEquals(object, object) object.ToString()
Namespace Meadow.Foundation.Displays
Assembly EPaper.dll

Syntax

public class Il91874V03 : EPaperMonoBase, ISpiPeripheral, IDisposable, IGraphicsDisplay

Constructors

Il91874V03(ISpiBus, IDigitalOutputPort, IDigitalOutputPort, IDigitalOutputPort, IDigitalInputPort, int, int)

Create a new Il91874V03 ePaper display object

Declaration
public Il91874V03(ISpiBus spiBus, IDigitalOutputPort chipSelectPort, IDigitalOutputPort dataCommandPort, IDigitalOutputPort resetPort, IDigitalInputPort busyPort, int width, int height)

Parameters

Type Name Description
ISpiBus spiBus

SPI bus connected to display

IDigitalOutputPort chipSelectPort

Chip select output port

IDigitalOutputPort dataCommandPort

Data command output port

IDigitalOutputPort resetPort

Reset output port

IDigitalInputPort busyPort

Busy input port

int width

Width of display in pixels

int height

Height of display in pixels

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

Il91874V03(ISpiBus, IPin, IPin, IPin, IPin, int, int)

Create a new Il91874V03 object

Declaration
public Il91874V03(ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, IPin busyPin, int width = 176, int height = 264)

Parameters

Type Name Description
ISpiBus spiBus

SPI bus connected to display

IPin chipSelectPin

Chip select pin

IPin dcPin

Data command pin

IPin resetPin

Reset pin

IPin busyPin

Busy pin

int width

Width of display in pixels

int height

Height of display in pixels

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

Methods

ClearFrame()

Clears the SRAM on the display controller Doesn't update the display

Declaration
public void ClearFrame()

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

DisplayFrame()

Display data from the display controller SRAM

Declaration
public override void DisplayFrame()

Overrides

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

Initialize()

Initialize the display

Declaration
protected override void Initialize()

Overrides

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

SetFrameMemory(byte[])

Set frame buffer memory of display (full screen)

Declaration
public override void SetFrameMemory(byte[] buffer)

Parameters

Type Name Description
byte[] buffer

The image buffer

Overrides

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).

SetFrameMemory(byte[], int, int, int, int)

Set frame buffer memory of display

Declaration
public override void SetFrameMemory(byte[] buffer, int x, int y, int width, int height)

Parameters

Type Name Description
byte[] buffer

buffer

int x

x location

int y

y location

int width

width in pixels

int height

height in pixels

Overrides

Remarks

Il91874V03
Status Status badge: working
Source code GitHub
Datasheet(s) GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaper

The IL91874V3 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.

The IL91874V3 is paired with a wide range of three color ePaper display sizes and resolutions.

Sample projects available on GitHub

Code Example

MicroGraphics graphics;

public override Task Initialize()
{
    Resolver.Log.Info("Initialize ...");

    var display = new Il91874V03(
        spiBus: Device.CreateSpiBus(),
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        busyPin: Device.Pins.D03,
        width: 176,
        height: 264);

    graphics = new MicroGraphics(display);

    return base.Initialize();
}

public override Task Run()
{
    graphics.DrawRectangle(1, 1, 126, 32, Meadow.Foundation.Color.Red, false);

    graphics.CurrentFont = new Font8x12();
    graphics.DrawText(2, 2, "IL91874V03", Meadow.Foundation.Color.Black);
    graphics.DrawText(2, 20, "Meadow F7", Meadow.Foundation.Color.Black);

    graphics.Show();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Wiring Example

To control a IL91874V3 from Meadow, connect the following:

Il91874V03 Meadow Pin
BUSY D15
RST D14
DC D13
CS D12
CLK SCK
DIN MOSI
GND GND
3V3 3V3

If your display does not include any of the above pins, they can be omitted. Pass NULL into the constructor for the missing pin(s).