The Meadow.Foundation peripherals library is an open source repository of drivers for various peripherals such as sensors, motors, displays, cameras, and other peripherals which make it easy to add hardware to your Meadow application.

The peripherals are split into two groups; the first group is general, core peripherals that are included in the main Meadow.Foundation NuGet package. The second group are additional drivers that are available via separate NuGet packages to keep the core size to a minimum.

Core Peripherals

Status Driver Description
Status indicator: Working AnalogJoystick A two axis analog joystick
Status indicator: Working AnalogTemperature Analog temperature sensor (TMP35 / TMP36 / TMP37 / LM35)
Status indicator: Working AnalogWaterLevel Analog water level sensor
Status indicator: Working DigitalTachometer Hall Effect Linear Tachometer sensor
Status indicator: Working DipSwitch A multi-pole dip switch
Status indicator: Working HBridgeMotor Generic h-bridge motor controller
Status indicator: Working Led Simple LED
Status indicator: Working LedBarGraph Segmented LED bar
Status indicator: Working PiezoSpeaker A piezo-electric speaker capable of generating tones via PWM
Status indicator: Working PushButton Momentary button
Status indicator: Working PwmLed Pulse-Width-Modulation powered LED
Status indicator: Working PwmLedBarGraph Pulse-Width-Modulation powered segmented LED bar
Status indicator: Working Relay Electrically isolated switch
Status indicator: Working RgbLed Simple RGB LED
Status indicator: Working RgbPwmLed Pulse-Width-Modulation powered RGB LED
Status indicator: Working RotaryEncoder A simple rotary encoder
Status indicator: Working RotaryEncoderWithButton A rotary encoder that includes a push button
Status indicator: Working SpdtSwitch A simple single-pole, dual-throw (SPDT) switch
Status indicator: Working SpstSwitch A simple single-pole, single-throw (SPST) switch

Libraries and Frameworks

DataLoggers

Status Driver Description
Status indicator: Working DataLoggers.AdafruitIO Driver for the Adafruit IO data logging system
Status indicator: Working DataLoggers.SensorReading SensorReading class for Meadow Foundation data loggers
Status indicator: Working DataLoggers.ThingSpeak Driver for the ThingSpeak data logging system

Displays

Status Driver Description
Status indicator: Working Displays.MicroGraphics Lightweight integer accurate 2d graphics drawing system designed for embedded systems
Status indicator: Working Displays.TextDisplayMenu Text based stack navigation and editor for pixel and character displays

Location

Status Driver Description
Status indicator: Working Sensors.Location.Gnss.NmeaProcessor GNSS NMEA parsing library

Web

Status Driver Description
Status indicator: Working Web.Maple.Client Maple is an ultra-lightweight RESTful web API Server, built specifically for Meadow. It provides an easy to extend architecture, and has integrated JSON support via System.Text.Json.
Status indicator: Working Web.Maple.Server Maple is an ultra-lightweight RESTful web API Server, built specifically for Meadow. It provides an easy to extend architecture, and has integrated JSON support via System.Text.Json.

External Peripherals

External peripheral drivers can be added to Meadow projects individually and are distributed as nuget packages on Nuget.org.

Audio

Status Driver Description
Status indicator: Working Audio.Mp3.Yx5300 YX5300 serial MP3 player
Status indicator: Working Audio.Radio.Tea5767 TEA5767 I2C FM radio module

Displays

