Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/davidje13/miscarduinolibraries
Self-contained Arduino libraries for random components I find
https://github.com/davidje13/miscarduinolibraries
Last synced: about 1 month ago
JSON representation
Self-contained Arduino libraries for random components I find
- Host: GitHub
- URL: https://github.com/davidje13/miscarduinolibraries
- Owner: davidje13
- License: other
- Created: 2017-02-09T22:58:32.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-07-14T14:04:38.000Z (over 6 years ago)
- Last Synced: 2024-10-20T02:39:29.139Z (3 months ago)
- Language: C++
- Homepage:
- Size: 1.18 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# General Arduino Libraries
These libraries for Arduino-based platforms are written by David Evans and
where possible are available as Public Domain.See the README.md file in each library's source directory for full details.
## Overview
All libraries are currently header-only implementations (often taking advantage
of Arduino's merge-all-source-into-one-cpp behaviour). Templating is used where
it makes sense. Code has been optimised for speed and RAM usage, and has a
reasonably small compiled footprint.To allow the use of C++ language features, the compiled .ino file
(/wrapper/Main.ino) is a minimal implementation which simply includes a header
file (*/main.h). This is because Arduino's compilation behaviour mangles C++
constructs within .ino files, but will not mangle library code.Compilation is performed using the arduino-builder tool (included with the
standard Arduino IDE), and has been tested on OS X (it should be possible to
run on Linux too, but modifications to the compilation script will likely be
required). Uploading to the connected Arduino (configured for an ATmega328 chip
with Arduino bootloader, running at 8MHz:
http://www.hobbytronics.co.uk/atmega328-arduino-8mhz) is performed using the
avrdude utility tool (also bundled with the Arduino IDE). Note that deployment
to other devices will require changes to the target.sh script.### Dependencies
There are no required dependencies, but if you want to rebuild image data from
files, you will need to install Boost (http://www.boost.org/). Specifically,
Boost GIL is used to load image data. Boost is generally easy to install using
a package manager such as homebrew, macports, yum, apt, etc.### Compilation
The demo files can be compiled via compile.sh (the included Makefile is a thin
wrapper around this script). It will attempt to locate an Arduino IDE
installation to invoke the arduino-builder compiler tool and avrdude binary
uploader.Note that it is configured for deploying to an ATmega328 chip running at 8MHz.
To deploy to an alternative device, change `BOARD` in target.sh (the format is
explained in the file). It may also be necessary to change the `UPLOADER_*`
values; values for these are harder to find, but check boards.txt in your
Arduino installation.