Subversion Repositories HomeAutomation

Rev

Rev 738 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 738 Rev 746
Line 25... Line 25...
25
        self.data = [val & self.DATA_MASK for val in data[:self.DATA_LENGTH]]
25
        self.data = [val & self.DATA_MASK for val in data[:self.DATA_LENGTH]]
26
        self.extended = extended
26
        self.extended = extended
27
        self.remote = remote
27
        self.remote = remote
28
 
28
 
29
    def toString(self):
29
    def toString(self):
30
        strpkt = 'PKT ' + hex(self.nodeId)[2:] # '0x' is cut from can2serial link
30
        strpkt = 'PKT ' + '%08X' % self.nodeId
31
        if self.extended:
31
        if self.extended:
32
            strpkt += ' 1'
32
            strpkt += ' 1'
33
        else:
33
        else:
34
            strpkt += ' 0'
34
            strpkt += ' 0'
35
        if self.remote:
35
        if self.remote:
36
            strpkt += ' 1'
36
            strpkt += ' 1'
37
        else:
37
        else:
38
            strpkt += ' 0'
38
            strpkt += ' 0'
39
        bytestrings = ''
39
        bytestrings = ''
40
        for byte in self.data:
40
        for byte in self.data:
41
            bytestrings = bytestrings + ' ' + str(byte)
41
            bytestrings = bytestrings + ' %02x' % byte
42
        return (strpkt + bytestrings)
42
        return (strpkt + bytestrings)
43
   
43
   
44
    @staticmethod
44
    @staticmethod
45
    def stringToCanPkt(self, str):
45
    def stringToCanPkt(self, str):
46
        """ Converts can message string to CanPkt class """
46
        """ Converts can message string to CanPkt class """
47
        strbyteslist = str.split(' ')
47
        strbyteslist = str.split(' ')
48
        nodeid = int('0x'+strbyteslist[1], 16)
48
        nodeid = int('0x'+strbyteslist[1], 16)
49
        intvalues = [int(val, 10) for val in strbyteslist[2:]]
49
        intvalues = [int(val, 16) for val in strbyteslist[2:]]
50
        extended = (intvalues[0] == 1)
50
        extended = (intvalues[0] == 1)
51
        remote = (intvalues[1] == 1)
51
        remote = (intvalues[1] == 1)
52
        pkt = CanPkt(nodeid, intvalues[2:], extended, remote)
52
        pkt = CanPkt(nodeid, intvalues[2:], extended, remote)
53
        return pkt
53
        return pkt
54
 
54