Changeset 98


Ignore:
Timestamp:
07/10/10 03:06:54 (11 years ago)
Author:
sc
Message:

remote_control/puzzlebox_brainstorms_network_client.py:

  • NXT voltage status updates to client interface

remote_control/puzzlebox_brainstorms_remote_control.py:

  • NXT voltage status updates to client interface

remote_control/puzzlebox_brainstorms_client_interface_local.py:

  • automatic connection to local Brainstorms server instance

remote_control/puzzlebox_brainstorms_network_server.py:

Location:
remote_control
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • remote_control/puzzlebox_brainstorms_client_interface_local.py

    r97 r98  
    174174        server.start() 
    175175         
    176         thinkgear_server = thinkgear_server.puzzlebox_brainstorms_network_server_thinkgear(log, DEBUG=DEBUG) 
     176        #thinkgear_server = thinkgear_server.puzzlebox_brainstorms_network_server_thinkgear(log, DEBUG=DEBUG) 
    177177         
    178178        window = client_interface.puzzlebox_brainstorms_client_interface(log, DEBUG) 
     179        window.connectToBrainstormsServer() 
    179180        window.show() 
    180181         
  • remote_control/puzzlebox_brainstorms_network_client.py

    r88 r98  
    9191                                        print "--> [%s] Received:" % self.socket.name, 
    9292                                        print data 
     93                                 
     94                                 
     95                                # If Brainstorms server is connected to a LEGO Mindstorms NXT 
     96                                # robot, it will send back a voltage measurement which 
     97                                # can be presented to the user through the client interface 
     98                                if ((self.parent != None) and \ 
     99                                         (type(data) == type({})) and \ 
     100                                         ('status' in data.keys()) and \ 
     101                                         (type(data['status']) == type(''))): 
     102                                         
     103                                        self.parent.textLabelNXTStatus.setText( \ 
     104                                           'Status: %s' % data['status']) 
    93105         
    94106         
  • remote_control/puzzlebox_brainstorms_network_server.py

    r94 r98  
    100100        def processConnection(self): 
    101101                 
     102                print "%s: connected" % self.socket.name 
     103                 
    102104                clientConnection = self.socket.nextPendingConnection() 
    103105                clientConnection.disconnected.connect(clientConnection.deleteLater) 
     106                 
     107                print "%s: waiting" % self.socket.name 
    104108                 
    105109                if not clientConnection.waitForReadyRead(CLIENT_NO_REPLY_WAIT): 
     
    138142                 
    139143                 
    140                 clientConnection.disconnectFromHost() 
     144                #clientConnection.disconnectFromHost() 
    141145         
    142146         
     
    146150                 
    147151                #response = '%s command received' % command 
    148                 response = None 
     152                response = {} 
    149153                 
    150154                if DISCRETE_CONTROL_COMMANDS: 
    151155                         
    152                         self.executeCommand(data['command'], data['power']) 
     156                        response['status'] = self.executeCommand(data['command'], data['power']) 
    153157                         
    154158                         
     
    156160                         
    157161                        self.rc.run(data['command'], data['power']) 
     162                        response['status'] = self.rc.get_battery_voltage(self.rc.connection) 
     163                         
     164                else: 
     165                         
     166                        response = {} 
     167                        response['status'] = 'N/A' 
    158168                 
    159169                 
     
    168178                 
    169179                #os.system(command_line) 
     180                 
     181                status = 'N/A' 
    170182                 
    171183                rc = remote_control.puzzlebox_brainstorms_remote_control( \ 
     
    177189                        rc.run(rc.command) 
    178190                        rc.stop() 
     191                        status = rc.get_battery_voltage(rc.connection) 
     192                 
     193                 
     194                return(status) 
    179195 
    180196 
  • remote_control/puzzlebox_brainstorms_remote_control.py

    r87 r98  
    99# For more information please refer to http://www.gnu.org/copyleft/gpl.html 
    1010# 
    11 # Last Update: 2010.07.06 
     11# Last Update: 2010.07.09 
    1212# 
    1313##################################################################### 
     
    9696        def get_battery_voltage(self, connection): 
    9797                 
    98                 cmd = jaraco.nxt.messages.GetBatteryLevel() 
    99                 connection.send(cmd) 
    100                  
    101                 response = connection.receive() 
    102                 voltage = response.get_voltage() 
     98                voltage = 'N/A' 
     99                 
     100                if connection != None: 
     101                         
     102                        cmd = jaraco.nxt.messages.GetBatteryLevel() 
     103                        connection.send(cmd) 
     104                         
     105                        response = connection.receive() 
     106                        voltage = response.get_voltage() 
     107                 
    103108                 
    104109                return(voltage) 
Note: See TracChangeset for help on using the changeset viewer.