Some projects require additional libraries. For example:
- The LED array projects use the FastLED library
- Stepper motor projects use the X113647Stepper library
- EthernetShield projects use the interactive-matter/HTTPClient library
- For precision timing, projects generally use the FlexiTimer2 library
- nRF24L01+ projects generally use the RF24 library
- Packet Radio e.g. 433MHz projects generally use the RadioHead library. RadioHead is a successor the the VirtualWire library.
- Monochrome OLED displays use the Adafruit_SSD1306 library
- Monochrome displays using the u8glib library
- AdaFruit display libraries may use the Adafruit-GFX-Library library
- LED matrix control with the LedControl library
- Rotary Encoder input with the Rotary library
- DS3232-based realtime clock module control with the DS3232RTC library
- 1-wire compatible components use the OneWire library
- AMS AS1130 LED Driver control with the LRAS1130
- Flexible interrupt management with EnableInterrupt
- Arduino Radio Library [Radio]](http://www.mathertel.de/Arduino/RadioLibrary.aspx)
- Adafruit Unified Sensor Library
- [DHT Sensor Library]((https://github.com/adafruit/DHT-sensor-library)
These libraries are included as submodules of this repository and can be installed with git.
For Arduino projects, I have the Arduino IDE sketchbook location (in preferences) set to the root of this repository. This makes all the projects available to me in the IDE, and automatically includes libraries that are linked as git submodules in this folder.
If you don't have the Arduino IDE setup this way, libraries can just be installed normally. For information on installing libraries, see: http://arduino.cc/en/Guide/Libraries
If you clone this repo, also update the submodules:
$ git submodule update --init
To pull submodule updates later on:
$ git submodule foreach git pull
e.g. to pull the latest X113647Stepper updates:
$ git submodule update --remote libraries/X113647Stepper
$ git submodule add https://github.com/repo_path/name libraries/name