access DIY non-Cyton with OpenBCI GUI ?

ShivamsharmaShivamsharma Pune, India
edited December 2021 in Build-it-yourself

hello team,
i am designing my own personal cyton device and also i want to design my own personal cyton receiver , i have successfully designed the cyton device but now i am not able to see my receiver on openbci_gui.
i am using nrf52840 for cyton device and esp32 for receiver and i am not able to see my com port on openbci_gui kindly guide me in receiver designing and also simulating it on openbci_gui.

thanks and regards
Shivam Sharma

Comments

  • retiututretiutut Louisiana, USA

    You are free to modify the GUI to suite your needs, as it is open-source with the MIT license.

    Official OpenBCI hardware connects to the GUI using the BrainFlow backend. https://brainflow.org

    Take Care,
    RW

  • ShivamsharmaShivamsharma Pune, India
    edited January 2022

    thanks for reply @retiutut , I am little confused in modification that what should i modify, to actually see my COM ports in openbci gui. i have seen the github code and found the controlpanel.pde file and did some changes in that, but I don't know how to reflect those changes in gui app. kindly tell me what changes are needed to be done and how can i apply them in gui.
    thanks
    Shivam Sharma

  • wjcroftwjcroft Mount Shasta, CA

    Although you used different chips for Cyton and dongle, you STILL have the ability to emulate the same serial port data stream protocol used by the official Cyton. If you do this, the GUI should simply work for you, with no mods needed. Well, take that back, the GUI searches for the COM port by scanning the serial device list for a certain match, such as 'FTDI'. If you instead instruct the GUI to pick your own COM port, and if that COM port completely emulates Cyton, then it should work.

    If instead you are NOT emulating Cyton, then your first step will be required to create a Brainflow device type. It is much easier if you take the emulation approach.

  • thanks for reply @wjcroft ,
    i am using esp32 as dongle device for cyton device and i am able to see my com port in device manager but still it is not showing com port in openbci gui meanwhile i have tried usb to ttl to connect but openbci doesn't show any com port. as you have told that it check for FTDI so it should show the usb to ttl com port but it doesn't showing any com port. kindly guide if you know how to see our com ports on openbci gui.

  • wjcroftwjcroft Mount Shasta, CA

    There are many usb dongles with FTDI chips. Cyton dongle uses FT231X. Section of GUI code is here:

    https://github.com/OpenBCI/OpenBCI_GUI/blob/master/OpenBCI_GUI/ControlPanel.pde#L585

  • @wjcroft i have used the ftdi232x chip as usb to uart bridge between my controller and computer but still i'm not able to see any com port on my system , also i have installed all the ftdi drivers.
    btw the link you have provided of github is having some different code than which i have got in the gui package in controlpanel.pde , but the issue is that how to reflect the changes of control panel in gui app.
    i don't have enough experience with this so please tell me how can i simulate the code package in gui .

  • wjcroftwjcroft Mount Shasta, CA
    edited January 2022

    The link I gave works fine for me, it displays this function:

        private LinkedList<String> getCytonComPorts() {
            final String[] names = {"FT231X USB UART", "VCP"};
            final SerialPort[] comPorts = SerialPort.getCommPorts();
            LinkedList<String> results = new LinkedList<String>();
            for (SerialPort comPort : comPorts) {
                for (String name : names) {
                    if (comPort.toString().startsWith(name)) {
                        // on macos need to drop tty ports
                        if (isMac() && comPort.getSystemPortName().startsWith("tty")) {
                            continue;
                        }
                        String found = "";
                        if (isMac() || isLinux()) found += "/dev/";
                        found += comPort.getSystemPortName();
                        println("ControlPanel: Found Cyton Dongle on COM port: " + found);
                        results.add(found);
                    }
                }
            }
    
            return results;
        }
    

    You can modify it as you wish to use the appropriate string to match whatever your COM device is showing in the Windows Device Manager. The string above, "FT231X USB UART" apparently needs to match exactly. Change to whatever your device is.

    Load the GUI source into the Processing IDE, then make your changes.

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

    William

  • thanks a lot @william and @wjcroft for your precious suggestions . my device is connected so now i'm working on data format part to receive my serial data on openbci gui.

Sign In or Register to comment.