Changeset 357
- Timestamp:
- 03/30/12 14:03:11 (9 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Puzzlebox/Synapse/Configuration.py
r352 r357 8 8 9 9 __changelog__ = """\ 10 Last Update: 2012.03. 2910 Last Update: 2012.03.30 11 11 """ 12 12 … … 100 100 EMOTIV_SERVER_PORT_EMOCOMPOSER = 1726 101 101 102 102 103 ##################################################################### 103 104 # ThinkGear Device configuration … … 124 125 THINKGEAR_BLUETOOTH_DISCOVER_DEVICES_TIMEOUT = 8 # default 8 125 126 THINKGEAR_BLUETOOTH_LOOKUP_NAME_TIMEOUT = 10 # default 10 127 126 128 127 129 ##################################################################### -
trunk/Puzzlebox/Synapse/Emotiv/Client.py
r352 r357 9 9 Last Update: 2012.03.29 10 10 """ 11 12 import time 11 13 12 14 import Puzzlebox.Synapse.Configuration as configuration … … 35 37 36 38 SERVER_HOST = configuration.EMOTIV_SERVER_HOST 37 #SERVER_PORT = configuration.EMOTIV_SERVER_PORT_CONTROL_PANEL38 SERVER_PORT = configuration.EMOTIV_SERVER_PORT_EMOCOMPOSER39 SERVER_PORT = configuration.EMOTIV_SERVER_PORT_CONTROL_PANEL 40 #SERVER_PORT = configuration.EMOTIV_SERVER_PORT_EMOCOMPOSER 39 41 40 42 TIMER_BASED__LOOP = True … … 46 48 ##################################################################### 47 49 48 #class puzzlebox_synapse_client_emotiv(QtCore.QThread): 49 class puzzlebox_synapse_client_emotiv(): 50 class puzzlebox_synapse_client_emotiv(QtCore.QThread): 50 51 51 52 def __init__(self, log, \ … … 55 56 parent=None): 56 57 57 #QtCore.QThread.__init__(self,parent)58 QtCore.QThread.__init__(self,parent) 58 59 59 60 self.log = log … … 65 66 66 67 self.name = "Emotiv Client" 67 68 #self.protocol = emotiv_protocol69 68 70 69 #self.configureNetwork() … … 80 79 ################################################################## 81 80 82 def processEvent(self):81 #def processEvent(self): 83 82 84 print "yoda" 85 86 emotiv_protocol.start(host=self.server_host, port=self.server_port, initialized=True, parent=self) 87 88 print "brah" 83 #emotiv_protocol.start(host=self.server_host, port=self.server_port, initialized=True, parent=self) 89 84 90 85 … … 93 88 def configureNetwork(self): 94 89 95 print "here"96 97 90 emotiv_protocol.start(host=self.server_host, \ 98 91 port=self.server_port, \ 99 92 initialized=False, \ 100 93 parent=self) 101 102 print "there"103 94 104 95 … … 110 101 if (self.parent != None): 111 102 self.parent.processPacketEmotiv(packet) 112 113 114 #print "yoda" 115 116 #emotiv_protocol.start(host=self.server_host, port=self.server_port, initialized=True, parent=self) 117 118 #print "brah" 119 103 120 104 121 105 ################################################################## 122 106 123 #def run(self): 124 def start(self): 107 def run(self): 125 108 126 109 if self.DEBUG: … … 129 112 self.configureNetwork() 130 113 131 #self.exec_()114 self.exec_() 132 115 133 116 … … 143 126 emotiv_protocol.KEEP_RUNNING = False 144 127 145 pass 128 count = 1 129 while emotiv_protocol.CONNECTED: 130 time.sleep(0.10) 131 count = count + 1 132 if count >= 10: 133 break 146 134 147 135 … … 152 140 self.stop() 153 141 154 #if callThreadQuit:155 #QtCore.QThread.quit(self)142 if callThreadQuit: 143 QtCore.QThread.quit(self) 156 144 157 158 #####################################################################159 # Command line class160 #####################################################################161 162 #class CLIClient(QtClient):163 164 #def __init__(self, log, \165 #command_parameters, \166 #server_host=SERVER_HOST, \167 #server_port=SERVER_PORT, \168 #DEBUG=DEBUG):169 170 #self.log = log171 #self.DEBUG = DEBUG172 #self.parent = None173 174 #self.command_parameters = command_parameters175 #self.server_host = server_host176 #self.server_port = server_port177 178 #self.configureNetwork()179 180 #self.execute_command_line()181 182 183 ###################################################################184 185 #def execute_command_line(self):186 187 #(command) = self.parse_command_line(self.command_parameters)188 189 #if (command != None):190 191 #self.sendCommand(command)192 193 #self.socket.waitForReadyRead(CLIENT_NO_REPLY_WAIT)194 195 196 ###################################################################197 198 #def parse_command_line(self, command_parameters):199 200 #command = None201 202 #for each in command_parameters:203 #if each.startswith("--command="):204 #command = each[ len("--command="): ]205 206 207 #return(command)208 -
trunk/Puzzlebox/Synapse/Interface.py
r353 r357 7 7 8 8 __changelog__ = """\ 9 Last Update: 2012.03. 299 Last Update: 2012.03.30 10 10 """ 11 11 … … 16 16 ### IMPORTS ### 17 17 import os, sys, time 18 import simplejson as json18 #import simplejson as json 19 19 20 20 … … 138 138 self.name = "Synapse Interface" 139 139 140 self. thinkGearConnectServer = None140 self.synapseServer = None 141 141 self.thinkgearConnectClient = None 142 self.emotivClient = None 142 143 143 144 self.maxEEGPower = THINKGEAR_EMULATION_MAX_EEG_POWER_VALUE … … 215 216 216 217 217 # ThinkGear Device218 # EEG Devices 218 219 self.updateDevices() 219 220 220 221 221 # ThinkGearConnect Server222 # Connect Server 222 223 self.textLabelBluetoothStatus.setText("Status: Disconnected") 223 224 224 225 # Display Host for ThinkGear Connect Socket Server 225 self.lineEdit ThinkGearHost.setText(THINKGEAR_SERVER_HOST)226 self.lineEditSynapseHost.setText(THINKGEAR_SERVER_HOST) 226 227 227 228 # Display Port for ThinkGear Connect Socket Server 228 self.lineEdit ThinkGearPort.setText('%i' % THINKGEAR_SERVER_PORT)229 self.lineEditSynapsePort.setText('%i' % THINKGEAR_SERVER_PORT) 229 230 230 231 … … 276 277 self.updateDevices) 277 278 278 self.connect(self.pushButtonBluetoothConnect, \279 QtCore.SIGNAL("clicked()"), \280 self.connectToThinkGearDevice)281 282 self.connect(self.pushButton ThinkGearConnect, \279 #self.connect(self.pushButtonBluetoothConnect, \ 280 #QtCore.SIGNAL("clicked()"), \ 281 #self.connectToThinkGearDevice) 282 283 self.connect(self.pushButtonSynapseServer, \ 283 284 QtCore.SIGNAL("clicked()"), \ 284 285 self.startSynapseServer) … … 299 300 ################################################################## 300 301 301 def connectToThinkGearDevice(self): 302 def startSynapseServer(self): 303 304 eeg_headset_model = str(self.comboBoxEEGHeadsetModel.currentText()) 305 device_address = str(self.comboBoxDeviceSelect.currentText()) 306 server_interface = str(self.lineEditSynapseHost.text()) 307 server_port = int(self.lineEditSynapsePort.text()) 308 emulate_headset_data = (device_address == 'ThinkGear Emulator') 309 310 311 if (eeg_headset_model == 'Emotiv EPOC'): 312 emulate_headset_data = True 313 314 315 self.synapseServer = \ 316 synapse_server.ThinkgearServer( \ 317 self.log, \ 318 server_interface=server_interface, \ 319 server_port=server_port, \ 320 device_address=device_address, \ 321 device_model=None, \ 322 emulate_headset_data=emulate_headset_data, \ 323 DEBUG=DEBUG, \ 324 parent=self) 325 326 #self.connect(self.synapseServer, \ 327 #QtCore.SIGNAL("sendPacket()"), \ 328 #self.synapseServer.sendPacketQueue) 329 330 self.synapseServer.start() 331 332 333 if ((eeg_headset_model == 'NeuroSky MindWave') or \ 334 (eeg_headset_model == 'NeuroSky MindSet')): 335 336 self.startThinkGearConnectClient() 337 338 elif (eeg_headset_model == 'Emotiv EPOC'): 339 340 self.startEmotivClient() 341 302 342 303 343 device_selection = self.comboBoxDeviceSelect.currentText() 304 305 self.disconnect(self.pushButtonBluetoothConnect, \306 QtCore.SIGNAL("clicked()"), \307 self.connectToThinkGearDevice)308 309 self.connect(self.pushButtonBluetoothConnect, \310 QtCore.SIGNAL("clicked()"), \311 self.disconnectFromThinkGearDevice)312 313 344 self.textLabelBluetoothStatus.setText("Status: Connected") 314 315 345 self.pushButtonBluetoothSearch.setEnabled(False) 316 317 self.pushButtonBluetoothConnect.setText('Disconnect')318 self.pushButtonBluetoothConnect.setChecked(True)319 320 346 self.comboBoxDeviceSelect.setEnabled(False) 321 347 self.comboBoxEEGHeadsetModel.setEnabled(False) 322 323 324 ################################################################## 325 326 def disconnectFromThinkGearDevice(self): 327 328 self.disconnect(self.pushButtonBluetoothConnect, \ 348 349 self.lineEditSynapseHost.setEnabled(False) 350 self.lineEditSynapsePort.setEnabled(False) 351 352 self.pushButtonSynapseServer.setText('Stop') 353 354 self.progressBarEEGDelta.setValue(0) 355 self.progressBarEEGTheta.setValue(0) 356 self.progressBarEEGLowAlpha.setValue(0) 357 self.progressBarEEGHighAlpha.setValue(0) 358 self.progressBarEEGLowBeta.setValue(0) 359 self.progressBarEEGHighBeta.setValue(0) 360 self.progressBarEEGLowGamma.setValue(0) 361 self.progressBarEEGMidGamma.setValue(0) 362 363 self.progressBarAttention.setValue(0) 364 self.progressBarMeditation.setValue(0) 365 366 367 self.disconnect(self.pushButtonSynapseServer, \ 329 368 QtCore.SIGNAL("clicked()"), \ 330 self. disconnectFromThinkGearDevice)331 332 self.connect(self.pushButton BluetoothConnect, \369 self.startSynapseServer) 370 371 self.connect(self.pushButtonSynapseServer, \ 333 372 QtCore.SIGNAL("clicked()"), \ 334 self.connectToThinkGearDevice) 373 self.stopSynapseServer) 374 375 376 ################################################################## 377 378 def stopSynapseServer(self): 379 380 381 eeg_headset_model = str(self.comboBoxEEGHeadsetModel.currentText()) 382 device_address = str(self.comboBoxDeviceSelect.currentText()) 383 384 if ((eeg_headset_model == 'NeuroSky MindWave') or \ 385 (eeg_headset_model == 'NeuroSky MindSet')): 386 387 self.stopThinkGearConnectClient() 388 389 elif (eeg_headset_model == 'Emotiv EPOC'): 390 391 self.stopEmotivClient() 392 393 394 if UPDATE_INTERFACE_VIA_TIMER: 395 self.updateInterfaceTimer.stop() 396 else: 397 try: 398 self.synapseServer.exitThread() 399 except Exception, e: 400 if self.DEBUG: 401 print "Call failed to self.synapseServer.exitThread():", 402 print e 403 404 405 self.disconnect(self.pushButtonSynapseServer, \ 406 QtCore.SIGNAL("clicked()"), \ 407 self.stopSynapseServer) 408 409 self.connect(self.pushButtonSynapseServer, \ 410 QtCore.SIGNAL("clicked()"), \ 411 self.startSynapseServer) 412 413 self.lineEditSynapseHost.setEnabled(True) 414 self.lineEditSynapsePort.setEnabled(True) 415 416 self.pushButtonSynapseServer.setText('Start') 417 418 self.pushButtonBluetoothSearch.setEnabled(True) 419 #self.pushButtonBluetoothConnect.setEnabled(True) 420 421 self.pushButtonSynapseServer.setChecked(False) 335 422 336 423 self.textLabelBluetoothStatus.setText("Status: Disconnected") … … 338 425 self.pushButtonBluetoothSearch.setEnabled(True) 339 426 340 self.pushButtonBluetoothConnect.setText('Connect')341 self.pushButtonBluetoothConnect.setChecked(False)427 #self.pushButtonBluetoothConnect.setText('Connect') 428 #self.pushButtonBluetoothConnect.setChecked(False) 342 429 343 430 self.comboBoxDeviceSelect.setEnabled(True) … … 376 463 ################################################################## 377 464 378 def startSynapseServer(self): 379 380 eeg_headset_model = str(self.comboBoxEEGHeadsetModel.currentText()) 381 device_address = str(self.comboBoxDeviceSelect.currentText()) 382 383 if ((eeg_headset_model == 'NeuroSky MindWave') or \ 384 (eeg_headset_model == 'NeuroSky MindSet')): 385 386 self.startThinkGearConnectServer() 387 388 elif (eeg_headset_model == 'Emotiv EPOC'): 389 390 self.startEmotivServer() 391 392 393 ################################################################## 394 395 def processPacketEmotiv(self, packet): 396 397 print 398 print "Booyah" 399 print 400 print packet 401 print 402 print 403 404 405 ################################################################## 406 407 def startEmotivServer(self): 408 409 eeg_headset_model = str(self.comboBoxEEGHeadsetModel.currentText()) 410 device_address = str(self.comboBoxDeviceSelect.currentText()) 411 412 server_host = configuration.EMOTIV_SERVER_HOST 413 414 if device_address == 'Emotiv EPOC': 415 server_port = configuration.EMOTIV_SERVER_PORT_CONTROL_PANEL 416 else: 417 server_port = configuration.EMOTIV_SERVER_PORT_EMOCOMPOSER 418 419 self.emotivClient = \ 420 emotiv_client.puzzlebox_synapse_client_emotiv( \ 421 log=self.log, \ 422 server_host=server_host, \ 423 server_port=server_port, \ 424 DEBUG=DEBUG, \ 425 parent=self) 426 427 self.emotivClient.start() 428 429 430 #self.progressBarEEGDelta.setValue(0) 431 #self.progressBarEEGTheta.setValue(0) 432 #self.progressBarEEGLowAlpha.setValue(0) 433 #self.progressBarEEGHighAlpha.setValue(0) 434 #self.progressBarEEGLowBeta.setValue(0) 435 #self.progressBarEEGHighBeta.setValue(0) 436 #self.progressBarEEGLowGamma.setValue(0) 437 #self.progressBarEEGMidGamma.setValue(0) 438 439 #self.progressBarAttention.setValue(0) 440 #self.progressBarMeditation.setValue(0) 441 442 443 #self.progressBarEEGDelta.setEnabled(False) 444 #self.progressBarEEGTheta.setEnabled(False) 445 #self.progressBarEEGLowAlpha.setEnabled(False) 446 #self.progressBarEEGHighAlpha.setEnabled(False) 447 #self.progressBarEEGLowBeta.setEnabled(False) 448 #self.progressBarEEGHighBeta.setEnabled(False) 449 #self.progressBarEEGLowGamma.setEnabled(False) 450 #self.progressBarEEGMidGamma.setEnabled(False) 451 452 #self.progressBarAttention.setEnabled(False) 453 #self.progressBarMeditation.setEnabled(False) 454 455 456 ################################################################## 457 458 def startThinkGearConnectServer(self): 465 def startThinkGearConnectClient(self): 459 466 460 467 # Ensure EEG device is connected first 461 468 462 if not self.pushButtonBluetoothConnect.isChecked(): 463 self.connectToThinkGearDevice() 464 465 466 self.pushButtonBluetoothSearch.setEnabled(False) 467 self.pushButtonBluetoothConnect.setEnabled(False) 468 469 server_interface = str(self.lineEditThinkGearHost.text()) 470 server_port = int(self.lineEditThinkGearPort.text()) 471 device_address = str(self.comboBoxDeviceSelect.currentText()) 472 emulate_headset_data = (device_address == 'ThinkGear Emulator') 473 474 475 self.thinkGearConnectServer = \ 476 synapse_server.ThinkgearServer( \ 477 self.log, \ 478 server_interface=server_interface, \ 479 server_port=server_port, \ 480 device_address=device_address, \ 481 device_model=None, \ 482 emulate_headset_data=emulate_headset_data, \ 483 DEBUG=DEBUG, \ 484 parent=self) 485 486 #self.connect(self.thinkGearConnectServer, \ 487 #QtCore.SIGNAL("sendPacket()"), \ 488 #self.thinkGearConnectServer.sendPacketQueue) 489 490 self.thinkGearConnectServer.start() 469 #if not self.pushButtonBluetoothConnect.isChecked(): 470 #self.connectToThinkGearDevice() 471 #device_selection = self.comboBoxDeviceSelect.currentText() 472 #self.textLabelBluetoothStatus.setText("Status: Connected") 473 #self.pushButtonBluetoothSearch.setEnabled(False) 474 #self.comboBoxDeviceSelect.setEnabled(False) 475 #self.comboBoxEEGHeadsetModel.setEnabled(False) 476 477 478 #self.pushButtonBluetoothSearch.setEnabled(False) 479 #self.pushButtonBluetoothConnect.setEnabled(False) 480 481 server_interface = str(self.lineEditSynapseHost.text()) 482 server_port = int(self.lineEditSynapsePort.text()) 483 #device_address = str(self.comboBoxDeviceSelect.currentText()) 484 #emulate_headset_data = (device_address == 'ThinkGear Emulator') 485 486 487 #self.synapseServer = \ 488 #synapse_server.ThinkgearServer( \ 489 #self.log, \ 490 #server_interface=server_interface, \ 491 #server_port=server_port, \ 492 #device_address=device_address, \ 493 #device_model=None, \ 494 #emulate_headset_data=emulate_headset_data, \ 495 #DEBUG=DEBUG, \ 496 #parent=self) 497 498 ##self.connect(self.synapseServer, \ 499 ##QtCore.SIGNAL("sendPacket()"), \ 500 ##self.synapseServer.sendPacketQueue) 501 502 #self.synapseServer.start() 491 503 492 504 … … 506 518 507 519 508 self.disconnect(self.pushButtonThinkGearConnect, \509 QtCore.SIGNAL("clicked()"), \510 self.startThinkGearConnectServer)511 512 self.connect(self.pushButtonThinkGearConnect, \513 QtCore.SIGNAL("clicked()"), \514 self.stopThinkGearConnectServer)515 516 self.lineEditThinkGearHost.setEnabled(False)517 self.lineEditThinkGearPort.setEnabled(False)518 519 self.pushButtonThinkGearConnect.setText('Stop')520 521 522 ################################################################## 523 524 def stopThinkGearConnect Server(self):520 #self.disconnect(self.pushButtonSynapseServer, \ 521 #QtCore.SIGNAL("clicked()"), \ 522 #self.startThinkGearConnectClient) 523 524 #self.connect(self.pushButtonSynapseServer, \ 525 #QtCore.SIGNAL("clicked()"), \ 526 #self.stopThinkGearConnectClient) 527 528 #self.lineEditSynapseHost.setEnabled(False) 529 #self.lineEditSynapsePort.setEnabled(False) 530 531 #self.pushButtonSynapseServer.setText('Stop') 532 533 534 ################################################################## 535 536 def stopThinkGearConnectClient(self): 525 537 526 538 if UPDATE_INTERFACE_VIA_TIMER: … … 534 546 print e 535 547 536 try: 537 self.thinkGearConnectServer.exitThread() 538 except Exception, e: 539 if self.DEBUG: 540 print "Call failed to self.thinkGearConnectServer.exitThread():", 541 print e 542 543 self.disconnect(self.pushButtonThinkGearConnect, \ 544 QtCore.SIGNAL("clicked()"), \ 545 self.stopThinkGearConnectServer) 546 547 self.connect(self.pushButtonThinkGearConnect, \ 548 QtCore.SIGNAL("clicked()"), \ 549 self.startSynapseServer) 550 551 self.lineEditThinkGearHost.setEnabled(True) 552 self.lineEditThinkGearPort.setEnabled(True) 553 554 self.pushButtonThinkGearConnect.setText('Start') 548 #try: 549 #self.synapseServer.exitThread() 550 #except Exception, e: 551 #if self.DEBUG: 552 #print "Call failed to self.synapseServer.exitThread():", 553 #print e 554 555 #self.disconnect(self.pushButtonSynapseServer, \ 556 #QtCore.SIGNAL("clicked()"), \ 557 #self.stopSynapseServer) 558 559 #self.connect(self.pushButtonSynapseServer, \ 560 #QtCore.SIGNAL("clicked()"), \ 561 #self.startSynapseServer) 562 563 #self.lineEditSynapseHost.setEnabled(True) 564 #self.lineEditSynapsePort.setEnabled(True) 565 566 #self.pushButtonSynapseServer.setText('Start') 567 568 ##self.pushButtonBluetoothSearch.setEnabled(True) 569 ##self.pushButtonBluetoothConnect.setEnabled(True) 570 571 #self.pushButtonSynapseServer.setChecked(False) 572 573 574 ################################################################## 575 576 #def connectToThinkGearDevice(self): 577 578 #device_selection = self.comboBoxDeviceSelect.currentText() 579 580 ##self.disconnect(self.pushButtonBluetoothConnect, \ 581 ##QtCore.SIGNAL("clicked()"), \ 582 ##self.connectToThinkGearDevice) 583 584 ##self.connect(self.pushButtonBluetoothConnect, \ 585 ##QtCore.SIGNAL("clicked()"), \ 586 ##self.disconnectFromThinkGearDevice) 587 588 #self.textLabelBluetoothStatus.setText("Status: Connected") 589 590 #self.pushButtonBluetoothSearch.setEnabled(False) 591 592 ##self.pushButtonBluetoothConnect.setText('Disconnect') 593 ##self.pushButtonBluetoothConnect.setChecked(True) 594 595 #self.comboBoxDeviceSelect.setEnabled(False) 596 #self.comboBoxEEGHeadsetModel.setEnabled(False) 597 598 599 ################################################################## 600 601 #def disconnectFromThinkGearDevice(self): 602 603 ##self.disconnect(self.pushButtonBluetoothConnect, \ 604 ##QtCore.SIGNAL("clicked()"), \ 605 ##self.disconnectFromThinkGearDevice) 606 607 ##self.connect(self.pushButtonBluetoothConnect, \ 608 ##QtCore.SIGNAL("clicked()"), \ 609 ##self.connectToThinkGearDevice) 610 611 #self.textLabelBluetoothStatus.setText("Status: Disconnected") 555 612 556 613 #self.pushButtonBluetoothSearch.setEnabled(True) 557 self.pushButtonBluetoothConnect.setEnabled(True) 558 559 self.pushButtonThinkGearConnect.setChecked(False) 614 615 ##self.pushButtonBluetoothConnect.setText('Connect') 616 ##self.pushButtonBluetoothConnect.setChecked(False) 617 618 #self.comboBoxDeviceSelect.setEnabled(True) 619 #self.comboBoxEEGHeadsetModel.setEnabled(True) 620 621 622 #self.progressBarEEGDelta.setValue(0) 623 #self.progressBarEEGTheta.setValue(0) 624 #self.progressBarEEGLowAlpha.setValue(0) 625 #self.progressBarEEGHighAlpha.setValue(0) 626 #self.progressBarEEGLowBeta.setValue(0) 627 #self.progressBarEEGHighBeta.setValue(0) 628 #self.progressBarEEGLowGamma.setValue(0) 629 #self.progressBarEEGMidGamma.setValue(0) 630 631 #self.progressBarAttention.setValue(0) 632 #self.progressBarMeditation.setValue(0) 633 634 #self.progressBarSignalContactQuality.setValue(0) 635 636 #self.maxEEGPower = THINKGEAR_EMULATION_MAX_EEG_POWER_VALUE 637 638 ## In case the user connects to a MindSet, then disconnects 639 ## and re-connects to a MindSet Emulator, 640 ## we need to reset the max power values 641 #self.progressBarEEGDelta.setMaximum(self.maxEEGPower) 642 #self.progressBarEEGTheta.setMaximum(self.maxEEGPower) 643 #self.progressBarEEGLowAlpha.setMaximum(self.maxEEGPower) 644 #self.progressBarEEGHighAlpha.setMaximum(self.maxEEGPower) 645 #self.progressBarEEGLowBeta.setMaximum(self.maxEEGPower) 646 #self.progressBarEEGHighBeta.setMaximum(self.maxEEGPower) 647 #self.progressBarEEGLowGamma.setMaximum(self.maxEEGPower) 648 #self.progressBarEEGMidGamma.setMaximum(self.maxEEGPower) 649 650 651 ################################################################## 652 653 def startEmotivClient(self): 654 655 eeg_headset_model = str(self.comboBoxEEGHeadsetModel.currentText()) 656 device_address = str(self.comboBoxDeviceSelect.currentText()) 657 658 server_host = configuration.EMOTIV_SERVER_HOST 659 660 if device_address == 'Emotiv EPOC': 661 server_port = configuration.EMOTIV_SERVER_PORT_CONTROL_PANEL 662 else: 663 server_port = configuration.EMOTIV_SERVER_PORT_EMOCOMPOSER 664 665 self.emotivClient = \ 666 emotiv_client.puzzlebox_synapse_client_emotiv( \ 667 log=self.log, \ 668 server_host=server_host, \ 669 server_port=server_port, \ 670 DEBUG=DEBUG, \ 671 parent=self) 672 673 self.emotivClient.start() 674 675 676 self.progressBarEEGDelta.setEnabled(False) 677 self.progressBarEEGTheta.setEnabled(False) 678 self.progressBarEEGLowAlpha.setEnabled(False) 679 self.progressBarEEGHighAlpha.setEnabled(False) 680 self.progressBarEEGLowBeta.setEnabled(False) 681 self.progressBarEEGHighBeta.setEnabled(False) 682 self.progressBarEEGLowGamma.setEnabled(False) 683 self.progressBarEEGMidGamma.setEnabled(False) 684 685 self.progressBarAttention.setEnabled(False) 686 self.progressBarMeditation.setEnabled(False) 687 688 689 ################################################################## 690 691 def stopEmotivClient(self): 692 693 self.emotivClient.stop() 694 695 self.progressBarEEGDelta.setEnabled(True) 696 self.progressBarEEGTheta.setEnabled(True) 697 self.progressBarEEGLowAlpha.setEnabled(True) 698 self.progressBarEEGHighAlpha.setEnabled(True) 699 self.progressBarEEGLowBeta.setEnabled(True) 700 self.progressBarEEGHighBeta.setEnabled(True) 701 self.progressBarEEGLowGamma.setEnabled(True) 702 self.progressBarEEGMidGamma.setEnabled(True) 703 704 self.progressBarAttention.setEnabled(True) 705 self.progressBarMeditation.setEnabled(True) 560 706 561 707 … … 564 710 def updateInterface(self): 565 711 566 if not self. thinkGearConnectServer.emulate_headset_data:712 if not self.synapseServer.emulate_headset_data: 567 713 self.processPacketThinkGear( \ 568 self. thinkGearConnectServer.protocol.data_packet)714 self.synapseServer.protocol.data_packet) 569 715 570 716 … … 626 772 # If we are not emulating packets we'll set the maximum EEG Power value 627 773 # threshold to the default (or maximum value found within this packet) 628 if not self. thinkGearConnectServer.emulate_headset_data:774 if not self.synapseServer.emulate_headset_data: 629 775 self.maxEEGPower = THINKGEAR_EMULATION_MAX_EEG_POWER_VALUE 630 776 … … 690 836 691 837 692 if ((self. thinkGearConnectServer.protocol != None) and838 if ((self.synapseServer.protocol != None) and 693 839 (self.tabWidget.currentIndex() == \ 694 840 self.tabWidget.indexOf(self.tabControlPanel))): 695 841 696 842 self.updateProfileSessionStatus() 843 844 845 ################################################################## 846 847 def processPacketEmotiv(self, packet): 848 849 print 850 print "Booyah" 851 print 852 print packet 853 print 854 print 697 855 698 856 … … 719 877 try: 720 878 target.textLabelPacketsReceived.setText( "%i" % \ 721 source. thinkGearConnectServer.protocol.packet_count)879 source.synapseServer.protocol.packet_count) 722 880 except: 723 881 pass … … 725 883 try: 726 884 target.textLabelPacketsDropped.setText( "%i" % \ 727 source. thinkGearConnectServer.protocol.bad_packets)885 source.synapseServer.protocol.bad_packets) 728 886 except: 729 887 pass … … 735 893 736 894 if self.parent == None: 737 server = self. thinkGearConnectServer895 server = self.synapseServer 738 896 else: 739 server = self.parent. thinkGearConnectServer897 server = self.parent.synapseServer 740 898 741 899 session_time = time.time() - \ … … 1602 1760 source.packets['signals'] = [] 1603 1761 1604 source. thinkGearConnectServer.protocol.session_start_timestamp = \1762 source.synapseServer.protocol.session_start_timestamp = \ 1605 1763 time.time() 1606 1764 1607 source. thinkGearConnectServer.protocol.packet_count = 01608 source. thinkGearConnectServer.protocol.bad_packets = 01765 source.synapseServer.protocol.packet_count = 0 1766 source.synapseServer.protocol.bad_packets = 0 1609 1767 1610 1768 self.updateProfileSessionStatus() … … 1650 1808 if self.thinkgearConnectClient != None: 1651 1809 self.thinkgearConnectClient.exitThread() 1652 1653 if self.thinkGearConnectServer != None: 1654 self.thinkGearConnectServer.exitThread() 1810 if self.emotivClient != None: 1811 self.emotivClient.exitThread() 1812 1813 if self.synapseServer != None: 1814 self.synapseServer.exitThread() 1655 1815 1656 1816 -
trunk/puzzlebox_synapse_configuration.ini
r276 r357 25 25 THINKGEAR_SERVER_HOST = '*' 26 26 THINKGEAR_SERVER_PORT = 13854 27 28 EMOTIV_SERVER_HOST = '127.0.0.1' 29 EMOTIV_SERVER_PORT_CONTROL_PANEL = 3008 30 EMOTIV_SERVER_PORT_EMOCOMPOSER = 1726 27 31 28 32
Note: See TracChangeset
for help on using the changeset viewer.