跳到主要内容

优秀 Arduino 开源项目

A curated list of awesome Arduino hardware, libraries and projects

Libraries

Hardware dependent library

  • rtclib - A lightweight date and time library for JeeNodes and Arduinos
  • RFM69 - RFM69 library for RFM69W and RFM69HW (Semtech SX1231, SX1231H)
  • RFM12B - Arduino RFM12B library
  • SPIFlash - Arduino library for read/write access to SPI flash memory chips
  • Winbond_flash - SPI library for Winbond Flash Memory modules
  • ov7670-no-ram-arduino-uno - Arduino library for OV7670
  • DHT-sensor-library - Arduino library for DHT11DHT22, etc Temp & Humidity Sensors
  • Arduino-DHT22 - Arduino library for the DHT22 humidity and temperature sensor
  • rfid - Arduino RFID Library for MFRC522
  • 433Utils - A collection of code and documentation to assist your usage of RF 433MHz modules
  • esp-link - ESP8266 wifi-serial bridge, outbound TCP, and Arduino/AVR/LPC/NXP programmer
  • Arduino-Temperature-Control-Library - Arduino Library for Maxim Temperature Integrated Circuits
  • RF24 - Arduino driver for nRF24L01
  • RF24 - Optimized fork of nRF24L01 for Arduino and Raspberry Pi
  • RF24Mesh - Mesh Networking for RF24Network
  • due_can - Object oriented CANbus library for Arduino Due compatible boards
  • FastLED - Easily & efficiently controlling a wide variety of LED chipsets for Arduino
  • iot-playground - ESP8266 EasyIoT library and sensor examples
  • espduino - ESP8266 network client (MQTT, restful) for Arduino
  • esp_mqtt - MQTT client library for ESP8266 Soc
  • esp_bridge - ESP8266 firmware SLIP Command, support mqtt, RESTful client
  • Ultrasonic-HC-SR04 - Ultrasonic HC-SR04 library for Arduino
  • MPU-9250 - Arduino sketch for MPU-9250 9DoF with AHRS sensor fusion
  • MPU-6050 - Basic MPU-6050 Arduino sketch of sensor function
  • MPU-9150 - Arduino sketch for MPU-9150 9DoF with AHRS sensor fusion
  • LSM9DS0 - LSM9DS0 9DOF sensor AHRS sketch
  • arduino-ds1302 - Arduino library for the DS1302 Real Time Clock chip
  • xbee-arduino - Arduino library for communicating with XBees in API mode
  • EnableInterrupt - New Arduino interrupt library, designed for Arduino Uno/Mega 2560/Leonardo/Due
  • DS3232RTC - Arduino Library for Maxim Integrated DS3232 and DS3231 Real-Time Clocks
  • ds3231 - Arduino library for DS3231 RTC
  • RTClib - RTC library
  • arduino-ds1302 - Arduino library for the DS1302 Real Time Clock chip
  • HX711 - An Arduino library Semiconductor HX711 ADC for Weight Scales.
  • MiniPirate - Arduino Serial Command Tool
  • LedControl - An Arduino library for MAX7219 and MAX7221 Led display drivers
  • arduino-BLEPeripheral - Arduino library for creating custom BLE peripherals with Nordic Semiconductor's nRF8001 or nR51822
  • BTLE - Library for basic Bluetooth Low Energy with the nRF24L01+
  • BH1750 - An Arduino library for the digital light sensor BH1750FVI
  • Arduino-GP2Y0A21YK-library - Arduino library for the Sharp GP2Y0A21YK IR Distance sensor
  • Arduino-distance-sensor-library - Arduino library for distance sensors
  • arduino-BLEPeripheral - Library for creating custom BLE peripherals with Nordic Semiconductor's nRF8001 or nR51822
  • Arduino-Temperature-Control-Library - Arduino Library for Maxim Temperature Integrated Circuits
  • RGB-matrix-Panel - Arduino library and example code for the 16x32 RGB matrix panels
  • Time - Time library for Arduino
  • modbusino - Small Modbus slave, RTU (serial) for Arduino
  • simplemodbusng - Modbus RTU Slave/Master for the Arduino

Bootloader

  • HoodLoader2 - 16u2 Bootloader to reprogram 16u2 + 328/2560 with Arduino IDE
  • optiboot - Small and Fast Bootloader for Arduino and other Atmel AVR chips

