xref: /btstack/platform/daemon/binding/python/test.py (revision cc528b9d66cd63ff4662ca3aba554b3ddf559fb2)
1#!/usr/bin/env python3
2
3from btstack import btstack_server, btstack_client, event_factory
4import sys
5
6def packet_handler(packet):
7    global btstack_client
8    if isinstance(packet, event_factory.BTstackEventState):
9        print("BTstack state: %u" % packet.get_state())
10        if packet.get_state() == 2:
11            print('BTstack up and running, starting scan')
12            btstack_client.gap_le_scan_start()
13    if isinstance(packet, event_factory.GAPEventAdvertisingReport):
14        print(packet)
15
16# check version
17if sys.version_info < (3, 0):
18    print('BTstack Server Client library, requires Python 3.x or higher.\n')
19    sys.exit(10)
20
21# Conrtrol for BTstack Server
22btstack_server = btstack_server.BTstackServer()
23
24# start BTstack Server from .dll
25btstack_server.load()
26# btstack_server.set_storage_path("/tmp")
27btstack_server.run_tcp()
28
29# Client for BTstack Server
30btstack_client = btstack_client.BTstackClient()
31
32# connect to slient, register for HCI packets and power up
33ok = btstack_client.connect()
34if ok:
35    btstack_client.register_packet_handler(packet_handler)
36    btstack_client.btstack_set_power_mode(1)
37    btstack_client.run()
38