User Tools

Site Tools


useful_libraries

Table of Contents

Useful Libraries

A collection of some of the Arduino and Processing libraries which can be useful in building interactive prototypes. If you found one which you have tested to work and think could be useful for other students please add to the list.

A good source to find most, if not all, libraries released for the Arduino is the following link: http://playground.arduino.cc//Main/LibraryList
And likewise for Processing: http://www.processing.org/reference/libraries/

Arduino

Audio

PCM Library - Play a short audio clip directly from the Arduino memory, no need for external SD cards, or shields.
TMRpcm - Simple to use library for playing audio files from an SD card.

Motors & Servos

VarSpeedServo - A modified Servo library with speed control, meaning you can control not only direction and angle of your servo, but also the speed. Is used very similarly to the existing servo library.

Rotary Encoders

Encoder Library - Rotary encoders can be a hassle. This library offers an easy way of reading their values, and direction. Can also be used without using interrupts (since that may conflict with other things, such as servos or audio control), on any two digital pins, by calling #define ENCODER_DO_NOT_USE_INTERRUPTS in your code. Check the examples provided with the library.

Sensors and inputs

Capacitive Sensor - or CapSense for short, is a library which allows you to turn anything which is conductive into a big touch sensor. It works best with things which have a high conductivity, such as aluminium foil, but can be used with things such as plants and water as well.

Averaging

Average - This library makes it incredibly easy to do, among other things, signal cleanup. If you have a sensor that is a bit jittery you can use the average library to take a few readings and get an average value out from it without having to manually put the values into an array and do math to figure out the average, the library does it for you.

Neopixels

FastLED - An alternative library to control Neopixels, it offers some features which the original Neopixel library, by Adafruit, does not. For instance full HSV support, giving you easy control over Hue, Saturation and Value (brightness), it's also more optimized than the original Neopixel library, making it able to push out the changes to your Neopixels faster.

Processing

Graphics & Visualization

Toxiclibs - An independent, open source library collection for computational design tasks. The classes are purposefully kept fairly generic in order to maximize re-use in different contexts ranging from generative design, animation, interaction/interface design, data visualization to architecture and digital fabrication, use as teaching tool and more.

Interfaces

control P5 - Controllers such as Sliders, Buttons, Toggles, Knobs, Textfields, RadioButtons, Checkboxes amongst others are easily added to a processing sketch. They can be arranged in separate control windows, and can be organized in tabs or groups.

Physics & Simulation

Box2D - Box2D is an open source engine for simulating rigid bodies in 2D.

useful_libraries.txt · Last modified: 2014/12/08 06:25 by mrpumpernickel