Status Driver Description
Status indicator: Working Displays.ePaper SPI eInk / ePaper display controllers (IL0373, IL0376F, IL0398, IL3897, IL91874, ILI91874v3, SSD1608)
Status indicator: Working Displays.Lcd.CharacterDisplay Digital and I2C LCD character displays
Status indicator: Working Displays.Led.FourDigitSevenSegment Digtial Four digit seven segment displays
Status indicator: Working Displays.Led.SevenSegment Ditigal Seven segment displays
Status indicator: Working Displays.Max7219 MAX7219 SPI LED driver
Status indicator: Working Displays.Pcd8544 PCD8544 SPI monochrome display (Nokia 5110)
Status indicator: Working Displays.Ssd130x SSD1306 / SSD1309 SPI and I2C OLED monochrome displays
Status indicator: Working Displays.Ssd1327 SSD1327 SPI OLED 4bpp greyscale display
Status indicator: Working Displays.St7565 ST7565 SPI color display
Status indicator: Working Displays.TftSpi SPI Color TFT and OLED displays (GC9A01, HC8357B, HX8357D, ILI9163, ILI9341, ILI9481, ILI9488, RM68140, S6D02A1, SSD1331, SSD1351, ST7735, ST7789)
Status indicator: Working Displays.Tm1637 TM1637 digital character display

Displays.ePaper

Status Driver Description
Status indicator: Working IL0373 ePaper driver
Status indicator: Working IL0376F ePaper driver
Status indicator: Working IL0398 ePaper driver
Status indicator: Working IL3897 ePaper driver
Status indicator: Working IL91874 ePaper driver
Status indicator: Working IL91874V03 ePaper driver
Status indicator: Working SSD1608 ePaper driver
Status indicator: Working SSD1681 ePaper driver

Displays.Ssd130x

Status Driver Description
Status indicator: Working Ssd1306 Ssd130x driver
Status indicator: Working Ssd1309 Ssd130x driver

Displays.TftSpi

Status Driver Description
Status indicator: Working Gc9a01 TftSpi driver
Status indicator: Working Hx8357b TftSpi driver
Status indicator: Working Hx8357d TftSpi driver
Status indicator: Working Ili9163 TftSpi driver
Status indicator: Working Ili9341 TftSpi driver
Status indicator: Working Ili9481 TftSpi driver
Status indicator: Working Ili9486 TftSpi driver
Status indicator: Working Ili9488 TftSpi driver
Status indicator: Working Rm68140 TftSpi driver
Status indicator: Working S6D02A1 TftSpi driver
Status indicator: Working Ssd1331 TftSpi driver
Status indicator: Working Ssd1351 TftSpi driver
Status indicator: Working St7735 TftSpi driver
Status indicator: Working St7789 TftSpi driver
Status indicator: Working St7796s TftSpi driver

ICs

Status Driver Description
Status indicator: Working ICs.ADC.Ads1x15 TI ADS1x15 I2C analog to digital converters (ADS1015 / ADS1115)
Status indicator: Working ICs.EEPROM.At24Cxx At24Cxx I2C EEPROMs (AT24C32 / AT24C64 / AT24C128 / AT24C256)
Status indicator: Working ICs.IOExpanders.Ds3502 Ds3502 I2C digital potentiometer
Status indicator: Working ICs.IOExpanders.Ht16k33 HT16K33 I2C IO expander, led driver, and character display controller
Status indicator: Working ICs.IOExpanders.Is31fl3731 IS31FL3731 I2C matrix led driver
Status indicator: Working ICs.IOExpanders.Mcp23x08 Mcp23x08 I2C digital output expander
Status indicator: Working ICs.IOExpanders.Pca9685 PCA9685 I2C PWM expander
Status indicator: Working ICs.IOExpanders.Tca9548a TCA9548A I2C IO expander
Status indicator: Working ICs.IOExpanders.x74595 x74595 I2C shift register digital output expander

Leds

Status Driver Description
Status indicator: Working Leds.Apa102 Apa102 SPI RGB LED driver
Status indicator: Working Leds.Pca9633 Pca9633 I2C RGB LED driver

Motors

Status Driver Description
Status indicator: Working Motors.ElectronicSpeedController PWM Electronic speed controller
Status indicator: Working Motors.Stepper.A4988 A4988 digital input stepper motor controller
Status indicator: Working Motors.Stepper.Uln2003 ULN2003 digital input stepper motor controller
Status indicator: Working Motors.Tb67h420ftg Tb67h420ftg digital input motor controller

