Research Article
Craniux: A LabVIEW-Based Modular Software Framework for Brain-Machine Interface Research
Table 1
List of current acquisition, signal processing, and application engines.
| Engine name | Engine type | Description |
| Acquisition template | Acquisition | “Empty” acquisition engine generating random data used to maintain system dataflow | Read UDP binary | Acquisition | Reads raw neural data transmitted via UDP | SimECoG | Acquisition | Generates synthetic ECoG data |
| Signal processing template | Signal processing | “Empty” signal processing engine used to maintain system dataflow | Linear decoder | Signal processing | Generates a control signal using linear combinations of input features | Population vector | Signal processing | Generates a control signal using the population vector algorithm [18] | OLE | Signal processing | Generates a control signal using the optimal linear estimator algorithm [19] |
| Application template | Application | “Empty” application engine used to maintain system dataflow | Center-out cursor control | Application | Two or three-dimensional cursor control application | Threshold Crossing | Application | Sends UDP commands to an external device when control signals cross user-defined thresholds | Circle drawing | Application | Circle/ellipse-drawing application [20] | Biofeedback | Application | Displays real-time feedback of a neural control signal to the subject |
|
|