Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Characteristic Locus
Inheritance object EPaperBase > Epd5in65f
Implements ISpiPeripheral IDisposable IGraphicsDisplay
Inherited Members 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) EPaperBase.DefaultSpiBusSpeed EPaperBase.SpiBusSpeed EPaperBase.DefaultSpiBusMode EPaperBase.SpiBusMode EPaperBase.IsDisposed object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() object.ReferenceEquals(object, object) object.ToString()
Namespace Meadow.Foundation.Displays
Assembly ePaperWaveShare.dll

Syntax

public class Epd5in65f : EPaperBase, ISpiPeripheral, IDisposable, IGraphicsDisplay

Constructors

Epd5in65f(ISpiBus, IDigitalOutputPort, IDigitalOutputPort, IDigitalOutputPort, IDigitalInputPort)

Create a new Epd5in65f ePaper display object

Declaration
public Epd5in65f(ISpiBus spiBus, IDigitalOutputPort chipSelectPort, IDigitalOutputPort dataCommandPort, IDigitalOutputPort resetPort, IDigitalInputPort busyPort)

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

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Epd5in65f(ISpiBus, IPin, IPin, IPin, IPin)

Create a new Epd5in65f ePaper display object

Declaration
public Epd5in65f(ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, IPin busyPin)

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

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Fields

imageBuffer

Buffer to hold display data

Declaration
protected readonly BufferIndexed4 imageBuffer

Field Value

Type Description
BufferIndexed4

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Properties

ColorMode

Display color mode

Declaration
public ColorMode ColorMode { get; }

Property Value

Type Description
ColorMode

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

DisabledColor

The color to draw when a pixel is disabled

Declaration
public Color DisabledColor { get; }

Property Value

Type Description
Color

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

EnabledColor

The color to draw when a pixel is enabled

Declaration
public Color EnabledColor { get; }

Property Value

Type Description
Color

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Height

Height of display in pixels

Declaration
public int Height { get; }

Property Value

Type Description
int

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

PixelBuffer

The buffer the holds the pixel data for the display

Declaration
public IPixelBuffer PixelBuffer { get; }

Property Value

Type Description
IPixelBuffer

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

SupportedColorModes

The Color mode supported by the display

Declaration
public ColorMode SupportedColorModes { get; }

Property Value

Type Description
ColorMode

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Width

Width of display in pixels

Declaration
public int Width { get; }

Property Value

Type Description
int

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Methods

Clear()

Clear the display

Declaration
public void Clear()

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Clear(bool)

Clear display buffer

Declaration
public void Clear(bool updateDisplay = false)

Parameters

Type Name Description
bool updateDisplay

force display update

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

DrawPixel(int, int, Color)

Draw a single pixel at the specified color

Declaration
public void DrawPixel(int x, int y, Color color)

Parameters

Type Name Description
int x

x position in pixels

int y

y position in pixels

Color color

The Meadow Foundation color of the pixel

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

DrawPixel(int, int, bool)

Enable or disable a single pixel (used for 1bpp displays)

Declaration
public void DrawPixel(int x, int y, bool enabled)

Parameters

Type Name Description
int x

x position in pixels

int y

y position in pixels

bool enabled

On if true, off if false

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Fill(Color)

Clear the display

Declaration
public void Fill(Color color)

Parameters

Type Name Description
Color color

Color to set the display

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Fill(Color, bool)

Clear the display

Declaration
public void Fill(Color fillColor, bool updateDisplay = false)

Parameters

Type Name Description
Color fillColor

The color used to fill the display buffer

bool updateDisplay

Update the display once the buffer has been cleared when true

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Fill(int, int, int, int, Color)

Fill the display buffer with a color

Declaration
public void Fill(int x, int y, int width, int height, Color color)

Parameters

Type Name Description
int x

x location in pixels to start fill

int y

y location in pixels to start fill

int width

width in pixels to fill

int height

height in pixels to fill

Color color

color to fill

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

InvertPixel(int, int)

Invert the color of a single pixel

Declaration
public void InvertPixel(int x, int y)

Parameters

Type Name Description
int x

x position in pixels

int y

y position in pixels

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Show()

Draw the display buffer to screen

Declaration
public void Show()

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Show(int, int, int, int)

Transfer part of the contents of the buffer to the display bounded by left, top, right and bottom

Declaration
public void Show(int left, int top, int right, int bottom)

Parameters

Type Name Description
int left
int top
int right
int bottom

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Sleep()

Enter deep sleep mode call reset to wake display

Declaration
public void Sleep()

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

WaitForBusyState(bool)

Wait until the display busy state is set

Declaration
protected virtual void WaitForBusyState(bool state)

Parameters

Type Name Description
bool state

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

WriteBuffer(int, int, IPixelBuffer)

Draw a buffer to the display

Declaration
public void WriteBuffer(int x, int y, IPixelBuffer displayBuffer)

Parameters

Type Name Description
int x
int y
IPixelBuffer displayBuffer

Remarks

Epd5in65f
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Displays.ePaperWaveShare

Code Example

MicroGraphics graphics;

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

    var display = new Epd5in65f(
            spiBus: Device.CreateSpiBus(),
            chipSelectPin: Device.Pins.A04,
            dcPin: Device.Pins.A03,
            resetPin: Device.Pins.A02,
            busyPin: Device.Pins.A01);

    graphics = new MicroGraphics(display);

    return Task.CompletedTask;
}

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

    graphics.Clear();

    graphics.CurrentFont = new Font12x16();
    graphics.DrawText(0, 0, "Meadow F7", Color.Black, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 50, "Green", Color.Green, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 100, "Yellow", Color.Yellow, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 150, "Orange", Color.Orange, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 200, "Red", Color.Red, scaleFactor: ScaleFactor.X2);
    graphics.DrawText(0, 250, "Blue", Color.Blue, scaleFactor: ScaleFactor.X2);

    graphics.Show();

    Resolver.Log.Info("Run complete");

    return Task.CompletedTask;
}

Sample project(s) available on GitHub