RTCs

Status Driver Description
Status indicator: Working RTCs.Ds1307 DS1307 I2C real time clock
Status indicator: Working RTCs.Ds323x Ds323x I2C real time clock (DS3231)

Atmospheric

Status Driver Description
Status indicator: Working Sensors.Atmospheric.AdafruitMPRLS Adafruit MPRLS I2C barometric pressure sensor with metal port connector
Status indicator: Working Sensors.Atmospheric.Bme280 Bosch BME280 SPI and I2C absolute barometric pressure sensor
Status indicator: Working Sensors.Atmospheric.Bme68x Bosch BME68x I2C humidity, barometric pressure, ambient temperature and gas (VOC) sensor
Status indicator: Working Sensors.Atmospheric.Bmp085 Bosch BMP085 I2C barometric pressure sensor
Status indicator: Working Sensors.Atmospheric.Bmp180 BMP180 I2C barometric pressure, temperature, and altitude sensor
Status indicator: Working Sensors.Atmospheric.Ccs811 Ccs811 I2C VOC Air Quality Sensor
Status indicator: Working Sensors.Atmospheric.Dhtxx DHTxx I2C temperature and humidity sensors (DHT10, DHT12)
Status indicator: Working Sensors.Atmospheric.Hih6130 HIH6130 I2C temperature and humidity sensor
Status indicator: Working Sensors.Atmospheric.Htux1d HTU21D(F) and HTU31D I2C temperature and humidity sensors
Status indicator: In-progress Sensors.Atmospheric.Mpl115a2 MPL115A2 I2C barometric pressure and temperature sensor
Status indicator: Working Sensors.Atmospheric.Mpl3115a2 MPL3115A2 I2C barometric pressure, temperature, and altitude sensor
Status indicator: Working Sensors.Atmospheric.Ms5611 MS5611 SPI and I2C altimeter and barometric pressure sensor
Status indicator: Working Sensors.Atmospheric.Sht31D SHT31-D temperature and humidity sensor
Status indicator: Working Sensors.Atmospheric.Sht4x SHT40, SHT41, SHT45 etc. I2C temperature and humidity sensor
Status indicator: Working Sensors.Atmospheric.Si70xx Si70xx I2C humidity and temperature sensors
Status indicator: Working Sensors.Atmospheric.Th02 Th02 I2C Relative Humidity and temperature sensor

Sensors.Atmospheric.Dhtxx

Status Driver Description
Status indicator: Working DhtBase DhtBase driver
Status indicator: Working Dht10 Dht10 driver
Status indicator: Working Dht12 Dht12 driver

Sensors.Atmospheric.Htux1d

Status Driver Description
Status indicator: Working Htu21d Htu21d driver
Status indicator: Working Htu31d Htu31d driver

Camera

Status Driver Description
Status indicator: In-progress Sensors.Camera.ArducamMini ArducamMini I2C + SPI high definition 2MP camera controller
Status indicator: In-progress Sensors.Camera.Mlx90640 Mlx90640 I2C far infrared thermal sensor array camera
Status indicator: In-progress Sensors.Camera.Vc0706 VC0706 serial VGA CMOS camera

Distance

Status Driver Description
Status indicator: In-progress Sensors.Distance.Gp2d12 Sharp GP2D12 analog distance sensor with integrated signal processing
Status indicator: In-progress Sensors.Distance.Hcsr04 HCSR04 digital ultrasonic distance sensor
Status indicator: In-progress Sensors.Distance.Hysrf05 HYSRF05 digital ultrasonic distance sensor
Status indicator: Working Sensors.Distance.MaxBotix MaxBotix I2C, analog and serial ultrasonic distance sensors
Status indicator: In-progress Sensors.Distance.Mb10x0 MaxSonar MB10x0 serial ultrasonic distance sensor
Status indicator: In-progress Sensors.Distance.Sfsr02 SFSR02 digital ultrasonic distance sensor
Status indicator: Working Sensors.Distance.Vl53l0x Vl53l0x I2C time of flight ranging distance sensor

