From 4a4e61510584c01df980bae786c670d151fa450b Mon Sep 17 00:00:00 2001 From: Snoweuph Date: Sun, 12 Jan 2025 03:09:25 +0100 Subject: [PATCH] Python helper scripts for testing --- drivers/helpers/listen.py | 47 ++++++++++++++++++++++++++++++++ drivers/helpers/requirements.txt | 1 + drivers/helpers/send.py | 18 ++++++++++++ 3 files changed, 66 insertions(+) create mode 100644 drivers/helpers/listen.py create mode 100644 drivers/helpers/requirements.txt create mode 100644 drivers/helpers/send.py diff --git a/drivers/helpers/listen.py b/drivers/helpers/listen.py new file mode 100644 index 0000000..4f612ea --- /dev/null +++ b/drivers/helpers/listen.py @@ -0,0 +1,47 @@ +import hid +import time +import sys +import threading + +# Vendor ID and Product ID for the iBridge device +TOUCHBAR_VENDOR_ID = 0x05ac +TOUCHBAR_PRODUCT_ID = 0x8600 + +exit_flag = False + +def listen_to_touchbar(device): + global exit_flag + print("Listening for incoming data from the Touch Bar...") + while not exit_flag: + try: + data = device.read(64) + if data: + print(f"Received data: {data}") + except Exception as e: + print(f"Error reading data: {e}") + break + +device = hid.device() +try: + device.open(TOUCHBAR_VENDOR_ID, TOUCHBAR_PRODUCT_ID) + print("Device opened successfully") + + listener_thread = threading.Thread(target=listen_to_touchbar, args=(device,)) + listener_thread.daemon = True + listener_thread.start() + + while True: + try: + time.sleep(1) + except KeyboardInterrupt: + print("\nInterrupted by user. Exiting...") + exit_flag = True + listener_thread.join() + break + +except OSError as e: + print(f"Failed to open device: {e}") + sys.exit(1) +finally: + device.close() + print("Device closed") \ No newline at end of file diff --git a/drivers/helpers/requirements.txt b/drivers/helpers/requirements.txt new file mode 100644 index 0000000..ece54bd --- /dev/null +++ b/drivers/helpers/requirements.txt @@ -0,0 +1 @@ +hidapi \ No newline at end of file diff --git a/drivers/helpers/send.py b/drivers/helpers/send.py new file mode 100644 index 0000000..dec28dc --- /dev/null +++ b/drivers/helpers/send.py @@ -0,0 +1,18 @@ +import hid +import time + +# Vendor ID and Product ID for the iBridge device +TOUCHBAR_VENDOR_ID = 0x05ac +TOUCHBAR_PRODUCT_ID = 0x8600 + +device = hid.device() +try: + device.open(TOUCHBAR_VENDOR_ID, TOUCHBAR_PRODUCT_ID) + device.write([0x02, 0x01]) # Sending Data +except OSError as e: + print(f"Failed to open device: {e}") +finally: + device.close() + print("Device closed") + +