mraa
2.0.0
Low Level Skeleton Library for Communication on GNU/Linux platforms
|
Firmata IO lets you SYSEX messages construct and ask for a callback on a SYSEX messages. This is meant to provide a way to call custom firmata APIs especially using the Custom firmata API
Go to the source code of this file.
Functions | |
mraa_firmata_context | mraa_firmata_init (int feature) |
mraa_result_t | mraa_firmata_write_sysex (mraa_firmata_context dev, char *msg, int length) |
mraa_result_t | mraa_firmata_response (mraa_firmata_context dev, void(*fptr)(uint8_t *, int)) |
mraa_result_t | mraa_firmata_response_stop (mraa_firmata_context dev) |
mraa_result_t | mraa_firmata_close (mraa_firmata_context dev) |
Typedefs | |
typedef struct _firmata * | mraa_firmata_context |
mraa_firmata_context mraa_firmata_init | ( | int | feature | ) |
Initialise firmata context on a feature. This feature is what will be listened on if you request a response callback
feature | firmata feature |
mraa_result_t mraa_firmata_write_sysex | ( | mraa_firmata_context | dev, |
char * | msg, | ||
int | length | ||
) |
Sends a custom SYSEX message to the firmata board.
dev | The Firmata context |
msg | The SYSEX message |
length | The length of the sysex message |
mraa_result_t mraa_firmata_response | ( | mraa_firmata_context | dev, |
void(*)(uint8_t *, int) | fptr | ||
) |
Set a callback on 'feature'. This function is not thread safe and threads calling it need to make sure they are the only thread calling this.
dev | The Firmata context |
fptr | Function pointer to function to be called when interrupt is triggered, the returned buffer and length are the arguments. |
mraa_result_t mraa_firmata_response_stop | ( | mraa_firmata_context | dev | ) |
Stop getting events on feature. This is more efficient than mraa_firmata_close as it can be re-enabled without adding a feature
dev | The Firmata context |
mraa_result_t mraa_firmata_close | ( | mraa_firmata_context | dev | ) |
Free all firmata handle resources, this will leave an element in an array internally that will be skipped, avoid closing many firmata contexts often as there is a cost to doing this
dev | The Firmata context |
typedef struct _firmata* mraa_firmata_context |
Opaque pointer definition to the internal struct _firmata. This context refers to one firmata 'extension' letting you write/return SYSEX messages directly