MCPcopy Create free account
hub / github.com/brainflow-dev/brainflow / main

Function main

python_package/examples/tests/plotjuggler.py:7–59  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

5
6
7def main():
8 BoardShim.enable_dev_board_logger()
9 parser = argparse.ArgumentParser()
10 # use docs to check which parameters are required for specific board, e.g. for Cyton - set serial port
11 parser.add_argument('--timeout', type=int, help='timeout for device discovery or connection', required=False,
12 default=0)
13 parser.add_argument('--ip-port', type=int, help='ip port', required=False, default=0)
14 parser.add_argument('--ip-protocol', type=int, help='ip protocol, check IpProtocolType enum', required=False,
15 default=0)
16 parser.add_argument('--ip-address', type=str, help='ip address', required=False, default='')
17 parser.add_argument('--serial-port', type=str, help='serial port', required=False, default='')
18 parser.add_argument('--mac-address', type=str, help='mac address', required=False, default='')
19 parser.add_argument('--other-info', type=str, help='other info', required=False, default='')
20 parser.add_argument('--serial-number', type=str, help='serial number', required=False, default='')
21 parser.add_argument('--board-id', type=int, help='board id, check docs to get a list of supported boards',
22 required=True)
23 parser.add_argument('--file', type=str, help='file', required=False, default='')
24 parser.add_argument('--master-board', type=int, help='master board id for streaming and playback boards',
25 required=False, default=BoardIds.NO_BOARD)
26 args = parser.parse_args()
27
28 params = BrainFlowInputParams()
29 params.ip_port = args.ip_port
30 params.serial_port = args.serial_port
31 params.mac_address = args.mac_address
32 params.other_info = args.other_info
33 params.serial_number = args.serial_number
34 params.ip_address = args.ip_address
35 params.ip_protocol = args.ip_protocol
36 params.timeout = args.timeout
37 params.file = args.file
38 params.master_board = args.master_board
39
40 board = BoardShim(args.board_id, params)
41 board_id = board.get_board_id()
42 presets = BoardShim.get_board_presets(board_id)
43 board.prepare_session()
44 for preset in presets:
45 # to stream to plotjuggler
46 board.add_streamer(
47 'plotjuggler_udp://127.0.0.1:9870', preset)
48 # to store data in a file
49 board.add_streamer(f'file://data_{preset}.csv:w', preset)
50 board.start_stream ()
51
52 while True:
53 try:
54 time.sleep(1)
55 except KeyboardInterrupt:
56 break
57 except Exception as e:
58 print(e)
59 board.release_session()
60
61
62if __name__ == "__main__":

Callers 1

plotjuggler.pyFile · 0.70

Calls 10

get_board_idMethod · 0.95
prepare_sessionMethod · 0.95
add_streamerMethod · 0.95
start_streamMethod · 0.95
release_sessionMethod · 0.95
BoardShimClass · 0.90
get_board_presetsMethod · 0.65
parse_argsMethod · 0.45

Tested by

no test coverage detected