diff --git a/mcc-flow/merge_records.py b/mcc-flow/merge_records.py
new file mode 100644
index 0000000000000000000000000000000000000000..ce09ebfbda6125d2588c2746cf0fcc1faca3ae6a
--- /dev/null
+++ b/mcc-flow/merge_records.py
@@ -0,0 +1,47 @@
+from datetime import datetime
+from pathlib import Path
+from struct import unpack
+
+import numpy as np
+
+
+def process_packet(file):
+    # header
+    date_, time_, flow, hr, spo2, vbat_eeg, vbat_arm = unpack('>II10sBHHH', file.read(25))
+    date_ = str(date_)
+    time_ = str(time_)
+    flow = int.from_bytes(flow, 'big')
+    date_ = datetime.fromisoformat(f'{date_[:4]}-{date_[4:6]}-{date_[6:]}T{time_[:2]}:{time_[2:4]}:{time_[4:]}')
+    spo2 /= 10.
+    print(date_, flow, hr, spo2, vbat_eeg, vbat_arm)
+
+    # eeg
+    eeg = unpack('i' * 4 * 250, file.read(4 * 4 * 250))
+    eeg = np.array(eeg)
+    eeg = eeg.reshape((250, 4)).T
+    print(eeg, eeg.shape)
+    eeg_giro = unpack('h' * 3 * 50, file.read(2 * 3 * 50))
+
+
+def read_dat_file(file):
+    no_packets = unpack('>I', file.read(4))[0]
+    process_packet(file)
+
+
+# def process_data(byte_data):
+#     n_packets = unpack('>i', byte_data.pop(4))[0]
+#     print(n_packets)
+
+
+def read_data(path):
+    path = Path(path)
+    files = path.rglob('*.dat')
+    for file in files:
+        with open(file, 'rb') as f:
+            read_dat_file(f)
+            exit(12)
+
+
+if __name__ == '__main__':
+    path = r'D:\Users\Csabi\dev\MCC Flow\database'
+    read_data(path)