Environmental

Status Driver Description
Status indicator: Working Sensors.Environmental.Ags01Db Ags01Db I2C digital MEMS VOC gas sensor

Gnss

Status Driver Description
Status indicator: Working Sensors.Gnss.Mt3339 MediaTek MT3339 serial GNSS / GPS controller

Hid

Status Driver Description
Status indicator: Working Sensors.Hid.As5013 I2C Hall sensor IC for smart navigation
Status indicator: In-progress Sensors.Hid.Bbq10Keyboard BB Q10 I2C Keyboard
Status indicator: Working Sensors.Hid.Mpr121 Freescale Semiconductor MPR121 I2C capacitive keypad controller
Status indicator: Working Sensors.Hid.Tsc2004 Tsc2004 I2C capacitive touch screen
Status indicator: Working Sensors.Hid.WiiExtensionControllers Nintendo Wii I2C extension controllers (nunchuck, classic controller, snes classic controller, nes classic controller)

Sensors.Hid.WiiExtensionControllers

Status Driver Description
Status indicator: Working NesClassicController NesClassicController driver
Status indicator: Working SnesClassicController SnesClassicController driver
Status indicator: Working WiiClassicController WiiClassicController driver
Status indicator: Working WiiClassicControllerPro WiiClassicControllerPro driver
Status indicator: Working WiiNunchuck WiiNunchuck driver

Light

Status Driver Description
Status indicator: Working Sensors.Light.Alspt19315C ALS-PT19-315C analog light sensor
Status indicator: Working Sensors.Light.AnalogSolarIntensityGauge Analog solar intensity sensor
Status indicator: Working Sensors.Light.Bh1745 Bh1745 I2C luminance and color light sensor
Status indicator: Working Sensors.Light.Bh1750 Bh1750 I2C luminance and color light sensor
Status indicator: Working Sensors.Light.Max44009 Max44009 I2C ultraviolet and ambient light sensor
Status indicator: Working Sensors.Light.Si1145 SI1145 I2C ultraviolet and ambient light sensor
Status indicator: In-progress Sensors.Light.Tcs3472x Tcs3472x I2C ambient light and color sensor
Status indicator: Working Sensors.Light.Temt6000 Temt6000 analog ambient light sensor
Status indicator: Working Sensors.Light.Tsl2591 Tsl2591 I2C high dynamic range light sensor
Status indicator: Working Sensors.Light.Veml7700 Veml7700 I2C high accuracy ambient light sensor

LoadCell

Status Driver Description
Status indicator: Working Sensors.LoadCell.Hx711 Hx711 digital load cell amplifier
Status indicator: Working Sensors.LoadCell.Nau7802 NAU7802 I2C 24-Bit dual channel analog to digital converter

Moisture

Status Driver Description
Status indicator: Working Sensors.Moisture.Capacitive Analog capacitive soil moisture sensor
Status indicator: Working Sensors.Moisture.Fc28 FC28 analog soil moisture sensor

Motion

Status Driver Description
Status indicator: Working Sensors.Motion.Adxl3xx ADXL3xx Analog and I2C 3-axis accelerometers (ADXL335, ADXL345, ADXL337, ADXL362, ADXL377)
Status indicator: In-progress Sensors.Motion.Apds9960 APDS9960 I2C proximity, light, color and gesture sensor
Status indicator: Working Sensors.Motion.Bno055 Bosch BNO055 9 axis absolute orientation sensor
Status indicator: Working Sensors.Motion.Hcsens0040 HCSENS0040 digital microwave motion sensor
Status indicator: Working Sensors.Motion.Hmc5883 Hmc5883 / Qmc5883 I2C digital compass
Status indicator: Working Sensors.Motion.Mag3110 Freescale MAG3110 I2C 3 axis magnetometer
Status indicator: In-progress Sensors.Motion.Mma7660fc Mma7660fc I2C 3-axis accelerometer
Status indicator: Working Sensors.Motion.Mpu6050 Mpu6050 I2C MEMS 3 axis gyroscope accelerometer motion sensor
Status indicator: Working Sensors.Motion.ParallaxPir Parallax PIR analog motion sensor

