Script file Commands

;jclamp.scp ;semicolon precedes a comment

p/n=true/false ; p/n leakage subtraction enable; automatic file naming and saving is toggled on/off in Cell Censor Window or thru ini file.

script=filename; call a script (filename.scp; don't use extension) from within a script

cc_save=true/false ; save CC data to a file

cc=on/off ; turn on/off Cell Censor

auto_file_name=true/false ;enable auto filenameing

auto_file_save=true/false; normally set in ini; enable/disable automatic file saving; if disabled, user will be queried to save

avg_on=true/false ;enable averaging

clk_1=20 ;set command protocolclock in microseconds

play_sound=filename ; play a sound file (filename.wav; don't use extension) from within a script; this is a Microsoft wav file that can be made with MS sound recorder and must be placed in the jclamp <sounds> subfolder. jClamp now has a stand alone version of <jc_audio.exe> which can be used to record or play wav audio files, since Windows Vista does not have a sound recorder that does this. It is accessible in the jClamp directory or the jClamp start menu.

pass_hold= true/false; enable/disable passing of CC hold to next parameter file that is run

pass_clk= true/false; enable/disable passing of CC clock to next parameter file that is run

disable_file=true/false; enable/disable file save box in CC to enable/disable automatic saving of data; no user query will be made

cc_inter=true/false; enable/disable cc collections during wait intervals of protocols

inter_cmd_hold=true/false; enable/disable use of protocol holding potential during wait intervals, else cc hold is used

cc_alt_polarity=true/false; enable/disable alternate polarity flip of vpulse

cc_fix_scale_0=value; fix CC scale value (height of plot window) channel 0 (value shown in tooltip text on mouse movement over Fix checkbox)

cc_fix_scale_1= value; fix CC scale value (height of plot window) channel 1

cc_fix _0=true/false; fix CC scale enable/disable channel 0

cc_fix _1=true/false; fix CC scale enable/disable channel 1

cc_pulse_0=value; pulse size in displayed units channel 0

cc_pulse_1=value; pulse size in displayed units channel 1

cc_navg=1-49; number of cc_pulse responses to average for parameter calculations

cc_ignore_rs_0=true/false; just get dc resistance and put into Rm parameter


mark_it=true; put a time mark in cc data file


cc_zero_0=true / false ; set togglable or settable options in Cell Censor

cc_zero_1=true / false

cc_fix_0= true / false

cc_fix_1= true / false

cc_clk_0=value; channel 0 CC clock

cc_clk_1=value; channel 1 CC clock

auto_clk_0=true / false

auto_clk_1=true / false

flip_trk= true / false; jss specific for Vpkcm tracking

cc_hold_0=-90 ;set holding potential for Cell Censor analysis - scaling set in INI file

cc_hold_1=-100 ;set steady state potential for analog output channel 1 - scaling set in INI file

dax_hold_2;set steady state potential for DAX analog output channel 2 - scaling set in INI file – gain tab, DAX gain text box

----------for CED Power use to control analog channel out #2

dax_hold_3;set steady state potential for DAX analog output channel 3 - scaling set in INI file – gain tab, DAX gain text box

----------for CED Power use to control analog channel out #3

dax_hold_4;set steady state potential for DAX analog output channel 4 - scaling set in INI file – gain tab, DAX gain text box

dax_hold_5;set steady state potential for DAX analog output channel 5 - scaling set in INI file – gain tab, DAX gain text box                


wait=10 ;wait for 10 seconds before continuing; during this time, if Cell Censor is enabled, cell and clamp characteristics are continuously monitored

waitfor=...  ;wait for the following conditions to be met before continuing; Cell Censor must be running, cell and clamp characteristics are continuously monitored; hit esc key to exit waiting

switching between clamp types while under Cell Censor

clamp_type_to(i) ;continue with script after switching to current clamp; e.g. waitfor=clamp_type_to(i)

clamp_type_to(v) ;continue with script after switching to voltage clamp ; e.g. waitfor=clamp_type_to(v)

monitoring Channel Watch values

chan_watch_chan#>(test_value) ;wait for channel # chan# 's value to be greater than test_value before continuing script ; channel number can be 2,3,4 or 5; e.g., waitfor=chan_watch_2>(4) --- when Channel Watch channel number 2 is greater than 4 scripting will continue

chan_watch_chan#<(value) ;wait for channel # chan# 's value to be less than test_value before continuing script ; channel number can be 2,3,4 or 5; e.g., waitfor=chan_watch_3>(6) --- when Channel Watch channel number 3 is less than 6 scripting will continue

CC parameter dependent switch

rs>(value); rs<(value); waitfor=rs>(10); continue with scripting after success – other clamp parameters can be used as well – rm, cm, tau, hold_i, and vm.

timeout=25; if condition does not happen within timeout seconds then continue; must be set before conditional statements; default time out is 10000 seconds.


Here is an example of what can be done. Monitor a cell under voltage clamp. Track its membrane current at a particular voltage. Run a script that collects some data in voltage clamp then pauses to wait for the switch to current clamp. With the passing of holding current to current clamp mode checkbox enabled in CC, switch to current clamp at the amplifier. With telegraphs enabled, CC will sense the mode switch, and change into current clamp mode which will cause scripting to continue. The protocol that can be subsequently run in the script could be an Iclamp parameter file that has its holding current passed to it from CC (if passing hold check box is enabled), and increments test pulses upon that holding current.


screen_shot=name; name is a screen shot file name.scn used without the extension.

note=This a test. This note can be used to indicate actions which the user needs to make before continuing with Script execution. ; A note to the user will pop up and the program is suspended until the okay button is pressed

run=new1 ;run a parameter file

jclamp_beep=1 (2, 3) ; make sound N number of times.


do ;      begin a do loop; all commands within the loop will be repeated loop=N times.

loop=2 ;           end a do loop.

While a loop is running, hitting the “L” key will cancel the loop and continue with the following script commands. More than one loop can be placed in a script.

Variables can now be embedded in a do loop. The variables are vara, varb, …varf and can be used to represent any number in a script. Before the loop the starting variable value, e.g. vara0, should be defined, vara0=5, and the increment varainc should be defined; upon encountering vara within the loop, vara will become by a multiple of the loop number. If the variable ( e.g. vara0 or varainc)  is set to a question mark <?> then the user will be prompted during the script for an input value.

For example,






This loop will do three waits of 5, 8 and 11 seconds.

Another example,








This loop will watch channel 2 under channel watch and wait until it is greater than 10,15,20,25, and 30 before running the temperature.prm protocol. If the timeout of 50 seconds expires before hitting the condition, the loop will continue and run the protocol.  This loop could be used to monitor temperature with channel watch (also saved in CC) and collect data sets as the temperature is changed continuously and automatically from say, 5 oC to 35 oC.  Imagine, you could do multiple conditions, e.g. simultaneous pH, tension, etc. with channel watch!


digital=01111111 ; set digital output – channels 0 through 7 if a digit is >0 then digital out is high, else low; chan 5 - oscilloscope trigger - no care;e.g., digital=01234567 , digital=10000000

shell (path & filename optional command line argument); an executable with or without a command line argument; e.g. shell=test.exe commandlineargument

streaming video capture

vidclip=filename.seconds ; for example vidclip=test.20 will save a 20 second capture to test.avi

vidclip=stop ; stop capture if running

vidframespersec=value ; value is frames at 1 to 30 per second

vidcaptureaudio=true(false) ; enable/disable simultaneous audio capture


video_auto_interval=##; video time lapse interval in seconds

video_grab_now=true; grab a video clip (bitmap; *.not extension) to disk

video_auto=on(off); turns on or off time lapse video collection

video=on(off); turns video on or off

video_save_V=on(off); enable saving of an ascii file (same name as the avi filename but with extension “.asc”) which holds info on frame number and pt within command protocol which corresponds to frame, episode, time into command, and time after video start.

load_cmt=filename; without extension (.cmt assumed); commands below still work but this does it all!

cm_trk=start (enable, record, stop) ; start, record or stop cm tracking

FastLook with Prosilica  GigE

fastlook=capture_frames; set to capture frames

fastlook=capture_time; set to capture time

fastlook=capture_length(###);  in time or number of frames depending on setting above

fastlook=fixed_rate_on; enable capture at fixed rate; useful for time lapse or fixed sampling

fastlook=fixed_rate_off; disable capture at fixed rate; maximum rate will be used

fastlook=set_frame_sec; set frame rate in seconds

fastlook=set_frame_fps; set frame rate in frames per second (fps)

fastlook=frame_rate(###);  frame rate [time in seconds if < set_frame_time> is set, number of frames if < set_frame_fps> is set]

fastlook=disk_stream_on; set saving direct to disk, may be slow


fastlook=autogain; set gain automatically

fastlook=autoexposure; set exposure automatically

fastlook=bitdepth8; pixel depth 8

fastlook=bitdepth12; pixel depth 12

fastlook=savebox_on; capture only within boxed area


fastlook=showbox_on; show only boxed area


fastlook=movie_trig_on; hardware trigger for whole movie to start


fastlook=frame_trig_on; hardware trigger for each frame to start


fastlook=cap_vda_now; run capture to a vda file, fast capture to memory, slower to disk if set

fastlook=cap_avi_now; run capture to avi file, slow capture

fastlook=grab_bitmap; grab a bitmap image

hold_step=true; initiate hold stepping in Cell Censor

hold_step_video=true(false); enable for saving video clip at end of each step

hold_step_trace=true(false); enable for saving CC trace clip at end of each step

comm=1 (2,3,4); choose serial out channel

serial_command=any commands in ascii; supply command

send_serial=true ; send it now

script_data_directory=path; eg. C:\script_data, data files will be saved as first five leters of directory and filenumber – scrip001.abf, scrip002.abf  …, in that directory

kill_files_from=< filename> ; list of files to delete; uses script_data_directory that was previously set

kill_file=<filename> ; one file to delete; must state path and filename; wild cards allowable,e.g. *.*

     Heka EPC10 USB commands

epc_select_amp=0,1,2,3 ; select amplifier

epc_auto_cslow=0,1,2,3 ; runs auto Cslow for given amplifier number

epc_auto_cfast=0,1,2,3 ;  runs auto Cfast for given amplifier number

epc_auto_offset=0,1,2,3 ;  runs auto V offset for given amplifier number

epc_auto_leak=0,1,2,3 ; runs auto Leak for given amplifier number