Hardware independent library

  • Arduino-IRremote - Infrared remote library for Arduino: send and receive infrared signals ....
  • IRLib - An Arduino library for encoding and decoding infrared remote signals
  • i2cdevlib - I2C device library collection for AVR/Arduino or other C++-based MCUs
  • keysweeper - KeySweeper is a stealthy Arduino-based device, camouflaged as a functioning USB ....
  • aJson - an Arduino library to enable JSON processing with Arduino
  • ArduinoJson - C++ JSON library for IoT. Simple and efficient.
  • json-streaming-parser - Library for parsing potentially huge json streams on devices with scarce memory
  • USB_Host_Shield_2.0 - Revision 2.0 of USB Host Library for Arduino
  • pubsubclient - A client library for the Arduino Ethernet Shield that provides support for MQTT
  • WiringPi - Gordon's Arduino wiring-like WiringPi Library for the Raspberry Pi
  • Arduino-PID-Library - A pid library for Arduino written in C++
  • firmata - Firmata firmware for Arduino
  • uSpeech - Speech recognition toolkit for the Arduino
  • Talkie - Speech library for Arduino
  • Low-Power - Low Power Library for Arduino
  • ArduinoOBD - OBD-II library and sketches for Arduino
  • hiduino - Native USB-MIDI on the Arduino
  • Brain - Arduino library for reading Neurosky EEG brainwave data
  • Cryptosuite - Cryptographic suite for Arduino (SHA, HMAC-SHA)
  • Timer - A fork of Simon Monk's Arduino Timer library
  • PJON - One wire multi master device communications bus system for Arduino
  • HID - Enhanced HID functions for Arduino
  • Cosa - An Object-Oriented Platform for Arduino Programming
  • NDEF - Read and Write NDEF Messages to NFC tags with Arduino
  • rosserial - ROS client library for small, embedded devices, such as Arduino
  • SdFat - Arduino FAT16/FAT32 Library
  • Arduino-Communicator - Very simple Android application for communicating with Arduino
  • Arduino-PID-AutoTune-Library -
  • TinyGPS - A compact Arduino NMEA (GPS) parsing library
  • Arduino-EEPROMEx - Extended EEPROM library for Arduino
  • Arduino-CmdMessenger - CmdMessenger Communication library for Arduino
  • arduino-libs-manchester - Arduino Manchester Encoding
  • ShiftPWM - Arduino Library for software PWM with shift registers
  • Arduino-EasyTransfer - An Easy way to Transfer data between Arduinos
  • Arduino-SerialCommand - A Wiring/Arduino library to tokenize and parse commands received over a serial port.
  • TMRpcm - Arduino library for asynchronous playback of PCM/WAV files direct from SD card
  • Mozzi - A sound synthesis library for Arduino
  • StandardCplusplus - Standard C++ for Arduino (port of uClibc++)
  • ArdOSC - Open Sound Control(OSC) Library for Arduino
  • OSC - Arduino and Teensy implementation of OSC encoding
  • arduino-serial - Example C and Java host code to talking to an Arduino or other "serial" device
  • Bounce2 - Debouncing library for Arduino or Wiring
  • ArduinoThread - A simple way to run Threads on Arduino
  • AdaEncoder - Library for handling quadrature encoders for the Arduino microcontroller
  • PinChangeInt - Pin Change Interrupt library for the Arduino
  • Arduino-RFID - Arduino RFID reader with computer serial client
  • arcore - MIDI-USB Support for Arduino
  • arduino-base64 - A base64 library for the arduino platform, written in C
  • DirectIO - Fast, simple I/O library for Arduino
  • arduino-EventManager - An event handling system for Arduino
  • OneButton - An Arduino library for using a single button for multiple purpose input
  • JTAG - JTAG library for Arduino
  • Sleep_n0m1 - A library that sets the Arduino into sleep mode for a specified length of time
  • AESLib - Arduino Library for AES Encryption
  • MemoryFree - Arduino MemoryFree library
  • souliss - Arduino based Distributed Networking Framework for Smart Homes and IoT
  • LED-Matrix - Single/bi/tri-color LED Matrix PWM driver for arduino
  • OneWire - Library for Dallas/Maxim 1-Wire Chips
  • TinyEKF - Lightweight C/C++ Extended Kalman Filter with Arduino example
  • arduino_midi_library - MIDI for Arduino
  • FreeRTOS-Arduino - FreeRTOS 8.2.3 Arduino Libraries
  • Arduino_FreeRTOS_Library - A FreeRTOS Library for all Arduino AVR Devices
  • Automaton - Reactive State Machine Framework for Arduino
  • LinkedList - A fully implemented LinkedList made to work with Arduino projects
  • VirtualUsbKeyboard - Virtual an Arduino as a HID device
  • virtual-shields-arduino - Windows Virtual Shields for Arduino library

3D Printer .

  • Repetier-Firmware - Firmware for Arduino based RepRap 3D printer
  • 3D_Printer - Underverk's 3D printer
  • grbl - An open source, embedded, high performance g-code-parser and CNC milling controller run on a straight Arduino

NET Library.

Command line library

  • platformio - Cross-platform code builder and the missing library manager ....
  • arduino-cmake - Arduino CMake Build system
  • bitlash - A programmable command shell for Arduino
  • arduino-shell - A command shell to interact with built-in Arduino features

Display library

  • Arduino_LCD_Menu - Creates menu systems primarily useful for 16x2 or 16x4 LCD displays
  • LiquidMenu - Menu creation library for HD44780 LCDs (parallel and I2C), wraps LiquidCrystal.
  • LiquidTWI2 - high speed I2C LCD Library for Arduino, which supports MCP23008 and MCP23017
  • MENWIZ - LCD menu library: Short user code to manage complex menu structures
  • u8glib - Arduino Monochrome Graphics Library for LCDs and OLEDs
  • ucglib - Arduino True Color Library for TFTs and OLEDs
  • TFT_eSPI - Arduino and PlatformIO IDE compatible TFT library optimised for the Raspberry Pi Pico (RP2040), STM32, ESP8266 and ESP32 that supports different driver chips

Binding and API library

  • johnny-five - JavaScript Robotics and IoT programming framework, Based on Arduino Firmata Protocol
  • Python-Arduino-Command-API - A Python library for communicating with Arduino microcontroller boards
  • hidapi - A Simple library for communicating with USB and Bluetooth HID devices on Linux, Mac, and Windows.
  • BlocklyDuino - a web-based visual programming editor for arduino
  • noduino - JavaScript and Node.js Framework for controlling Arduino with HTML and WebSockets
  • ino - Command line toolkit for working with Arduino hardware
  • usb-serial-for-android - Android USB host serial driver library for CDC, FTDI, Arduino and other devices
  • serial-port-json-server - A serial port JSON websocket server communicate with Arduino
  • PhysicaloidLibrary - Android Library for communicating with physical-computing boards
  • blynk-server - Platform with iOS and Android apps to control Arduino
  • rad - Ruby Arduino Development
  • ardublock - A Block Programming Language for Arduino
  • arduino-api - Arduino library for real-time logging and streaming data to online plotly graphs
  • dino - Dino is a ruby gem that helps you bootstrap prototyping with an Arduino
  • duino - Arduino framework for node.js
  • pyFirmata - Python interface for the Firmata protocol
  • JArduino - Program your Arduino in Java
  • Python-Arduino-Command-API - A Python library for communicating with Arduino microcontroller boards
  • hwio - Go library for hardware I/O control, in the programming style of Arduino

RPC

  • ArduRPC - RPC library for Arduino and other microcontroller based boards
  • arduino-json-rpc - Simple JSON-RPC server implementation for Arduino

Math library

HardwareBoard

Hardware board for arduino diy.

  • Teensy - The Teensy is a complete USB-based microcontroller development system
  • blackmagic - In application debugger for ARM Cortex microcontrollers
  • stm32plus - C++ library for the STM32 F0, F100, F103, F107 and F4
  • Wio Terminal - The Wio Terminal is a microcontroller with wireless connectivity that's compatible with Arduino and MicroPython.

IDE

Arduino developments

Tutorials

Tutorials for arduino flash.

  • Arduino-Tutorial-Series - These are the supporting materials for my popular series of Tutorials on the Arduino Microcontroller Platform
  • esp8266 - Various bits of code for ESP8266
  • arduino_sketches - Publicly-released sketches for the Arduino microprocessor
  • DUEZoo - Some proof-of-concept sketches and results for Arduino DUE
  • programming_arduino - Code for the book Programming Arduino: Getting Started with Sketches
  • ArduinoExamples - Arduino Blink Chrome App

Projects

Projects with Arduino