I have a question along these same lines, if I wish to run BCI2000 remotely, I can launch the Operator Module as follows:
Which opens up the port localhost:3999 to receive remote commands. At this point, the Operator module is in the "Idle" state and thus cannot receive connections from other modules. The only way I see to change this is by sending the command "startup", which then puts the operator in the Startup state. Is there a way to start the operator module directly in to the startup state or to script the module to immediately enter startup upon starting? I don't see an appropriate event to cause this to happen. The only difficulty that this causes is I can't script the entire startup sequence if I enable remote connection. Any hints?
Hmm... An additional note:
If I do start the operator as above, and log in via putty, I seem to have trouble starting the individual modules.
I have tried the following:
Code: Select all
BCI2000 Version 3.0.4 on hodgkin
Type 'help' for a list of commands.
>startup
>start executable SignalGenerator 127.0.0.1
start executable SignalGenerator 127.0.0.1: Could not start operation
As well as
Code: Select all
BCI2000 Version 3.0.4 on hodgkin
Type 'help' for a list of commands.
>startup
>System SignalGenerator 127.0.0.1
Which results in a state transition from Idle to Startup, and when Launching SignalGenerator the putty terminal hangs and I am unable to open a new one.
Lastly I tried to put the command to launch the SignalGenerator module in a batch script which I called similarly and also causes the terminal to hang. Because I'm shooting in the dark a bit, and unsure what the problem may be, I also tried all of these steps with my Firewall disabled. I'm running Win7 x64 but using 32-bit binaries, and have the BCI2000 source that was current as of 4/3/2012, Operator Version 3.0.4
The only successful workaround I've found for the time being is as follows:
1) Locally run the operator: "start Operator.exe --Telnet"
2) Remotely (through PuTTY) run the following command to transition the operator from Idle to Startup states: "STARTUP"
3) Locally start the Source, Processing, and App Modules: "start SignalGenerator", "start SpectralSignalProcessing", "start CursorTask"
4) Remotely: "LOAD PARAMETERFILE ..\parms\examples\CursorTask_SignalGenerator.prm", "SETCONFIG", and "START"
This gets the app up and running locally, which is a good start (I can move on to AppConnectors from here), but requires that I access a command prompt on the machine running the operator module, which I would like to move away from. Any help is greatly appreciated!