Sensors.Motion.Adxl3xx

Status Driver Description
Status indicator: Working Sensors.Motion.Adxl335 ADXL335 analog 3 axis accelerometer motion sensor
Status indicator: Working Sensors.Motion.Adxl337 ADXL337 analog 3 axis accelerometer motion sensor
Status indicator: Working Sensors.Motion.Adxl345 ADXL345 I2C 3 axis accelerometer motion sensor
Status indicator: Working Sensors.Motion.Adxl362 ADXL362 SPI 3 axis accelerometer motion sensor
Status indicator: Working Sensors.Motion.Adxl377 ADXL377 analog 3 axis accelerometer motion sensor

Power

Status Driver Description
Status indicator: Working Sensors.Power.Ina260 INA260 I2C current and power monitor

Radio

Status Driver Description
Status indicator: Working Sensors.Radio.Rfid.IDxxLA IDxxLA Serial radio frequency ID readers
Status indicator: In-progress Sensors.Radio.Rfid.Rc522 Rc522 I2C radio frequency ID reader

Sound

Status Driver Description
Status indicator: Working Sensors.Sound.Ky038 KY-038 analog sound sensor

Temperature

Status Driver Description
Status indicator: In-progress Sensors.Temperature.Ds18B20 DS18B20 1-Wire temperature sensor
Status indicator: Working Sensors.Temperature.Lm75 Lm75 I2C temperature sensor
Status indicator: Working Sensors.Temperature.Mcp9808 MCP9808 I2C temperature sensor
Status indicator: Working Sensors.Temperature.Tmp102 TMP102 I2C temperature sensor

Weather

Status Driver Description
Status indicator: Working Sensors.Weather.SwitchingAnemometer Digital Switching Anemometer wind speed sensor
Status indicator: Working Sensors.Weather.SwitchingRainGauge GPIO rain gauge sensor
Status indicator: Working Sensors.Weather.WindVane Driver for wind vanes that outputs variable voltage, based on the azimuth of the wind.

Servos

Status Driver Description
Status indicator: Working Servos.ServoCore PWM generic servo controller

Transceivers

Status Driver Description
Status indicator: In-progress Transceivers.Nrf24l01 Nrf24l01 SPI radio transceiver
Status indicator: In-progress Transceivers.SX127x SX127x SPI LoRa transceiver

Seeed Studio Grove

