Loading files
This file is pinned to the selected release. Download the original to open it in your design tool.
8e6baf1a2This file is pinned to the selected release. Download the original to open it in your design tool.
# Adding arduino components
Note that the openEMSstim board uses some of the arduino's digital pins, so what you have left is:
* D0 (digital pin)
* D1 (digital pin)
* D3 (digital pin)
* D11 (digital pin)
* D12 (digital pin)
* D13 (digital pin, currently used for internal LED, but you can opt out of that)
* A0 (analog pin)
* A1 (analog pin)
* A2 (analog pin)
* A3 (analog pin)
* A4 (analog pin)
* A5 (analog pin)
## Connecting new sensors to the board
Connecting new sensors should be straight forward. For instance if you have some [FSR sensor](https://learn.adafruit.com/force-sensitive-resistor-fsr/using-an-fsr) you would just connect it to a analog input (for instance A1). Do the same for all buttons (if these are digital you can connect to a digital port, e.g., D11), sensors, etc (input devices).
## Connecting new actuators to the board
Connecting new actuators needs a notice: the board uses MOSFETS and optocouplers which drain some of the power, this means if you add actuators like servos/motors, you should add a H-bridge/motor-driver with a separate power source (power for motors). This way you do not reduce the power of the openEMSstim components which could result in strange behaviors.
## How to connect things to the board
Just some suggestions:
* solder female pin headers to the pins you want to use, now you can connect standard pin cables
to it
* find an arduino without headers and solder a long header connector to it (not you can connect female headers on top to the unused pins)
* find an arduino without headers and a male connector under and a female connector on top (like the pin headers used in the arduino shields, essentially you are making your arduino into a shield) now you can use standard pin cables on the unused pins.
## What if I run out of pins?
There's plenty of options to solve that (depends a bit on your design), here's a few:
* get a multiplexer (better make it a MUX/DEMUX) and use it to get more pins out of 2/3 pins.
* don't use the openEMSstim for anything else but EMS and just make it talk to other arduinos, there are several options for this:
* I2C is a protocol for making digital components communicate
* simply bit bang one port from one arduino into the other (e.g.., HIGH means do EMS, low means stop)
* did you run out of digitals but still have analogs? Use the analog pins as digital ports.
### License and Liability
Please refer to the liability waiver (in documentation/liability_waiver.md).
Please refer to the license (in /license.md)