add run.sh

This commit is contained in:
2025-04-20 23:27:21 +02:00
parent ed7c1bf62e
commit c81b2e3fbb
2 changed files with 1 additions and 60 deletions

View File

@@ -1,60 +0,0 @@
import matplotlib.pyplot as plt
from time import time
import asyncio
from bleak import BleakClient, BleakScanner
import pandas as pd
from argparse import ArgumentParser
from tqdm.auto import tqdm
from config import MILLIS_UUID, WEIGHT_UUID
READING_TIME = 30
async def read_ble(reading_time=READING_TIME):
device = await BleakScanner.find_device_by_name("Smaage")
assert device is not None, "No device found"
timestamps = []
raw_weights = []
async with BleakClient(device.address) as client:
print(f"Connected to {device}")
# Read the characteristic value
pbar = tqdm(desc="reading data", total=reading_time)
time_start = time()
time_passed = 0
last_time_passed = 0
while time_passed < reading_time:
try:
# Read the sensor data
millis = await client.read_gatt_char(MILLIS_UUID)
millis = int.from_bytes(millis, byteorder='little') # Adjust based on your data format
weight = await client.read_gatt_char(WEIGHT_UUID)
weight = int.from_bytes(weight, byteorder='little') # Adjust based on your data format
timestamps.append(millis)
raw_weights.append(weight)
except Exception as e:
print(f"Error reading data: {e}")
break
time_passed = time() - time_start
time_delta = (time_passed - last_time_passed)
last_time_passed = time_passed
pbar.update(time_delta)
pbar.close()
df = pd.DataFrame({"timestamps": timestamps, "weights": raw_weights})
print(df['weights'].describe())
plt.plot(timestamps, raw_weights)
plt.show()
if __name__ == '__main__':
parser = ArgumentParser()
parser.add_argument('-t', default=READING_TIME, type=int, help="reading time in sec")
args = parser.parse_args()
asyncio.run(read_ble(args.t))

1
run.sh Executable file
View File

@@ -0,0 +1 @@
python -m filter_dev.app