Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

Characteristic Locus
Inheritance object TftSpiBase > Ssd1351
Implements IGraphicsDisplay ISpiPeripheral IDisposable
Inherited Members TftSpiBase.SetAddressBuffer TftSpiBase.ColorMode TftSpiBase.Rotation TftSpiBase.Width TftSpiBase.Height TftSpiBase.PixelBuffer TftSpiBase.DefaultSpiBusSpeed TftSpiBase.SpiBusSpeed TftSpiBase.DefaultSpiBusMode TftSpiBase.SpiBusMode TftSpiBase.IsDisposed TftSpiBase.dataCommandPort TftSpiBase.resetPort TftSpiBase.chipSelectPort TftSpiBase.spiDisplay TftSpiBase.imageBuffer TftSpiBase.readBuffer TftSpiBase.Data TftSpiBase.Command TftSpiBase.nativeHeight TftSpiBase.nativeWidth TftSpiBase.setAddressLastX0 TftSpiBase.setAddressLastX1 TftSpiBase.setAddressLastY0 TftSpiBase.setAddressLastY1 TftSpiBase.IsColorTypeSupported(ColorMode) TftSpiBase.CreateBuffer(ColorMode, int, int) TftSpiBase.Clear(bool) TftSpiBase.Fill(Color, bool) TftSpiBase.WriteBuffer(int, int, IPixelBuffer) TftSpiBase.DrawPixel(int, int, bool) TftSpiBase.DrawPixel(int, int, Color) TftSpiBase.DrawPixel(int, int, byte, byte, byte) TftSpiBase.InvertPixel(int, int) TftSpiBase.Fill(int, int, int, int, Color) TftSpiBase.Show() TftSpiBase.Show(int, int, int, int) TftSpiBase.Write(byte) TftSpiBase.Write(byte[]) TftSpiBase.DelayMs(int) TftSpiBase.SendCommand(TftSpiBase.Register) TftSpiBase.SendCommand(TftSpiBase.LcdCommand) TftSpiBase.SendCommand(byte) TftSpiBase.SendData(int) TftSpiBase.SendData(byte) TftSpiBase.SendData(byte[]) TftSpiBase.Clear(Color) TftSpiBase.UpdateBuffer() TftSpiBase.Dispose() TftSpiBase.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 TftSpi.dll

Syntax

public class Ssd1351 : TftSpiBase, IGraphicsDisplay, ISpiPeripheral, IDisposable

Constructors

Ssd1351(ISpiBus, IDigitalOutputPort, IDigitalOutputPort, IDigitalOutputPort, int, int)

Create a new Ssd1351 color display object

Declaration
public Ssd1351(ISpiBus spiBus, IDigitalOutputPort chipSelectPort, IDigitalOutputPort dataCommandPort, IDigitalOutputPort resetPort, 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

int width

Width of display in pixels

int height

Height of display in pixels

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

Ssd1351(ISpiBus, IPin, IPin, IPin, int, int)

Create a new Ssd1351 color display object

Declaration
public Ssd1351(ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, int width, int height)

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

int width

Width of display in pixels

int height

Height of display in pixels

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

Properties

DefaultColorMode

The default display color mode

Declaration
public override ColorMode DefaultColorMode { get; }

Property Value

Type Description
ColorMode

Overrides

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

SupportedColorModes

The color modes supported by the display

Declaration
public override ColorMode SupportedColorModes { get; }

Property Value

Type Description
ColorMode

Overrides

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

Methods

Initialize()

Initialize the display

Declaration
protected override void Initialize()

Overrides

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

InvertDisplay(bool)

Invert the display

Declaration
public void InvertDisplay(bool invert)

Parameters

Type Name Description
bool invert

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7

SetAddressWindow(int, int, int, int)

Set address window to update

Declaration
protected override void SetAddressWindow(int x0, int y0, int x1, int y1)

Parameters

Type Name Description
int x0

Start x position in pixels

int y0

End x position in pixels

int x1

Start y position in pixels

int y1

End y position in pixels

Overrides

Remarks

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

The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.

Code Example

MicroGraphics graphics;

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

    var spiBus = Device.CreateSpiBus();

    var display = new Ssd1351(
        spiBus: spiBus,
        chipSelectPin: Device.Pins.D02,
        dcPin: Device.Pins.D01,
        resetPin: Device.Pins.D00,
        width: 128, height: 128);

    graphics = new MicroGraphics(display)
    {
        CurrentFont = new Font8x12(),
        IgnoreOutOfBoundsPixels = true
    };

    return base.Initialize();
}

public override Task Run()
{
    graphics.Clear();

    graphics.DrawCircle(80, 80, 40, Meadow.Foundation.Color.Cyan, false);

    int indent = 0;
    int spacing = 10;
    int y = indent;

    graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");

    graphics.DrawText(indent, y += spacing, "Red", Meadow.Foundation.Color.Red);
    graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
    graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
    graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
    graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
    graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
    graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
    graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
    graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
    graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.Color.Brown);

    graphics.Show();

    return base.Run();
}

Sample project(s) available on GitHub

Wiring Example

To wire a Ssd1351 to your Meadow board, connect the following:

Ssd1351 Meadow Pin
LED- 3V3
LED+ GND
MOSI COPI
SCK SCK
RESET D15
A0 D14
CS D13
VCC 3V3
GND GND

It should look like the following diagram:

Wiring a Ssd1351 to a Meadow F7