I'm writing custom modules for ConfigurableFirmata, I see libraries are using callbacks such as:
void Class::handleCapability(byte pin);
boolean Class::handlePinMode(byte pin, int mode);
...
boolean Class::handleSysex(byte command, byte argc, byte *argv);
Question is, I don't quite get why some of functions are boolean and when to return TRUE or FALSE (and what happens when you return TRUE or FALSE?).
Answer lays in FirmataExt.cpp. If extension returns FALSE, it just sends a string to firmata, for debugging purposes.