Esempio n. 1
0
    def connect_nodes(self):
        self.nodes = [
            Node(flocklab=True, id=id, test=False)
            for id in FLOCKLAB_TARGET_ID_LIST
        ]
        if self.local:
            self.serial_nodes = Node.get_serial_all()
            self.nodes.extend(self.serial_nodes)

        for node in self.nodes:
            node.interactive_mode(False)  # Enable single-line JSON Output
Esempio n. 2
0
    def __init__(self, port):
        try:
            self.node = Node(port, test=False)
            if self.node:
                if not self.node.ser.is_open:
                    self.node.ser.open()
                self.node.ser.write(b"system bootloader\r\n")
                self.node.close()
                time.sleep(0.2)

            self.port = port

        except serial.SerialException as e:
            print(e)
            raise ValueError("Port {} is NOT a valid COM Port.".format(port.device))
Esempio n. 3
0
    def __enter__(self, devkit_count=2):
        devkits = []
        for i in range(self.devkit_count):
            devkit = Node(Node.get_serial_port(DEVKIT_PORTS[i]))
            devkit.open()
            devkit.reset()
            devkit.cmd("led blink")
            time.sleep(0.3)
            devkits.append(devkit)

        self.devkits = devkits
        self.devkit_a = devkits[0]
        self.devkit_b = devkits[1]

        self.scope = Oscilloscope()

        return self
Esempio n. 4
0
    def connect_nodes(self):
        if not self.local:
            self.nodes: List[Node] = [
                Node(flocklab=True, id=id, test=True)
                for id in FLOCKLAB_TARGET_ID_LIST
            ]
        else:
            self.nodes: List[Node] = []
            self.serial_nodes = Node.get_serial_all()
            self.nodes.extend(self.serial_nodes)

        for node in self.nodes:
            node.cmd('config set uid {:d}'.format(node.id))
            node.cmd('config set role 1')
            node.cmd('config store')
            node.cmd('system reset')
            node.interactive_mode(False)  # Enable single-line JSON Output
            #node.flush()

        time.sleep(0.2)