Created
April 17, 2021 01:32
-
-
Save sneakers-the-rat/eebe675326a157df49f66f62c4e33a6e to your computer and use it in GitHub Desktop.
typical autopilot params
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
protocol = [ | |
{ | |
"allow_repeat": False, | |
"graduation": { | |
"type": "n_trials", | |
"value": { | |
"current_trial": "0", | |
"n_trials": "200", | |
"type": "n_trials" | |
} | |
}, | |
"reward": { | |
"type": "volume", | |
"value": 5.0 | |
}, | |
"step_name": "Free Water", | |
"task_type": "Free Water" | |
}, | |
{ | |
"bias_mode": 0, | |
"correction": True, | |
"correction_pct": "40", | |
"graduation": { | |
"type": "n_trials", | |
"value": { | |
"current_trial": "0", | |
"n_trials": "300", | |
"type": "n_trials" | |
} | |
}, | |
"punish_dur": "1000", | |
"req_reward": True, | |
"reward": { | |
"type": "volume", | |
"value": 3.0 | |
}, | |
"step_name": "request_rewards", | |
"stim": { | |
"sounds": { | |
"L": [ | |
{ | |
"duration": "256", | |
"type": "Gap" | |
} | |
], | |
"R": [ | |
{ | |
"duration": "0", | |
"type": "Gap" | |
} | |
] | |
}, | |
"tag": "Sounds", | |
"type": "sounds" | |
}, | |
"task_type": "2AFC_Gap" | |
}, | |
{ | |
"bias_mode": 0, | |
"correction": True, | |
"correction_pct": "40", | |
"graduation": { | |
"type": "accuracy", | |
"value": { | |
"threshold": "0.75", | |
"type": "accuracy", | |
"window": "500" | |
} | |
}, | |
"punish_dur": "2000", | |
"req_reward": False, | |
"reward": { | |
"type": "volume", | |
"value": 3 | |
}, | |
"step_name": "long_gap", | |
"stim": { | |
"sounds": { | |
"L": [ | |
{ | |
"duration": "256", | |
"type": "Gap" | |
} | |
], | |
"R": [ | |
{ | |
"duration": "0", | |
"type": "Gap" | |
} | |
] | |
}, | |
"tag": "Sounds", | |
"type": "sounds" | |
}, | |
"task_type": "2AFC_Gap" | |
}, | |
{ | |
"bias_mode": 0, | |
"correction": True, | |
"correction_pct": "40", | |
"graduation": { | |
"type": "accuracy", | |
"value": { | |
"threshold": "0.75", | |
"type": "accuracy", | |
"window": "500" | |
} | |
}, | |
"punish_dur": "2000", | |
"req_reward": False, | |
"reward": { | |
"type": "volume", | |
"value": 3 | |
}, | |
"step_name": "gap_128", | |
"stim": { | |
"sounds": { | |
"L": [ | |
{ | |
"duration": "256", | |
"type": "Gap" | |
}, | |
{ | |
"duration": "128", | |
"type": "Gap" | |
} | |
], | |
"R": [ | |
{ | |
"duration": "0", | |
"type": "Gap" | |
} | |
] | |
}, | |
"tag": "Sounds", | |
"type": "sounds" | |
}, | |
"task_type": "2AFC_Gap" | |
}, | |
{ | |
"bias_mode": 0, | |
"correction": True, | |
"correction_pct": "40", | |
"graduation": { | |
"type": "accuracy", | |
"value": { | |
"threshold": "0.75", | |
"type": "accuracy", | |
"window": "500" | |
} | |
}, | |
"punish_dur": "3000", | |
"req_reward": False, | |
"reward": { | |
"type": "volume", | |
"value": 3 | |
}, | |
"step_name": "gap_64", | |
"stim": { | |
"sounds": { | |
"L": [ | |
{ | |
"duration": "256", | |
"type": "Gap" | |
}, | |
{ | |
"duration": "128", | |
"type": "Gap" | |
}, | |
{ | |
"duration": "64", | |
"type": "Gap" | |
} | |
], | |
"R": [ | |
{ | |
"duration": "0", | |
"type": "Gap" | |
} | |
] | |
}, | |
"tag": "Sounds", | |
"type": "sounds" | |
}, | |
"task_type": "2AFC_Gap" | |
}, | |
{ | |
"bias_mode": 0, | |
"correction": False, | |
"correction_pct": "0", | |
"graduation": { | |
"type": "accuracy", | |
"value": { | |
"threshold": "0.70", | |
"type": "accuracy", | |
"window": "1000" | |
} | |
}, | |
"punish_dur": "5000", | |
"req_reward": False, | |
"reward": { | |
"type": "volume", | |
"value": 3 | |
}, | |
"step_name": "gap_all", | |
"stim": { | |
"manager": "proportional", | |
"type": "sounds", | |
"management":{"frequency_type":"within_side"}, | |
"sounds": { | |
"L": [ | |
{ | |
"duration": "256", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "128", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "64", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "32", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "24", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "16", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "8", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "6", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "4", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "2", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "1", | |
"type": "Gap", | |
"management":{"frequency":1} | |
} | |
], | |
"R": [ | |
{ | |
"duration": "0", | |
"type": "Gap", | |
"management":{"frequency":1} | |
} | |
] | |
}, | |
"tag": "Sounds" | |
}, | |
"task_type": "2AFC_Gap" | |
}, | |
{ | |
"arena_led_mode": "STIM", | |
"bias_mode": False, | |
"correction": False, | |
"graduation": { | |
"type": "n_trials", | |
"value": { | |
"current_trial": "0", | |
"n_trials": "9999999", | |
"type": "n_trials" | |
} | |
}, | |
"laser_durations": 100, | |
"laser_duty_cycle": [ | |
0.125, | |
0.25, | |
0.5, | |
1.0 | |
], | |
"laser_freq": 200, | |
"laser_mode": "L", | |
"laser_probability": 0.1, | |
"noise_amplitude": 0.01, | |
"punish_dur": 5000, | |
"req_reward": False, | |
"reward": { | |
"type": "volume", | |
"value": 3 | |
}, | |
"step_name": "2AFC_Gap_Laser", | |
"stim": { | |
"sounds": { | |
"L": [ | |
{ | |
"duration": "256", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "128", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "64", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "32", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "24", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "16", | |
"type": "Gap", | |
"management":{"frequency":10} | |
}, | |
{ | |
"duration": "8", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "6", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "4", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "2", | |
"type": "Gap", | |
"management":{"frequency":1} | |
}, | |
{ | |
"duration": "1", | |
"type": "Gap", | |
"management":{"frequency":1} | |
} | |
], | |
"R": [ | |
{ | |
"duration": "0", | |
"type": "Gap", | |
"management":{"frequency":1} | |
} | |
] | |
}, | |
"tag": "Sounds", | |
"type": "sounds" | |
}, | |
"task_type": "2AFC_Gap_Laser" | |
} | |
] | |
# -------------------- | |
pilot_params = { | |
"AGENT": "PILOT", | |
"AUDIOSERVER": True, | |
"BASEDIR": "/home/pi/autopilot", | |
"CHILDID": "", | |
"CONFIG": "", | |
"DATADIR": "/home/pi/autopilot/data", | |
"FS": 96000, | |
"HARDWARE": { | |
"FLAGS": { | |
"L": "", | |
"R": "" | |
}, | |
"LEDS": { | |
"C": { | |
"pins": [ | |
22, | |
18, | |
16 | |
], | |
"polarity": 0 | |
}, | |
"L": { | |
"pins": [ | |
11, | |
13, | |
15 | |
], | |
"polarity": 0 | |
}, | |
"R": { | |
"pins": [ | |
19, | |
21, | |
23 | |
], | |
"polarity": 0 | |
}, | |
"TOP": { | |
"name": "LED_TOP", | |
"pin": 32 | |
} | |
}, | |
"LASERS": { | |
"LR": { | |
"name": "LASER", | |
"pin": 36 | |
} | |
}, | |
"POKES": { | |
"C": { | |
"pin": 8, | |
"polarity": 0 | |
}, | |
"L": { | |
"pin": 24, | |
"polarity": 0 | |
}, | |
"R": { | |
"pin": 10, | |
"polarity": 0 | |
} | |
}, | |
"PORTS": { | |
"C": 33, | |
"L": 31, | |
"R": 37 | |
} | |
}, | |
"JACKDSTRING": "jackd -P75 -p16 -t2000 -dalsa -dhw:sndrpihifiberry -P -rfs -n3 -s &", | |
"LINEAGE": "NONE", | |
"LOGDIR": "/home/pi/autopilot/logs", | |
"LOGLEVEL": "DEBUG", | |
"MSGPORT": 5565, | |
"NAME": "pilot_1", | |
"NCHANNELS": 1, | |
"OUTCHANNELS": [ | |
1 | |
], | |
"PARENTID": "", | |
"PARENTIP": "", | |
"PARENTPORT": "", | |
"PIGPIOARGS": "-t 0 -l", | |
"PIGPIOMASK": "1111110000111111111111110000", | |
"PROTOCOLDIR": "/home/pi/autopilot/protocols", | |
"PULLDOWNS": "", | |
"PULLUPS": [ | |
7 | |
], | |
"PUSHPORT": 5560, | |
"REPODIR": "/home/pi/git/autopilot", | |
"SOUNDDIR": "/home/pi/autopilot/sounds", | |
"TERMINALIP": "192.168.0.100", | |
"VENV": "/home/pi/git/autopilot/venv", | |
"VIZDIR": "/home/pi/autopilot/viz", | |
"HASH": "638d585d5aa284fc05e33028f05e1d3457a2ebcc", | |
"PORT_CALIBRATION": { | |
"C": { | |
"slope": 6.465517241379311, | |
"intercept": 1.2499999999999964 | |
}, | |
"R": { | |
"slope": 5.795391705069124, | |
"intercept": 3.4348387096774218 | |
}, | |
"L": { | |
"slope": 6.65605556359427, | |
"intercept": 2.527854145565037 | |
} | |
}, | |
"SUBJECT": "35" | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def recursive_len(recursed): | |
total_len = 0 | |
iterate_this = recursed | |
if isinstance(recursed, dict): | |
iterate_this = recursed.values() | |
for i in iterate_this: | |
if isinstance(i, (dict, list)): | |
total_len += recursive_len(i) | |
else: | |
total_len += 1 | |
return total_len | |
recursive_len(protocol) + recursive_len(pilot_params) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment