diff --git a/.gitignore b/.gitignore index 07eaedb..cf008f9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ __pycache__ build dist +*.spec questions -questionnaire.py \ No newline at end of file +questionnaire.py diff --git a/WheelchairAdapter.py b/WheelchairAdapter.py index 16333c9..524603b 100644 --- a/WheelchairAdapter.py +++ b/WheelchairAdapter.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() diff --git a/app.py b/app.py index 2a23012..689252c 100644 --- a/app.py +++ b/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;