Cyton interface to motors through Arduino

Hi folks
I need your help.I am new to Cyton and I want to run some motors through Cyton in my BCI project.I have successfully acquire the channel data into OpenVibe GUI and now I would like to analyse /filter it and want to process this data to run a motor(through Arduino/nodeMCU e.tc).
Sorry but I have not much idea and would appreciate any leads.

Comments

  • wjcroftwjcroft Mount Shasta, CA

    AAT, hi.

    The best approach is to plug your motor control Arduino, into a serial port on your laptop. Then write a small program on the Arduino to accept serial port commands (that you make up), to do the motor motions you desire.

    So this is in contrast to connecting the Arduino directly to the Cyton, or trying to do motor control by modifying the Cyton firmware. Since the Cyton is sensitive to microvolt level signals, wires from the Cyton to a motor or Arduino board would potentially create interference in the EEG signal. Putting the motor-Arduino on a separate serial port eliminates this issue.

    Regards, William

  • I connected the PC with Arduino simply the way we do and ran the motor but how to run these motor from cyton.The data coming from cyton will now be sent to arduino how?

  • wjcroftwjcroft Mount Shasta, CA

    You are creating a "closed-loop" system. Your EEG will be detected and classified by the OpenViBE program. When a motor action is required, somehow OpenViBE will signal that to a small program that you write, say in Python. This small program will communicate to the Arduino, using the serial port.

    For that purpose, you must define some serial port "commands" that do the motor actions you require. Your Arduino sketch listens for those serial port commands, and carries out the requested motor actions.

    For example you might have serial port commands that do the following. Showing first the serial port command string, then the motor action:

    • 'F', motor forward, continuous
    • 'S' motor stop
    • 'R' motor reverse, continuous
    • 'F345' motor forward, 345 step increments then stop
      etc.

    Regards, William

  • Hi
    I have taken the samples and use open vibe then followed this

    Still the motor connected to NODEMUC needs to be run and I am confused now

  • I am confused if using different softwares to get the samples to move the motor.like neuropype for feature extraction and signal processing but still I don’t get any meaningful data that I use to send though NODEMCU and run the motors.

  • wjcroftwjcroft Mount Shasta, CA

    You are going to just have to look over the various examples and tutorials. Surely it is possible for Python to interact with the ESP8266 / NodeMCU. I would start with the link I gave:

    https://github.com/wahajmurtaza/NodeMCU-Python-Wifi
    https://github.com/KebabLord/esp2python

  • wjcroftwjcroft Mount Shasta, CA

    You also still have the simpler option of using an Arduino that has a simple usb serial port interface. And just having your laptop Python program send / receive ascii strings to the Arduino as commands / responses. This is what I originally recommended in the comment on October 12. But you instead decided to go the more complex route of using wireless / NODE / etc.

    https://www.google.com/search?q=arduino+tutorial+serial+port+commands

  • Thanks for your reply and help.The point I am stuck is motor imagery.I want to turn my motor left by thinking or moving my left hand.I have taken the samples through headset and then it comes filtration and processing etc.Now the last step is to send that processed data to nodemcu or Arduino.Sorry if i am asking a lot.

Sign In or Register to comment.