Signal Input/Output

Official libraries

  • Arduino_APA102: Control rgb LEDs APA102
  • ArduinoMotorCarrier: Allows use of the Arduino Motor Carrier
  • Audio: Allows playing audio files from an SD card. For Arduino Due only.
  • AudioZero: Allows playing audio files from an SD card. For Arduino Zero, MKRZero and MKR1000 only.
  • MKRMotorCarrier: Allows to use the MKR Motor Carrier

Contributed by the community

  • 1euroFilter: Algorithm to filter noisy signals for high precision and responsiveness.
  • A1301: Arduino library for A1301 et al magnetometer.
  • AbleButtons: The Arduino Button Library Extension (ABLE) is a simple, lightweight button library to capture input from buttons connected to the Arduino.
  • AceButton: An adjustable, compact, event-driven button library that handles debouncing and dispatches events to a user-defined event handler.
  • AceSegment: Library for rendering seven segment LED modules using the TM1637, TM1638, MAX7219, HT16K33, or 74HC595 controller chips.
  • AceSegmentWriter: Write decimal numbers, hex numbers, temperature, clock digits, characters, and strings to the seven segment LED modules supported by the AceSegment library.
  • AcksenButton: Flexible button library supporting debounce, long presses, repeated presses with acceleration.
  • AcksenPump: Brewing-focused pump control I/O library for Arduino.
  • ACS712: ACS712 library for Arduino.
  • AD5144A: Arduino Library for AD5144A 4 Channel digital potentiometer.
  • ad5243: Arduino library to control the AD5243 family of digital potentiometers / rheostats
  • AD5245: Arduino Library for AD5245 digital potentiometer.
  • AD5246: Arduino Library for AD5246, I2C 128 step rheostat.
  • AD5248: Library for I2C digital potentiometer AD5243 and rheostat AD5248
  • AD524X: Arduino Library for AD524X
  • AD5263: Library to control digital potentiometer AD5263 and compatibles.
  • AD5680: Arduino library for AD5680 Digital Analog Convertor (18 bit).
  • AD568X: Arduino library for AD568X series Digital Analog Convertor.
  • AD56X8: Arduino library for AD56X8, SPI 8 channel Digital Analog Convertor.
  • AD57X4R: Provides an SPI based interface to the AD5724R, AD5734R, and the AD5754R Quad 12-/14-/16-Bit Unipolar/Bipolar Voltage Output DACs.
  • ad7124: Arduino library for AD7124 ADC
  • AD7390 DAC library: Arduino library for the AD7390 digital to analog converter (DAC)
  • AD9833: Arduino library for AD9833 function generator. Supports hardware SPI and software SPI.
  • AD985X: Arduino library for AD9850 and AD9851 function generators. Supports both hardware SPI as software SPI.
  • Adafruit ADS1X15: Arduino library for ADS1015/1115 ADCs.
  • Adafruit AM radio library: Arduino library for AM radio on samd21 microcontroller
  • Adafruit AW9523: Arduino library for the AW9523 GPIO expanders in the Adafruit shop
  • Adafruit BD3491FS: Arduino library for the BD3491FS Sound Processor in the Adafruit shop
  • Adafruit BusIO: This is a library for abstracting away I2C and SPI interfacing
  • Adafruit composite video Library: Arduino library for composite video on samd21 microcontroller
  • Adafruit Keypad: Diode-multiplexed keypad support for Arduino
  • Adafruit MCP23008 library: Arduino Library for the MCP23008 (and '9) I2C I/O expander
  • Adafruit MCP23017 Arduino Library: Arduino Library for MCP23XXX I2C and SPI GPIO port expanders
  • Adafruit MCP3008: MCP3008 8-Channel 10-Bit ADC
  • Adafruit MCP4725: MCP4725 12-bit I2C DAC
  • Adafruit TCA8418: Arduino library for the TCA8418 Matrix Keypad Drivers in the Adafruit shop
  • Adafruit Zero DMA Library: DMA helper/wrapped for ATSAMD21 such as Arduino Zero & Feather M0
  • Adafruit Zero FFT Library: FFT library for Arduino Zero / Adafruit Feather M0 (SAMD21 processor).
  • Adafruit Zero I2S Library: I2S audio playback library for the Arduino Zero / Adafruit M0 (SAMD21 processor) and M4 (SAMD51) boards
  • Adafruit Zero PDM Library: PDM Microphone Input library for Arduino Zero / Adafruit Feather M0 (SAMD21 processor).
  • AdagioPro: Controls Adagio RGB Poollights over RS-485
  • Adaino: An Analog Data Acquisition library for Arduino and IoT.
  • ADC_SAmpler: Enable analog sequencer with timer on SAM3x DUE
  • ADC_SEQR: Enable analog sequencer on SAM3x DUE
  • ADCButtons: A simple ADC 16 Buttons and 4x4 keypad library.
  • ADG725: Arduino library for ADG725 - 16 to 1 channel (2x) multiplexer.
  • ADG726: Arduino library for ADG726 - 16 to 1 channel (2x) multiplexer.
  • ADG731: Arduino library for ADG731 - 32 to 1 channel multiplexer.
  • ADG732: Arduino library for ADG732 - 32 to 1 channel multiplexer.
  • Adler: Arduino Library for calculating Adler-32 and Adler-16 checksum.
  • ADS1110: ADS1110 Driver (16-BIT ADC with Onboard Reference, PGA and I2C Interface)
  • ADS1115_WE: A library for the ADS1115 and the ADS1015 ADC
  • ADS1118 library: Arduino library for TI ADS1118 (16-Bit Analog-to-Digital Converter with Internal Reference and Temperature Sensor).
  • ADS1219: ADS1219 24 bit ADC
  • ADS1220_WE: A library for the ADS1220 ADC
  • ADS7828: ADS7828 is a 8-channel 12-bit Analog to Digital Converter (ADC) with an I2C interface.
  • AdvKeyPad: Arduino library for a KeyPad connected to a PCF8574.
  • AmigaMouseJoyEmu: Library to emulate Amiga Mouse or joystick
  • Analog-Digital Multiplexers: Arduino library for controlling analog/digital multiplexers (A/D mux).
  • analogComp: Set and manage the integrated analog comparator
  • AnalogIO-Arduino: This library allows to read a value from an analog input like an potentiometer, or from a digital input like an encoder. Moreover, allows to write it on digital output, exactly on PWM pin.
  • AnalogKeypad: Arduino Library for (Robotdyn) 4x4 and 4x3 AnalogKeypad
  • AnalogMultiButton: An Arduino library to capture button presses on multiple buttons through a single analog pin.
  • AnalogPin: Arduino Library for AnalogPin
  • AnalogReadAsync: Asynchronous version of analogRead().
  • AnalogSelector: Read a potentiometer or other analog input as a multi-selector switch.
  • AnalogTouch: AnalogTouch library for Arduino
  • AnalogWrite_ESP32: Function analogWrite and Servo support for ESP32
  • AntiKeyRepetition: Prevents keys(buttons) from being triggered continuously.
  • Anyleaf: Driver for the AnyLeaf pH, EC, and RTD sensors.
  • ArduinoLearningKitStarter: Library for the ArduinoLearningKitStarter (ALKS) board by RoboticsBrno with definition of pins and initialization of peripheries.
  • ArduMax AD5241 Driver: Driver for Analog Devices AD5241/2 and AD5280/2 digital potentiometers.
  • ArduMax MCP41xxx Driver: Driver for Microchip MCP41xxx/42xxx digital potentiometers and MCP43xxx/44xxx digital rheostats.
  • ArduPID: PID library for Arduinos with greater accuracy than the legacy Arduino PID library
  • AsyncAnalog: Arduino Library for async reading of an analog pin
  • AsyncButton: A library that implements async buttons.
  • asyncino: asynchronous library for the Arduino family
  • AttachInterruptEx: AttachInterruptEx extends the standard AttachInterrupt function to allow for a variety of callable objects as timer callbacks.
  • Audio - Adafruit Fork: Adafruit SAMD51 port of Teensy Audio Library - Flexible, High Quality Audio Processing
  • AudioShieldDTMF: MCP4921 Audio Shield DTMF Example
  • AutoAnalogAudio: Automated analog reads and analog output (streaming) using Arduino DAC(or PWM), ADC, DMA and Timers
  • AutoPID: Automatic PID controller
  • avdweb_AnalogReadFast: Fast analogRead 10/12 bit ADC for the Arduino Zero and Uno
  • AxisJoystick: The Library implements a set of methods for working with an axis joystick controller.
  • Bas.Button: A simple button class that calls a callback function when pressed.
  • BasicColorLedControl: This is a tiny and clearly arranged Arduino library for the basic RGB LED functionalities.
  • BasicEncoder: BasicEncoder counts pulses from one or more simple rotary encoder control knobs.
  • Bits and Droids flight sim library: Use serial communication to control flight sim.
  • BlinkCode Library: Asynchronous BlinkCode library for indicating flash fault codes.
  • Blinkenlight: Supercharge your status LEDs / beepers
  • Blues Notecard Environment Variable Manager: A utility class to support usage and management of Notecard-based environment variables.
  • BM12O2021-A: Arduino library for 9-bit UART access to the BM12O2021-A/BMD12K202 that NMOS Driver Module
  • BMH23M001: Arduino library for I2C access to the BMH23M001 that 24-Bit ADC Module.
  • BMH23M002: Arduino library for I2C or SPI access to the BMH23M002 that 24-Bit ADC Module
  • BMK52M134: Arduino library for I2C access to the BMK52M134 that 4-KEY Capacitive Touch Module
  • Bolder Flight Systems Excitation: Library of excitation waveforms.
  • BooleanButton: library for monitoring the state, transitions, and timing of a boolean variable, creating a virtual button that emulates a switch.
  • Bounce2: Debouncing library for Arduino and Wiring.
  • btnapi: Library for conecting buttons
  • Bugtton: Fast button debounce library for ATmega328P. Uses registers instead of digitalRead.
  • Button: Button is a tiny library to make reading buttons very simple.
  • Button-Arduino: This library allows to manage a button.
  • Button_SL: Button query
  • ButtonClickCheck: This is a library for checking the state of a button connected to an Arduino. [Korean]아두이노에 연결된 버튼의 상태를 확인하기 위한 라이브러리입니다.
  • ButtonControl: Short clicks, long clicks and double clicks. Click count and button press time.
  • ButtonGestures: Use one button for up to 6 different functions using gestures!
  • ButtonKing: Arduino libary for improving the usage of a singe input button.
  • ButtonSuite: A library for using a simple mechanical push (momentary) button as a momentary button, a latching button, a counter, an enumerator, and more.
  • CaptureTimer: Arduino Input Capture Library
  • CF Rotary Encoder: A library for Arduino that helps interface for Rotary Encoders.
  • CFPushButton: A library for Arduino that helps interface for Push Buttons.
  • ClickButton: Effortless handle botton clicks.
  • Computherm RF Library: Arduino library for Computherm Q8RF thermostat.
  • Controlino: A library for using direct or multiplexed input controls easily.
  • Controller Utilities: Contains a number of useful tools for building custom game controllers.
  • controlVoltage: A simple library for generating CV signals to control modular synthesizers.
  • CowPi: A library for the Cow Pi educational hardware kit.
  • CrazyHC595: Library for HC595
  • CurrentTransformerWithCallbacks: Coil, Current Transformer (CT) based AC current measurements using fast ADC sampling of waveform
  • CuteBuzzerSounds: Simple and Cute Robot Sounds
  • DAC7574: DAC7574 is a 4-channel 12-bit Digital to Analog Converter (DAC) with an I2C interface.
  • DAC7611: A library that makes interfacing the DAC7611p a breeze.
  • DAC8571: Arduino library for DAC8571 16 bit DAC.
  • DacESP32: Arduino library for using the ESP32 DAC output channels fast and easy.
  • DailyStruggleButton: DailyStruggleButton is yet another Arduino library to debounce button (push tactile switch) and manage its events.
  • DaisyDuino: Arduino library for the Daisy audio platform.
  • DDS: Generate sinusoids on AVR-based Arduinos at varying frequencies. Requires an analog low-pass filter.
  • debounce: A library for button debouncing.
  • DebounceEvent: Simple push button and toggle switch debounce library that reports number of clicks and length
  • DFRobot_ESP_EC_BY_GREENPONIK: Update from DFROBOT library for ESP32 compatibility
  • DFRobot_ESP_PH_WITH_ADC_BY_GREENPONIK: Update from DFROBOT library for ESP32+ADC compatibility
  • DFRobot_GP8XXX: GP8XXX series driver library.
  • DFRobot_SpeechSynthesis: Synthesize the sound you need, support Chinese, English.
  • DFRobot_SU03T: Speech input and output(SKU: DFR0987)
  • digitalPinFast: More speed for digitalPin operations.
  • DigitalSignalsArduino: Digital Signal library for Arduino platform
  • Dimmer class for ATmega32U4: Easy use of 10/12 bit PWM outputs on ATmega32U4 for dimmer applications.
  • Dimmer class for SAMD21: Easy use of PWM outputs on SAMD21 for dimmer applications.
  • directADC: Library for advanced ADC control (AVR)
  • DMM: DMM (digital multimeter) library for Arduino.
  • DmtrPots: Potentiometer library for Arduino / Teensy.
  • DUE_ADC_Oversampler: 16 Bits ADC oversampler with PDC on SAM3x DUE
  • DUE_schmitt: Enable SAM3x DUE IO Schmitt trigguer
  • DueAdcFast: Arduino Due ADC analogRead Fast 1Mhz with measures collect and also differential.
  • EasyButton: Arduino library for debouncing momentary contact switches, detect press, release, long press and sequences with event definitions and callbacks.
  • EasyButtonAtInt01: Small and easy to use Arduino library for using push buttons at any PinChangeInterrupt pin. Automatic debouncing, no delay required. Functions for long and double press detection are included.
  • EasyBuzzer: EasyBuzzer Library
  • EasyPin: An easy and simple way for manage Arduino pins.
  • eBtn: A library to handle Buttons based on events.
  • EButton: A compact, simple-to-use, reliable and powerful event-driven button library, with proper debouncing and fine grained event structure.
  • Embedded Type-C PID: PID controller (Type-C) with a flexible API and errors handling.
  • EmotiBit ADS1X15: Arduino library for ADS1015/1115 ADCs.
  • EnableInterrupt: Assign an interrupt to any supported pin on all Arduinos, plus ATtiny 84/85 and ATmega 644/1284.
  • Encoder: Counts quadrature pulses from rotary & linear position encoders.
  • EncoderButton: Lossless event based rotary encoder & button library
  • EnergyMeter: Arduino library to get data from energy meters in order to monitor them.
  • ESensors: Manage recordings from multiple environmental sensors.
  • ESP32 AnalogWrite: ESP32 Polyfill for analogWrite functions
  • ESP32 ESP32S2 AnalogWrite: ESP32 PWM, Servo, Easing and Tone.
  • ESP32AnalogRead: Load the ESP32 ADC calibration data and use it to read from the ADC Supports the original, S2 and S3.
  • ESP32RotaryEncoder: Use a rotary encoder with your ESP32 easily!
  • ESP8266Audio: Audio file and I2S sound playing routines for ESP8266, ESP32, and Raspberry Pi Pico RP2040
  • ESP8266SAM_ES: Speech synthesis in spanish on the ESP8266, ESP32, and RP2040
  • ESPAsyncButton: Event-driven asynchronous button toolkit for ESP32
  • ESPiLight: pilight 433.92 MHz protocols library for Arduino
  • EspSoftwareSerial: Implementation of the Arduino software serial for ESP8266/ESP32.
  • EventAnalog: Event based library for analog inputs.
  • EventButton: Event based button library
  • EventJoystick: Event based library for analog joysticks.
  • EventOS: Library for event-driven embedded devices programming (hardware interruputs for all pins).
  • Eventuino: C++ Event Framework for Arduino
  • ez_SIPO8_lib: Support for multiple serial-in/paralle-out (SIPO) shift registers.
  • ez_switch_lib: Support for single and multiple switches for Arduino and ESP 32 microcontrollers.
  • ezAnalogKeypad: Analog Keypad and Analog Buttons library for Arduino, ESP32
  • ezButton: Button library for Arduino
  • ezBuzzer: Buzzer library for Arduino
  • ezLED: LED library for Arduino
  • ezOutput: Output library for Arduino
  • FadeLed: Makes fading LEDs easy
  • FastGPIO: Faster general-purpose I/O
  • fastIO: Fast pin control for ATmega328.
  • FastPID: A PID controlled implemented using fixed-point arithmetic.
  • FastShiftIn: Arduino library for (AVR) optimized shiftIn - e.g. for 74HC165
  • FastShiftInOut: Arduino library for (AVR) optimized shiftInOut (simultaneously)
  • FastShiftOut: Arduino library for (AVR) optimized shiftOut - e.g. 74HC595
  • FireplaceMLX: MobaLedLib Extension adds simulation of single fireplace
  • Flanco: Flanco Library (Spanish version)
  • Fletcher: "Arduino Library for calculating Fletcher's checksum.
  • FlightSimOutputs: Library for easy handling of digital outputs on Midwest737Simulations.com Multi Output card.
  • FlightSimSwitches: Library for easy handling of Switches and Buttons in X-Plane with PJRC's Teensy
  • Formulinha: Formulinha Robot Library
  • FreqCount: FreqCount measures the frequency of a signal by counting the number of pulses during a fixed time.
  • FreqMeasure: FreqMeasure measures the elapsed time during each cycle of an input frequency.
  • FrequencyDetector: Measure the main frequency of analog captured signal connected to an Arduino and check for noise and mute.<br/>
  • FTDebouncer: An efficient, low footprint, fast pin debouncing library for Arduino
  • GAMMA: Arduino Library for the GAMMA function
  • gButton: Provides an easy way to work with buttons and other momentary contact switches.
  • Gemelon Pushbutton: Arduino library to debounce a pushbutton.
  • GFButton: Library to manage buttons
  • gpiobj: Manage and access GPIOs as objects.
  • GroveDriverPack: GroveDriverPack
  • GyverIO: Fast GPIO operation functions for AVR, ESP8266, ESP32
  • GyverPWM: Library for advanced PWM settings of AVR
  • HalfStepper: <br/>An Arduino library to enable half-stepping and single/dual phasing for step motors.
  • HT16K33: Arduino Library for HT16K33 I2C 4x7segment display
  • HV518: Arduino library to control Microchip HV518
  • HX711: Arduino library for HX711 load cell amplifier
  • HX711_MP: Arduino library for HX711 load cell amplifier.
  • Hysteresis: Hysteresis library
  • HzMeter_asukiaaa: It measures Hz from pulse input.
  • i2c_adc_ads7828: Arduino library for the Texas Instruments ADS7828 12-bit, 8-channel I2C A/D converter.
  • I2C_Functions: This is a helper library to abstract away I2C transactions and registers also this tool scans the master I2C bus and reports connected devices.
  • I2cDiscreteIoExpander: Arduino library for the Texas Instruments PCF8575C 16-bit I2C I/O expander.
  • I2CKeyPad: Arduino library for a KeyPad connected to a PCF8574.
  • I2CKeyPad8x8: Arduino library for a KeyPad connected to a PCF8575.
  • iBit_Arduino: A control library for iBit Board.
  • iKB1_Arduino: A control library for IKB-1 Extension I/O Board.
  • Indio: Library for the Industruino IND.I/O product
  • Infrared: An object oriented library for sending, receiving, generating, and decoding IR signals on the Arduino.
  • InfraredMLX: Extension adds infrared features to control MobaLedLib using an infrared remote control
  • InputDebounce: Simple polling input debounce Arduino library.
  • IoT_Modules-Buttons: Button library for easier use of buttons in projects.
  • iotec_MAX7319: A library for using the MAX7319 from MAXIM Integrated.
  • IRLremote: Lightweight Infrared library for Arduino
  • IRMP: Receive and send infrared signals.<br/>
  • IRRemoteControl: A lightweight library for send/receive infra-red signal.
  • IRsmallDecoder: Allows the reception and decoding of infrared signals from remote controls.
  • Itty Bitty: <br/>With the fastest possible Arduino-compatible GPIO and register manipulation...<br/>It's the biggest of hits when you need to bang bits!
  • JC_Button: Arduino library to debounce button switches, detect presses, releases, and long presses.
  • jm_CPPM: A CPPM Library for Arduino.
  • K1200: Library for the Velleman K1200 watch.
  • KeyDetector: A library for detecting state change on analog and digital pins.
  • KidMotorV4-Arduino: Drive DC motor / Servo motor, I/O expander with KidMotor V4
  • KLEncoder: Library for get data from Encoder Module.
  • KMP_MCP23S08: Unified driver for the the MCP23S08 SPI expander
  • Krypton: A library that makes use of Krypton ion thruster controller.
  • L298 Motor Driver: L298 Motor Driver is a library for Arduino to handle motor control using an H-bridge.
  • LED Dithering: Adjustable LED brightness on every IO pin with software-controlled blinking
  • LedBlinky: Allows an Arduino/Genuino board to control the builtin led and external leds.
  • LEDDriver: PWM LED Driver with ability to brighten and dimm fluently
  • LedLib: Controla LEDs de forma sencilla.
  • Leeman Geophysical Learning Shield: Tools for the Leeman Geophysical LLC Learning Shield.
  • LettersKeypad: A simple 4x3 phonetic alphabet keypad library.
  • Lifely Agrumino Lemon: Library for Agrumino Lemon Device
  • LionBit-STEM-library: This is a library for LionBit
  • LitSwitch: A special library for an LED/momentary switch hardware combination.<br />
  • Lixie: Allows for easy writing to Lixie Digit displays!
  • Lixie II: Library for controlling Lixie II displays!
  • LogansGreatButton: An all in one, easy to use, powerful, self contained button library so you can focus on your other code! Includes Debouncing, Avoids Delays, multiclicks and allows you to decide what happens at the beginning and end of Short, Long, Hold and Shifts so you can create a intuative and responsive experience.
  • LogicAnalyzer: A SUMP protocol compatible logic analyzer firmware
  • LoveButton: Touch Sensitive Love Button
  • Low level quick digital IO: 高性能引脚读写。More efficient digital IO than builtin functions
  • LTC1392 library: Arduino library for the LTC1392 Micropower Temperature, Power Supply and Differential Voltage Monitor
  • M10ADC: ADC library for PulseRain M10 board.
  • M10CODEC: CODEC library for the Si3000 CODEC on PulseRain M10 board.
  • M10DTMF: DTMF library for PulseRain M10 board.
  • M10ESP8266: library for ESP8266 shield.
  • M10Examples: Examples for PulseRain M10 board.
  • M10I2C: I2C library for PulseRain M10 board.
  • M10JTAG: JTAG UART library for PulseRain M10 board.
  • M10LCD: Library for LCD Interface
  • M10PS2: Library for PS2 Interface
  • M10PWM: PWM library for PulseRain M10 board.
  • M10SD: microSD library for PulseRain M10 board.
  • M10SerialAUX: Auxiliary Serial port library for PulseRain M10 board.
  • M10SevenSeg: Library for Seven Segment Display
  • M10SRAM: SRAM (Microchip 23LC1024) library for PulseRain M10 board.
  • M5ANGLE8: Arduino library for M5 8ANGLE 8x12 bit potentiometers.
  • M5ROTATE8: Arduino library for M5 8ROTATE 8x rotary encoders
  • MacroDebugger: Debug-printing done elegantly, and cleanly!
  • MagicPot: Arduino library for reading values easily from potentiometers.
  • Mapf: extended arduino map() function
  • MAX14661: Arduino library for MAX14661 16 channel I2C multiplexer
  • MAX471_RT: Arduino library for MAX471 current sensor.
  • MAX520: Arduino library for MAX520 and MAX521 4/8 channel 8 bit DAC.
  • MAX6816: Single Switch Debouncer Library for Arduino.
  • MCP23008: Arduino library for I2C MCP23008 8 channel port expander 8 IO-lines
  • MCP23008_I2C: Library for MCP23008 I2C based GPIO expanders for Arduino platform supported boards
  • MCP23017: MCP23017 I2C Port expander library.
  • MCP23017 Port Expander: Arduino library for MCP23017 I2C I/O port expander.
  • MCP23017 Soldered Library: MCP23017 board library for Arduino
  • MCP23017_I2C: Library for MCP23017 I2C based GPIO expanders for Arduino platform supported boards
  • MCP23017_RT: Arduino library for I2C MCP23017 16 channel port expander 16 IO-lines
  • MCP23017_WE: A library for the MCP23017, MCP23S17, MCP23018 and MCP23S18 port expanders.
  • MCP23S08: Arduino library for SPI MCP23S08 8 channel port expander 8 IO-lines
  • MCP23S17: Arduino library for SPI MCP23S17 16 channel port expander 16 IO-lines
  • MCP3202: Used to interface the 12 bit ADC MCP3202 by Microchip.
  • MCP3221: MCP3221 Driver (12-bit ADC with hardware I2C Interface)
  • MCP3304: A simple library for working with the MCP3304 in a bit bang version. Useful for Raspberry Pico
  • MCP3X21: MCP3021 & MCP3221 Arduino library
  • MCP4251: MCP4251 Digital Pot Control
  • MCP48xx DAC Library: A library to control the MCP48xx family of SPI digital to analog converters (DACs).
  • MCP_23017: IO expander library for MCP23017
  • MCP_3208: ADC library for MCP3208
  • MD_AButton: Library for multiple switches on one analog input.
  • MD_KeySwitch: Library for digital switches.
  • MD_SN76489: Library for SN76489 sound generator.
  • MD_UISwitch: Library for Universal User Interface Switches.
  • MemoryDumper: Dump Arduino memory
  • MicroMidiDevices: Arduino (very) Simple Library to manage various input devices as MIDI controllers
  • MicroMidiEnc: Arduino (very) Simple Library to manage Rotary Encoders as MIDI messages over USB
  • MicroMidiPot: Arduino (very) Simple Library to manage potentiometer (smoothed) as MIDI messages over USB
  • MicroTone: low-flash high-performance pulse train library with attiny13
  • MIKROE_4_20mA_RT_Click: A library for the 4-20 mA R & T Click Boards of MIKROE (MIKROE-1387 & MIKROE-1296).
  • miniDAC: Library for Arduino miniDAC module by Tamojit Saha and Sandeepan Sengupta.
  • MINMAX: MINMAX library for Arduino.
  • MjGrove: MjGrove
  • MM-S50MV: MMS50MV(ToF sensor) Driver
  • MobaLedLib: <h3>Arduino library for driving up to 768 (49152 ESP32) LEDs, signals, sound modules or other actuators via one signal line on a model railway</h3>
  • ModernPIDControlSS: Modern PID Control Architecture and CPLMFC Tuning
  • MorePins: Makes use of shift registers to create more pins, as many as needed, using only 3 Arduino Pins
  • MorseDuino: Arduino library for generation morse code and displaying it on LEDs
  • MOVI Voice Dialog Shield: This is the Arduino library for the MOVI(tm) Voice Dialog Shield.
  • MovingAverage: Arduino Library for averaging fixed-point numbers
  • MovingAverageAngle: Arduino & Mbed Library for averaging angles 0-360°
  • MovingAverageFloat: Arduino Library for averaging float numbers
  • MovingAverager: A basic moving average filter.
  • Mozzi: Sound synthesis library for Arduino
  • mpbToSwitch: An Arduino-Esp32 library that implements all kind of switches out of simple push buttons (Momentary Buttons)
  • MPC_ruih: Linear MPC controller
  • MS5837: Arduino library for MS5837 temperature and pressure sensor.
  • MSGEQ7: Library for Musicvisualization with MSGEQ7
  • MultiButton: Reliable detection of single, double and long clicks.
  • MusicBuzzer: A Collection of musics for buzzer
  • MusicWithoutDelay: A library to play multiple musical notes at the same time without Delay.
  • MyButton: Making buttons easy and fun to work with (normal, and counting buttons)
  • Nintendo: Connect all your favourite Nintendo Controllers to your Arduino.
  • Notched Shaft Encoder: Monitor the postion and clickable button status from a Notched Shaft Encoder
  • NPush: NPush library for Push buttons.
  • NRotary: NRotary library for using rotary encoders.
  • NumberSpeaker: Arduino library for speaking numbers.
  • ObjectButton: An Arduino library for detecting button actions.
  • OneButton: Arduino library for improving the usage of a singe input button.
  • OOKwiz: Receiving/analysing/sending on-off-keying signals for radio remote controls 📱, weather stations 🌦️ and more.
  • OptoDebounce: 100Hz opto debouncer.
  • P1AM: P1AM CPU library
  • PBEnhancer: An Arduino library for easily controlling various events of switches and buttons.
  • PCA9505_06 Library: Library for the 40bit PCA9505/06 I2C Port Expander
  • PCA9536: PCA9536 Driver (4-Channel GPIO I2C Expander)
  • PCA9549: Arduino Library for PCA9549 I2C octal bus switch.
  • PCA9551: Arduino library for PCA9551 I2C LED driver 8 channel
  • PCA9552: Arduino library for PCA9552 I2C LED driver 16 channel
  • PCA9553: Arduino library for PCA9553 I2C LED driver 4 channel
  • PCA9634: Arduino library for PCA9634 I2C LED driver 8 channel
  • PCA9634 library: A library for the PCA9634 8-bit Fm+ I2C-bus LED driver.
  • PCA9635: Arduino library for PCA9635 I2C LED driver, 16 channel PWM, 8 bit.
  • PCA9685_LED_DRIVER: GPIO I2C driver for PCA9685
  • PCA9685_RT: Arduino library for PCA9685 I2C LED driver, 16 channel PWM, 12 bit.
  • PCA9698: GPIO I2C driver for PCA9698
  • PCF8574: Arduino library for PCF8574 - 8 channel I2C IO expander
  • PCF8574 library: Most starred PCF8574 library for Arduino (standard and SAMD), Raspberry Pi Pico and rp2040 boards, ESP8266, smt32 and esp32
  • PCF8575: Arduino library for PCF8575 - 16 channel I2C IO expander
  • PCF8575 library: PCF8575, library for Arduino, Raspberry Pi Pico and rp2040 boards, esp32, SMT32 and ESP8266.
  • PCF8575-lib: Easy to use Arduino library for PCF8575 I2C expander.
  • PCF8591: PCF8591 library for Arduino. Supports multiple I2C WireN bus.
  • PCF8591 library: PCF8591, library for Arduino, Raspberry Pi Pico and rp2040 boards, esp32, SMT32 and ESP8266.
  • PciManager: This library helps you manage Pin Change Interrupts: subscribe and receive change events.
  • PCM: Playback of short audio samples.
  • Pico-DMX: DMX protocol library for the RaspberryPi Pico
  • PicoAnalogCorrection: Arduino library to calibrate and improve ADC measurements with the Raspberry Pi Pico including the built-in temp sensor.
  • PID: PID controller
  • PID_Timed: PID controller with non-uniform time sampling
  • PID_v1_bc: PID controller based on PID_v1 with back-calculation anti-windup
  • PID_v2: PID controller
  • Pin: An easy to use Arduino library for fast and simultaneous operations on Arduino I/O pins.
  • PinButtonEvents: Library for handling button events with various conditions and debouncing support.
  • PinChangeInterrupt: A simple & compact PinChangeInterrupt library for Arduino.
  • PinExtender Library: Library for Pin Extention
  • PIO8255: Arduino library for using intel 8255 CMOSes.
  • PIR: PIR library for Arduino.
  • Plaquette: An object-oriented library for creative physical computing.
  • Plex64: A library for the Plex64 analog input multiplexer shield.
  • Polymorphic Buttons: A simple library to make multifunction buttons.
  • PPMEncoder: A library to encode/generate a PPM signal for controlling RC Cars, etc...
  • pressure: Arduino library for pressure conversion
  • PS2Keyboard: Use a PS/2 Keyboard for input
  • PT2258: A library to control the 6-Channel Electronic Volume Controller PT2258
  • pulseAny: Arduino library to pulse any digital port in any frequency
  • PulseDivider: Arduino library to divide a pulse stream with a float factor.
  • PulsePattern: Library to generate repeating pulse patterns. (AVR only)
  • PulsePosition: Send and receive multiple high resolution PPM encoded signal streams.
  • Pulser: A lightweight library to send sequences of pulses on output pins.
  • PulseRainUARTConsole: Arduino Library for UART Console
  • Pushbutton: Pushbutton library for Arduino
  • PushButton Event Modelling Library: PushButton events modelling library
  • PushButtonTaps: Read Push Button Debounced as Single Tap, Double Tap or Long Press without blocking program.
  • QDEC: High-efficiency, state-machine based quadrature decoder.
  • QuickPID: A fast PID controller with multiple options. Various Integral anti-windup, Proportional and Derivative control modes.
  • r89m Buttons: A library that makes working with buttons simple.
  • r89m CapacitiveButton: Handle CapacitiveButtons, powered by the CapacitiveSensor library
  • r89m MPR121Button: Handle MPR121Buttons, powered by Adafruit's MPR121 library
  • r89m PushButton: Handle PushButtons, debounced using the Bounce2 library.
  • RadioengeLoraWAN: Implementation of RadioengeLoraWAN AT-COMMANDS..
  • RBD_Button: Read and debounce buttons and switches.
  • RCLSwitch: Compact version of RC Switch
  • ReadFilter: An arduino library with functions for filtering noisy analogRead signals
  • RepeatButton: RepeatButton Library for Arduino.
  • ResponsiveAnalogRead: Arduino library for eliminating noise in analogRead inputs without decreasing responsiveness
  • RGB: This library for Arduino allows you to control RGB led.
  • RGB_LED: A library that manage 4 legs rgb leds colour and light duration.
  • Romans Audio FastDigitalPin Library: Arduino lib for fast digital reads and writes.
  • RotaryEncoder: Use a rotary encoder with quadrature pulses as an input device.
  • RS485: RS485 library for Arduino.
  • SAMD21 Audio Player: Simple audio player for SAMD21-based Arduinos
  • SAMD21 turbo PWM: Fast-PWM library for SAMD21G-based Arduinos
  • SchmittTrigger: A lightweight schmitt trigger for debouncing and filtering.
  • SdCardServer: Arduino library to serve the contents of an SD card using the AsyncWebServer.
  • Seeed Arduino Audio: Flexible, High Quality Audio Processing Library
  • Sensor: A simple Arduino Sensor/map wrapper
  • SensorToButton: An algorithm to convert analog Data into a Button.<br />
  • SensorWLED: Provides methods to retrieve instant and peak values from the ADC input. The Arduino library SensorWLED splits the input from a varying analog signal from the ADC into components, i.e., provides the capability of a sample-and-hold circuit.
  • SeqButton: Sequential Button Arduino Library
  • Sequent Home Automation HAT: A easy to use Arduino Library for Home Automation HAT
  • SerialBuffSender: sending buffer via serial
  • ServoInput: Read positional data from servo motors and drivers.
  • SevenSegmentPanel: Driver for panel on 7-segment indicators
  • ShiftInSlow: Arduino library for shiftIn with build-in delay - e.g. for 74HC165
  • ShiftOutSlow: Arduino library for shiftOut with build-in delay - e.g. for 74HC165
  • ShiftRegister-PWM-Library: Makes shift register pins PWM capable.
  • SIKTEC_MDSwitch: Library to easily use Multi Direction Switches.
  • SIKTEC_SPI: A Lightweight SPI wrapper for HW SPI and Software SPI
  • Sim Racing Library: Interface with sim racing peripherals including pedals, gear shifters, and handbrakes.
  • Simple Repository IO: A simple IO controller
  • SimpleExpressions: Make you Robots cute and noisy
  • SimpleLed: Arduino library for control LED.
  • slight_ButtonInput: Event based button input.
  • slight_RotaryEncoder: Event based rotary ecnoder input.
  • SM_16DIGIN: A easy to use Arduino Library for Sixteen LV Digital Inputs HAT
  • SM_4REL4IN: A easy to use Arduino Library for Four Relays four Inputs HAT
  • SM_BAS: A easy to use Arduino Library for Building Automation HAT
  • SM_ESP32Pi: A easy to use Arduino Library for ESP32-PI
  • SmartButton Library: Asynchronous SmartButton library for handling various button events.
  • SmartCard: Use a smart card with arduino
  • SmoothADC: Get ADC to return averaged values.
  • SN76489: sn76489 arduino library.
  • Sodaq_PcInt: An Arduino library to deal with PCINT (Pin Change Interrupts)
  • SoftPWM: A software library to produce a 50 percent duty cycle PWM signal on arbitrary pins.<br />
  • SoftwareSerialTX: <h3>A SoftwareSerial implementation only for transmitting data, maximum size reduced </h3>
  • Soldered MCP47A1 DAC library: Arduino library for Soldered MCP47A1 1 Channel 6 Bit DAC Breakout board
  • Soundex: "Arduino Library for calculating Soundex hash.
  • SoundPlayer: Allows Arduino Boards to play 8-bit sounds recorded at 40kHz sampling frequency.
  • SparkFun AD5330: Libraries for the AD5330 8-bit DAC
  • SparkFun ADS1015 Arduino Library: Library for the ADS1015 ADC to I2C converter used on the SparkFun Qwiic 12-bit ADC and Flex Glove Controller.
  • SparkFun ADS1219 Arduino Library: An Arduino library for the ADS1219 24-Bit 4-Channel ADC from TI
  • SparkFun MiniGen: SparkFun MiniGen library allows the user to generate sine, square, or triangle waves at up to 3MHz, and approximately 1Vp-p.
  • SparkFun TLC5940: Library for the TLC5940 IC.
  • SparkFun VKey Arduino Library: Arduino Library for interfacing the SparkFun VKey Voltage Keypad.
  • SpeedMeasurer: Pito tube library for 2 BMP180 sensors
  • SPI-DAC7611: A library that interfaces with the DAC7611 using the standard SPI library.
  • StackmatTimer: A library for interfacing with a Stackmat/Cube timer
  • Step_CYC10_I2C: Library for the I2C Soft Controller on Step CYC10 FPGA board
  • Step_CYC10_Seven_Seg_Display: Library for the 7-segment display on Step CYC10 FPGA board
  • StereoSID: MOS6581 Stereo SID Emulator Arduino Library
  • sTune: Open loop PID autotuner using a novel s-curve inflection point test method.
  • SUSHI-EXP-BOARD: Arduino library for SUSHI-EXP board.
  • Switch: Arduino library for deglitching and debouncing switches and buttons.
  • SWSerialOut: Arduino library for SWSerialOut, supports only data out (TX).
  • SX1509 IO Expander: Arduino library and hardware files for the SparkFun SX1509 IO Expander Breakout board.
  • Talkie: Speech library for Arduino. Generates speech from a fixed vocabulary encoded with LPC.
  • TalkingButton: Transform a press button into a powerful input device
  • tca9544a: Arduino library to control the TCA9544A I2C bus multiplexer
  • TCA9548: Arduino Library for TCA9548 I2C multiplexer and compatibles.
  • TCA9555: Arduino library for I2C TCA9555 16 channel port expander - 16 IO-lines
  • TcBUTTON: Button for TcBUTTON is a easy to use button for your application and call back function for your button.
  • Teensy_3X_Multipurpose_Board: Library to interface with Teensy 3.X breakout board (PCB gerber and Eagle project files included!)
  • TeensyAudioFlashLoader: utility to load audio samples from uSD card to external flash ram or psram on teensy 4.1
  • TeensyAudioLaunchCtrl: Trigger audio samples using your usb midi controller
  • TeensyAudioSampler: play pitched multi-polyphonic audio samples with teensy audio library
  • TeensyVariablePlayback: Play samples at variable pitch using Teensy Audio Library
  • TeeRec: Teensy recorder libraries.
  • Telegraph: Telegraph automatically sends Morse code signals on an Arduino pin.
  • Throttle: Just like Debounce but faster
  • TimerExtensions: Easy access to advanced Arduino timer functions, such as precise timing, pulse generation, and input event capture.
  • TinyButton: This library simplifies a click function for ATTiny projects.
  • tinyESPNow: Arduino library for tinyESPNow.
  • tinyI2S: Arduino library for tinyI2S.
  • TinyWireM: I2C library for Trinket and Gemma, adapted from BroHogan's code on Arduino Playground
  • TLA2518: Arduino library for Texas instrument TLA2518
  • Tlc5940: Use the Texas Instruments TLC5940 16-channel LED Driver
  • TM16xx LEDs and Buttons: TM16xx library for Arduino. Supports LED and KEY modules based on TM1638 and similar chips.
  • TN_SwitchState: A library to manage switch state transitions.
  • Toggle: AArduino button debounce library for various switch types, port expanders and other 8-bit data sources.
  • Tone: A software digital square wave tone generation library.<br />
  • toneAC: Replacement to the standard tone library with many advantages
  • ToneESP32: Tone library for ESP32
  • ToneLibrary: This is an Arduino Library to produce a tone on any Arduino pin.
  • TouchyTouch: Capacitive sense touch library that mimics how CircuitPython touchio works
  • TpdButton: Simple prototyping library to read different events on a button.
  • TrapeZoid: trapezoidal control using moving average.
  • Tsunami: Library for interfacing with the Tsunami's hardware peripherals.
  • TVout: A library for generating PAL or NTSC video output with an AVR.
  • TwoButtonsInterface: A button library that handles two buttons interface.
  • uS82: A control library for uS82/us82 Board.
  • UUID: Arduino library for generating UUID's. (experimental).
  • vbus-arduino: Allows arduino to read data from some vbus compatible controllers.
  • Volume: Gives tone functionality with 8 bit volume control with no extra parts
  • Volume 3: Gives tone functionality with 10-bit volume control with no extra parts!
  • Volume2: Gives tone() functionality with multiple waveforms and 8-bit volume control - with no extra parts!
  • VolumeConverter: Arduino library to convert volume units.
  • WaterMix: Arduino library for mixing water with different temperatures.
  • WeatherMeters: Weather Meters library
  • weight: Library of weight conversion functions
  • WiFiWire: Arduino library for Wire on WiFi.
  • WinsonLib: Winson product's Arduino Library
  • wiring_analog_SAMD_TT: Provides same functions as SAMD wiring_analog.c with several changes to fix problems, and a function for ADC calibration.
  • wm8978-esp32: An esp32 library for the wm8978 dac.
  • WTV020SD16P: Arduino library for the WTV020-SD-16P sound module
  • X9C10X: Arduino Library for X9C10X series digital potentiometer.
  • XBoxControllerHandler: Handle strings from an XBox controller receiver (ESP controller running BluePad) containing controller input status.
  • XLR8ADC: Arduino library to take advantage of XLR8 ADC performance.
  • XLR8SPI: Library to use SPI interfaces through SPI XBs.
  • XP_Button: Library to debounce button switches, detect presses, releases, and long presses.
  • Yet Another Arduino PcInt Library: A library to support Pin Change Interruptions (PCINT) on AVR Arduinos
  • YK04_Module: Library for working with a remote control sensors based on the YK04 driver.
  • ZMotor2 Library: Library for a board called Motor2
  • ZMotor3Library: Library for a board called Motor3
  • ZzzButton: Arduino / C++ library to manage buttons
  • ZzzMovingAvg: Simple Arduino / C++ library to compute moving average