Remarks

Speaker
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Grove.Audio.Speaker

Code Example

Speaker speaker;

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

    speaker = new Speaker(Device.Pins.D13);

    return Task.CompletedTask;
}

public override async Task Run()
{
    for (int i = 0; i < 5; i++)
    {
        Resolver.Log.Info("Playing A major triad starting at A4");
        await speaker.PlayTone(new Frequency(440, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //A
        await speaker.PlayTone(new Frequency(554.37f, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //C#
        await speaker.PlayTone(new Frequency(659.25f, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //E

        await Task.Delay(2500);
    }
}

Sample project(s) available on GitHub

Wiring Example

Speaker Meadow Pin
GND GND
VCC 3.3V
RX D01
Characteristic Locus
Inheritance object PiezoSpeaker > Speaker
Implements IToneGenerator IDisposable
Inherited Members PiezoSpeaker.PlayTone(Frequency) PiezoSpeaker.PlayTone(Frequency, TimeSpan) PiezoSpeaker.StopTone() PiezoSpeaker.SetVolume(float) PiezoSpeaker.Dispose() PiezoSpeaker.Dispose(bool) PiezoSpeaker.Volume PiezoSpeaker.Port PiezoSpeaker.IsDisposed object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() object.ReferenceEquals(object, object) object.ToString()
Namespace Meadow.Foundation.Grove.Audio
Assembly Speaker.dll

Syntax

public class Speaker : PiezoSpeaker, IToneGenerator, IDisposable

Constructors

Speaker(IPin)

Creates a Speaker driver

Declaration
public Speaker(IPin pin)

Parameters

Type Name Description
IPin pin

The pin connected to the buzzer

Remarks

Speaker
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Grove.Audio.Speaker

Code Example

Speaker speaker;

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

    speaker = new Speaker(Device.Pins.D13);

    return Task.CompletedTask;
}

public override async Task Run()
{
    for (int i = 0; i < 5; i++)
    {
        Resolver.Log.Info("Playing A major triad starting at A4");
        await speaker.PlayTone(new Frequency(440, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //A
        await speaker.PlayTone(new Frequency(554.37f, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //C#
        await speaker.PlayTone(new Frequency(659.25f, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //E

        await Task.Delay(2500);
    }
}

Sample project(s) available on GitHub

Wiring Example

Speaker Meadow Pin
GND GND
VCC 3.3V
RX D01

Speaker(IPwmPort)

Creates a Speaker driver

Declaration
public Speaker(IPwmPort port)

Parameters

Type Name Description
IPwmPort port

Remarks

Speaker
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.Grove.Audio.Speaker

Code Example

Speaker speaker;

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

    speaker = new Speaker(Device.Pins.D13);

    return Task.CompletedTask;
}

public override async Task Run()
{
    for (int i = 0; i < 5; i++)
    {
        Resolver.Log.Info("Playing A major triad starting at A4");
        await speaker.PlayTone(new Frequency(440, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //A
        await speaker.PlayTone(new Frequency(554.37f, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //C#
        await speaker.PlayTone(new Frequency(659.25f, Frequency.UnitType.Hertz), TimeSpan.FromMilliseconds(500)); //E

        await Task.Delay(2500);
    }
}

Sample project(s) available on GitHub

Wiring Example

Speaker Meadow Pin
GND GND
VCC 3.3V
RX D01