issue building OPENBCI_GUI in Processing ?

yourmaverickyourmaverick Texas
edited September 2023 in OpenBCI_GUI

I have zero experience with java. So, the question could be stupid.
I got the code from the git hub for OPENBCI_GUI and tried to compile and run it in processing (the IDE). I got the following error "Cannot find anything named “frame”".
I did dig into several initial/setup functions to find if the variable has been claimed. No luck.
Does anyone know how to solve this?
I am just trying to read EEG data into OPENBCI_GUI and export it somewhere else.
Thank you!!

Comments

  • wjcroftwjcroft Mount Shasta, CA

    Hello Your,

    Is there some reason you need to compile yourself? Why not use the pre-compiled binaries? If you do need to build, are you following the guidelines?

    https://docs.openbci.com/Software/OpenBCISoftware/GUIDocs/#running-the-openbci-gui-from-the-processing-ide

    William

  • Thank you so much for your quick reply. I am new to this. I purchased an EEG kit with ADS1299. In other's sharing, it could be read by OPENBCI.
    The reason I am trying to compile the GUI is I might need to add addition processing or analysis written by myself, and do the analysis and raw data saving at the same time. I am not familiar with OPENBCI.
    I will follow the guidelines to compile the package.
    Thank you again.

  • wjcroftwjcroft Mount Shasta, CA

    @yourmaverick said:
    Thank you so much for your quick reply. I am new to this. I purchased an EEG kit with ADS1299. In other's sharing, it could be read by OPENBCI.

    Hi, so to clarify, are you talking about a board such as Cyton or Ganglion that you purchased from OpenBCI? Or is this something else unrelated, you refer to as an 'EEG kit'. The GUI cannot be depended upon to support non-OpenBCI hardware.

    As far as analysis / DSP digital signal processing goes -- this is much better done with external DSP libraries, packages, for some examples see,

    https://docs.openbci.com/Software/CompatibleThirdPartySoftware/Matlab/

    If your device is emulating OpenBCI boards, you may also be able to use BrainFlow:

    https://brainflow.org/
    https://brainflow.readthedocs.io/en/stable/Examples.html

  • It's not a board like Cyton or Ganglion. They don't have the high sampling rate I am looking for. I am planning to use the Lab Streaming Layer, which was part of the OPENBCI_GUI function, to visualize the data. I noticed in the recent version the part is gone. I installed the previous version of OPENBCI_GUI, which was not working on my MAC OS 13.5.
    I am also looking into the LSL in OPENBCI, which is used to stream data to other software.
    https://docs.openbci.com/Software/CompatibleThirdPartySoftware/LSL/.
    Thank you very much for your suggestions on BrainFlow, I will take a closer look.

  • wjcroftwjcroft Mount Shasta, CA

    @yourmaverick said:
    ... I am planning to use the Lab Streaming Layer, which was part of the OPENBCI_GUI function, to visualize the data. I noticed in the recent version the part is gone.

    No, that is not true. LSL is still available in the Networking Widget. See documentation for that widget.

    I installed the previous version of OPENBCI_GUI, which was not working on my MAC OS 13.5.

    No need to install a previous version.

    I am also looking into this, which is used to stream data to other software.
    https://docs.openbci.com/Software/CompatibleThirdPartySoftware/LSL/.

    That repo / package is now unsupported, as the '-archive' suffix shows in the name:

    https://github.com/openbci-archive/OpenBCI_LSL

    You may find better support directly from the LSL group:

    https://labstreaminglayer.org/#/
    https://labstreaminglayer.readthedocs.io/
    https://labstreaminglayer.readthedocs.io/info/supported_devices.html

  • Thank you so much for your detailed introduction. Please allow me to spend some time and find out if they are working for my project.
    Really appreciate your help.

  • Just a quick update: I just tried the OPENBCI_GUI again to stream the data. I just realized my problem was I could not find the serial port in the GUI and I could not manually set it.

  • wjcroftwjcroft Mount Shasta, CA

    @yourmaverick said:
    Just a quick update: I just tried the OPENBCI_GUI again to stream the data. I just realized my problem was I could not find the serial port in the GUI and I could not manually set it.

    Do you know what serial port is appearing in /dev ? The auto-finding of the serial port likely only works for OpenBCI boards.

    https://docs.openbci.com/GettingStarted/Boards/CytonGS/#2-select-serial-transfer-protocol

    The /dev entry generally appears / disappears as you plug / unplug the usb serial port device. So this requires using the 'ls' command or Finder / folder view to see what is the device.

  • I know my port is and I could use the terminal command to steam the data from the serial port. But it looks like I won't be able to input it in the OpenBCI.

  • wjcroftwjcroft Mount Shasta, CA

    Seems to me it is very unlikely that your device is outputting the data stream in Cyton compatible format. Unless it was sold as a Cyton clone. Have you tried contacting the manufacturer directly?

  • They didn't mention if OPENBCI is supporting right now. It was supported, because several people used it and posted online about this. I will try to contact them to see what they would suggest.
    Thank you so much for your patience. I hope my questions don't waste too much time of yours

  • wjcroftwjcroft Mount Shasta, CA

    @yourmaverick said:
    They didn't mention if OPENBCI is supporting right now. It was supported, because several people used it and posted online about this. I will try to contact them to see what they would suggest.

    Where was this posted? Link? Link to manufacturer?

  • wjcroftwjcroft Mount Shasta, CA

    I'm afraid you did not actually read the statement on that page:

    The software is open source, and available on OpenBCI’s Github account. It normally can’t connect to a HackEEG board, but Starcat has modified the OpenBCI GUI to take Lab Streaming Layer input. With this, you can send 8 or 16 channels of HackEEG data to OpenBCI. This is the software you see in the demo video. Here’s Starcat’s fork of OpenBCI GUI. (We hope to get these changes merged into OpenBCI’s project.)

    The fork mentioned was done 4+ YEARS ago and is hugely out of date with current GUI features.

  • Thank you for pointing this out. I was misled by myself. I was trying to do a similar thing to stream the data, but I don't think it would be easy. I will try other approaches to figure this out. Thank you again.

  • wjcroftwjcroft Mount Shasta, CA

    Since he mentions that his device can output LSL, there are MANY other LSL compatible programs that could display your data. Such as OpenViBE, etc.

    https://labstreaminglayer.readthedocs.io/info/supported_devices.html
    https://labstreaminglayer.readthedocs.io/info/viewers.html

  • Thank you for your suggestions. I selected OPENBCI because the GUI is very friendly. I will try other LSL programs later.
    Really appreciate your help.

  • wjcroftwjcroft Mount Shasta, CA

    You may still be able to use the 'fork' he made of the GUI. But since it is so badly out of date, lower your expectations. LSL input was never a feature implemented in the OpenBCI maintained GUI.

  • Thank you for letting me know.

  • By the way, could you please give me some suggestions on my original question about compiling in processing? I got the error "Cannot find anything named “frame”".

  • I did follow the guidance. I think it's more about libraries. I figured that part out. My error looks like a variable "frame" is not claimed before it's called.

  • CyKCyK London

    Can openvibe receive and process signals other than EEG signals? Like ECG, EMG. .

  • wjcroftwjcroft Mount Shasta, CA

    @yourmaverick said:
    I did follow the guidance. I think it's more about libraries. I figured that part out. My error looks like a variable "frame" is not claimed before it's called.

    If you are seeing errors when building with Processing, it is most likely you are having issues with following the steps in the tutorial. Perhaps try building on another computer / OS?

    Your best bet is to just use the LSL stream provided by the HackEEG hardware. For example with OpenViBE or other LSL friendly app.

  • wjcroftwjcroft Mount Shasta, CA

    @CyK said:
    Can openvibe receive and process signals other than EEG signals? Like ECG, EMG. .

    CyK, I'm not sure why you are commenting on this thread, which is related to building the GUI with Processing.

    But yes, OpenViBE can deal with any types of biosignals.

Sign In or Register to comment.