• Jussi Lindgren's avatar
    Contrib: OpenBCI driver stabilization · 2a57e3da
    Jussi Lindgren authored
    * Complete rework of the driver's logic
    * Added device name in log messages
    * Modified default initialization sequence to
        's': stop streaming
        'v': reset board
        custom commands as per configuration in the GUI
        'b': start streaming
    * Automatic port now scans available ports and picks first available
    * Optimized drift estimation by sending a single block of sample
      per driver mainloop
    * Implemented buffering when reading on serial port
    * Updated switch/case parsing automaton to use enum values as states
      instead of integers (shuold be easier to read & maintain)
    * Optimized the sample buffer array construction by pre-allocating it
      only once and filling the values by copy (no more sample-wise memory
      (de)allocation)
    * Added parsing of board replies (when available) to get board
      information and possibly warn if unexpected return content is sent
    * Added multiline support in additional commands
    * Fixed bad parsing of accelerometers
    * GUI: moved hidden widgets in an hidden window instead of hiding the
      widgets in the displayed window
    * GUI: now shows feedback about configuration of the device (number
      of EEG channels, number Accelerometer channels, sampling rate)
    * GUI: only shows com ports that can be opened, not all of them
      (usually reduces the list to only the OpenBCI board)
    * GUI: exposed two different timeouts (see documentation for details)
    * DOC: added one page documentation
    * Fixed case / namings / indentation / whatever to comply with coding
      rules
    
    Patch contributed by Yann Renard
    2a57e3da
ovasCDriverOpenBCI.h 6.4 KB