# Using Firmata

### What is Firmata?

**Firmata** is a protocol for communicating with microcontrollers (like Arduino) from software on a computer, using a standardized messaging format over serial communication (usually USB). It allows you to **control and read from Arduino pins in real-time**, without needing to constantly upload new Arduino sketches.

- **Firmata** is like a translator that is programmed on the Arduino.
- You upload a **Firmata sketch** once to the Arduino.
- Then, you can control the Arduino **live from TouchDesigner (or other software like Isadora, Max/MSP or Processing)** without reprogramming it.
- Be aware that is is resource heavier the programming your Arduino with specific code for the goal you want to achieve, Nice for prototyping though!

<iframe allowfullscreen="allowfullscreen" height="314" src="https://www.youtube.com/embed/FPRRReIhE_I" width="560"></iframe>

<iframe allowfullscreen="allowfullscreen" height="314" src="https://www.youtube.com/embed/lkudxFrwPXU" width="560"></iframe>