def read_debug(self):
        NUM_BYTES = 23
        p = None

        while self.s.inWaiting() >= NUM_BYTES:
            self.running = not self.running
            '''
            if(self.running):
                print "\r+",
            else:
                print "\r-",

            sys.stdout.flush()
            '''    
            rs = self.s.read(NUM_BYTES)
            if ord(rs[0]) == ord('$'):
                #print ord(rs[0]) + ord(rs[1])
                pkt_code = ord(rs[1])
                if pkt_code == 1:
                    d = debug_packet(rs)
                    d.display()
                    print d
                    #self.debug_delegate.dispatch(d)
                elif pkt_code == 3:
                    d = data_packet(rs)
                    #d.display()
                    data = d.data
                    datatype = d.type

                    if datatype == 0:
                        print "1:"+data[0]
                        print "2:"+data[1]
                        print "3:"+data[2]
    def read_debug(self):
        NUM_BYTES = 23
        p = None

        while self.s.inWaiting() >= NUM_BYTES:
            rs = self.s.read(NUM_BYTES)
            if ord(rs[0]) == ord('$'):
                pkt_code = ord(rs[1])
                print "\r@"
                if pkt_code == 1:
                    d = debug_packet(rs)
                    d.display()                
                elif pkt_code == 3:
                    d = data_packet(rs)
                    #d.display()
                    data = d.data
                    datatype = d.type

                    if datatype ==0:
                        self.index = self.index+1
                        if(self.index == 1000):
                            self.index=0
                        self.x_list[self.index] = data[0]
                        self.y_list[self.index] = data[1]
                        self.z_list[self.index] = data[2]
                        #plt.plot(self.x_list)
                        #plt.show()
                        #plt.pause(0.001)
                        #print ","
                        
                        if (self.index %2 == 1):
                            print "+",
                        else:
                            print "-",
                        sys.stdout.flush()
Example #3
0
    def read_debug(self):
        NUM_BYTES = 23
        p = None

        time.sleep(0.005)

        
        while self.s.inWaiting() >= NUM_BYTES:
            #time.sleep(0.01)
            if self.index_accel >= self.SIZE:
                break
            rs = self.s.read(NUM_BYTES)
            if ord(rs[0]) == ord('$'):
                pkt_code = ord(rs[1])
                #print "."
                print "\r",#+str(pkt_code),
                if pkt_code == 1:
                    d = debug_packet(rs)
                    d.display()
                elif pkt_code == 2:
                    p = quat_packet(rs)
                    self.quat_list[self.index_quat] = p
                    self.index_quat = self.index_quat + 1
                    
                    #p.display()
                    print "+",
                elif pkt_code == 3:
                    d = data_packet(rs)
                    #d.display()
                    self.data = d.data
                    datatype = d.type

                    if datatype ==0:
                        #self.index = self.index+1
                        #print self.index
                        self.accel_list[self.index_accel] = d
                        self.x_list[self.index_accel] = d.data[0]
                        self.y_list[self.index_accel] = d.data[1]
                        self.z_list[self.index_accel] = d.data[2]

                        vec = [d.data[0] , d.data[1], d.data[2]]
                        vec = vec - self.gravity
                        norm = np.linalg.norm(vec)
                        norm = norm-1
                        self.mag_list[self.index_accel] = norm
                        
                        self.index_accel = self.index_accel +1
                        print "-",
            sys.stdout.flush()
    def read(self):

        NUM_BYTES = 23

        p = None

        while self.s.inWaiting() >= NUM_BYTES:

            rs = self.s.read(NUM_BYTES)

            if ord(rs[0]) == ord('$'):
                pkt_code = ord(rs[1])

                if pkt_code == 1:

                    d =debug_packet(rs)
                    print d
                    #self.debug_delegate.dispatch(d)

                elif pkt_code == 2:

                    p = quat_packet(rs)
                    #
                    #self.quat_delegate.dispatch(p) 

                elif pkt_code == 3:
                    d = data_packet(rs)
                    #d.display()3
                    #self.data_delegate.dispatch(d)

                else:
                    sss = "no handler for pkt_code",pkt_code
                    print sss
                    #f_file.write(sss + '\n')

            else:

                c = ' '
                print "serial misaligned!"
                               
                while not ord(c) == ord('$'):

                    c = self.s.read(1)

                self.s.read(NUM_BYTES-1)