Why would anyone need Firmata when you can communicate any arduino data easily using serial? Also I read somewhere that Firmata is pre-loaded to the firmware on all Uno r3 boards - so why would I also need to load Firmata.h library? Am I missing something?
I thought the purpose of Firmata was to allow you to monitor and debug your running arduino sketch from a PC.
Firmata is part of the standard libraries. It is not loaded to the arduinos, but available in the IDE without extra download.
The idea is to use a MIDI-like protocol to remotely control an Arduino. The program on the PC sends something like "NOTE 3 ON", and the
output D3 goes ON. Other controllers allow to use PWM and ADC as well.
Not many people are using it, and prefer to put the intelligence in the Arduino instead of making PC programs.
It's just there (like SD, Ethernet or LiquidCrystal) if you want to use it.