Status Driver Description
Status indicator: Working Grove.Audio.Buzzer Grove PWM Buzzer
Status indicator: Working Grove.Audio.Speaker Grove PWM Speaker
Status indicator: Working Grove.Displays.4DigitDisplay Grove GPIO 4 digit display
Status indicator: Working Grove.Displays.LCD Grove I2C LCD display
Status indicator: Working Grove.HID.VibrationMotor Grove GPIO vibration motor
Status indicator: Working Grove.Leds.LEDSocket Grove GPIO led
Status indicator: Working Grove.Relays.Relay Grove Relay driver
Status indicator: Working Grove.RTCs.RTC Grove I2C real time clock (DS1307)
Status indicator: Working Grove.Sensors.Atmospheric.TemperatureHumiditySensor_HighAccuracyMini Grove I2C Temperature and Humidity sensor - High Accuracy and Mini (TH02)
Status indicator: Working Grove.Sensors.Buttons.Button Grove GPIO momentary push button
Status indicator: Working Grove.Sensors.Buttons.LEDButton Grove GPIO momentary push button with LED (blue, red, or yellow)
Status indicator: Working Grove.Sensors.Buttons.Touch Grove GPIO capacitive touch button
Status indicator: Working Grove.Sensors.Environmental.FlameSensor Grove GPIO flame sensor
Status indicator: Working Grove.Sensors.Environmental.WaterSensor Grove Analog water level sensor
Status indicator: Working Grove.Sensors.Hid.ThumbJoystick Grove analog 2-axis ThumbJoystick
Status indicator: Working Grove.Sensors.Light.LightSensor Grove light sensor
Status indicator: Working Grove.Sensors.Light.LineFinder Grove line finder sensor
Status indicator: Working Grove.Sensors.Moisture.MoistureSensor Grove analog moisture sensor
Status indicator: Working Grove.Sensors.Motion.3-AxisDigitalAccelerometer_16g Grove I2C 3-Axis digital accelerometer
Status indicator: Working Grove.Sensors.Motion.3-AxisDigitalAccelerometer1_5g Grove I2C 3-Axis digital accelerometer
Status indicator: Working Grove.Sensors.Motion.3-AxisDigitalCompass Grove I2C 3-axis digital compass
Status indicator: Working Grove.Sensors.Motion.MiniPIRMotionSensor Grove GPIO MiniPIRMotionSensor (Parallax PIR)
Status indicator: Working Grove.Sensors.Motion.PIRMotionSensor Grove GPIO PIRMotionSensor (Parallax PIR)
Status indicator: Working Grove.Sensors.Motion.VibrationSensor Grove GPIO vibration sensor
Status indicator: Working Grove.Sensors.Rotary.RotaryAngleSensor Grove rotary angle sensor
Status indicator: Working Grove.Sensors.Sound.LoudnessSensor Grove loudness sensor
Status indicator: Working Grove.Sensors.Sound.SoundSensor Grove sound sensor
Status indicator: Working Grove.Sensors.Switches.MagneticSwitch Grove GPIO magetic reed switch sensor
Status indicator: Working Grove.Sensors.Switches.SwitchP Grove GPIO single pole dual throw slide switch
Status indicator: Working Grove.Sensors.Switches.Tilt Grove GPIO tilt switch
Status indicator: Working Grove.Sensors.Temperature.TemperatureSensor Grove temperature sensor
Status indicator: Working Grove.Servos.Servo Grove PWM servo motor

FeatherWings

Status Driver Description
Status indicator: Working FeatherWings.CharlieWing AdaFruit CharlieWing Matrix LED FeatherWing
Status indicator: Working FeatherWings.DotstarWing AdaFruit DotstarWing LED FeatherWing
Status indicator: Working FeatherWings.GPSWing AdaFruit GPSWing GPS FeatherWing
Status indicator: Working FeatherWings.KeyboardWing BBQ 10 Keyboard FeatherWing
Status indicator: Working FeatherWings.LedMatrix8x16Wing AdaFruit HT16K33 8x16 Matrix LED FeatherWing
Status indicator: Working FeatherWings.MotorWing AdaFruit MotorWing motor controller FeatherWing
Status indicator: Working FeatherWings.OLED128x32Wing AdaFruit OLED 128x32 monochrome display FeatherWing
Status indicator: Working FeatherWings.ServoWing AdaFruit ServoWing servo controller FeatherWing

mikroBUS

Status Driver Description
Status indicator: Working mikroBUS.Displays.C16x9 MikroElectronika I2C 16x9 Click LED board
Status indicator: Working mikroBUS.Displays.C8x8 MikroElectronika SPI 8x8 Click LED board
Status indicator: Working mikroBUS.Sensors.Atmospheric.CTempHum15 MikroElectronika I2C Temp and Hum 15 temperature and humidity click board
Status indicator: Working mikroBUS.Sensors.Buttons.CButton MikroElectronika PWM GPIO Led Button MikroBus click board
Status indicator: Working mikroBUS.Sensors.Hid.CJoystick MikroElectronika I2C Joystick MikroBus click board

 


These docs are open source. If you find an issue, please file a bug, or send us a pull request. And if you want to contribute, we'd love that too!