[M] Move files
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
import os
|
||||
from pathlib import Path
|
||||
import time
|
||||
import serial
|
||||
import re
|
||||
from vk import *
|
||||
import winsound
|
||||
|
||||
# Configure your serial port and baud rate
|
||||
SERIAL_PORT = 'COM3' # Replace 'COMx' with your serial port (e.g., 'COM3' on Windows or '/dev/ttyUSB0' on Linux)
|
||||
# SERIAL_PORT = '/dev/ttyACM0'
|
||||
BAUD_RATE = 115200
|
||||
PATH = Path('C:/MUGS/felica.txt')
|
||||
# PATH = Path('/tmp/felica.txt')
|
||||
|
||||
AUDIO_EFFECT = Path(__file__).parent / 'Audio/tofu.wav'
|
||||
|
||||
def parse_uid(data):
|
||||
"""
|
||||
Parse the UID from the serial data.
|
||||
"""
|
||||
uid_value_match = re.search(r'UID Value: ([0-9A-F]+)', data)
|
||||
|
||||
if uid_value_match:
|
||||
uid = uid_value_match.group(1)
|
||||
|
||||
# If UID is not 8 bytes, pad it with zeros
|
||||
if len(uid) < 16:
|
||||
uid = uid.zfill(16)
|
||||
|
||||
# If the UID Doesn't start with 01 2E, set it to 01 2E
|
||||
if uid[:4] != '012E':
|
||||
uid = '012E' + uid[4:]
|
||||
|
||||
# Write the UID to the file
|
||||
print(f"UID: {uid}")
|
||||
PATH.write_text(uid)
|
||||
|
||||
# Play audio effect
|
||||
winsound.PlaySound(str(AUDIO_EFFECT), winsound.SND_FILENAME)
|
||||
|
||||
# Press scan button
|
||||
for i in range(3):
|
||||
press_key()
|
||||
time.sleep(0.1)
|
||||
release_key()
|
||||
time.sleep(0.1)
|
||||
|
||||
return uid
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
ser = serial.Serial(SERIAL_PORT, BAUD_RATE, timeout=1)
|
||||
print(f"Listening on {SERIAL_PORT}...")
|
||||
|
||||
try:
|
||||
while True:
|
||||
if ser.in_waiting > 0:
|
||||
line = ser.readline().decode('utf-8', errors='replace').strip()
|
||||
print(line)
|
||||
parse_uid(line)
|
||||
|
||||
except KeyboardInterrupt:
|
||||
print("Exiting...")
|
||||
finally:
|
||||
ser.close()
|
||||
Reference in New Issue
Block a user