diff --git a/rasp_grid.py b/rasp_grid.py
index cd4be61..0609c46 100644
--- a/rasp_grid.py
+++ b/rasp_grid.py
@@ -1,6 +1,12 @@
 from __future__ import print_function
 from time import time, sleep
-import RPi.GPIO as GPIO
+import os
+import datetime
+from shutil import copyfile
+try:
+    import RPi.GPIO as GPIO
+except:
+    pass
 import subprocess
 import numpy as np
 import matplotlib.pyplot as plt
@@ -30,7 +36,145 @@ def GPIO_setup():
     return LED_status
 
 
+def read_cfg(cfg_file, now, init_read=False):
+    cfg_f = open(cfg_file, 'r+')
+    cfg = cfg_f.readlines()
+
+    ### read cfg information ###
+    if init_read:
+        for line in cfg:
+            if "PathFormat" in line:
+                path_format = ':'.join(line.split(':')[1:]).strip().replace('"', '').replace("'", "")
+                cfg_f.close()
+                return path_format
+
+    for line in cfg:
+        if 'Columns1' in line:
+            n_cols = int(line.split(':')[1].strip())
+        elif 'Rows1' in line:
+            n_rows = int(line.split(':')[1].strip())
+        elif "AISampleRate" in line:
+            samplerate = int(float(line.split(':')[-1].strip().replace('kHz', '')) * 1000)
+
+    ### alter information and re-write ###
+    for enu, line in enumerate(cfg):
+        if "StartDate" in line:
+            cfg[enu] = ('          StartDate        : %s\n' % now.strftime('%Y-%m-%d'))
+        elif "StartTime" in line:
+            cfg[enu] = ('          StartTime        : %s\n' % (now.strftime('%H:%M:%S') + now.strftime(".%f")[:4]))
+    cfg_f.close()
+
+    cfg_f = open(cfg_file, 'w+')
+    for line in cfg:
+        cfg_f.write(line)
+    cfg_f.close()
+
+    return n_cols * n_rows, samplerate
+
+    # for line in cfg:
+    #     if 'Columns1' in line:
+    #         self.Grid.columns_val = int(line.split(':')[1].strip())
+    #     elif 'Rows1' in line:
+    #         self.Grid.rows_val = int(line.split(':')[1].strip())
+    #     elif "ColumnDistance1" in line:
+    #         self.Grid.col_dist_val = float(line.split(':')[-1].strip().replace('cm', ''))
+    #     elif "RowDistance1" in line:
+    #         self.Grid.row_dist_val = float(line.split(':')[-1].strip().replace('cm', ''))
+    #     elif "ChannelOffset1" in line:
+    #         self.Grid.channel_offset_val = int(line.split(':')[-1].strip())
+    #     elif "ElectrodeType1" in line:
+    #         self.Grid.elec_type_val = line.split(':')[-1].strip()
+    #     elif "RefElectrodeType1" in line:
+    #         self.Grid.ref_elec_type_val = line.split(":")[-1].strip()
+    #     elif "RefElectrodePosX1" in line:
+    #         self.Grid.ref_elec_posx_val = float(line.split(':')[-1].strip().replace('m', ''))
+    #     elif 'RefElectrodePosY1' in line:
+    #         self.Grid.ref_elec_posy_val = float(line.split(':')[-1].strip().replace('m', ''))
+    #     elif 'WaterDepth1' in line:
+    #         self.Grid.water_depth_val = float(line.split(':')[-1].strip().replace('m', ''))
+    #
+    #     elif "AISampleRate" in line:
+    #         self.HardWare.ai_sr_val = float(line.split(':')[-1].strip().replace('kHz', ''))
+    #     elif "AIMaxVolt" in line:
+    #         self.HardWare.ai_max_vol_val = float(line.split(':')[-1].strip().replace('mV', ''))
+    #     elif "AmplName" in line:
+    #         self.HardWare.amp_name_val = line.split(':')[-1].strip()
+    #     elif "AmplModel" in line:
+    #         self.HardWare.amp_model_val = line.split(':')[-1].strip()
+    #     elif '  Type  ' in line:
+    #         self.HardWare.amp_type_val = line.split(':')[-1].strip()
+    #     elif 'Gain' in line:
+    #         self.HardWare.gain_val = line.split(':')[-1].strip()
+    #     elif "HighpassCutoff" in line:
+    #         self.HardWare.highpass_cutoff_val = int(line.split(':')[-1].strip().replace('Hz', ''))
+    #     elif 'LowpassCutoff' in line:
+    #         self.HardWare.lowpass_cutoff_val = float(line.split(':')[-1].strip().replace('kHz', ''))
+    #
+    #     elif "Experiment.Name" in line:
+    #         self.Recording.experiment_name_val = line.split(':')[-1].strip()
+    #     elif "StartDate" in line:
+    #         self.Recording.startdate_val = line.split(':')[-1].strip()
+    #     elif "StartTime" in line:
+    #         self.Recording.starttime_val = ':'.join(line.split(':')[1:]).strip()
+    #     elif "Location" in line:
+    #         self.Recording.location_val = line.split(':')[-1].strip()
+    #     elif "Position" in line:
+    #         self.Recording.position_val = line.split(':')[-1].strip()
+    #     elif "WaterTemperature" in line:
+    #         self.Recording.water_temp_val = float(line.split(':')[-1].strip().replace('C', ''))
+    #     elif "WaterConductivity" in line:
+    #         self.Recording.water_cond_val = float(line.split(':')[-1].strip().replace('uS/cm', ''))
+    #     elif 'WaterpH' in line:
+    #         self.Recording.water_ph_val = float(line.split(':')[-1].strip().replace('pH', ''))
+    #     elif "WaterOxygen" in line:
+    #         self.Recording.water_oxy_val = float(line.split(':')[-1].strip().replace('mg/l', ''))
+    #     elif "Comment" in line:
+    #         self.Recording.comment_val = ':'.join(line.split(':')[1:]).strip()
+    #     elif "Experimenter" in line:
+    #         self.Recording.experimenter_val = ':'.join(line.split(':')[1:]).strip()
+    #     elif "DataTime" in line:
+    #         self.Recording.datatime_val = int(line.split(':')[-1].strip().replace('ms', ''))
+    #     elif "DataInterval" in line:
+    #         self.Recording.datainterval_val = int(line.split(':')[-1].strip().replace('ms', ''))
+    #     elif "BufferTime" in line:
+    #         self.Recording.buffertime_val = int(line.split(':')[-1].strip().replace('s', ''))
+    #     else:
+    #         continue
+
+
 def main():
+    now = datetime.datetime.now()
+
+    # get init cfg
+    if os.path.exists('/media/pi/data1'):
+        init_path = '/media/pi/data1'
+    else:
+        init_path = '/home/raab/data/rasp_test'
+
+    init_cfgfile = os.path.join(init_path, 'fishgrid.cfg')
+    if os.path.exists(init_cfgfile):
+        path_format = read_cfg(init_cfgfile, now, init_read = True)
+    else:
+        print('cfg file missing !!!')
+        quit()
+
+    # create save folder and copy cfg file
+    path = os.path.join(init_path, now.strftime(path_format))
+    os.makedirs(path)
+    copyfile(os.path.join(os.path.split(path)[0], 'fishgrid.cfg'), os.path.join(path, 'fishgrid.cfg'))
+    cfgfile = os.path.join(path, 'fishgrid.cfg')
+
+    # read and edit config file
+    channels, rate = read_cfg(cfgfile, now)
+
+    file = os.path.join(path, 'traces-grid1.raw')
+    f = open(file, 'wb')
+
+    f.close()
+
+    embed()
+    quit()
+
     LED_status = GPIO_setup()
 
     # DAQ setup