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 Notes
Led Simple LED  
PwmLed Pulse-Width-Modulation powered LED  
RgbPwmLed Pulse-Width-Modulation powered RGB LED  
LedBarGraph Generic segmented LED bar  
HBridgeMotor Generic h-bridge motor controller  
Relay Electrically isolated switch  
PushButton Simple push-button Requires external PU/PD resistor
DigitalTachometer Hall Effect Linear Tachometer sensor  
AnalogJoystick A generic analog joystick  
RotaryEncoder A simple rotary encoder  
RotaryEncoderWithButton A rotary encoder that includes a push button Requires external PU/PD resistor
DipSwitch A multi-pole dip switch Requires external PU/PD resistor
SpdtSwitch A simple single-pole, dual-throw (SPDT) switch  
SpstSwitch A simple single-pole, single-throw (SPST) switch Requires external PU/PD resistor
AnalogTemperature Analog temperature sensor (TMP35 / TMP36 / TMP37 / LM35)  
PiezoSpeaker A piezo-electric speaker capable of generating tones via PWM  

External Peripherals

Audio

Status Driver Description Notes
Tea5767 FM radio module  

Display and Graphics Drivers

Status Driver Description Notes
ePaper ePaper/eInk display Library Slow due interpret mode
CharacterDisplay LCD display digital IO only
SevenSegment Seven Segment display  
Max7219 MAX7219 led display driver Library  
Pcd8544 PCD8544 LCD driver (Nokia 5110)  
SerialLCD SparkFun serial LCD backpack driver  
Ssd1306 OLED single color display  
St7565 Single color positive LCD  
TftSpi Thin Film Transistor (TFT) SPI Library  
Tm1637 Segmented LCD display  
GraphicsLibrary General purpose graphics library  
TextDisplayMenu Text Display Menu for LCD displays  

FeatherWings

Status Driver Description Notes
JoyWing A 2-axis joystick and 5 momentary buttons gamepad  

Integrated Circuits (ICs)

Status Driver Description Notes
AT24Cxx AT24Cxx Family of EEPROMs including AT24C32  
HT16K33 HT16K33 for digital output expansion  
MCP23008 MCP23008 for digital output expansion  
x74595 74595 shift register for digital output expansion  

Motors

Status Driver Description Notes
Uln2003 A 2-axis joystick and 5 momentary buttons gamepad  

Real Time Clocks (RTCs)

Status Driver Description Notes
SD1307 Real Time Clock SD1307  
DS323x Real Time Clock modules  

Sensors

Atmospheric (Temperature, Humidity, Barometer, Altitude) Sensors

Status Driver Description Notes
Bme280 I2C/SPI temperature, humidity, and pressure sensor  
Bmp085 I2C pressure sensor  
GroveTH02 Grove TH02 temperature and humidity sensor  
Hih6130 I2C temperature and humidity sensor  
Htu21d I2C temperature and humidity sensor  
MPL115A2 Barometric sensor  
MPL3115A2 Barometric sensor  
Sht31D I2C temperature and humidity sensor  
Si70xx I2C temperature and humidity sensor  

Cameras

Status Driver Description Notes
Vc0706 A VGA CMOS camera sensor  
ArducamMini A high definition 2MP SPI camera  

Distance Sensors

Status Driver Description Notes
HCSR04 Sonic distance sensor  
HYSRF05 Sonic distance sensor  
SFSR02 Sonic distance sensor  

GPS Sensors & Libraries

Status Driver Description Notes
NMEA Generic GPS sentence decoder library  

Light Sensors

Status Driver Description Notes
ALSPT19315C Analog light sensor  
Si1145 I2C infrared, ultraviolet, and ambient light sensor  
Tsl2561 I2C infrared-compensated light sensor  

Soil Moisture Sensors

Status Driver Description Notes
Capacitive Capacitive Soil Moisture Sensor  
Fc28 Soil Moisture Sensor  

Motion and Orientation Sensors

Status Driver Description Notes
Adxl335 Analog triple axis, +/-3g accelerometer  
Adxl337 Analog triple axis, +/-3g accelerometer  
Adxl345 I2C triple axis accelerometer, +/-16g accelerometer  
Adxl362 SPI low power, 3-axis MEMS accelerometer  
Adxl377 Analog triple axis, +/-200g accelerometer  
Apds9960 I2C 9-Axis absolute orientation sensor  
Bno055 I2C 9-Axis absolute orientation sensor  
Mag3110 I2C three axis magnetometer  
Mpu6050 I2C 6-Axis absolute orientation sensor  
ParallaxPir Parallax PIR Rev B digital motion detector  

Temperature Sensors

Status Driver Description Notes
Ds18B20 Temperature sensor 1-Wire bus
Tmp102 I2C temperature sensor  

Servos

Status Driver Description Notes
Servo Generic servo library  

 


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!