WIP Implement WheelchairAdapter.py
This commit is contained in:
parent
f59b74f403
commit
f3d2d2f7a2
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,5 +1,6 @@
|
||||
__pycache__
|
||||
build
|
||||
dist
|
||||
*.spec
|
||||
questions
|
||||
questionnaire.py
|
||||
questionnaire.py
|
||||
|
@ -1,14 +1,8 @@
|
||||
# TODO für python3 anpassen und in gui mit einfügen
|
||||
|
||||
# imports
|
||||
from socket import *
|
||||
import thread, threading, struct
|
||||
import Queue
|
||||
import time, datetime
|
||||
from time import clock
|
||||
import os
|
||||
import ctypes
|
||||
|
||||
import threading
|
||||
import queue
|
||||
import time
|
||||
|
||||
# connect to BCI2000 in a new thread
|
||||
class BCI2000ReceiverThread(threading.Thread):
|
||||
@ -31,7 +25,7 @@ class BCI2000ReceiverThread(threading.Thread):
|
||||
self.UDPSock = socket(AF_INET,SOCK_DGRAM)
|
||||
self.UDPSock.bind(self.addr) # BIND to LISTEN
|
||||
print('%s initialized to %s at port %s' % (self.getName(), self.host, self.port))
|
||||
print('Relaying SelectedTargerts to port -- %s ---' % self.UNITY_PORT)
|
||||
print('Relaying SelectedTargets to port -- %s ---' % self.UNITY_PORT)
|
||||
self.relay_unity = socket(AF_INET,SOCK_DGRAM) # UDP RELAY TO UNITY
|
||||
print('Relaying all to port -- %s ---' % self.FEATHER_PORT)
|
||||
self.relay_feather = socket(AF_INET,SOCK_DGRAM) # UDP RELAY TO FEATHER
|
||||
@ -59,7 +53,7 @@ class BCI2000ReceiverThread(threading.Thread):
|
||||
if "SelectedTarget 0" in self.data:
|
||||
self.go = True
|
||||
if "SelectedTarget" in self.data and "SelectedTarget 0" not in self.data and self.go == True:
|
||||
print "Relaying Command to Unity: ", self.data
|
||||
print("Relaying Command to Unity: ", self.data)
|
||||
self.relay_unity.sendto(self.data, (self.host, self.UNITY_PORT))
|
||||
self.go = False
|
||||
|
||||
@ -69,7 +63,7 @@ class BCI2000ReceiverThread(threading.Thread):
|
||||
#print (phaseInSequence)
|
||||
|
||||
if contains(self.data, "StimulusCode "):
|
||||
print "Relaying Command to Feather: ", self.data
|
||||
print("Relaying Command to TactileBCIfilter: ", self.data)
|
||||
self.relay_feather.sendto(self.data, (self.host, self.FEATHER_PORT))
|
||||
|
||||
StimulusCode=int(self.data.replace('StimulusCode ',''))
|
||||
@ -93,23 +87,18 @@ class BCI2000ReceiverThread(threading.Thread):
|
||||
def returnProgramStatus(self):
|
||||
return self.running
|
||||
|
||||
def kill(self):
|
||||
self.running=False
|
||||
log('%s terminated' % (self.getName()))
|
||||
|
||||
|
||||
### M A I N P R O G R A M M ###
|
||||
|
||||
# # initialize queue
|
||||
# phaseInSequenceQueue = queue.Queue()
|
||||
# StimulusCodeQueue = queue.Queue()
|
||||
|
||||
# initialize queue
|
||||
phaseInSequenceQueue = Queue.Queue()
|
||||
StimulusCodeQueue = Queue.Queue()
|
||||
# RunApplication = True
|
||||
|
||||
RunApplication = True
|
||||
|
||||
#start BCI2000ReceiverThread
|
||||
BCI2000ReceiverThread1=BCI2000ReceiverThread(1, phaseInSequenceQueue, StimulusCodeQueue)
|
||||
BCI2000ReceiverThread1.start()
|
||||
# #start BCI2000ReceiverThread
|
||||
# BCI2000ReceiverThread1=BCI2000ReceiverThread(1, phaseInSequenceQueue, StimulusCodeQueue)
|
||||
# BCI2000ReceiverThread1.start()
|
||||
|
||||
|
||||
|
||||
|
14
app.py
14
app.py
@ -11,13 +11,15 @@ import tkinter.filedialog
|
||||
import subprocess
|
||||
import configparser
|
||||
import os
|
||||
# import queue
|
||||
|
||||
# own code:
|
||||
# from questionnaire import quest
|
||||
# from wheelchairAdapter import BCI2000ReceiverThread
|
||||
|
||||
# TODO Eventuell updatefunktion über git pull mit einbauen!
|
||||
|
||||
__version__ = 0.3
|
||||
__version__ = 0.4
|
||||
|
||||
class PythonBCIgui:
|
||||
|
||||
@ -112,6 +114,7 @@ class PythonBCIgui:
|
||||
# 5. WHEELCHAIR SIMULATOR ###########################
|
||||
def btn_tacSimul(self):
|
||||
print('Starte Wheelchair Simulator')
|
||||
# BCI2000ReceiverThread1.start()
|
||||
subprocess.Popen(config['PATH']['wheelchairsimulator'] + r'\Wheels_Occlusion_AutoLog.exe')
|
||||
subprocess.Popen([config['PATH']['bci2000'] + r'\prog\Operator.exe', '--OnConnect', '-LOAD PARAMETERFILE TactileDrive.prm'])
|
||||
subprocess.Popen([config['PATH']['bci2000'] + r'\prog\gUSBampSource.exe', '127.0.0.1'])
|
||||
@ -258,6 +261,15 @@ pathMenu.add_command(label="Wheelchair Simulator", command=setPathWheelchair)
|
||||
|
||||
root.config(menu = leistenMenu)
|
||||
|
||||
# # initialize queue for wheelchairadapter
|
||||
# phaseInSequenceQueue = queue.Queue()
|
||||
# StimulusCodeQueue = queue.Queue()
|
||||
|
||||
# RunApplication = True
|
||||
|
||||
# # initialize BCI2000ReceiverThread for wheelchairadapter
|
||||
# BCI2000ReceiverThread1 = BCI2000ReceiverThread(1, phaseInSequenceQueue, StimulusCodeQueue)
|
||||
|
||||
app = PythonBCIgui(root)
|
||||
root.mainloop()
|
||||
#root.destroy() # optional;
|
||||
|
Loading…
x
Reference in New Issue
Block a user