EVENT CUSTOM BUTTONS
Column Description
Button Label Enter \n to create labels with multiple lines. \t is substituted by the event type.
Event Description Description of the Event to be recorded.
Event Type Event type to be recorded or leave blank for no event. '±' types add a chosen offset (positive or negative) to the present value of the chosen event.
Event Value Value of event (1-100) to be recorded.
Action Perform an action at the time of the event.
Documentation The action Command. Depends on the action type, '{}' is replaced by the event value and the offset in case of a ± event type.
Button Visibility Hides/shows individual button.


EVENT BUTTONS CONFIGURATION OPTIONS
Option Description
Max buttons per row Sets a maximum number of buttons to display on a single row.
Button size Sets a size for the buttons. Choices are tiny, small and large.
Color Pattern Applies one of 99 autogenerated color patterns to the buttons. Set to "0" to manually choose the button colors.
Add Adds a new button to the bottom of the table.
Insert Inserts a new button above the selected button.
Delete Deletes the selected button.
Copy Table Copy the button table in tab separated format to the clipboard. Option or ALT click to copy a tabular format to the clipboard.
Help Opens this window.


COMMANDS
Note: "{}" can be used as a placeholder, it will be substituted by the current button value plus the offset for ± event types. If a placeholder occurs several times in a description/command, all those occurrences are replaced by the value.

Note: The placeholders {ET}, {BT}, {time}, {ETB}, {BTB} will be substituted by the current ET, BT, time, ET background, BT background value in Serial/CallProgram/MODBUS/S7/WebSocket commands

Note: commands can be sequenced, separated by semicolons like in “<cmd1>;<cmd2>;<cmd3>”

Note: in PHIDGET commands, the optional parameter <sn> has the form <hub_serial>[:<hub_port>] allows to refer to a specific Phidget HUB by given its serial number, and optionally specifying the port number the addressed module is connected to.

Note: in YOCTOPUCE commands, the optional parameter <sn> holds either the modules serial number or its name
Action Command Description
Serial Command ASCII serial command or binary a2b_uu(serial command)  
Call Program A program/script path (absolute or relative) start an external program
Multiple Event button numbers separated by a comma: 1,2,.. triggers other buttons
Modbus Command _ variable holding the last value read via MODBUS
  sleep(<float>) sleep: add a delay of <float> seconds
  button(<bool>) sets calling button to “pressed” if argument is 1 or True
  read(slaveID,register) reads register from slave slaveID using function 3 (Read Multiple Holding Registers). The result is bound to the placeholder `_` and thus can be accessed in later commands.
  write(slaveId,register,value) or write([slaveId,register,value],..,[slaveId,register,value]) write register: MODBUS function 6 (int) or function 16 (float)
  wcoil(slaveId,register,<bool>) write coil: MODBUS function 5
  wcoils(slaveId,register,[<bool>,..,<bool>]) write coils: MODBUS function 15
  mwrite(slaveId,register,andMask,orMask) or mwrite(s,r,am,om,v) mask write register: MODBUS function 22 or simulates function 22 with function 6 and the given value v
  writem(slaveId,register,value) or writem(slaveId,register,[<int>,..,<int>]) write registers: MODBUS function 16
  writeBCD(s,r,v) or writeBCD([s,r,v],..,[s,r,v]) write 16bit BCD encoded value v to register r of slave s
  writeWord(slaveId,register,value) or writeWord([slaveId,register,value],..,[slaveId,register,value]) write 32bit float to two 16bit int registers: MODBUS function 16
  writeLong(slaveId,register,value) or writeLong([slaveId,register,value],..,[slaveId,register,value]) write 32bit integer to two 16bit int registers: MODBUS function 16
  writeSingle(slaveId,register,value) or writeSingle([slaveId,register,value],..,[slaveId,register,value]) write 16bit integer to a single 16bit register: MODBUS function 6 (int)
DTA Command Insert Data address : value, ex. 4701:1000 and sv is 100.
Always multiply with 10 if value Unit: 0.1 / ex. 4719:0 stops heating
 
IO Command set(c,b[,sn]) PHIDGET Binary Output: switches channel c off (b=0) and on (b=1)
  toggle(c[,sn]) PHIDGET Binary Output: toggles channel c
  pulse(c,t[,sn]) PHIDGET Binary Output: sets the output of channel c to on for time t in milliseconds
  out(c,v[,sn]) PHIDGET Voltage Output: sets voltage output of channel c to v (float)
  accel(c,v[,sn]) PHIDGET DCMotor: sets acceleration of channel c to v (float)
  vel(c,v[,sn]) PHIDGET DCMotor: sets target velocity of channel c to v (float)
  limit(c,v[,sn]) PHIDGET DCMotor: sets current limit of channel c to v (float)
  on(c[,sn]) YOCTOPUCE Relay Output: turn channel c of the relay module on
  off(c[,sn]) YOCTOPUCE Relay Output: turn channel c of the relay module off
  flip(c[,sn]) YOCTOPUCE Relay Output: toggle the state of channel c
  pip(c,delay,duration[,sn]) YOCTOPUCE Relay Output: pulse the channel c on after a delay of delay milliseconds for the duration of duration milliseconds
  slider(c,v) move slider c to value v
  button(i,c,b[,sn]) switches channel c off (b=0) and on (b=1) and sets button i to pressed or normal depending on the value b
  sleep(<float>) sleep: add a delay of <float> seconds
Hottop Heater   sets heater to value
Hottop Fan   sets fan to value
Hottop Command motor(n),solenoid(n),stirrer(n),heater(h),fan(f) with n={0 ,1},h={0,..100},f={0,..10}
p-i-d   configures PID to the values <p>;<i>;<d>
Fuji Command write(<unitId>,<register>,<value>)  
PWM Command out(<channel>,<value>[,<sn>]) PHIDGET PWM Output: <value> in [0-100]
  toggle(<channel>[,<sn>]) PHIDGET PWM Output: toggles <channel>
  pulse(<channel>,<millis>[,<sn>]) PHIDGET PWM Output: turn <channel> on for <millis> milliseconds
  outhub(<channel>,<value>[,<sn>]) PHIDGET HUB PWM Output: <value> in [0-100]
  togglehub(<channel>[,<sn>]) PHIDGET HUB PWM Output: toggles <channel>
  pulsehub(<channel>,<millis>[,<sn>]) PHIDGET HUB PWM Output: turn <channel> on for <millis> milliseconds
  enabled(c,b[,sn]) YOCTOPUCE PWM Output: PWM running state
  freq(c,f[,sn]) YOCTOPUCE PWM Output: set PWM frequency to f (Hz)
  duty(c,d[,sn]) YOCTOPUCE PWM Output: set PWM period with the duty cycle in % as a float [0.0-100.0]
  move(c,d,t[,sn]) YOCTOPUCE PWM Output: changes progressively the PWM to the specified value over the given time interval
VOUT Command range(c,r[,sn]) for PHIDGET OUTPUT modules: sets voltage voltage range (r=5 for 5V and r=10 for 10V)
  out(<n>,<v>[,<sn>]) for PHIDGET OUTPUT modules: set analog output channel n to output voltage value v in V (eg. 5.5 for 5.5V)
  vout(c,v[,sn]) for YOCTOPUCE VOLTAGE OUT modules with c the channel (1 or 2),v the voltage as float [0.0-10.0]
  cout(c[,sn]) for YOCTOPUCE CURRENT OUT modules with c the current as float [3.0-21.0]
  sleep(<float>) sleep: add a delay of <float> seconds
S7 Command _ variable holding the last value read via S7
  sleep(<float>) sleep: add a delay of <float> seconds
  button(<bool>) sets calling button to “pressed” if argument is 1 or True
  getDBbool(<dbnumber>,<start>,<index>) read bool from S7 DB
  getDBint(<dbnumber>,<start>) read int from S7 DB
  getDBfloat(<dbnumber>,<start>) read float from S7 DB
  setDBbool(<dbnumber>,<start>,<index>,<value>) write bool to S7 DB
  setDBint(<dbnumber>,<start>,<value>) write int to S7 DB
  msetDBint(<dbnumber>,<start>,<andMask>,<orMask>,<value>) write value where bits are replaced by those from orMask at positions where andMask bits are not set
  setDBfloat(<dbnumber>,<start>,<value>) write float to S7 DB
Aillio R1 Heater   sets heater to value
Aillio R1 Fan   sets fan to value
Aillio R1 Drum   sets drum speed to value
Aillio R1 Command PRS Sends PRS command
Artisan Command alarms(<bool>) enables/disables alarms
  autoCHARGE(<bool>) enables/disables autoCHARGE
  autoDROP(<bool>) enables/disables autoDROP
  sleep(<float>) sleep: add a delay of <float> seconds
  tare(<int>) tare channel <int> with 1 => ET, 2 => BT, 3 => E1c1, 4: E1c2,..
  PIDon turns PID on
  PIDoff turns PID off
  PIDtoggle toggles the PID state
  pidmode(<int>) sets PID mode to 0: manual, 1: RS, 2: background follow
  p-i-d(<p>,<i>,<d>) sets the p-i-d parameters of the PID
  adjustSV(<int>) increases or decreases the current target SV value by <int>
  pidSV(<int>) sets the PID target set value SV
  pidRS(<rs>) activates the PID Ramp-Soak pattern number <rs> (1-based!) or the one labeled <rs>
  pidSource(<int>) selects the PID input source with <n> 0: BT, 1: ET (Software PID); <n> in {0,..,3} (Arduino PID)
  pidLookahead(<int>) sets the PID lookahead
  popup(<msg>[,<int>]) shows popup with message <msg> which optionally automatically closes after <int> seconds
  message(<msg>) shows message <msg> in the message line
  notifications(<bool>) enables/disables notifications; while disabled issued notifications are ignored
  notify(<title>,[<msg>]) sends notification with title <title> and optional message <msg>
  setCanvasColor(<color>) sets canvas color to the RGB-hex <color> like #27f1d3
  resetCanvasColor resets canvas color
  button(<name>) activates button <name> from { START, CHARGE, DRY, FCs, FCe, SCs, SCe, DROP, COOL, OFF }
  palette(<p>) activates palette <p> with <p> either a number 0-9 or a palette label
  playbackmode(<int>) sets playback mode to 0: off, 1: time, 2: BT, 3: ET
  openProperties opens the Roast Properties dialog
  loadBackground(<filepath>) loads the .alog profile at the given filepath as background profile
  clearBackground clears the current background profile
  alarmset(<as>) activates the alarmset with the given number or label
  moveBackground(<direction>,<int>) moves the background profile the indicated number of steps towards <direction>, with <direction> one of up, down, left, right
  keyboard(<bool>) enables/disables keyboard mode
  showCurve(<name>,<bool>) shows/hides the curve indicated by <name> which is one of { ET, BT, DeltaET, DeltaBT, BackgroundET, BackgroundBT}
  showExtraCurve(<extra_device>,<curve>,<bool>) shows/hides the <curve> (one of {T1,T2}) of the zero-based <extra_device> number
  showEvents(<event_type>, <bool>) shows/hides the events of <event_type> in [1,..,5]
  showBackgroundEvents(<bool>) shows/hides the events of the background profile
RC Command pulse(ch,min,max[,sn]) for PHIDGET RC modules: sets the min/max pulse width in microseconds
  pos(ch,min,max[,sn]) for PHIDGET RC modules: sets the min/max position
  engaged(ch,b[,sn]) for PHIDGET RC modules: engage (b=1) or disengage (b = 0)
  ramp(ch,b[,sn]) for PHIDGET RC modules: activates or deactivates the speed ramping state
  volt(ch,v[,sn]) for PHIDGET RC modules: set the voltage to one of 5, 6 or 7.4 in Volt
  accel(ch,a[,sn]) for PHIDGET RC modules: set the acceleration
  veloc(ch,v[,sn]) for PHIDGET RC modules: set the velocity
  set(ch,pos[,sn]) for PHIDGET RC modules: set the target position
  enabled(c,b[,sn]) for YOCTOPUCE RC modules: with c:int the channel, b a bool (eg. enabled(0,1) or enabled(0,True))
  move(c,p[,t][,sn]) for YOCTOPUCE RC modules: with c:int the channel, p:int the target position, the optional t the duration in ms, sn the optional modules serial number or logical name
  neutral(c,n[,sn]) for YOCTOPUCE RC modules: with n an int [0..65000] in us
  range(c,r[,sn]) for YOCTOPUCE RC modules: with r an int in %
WebSocket Command send(<json>) If {} substitutions are used, json brackets need to be duplicated to escape them like in send({{ “value”: {}}})
  sleep(<float>) sleep: add a delay of <float> seconds
  button(<bool>) sets calling button to “pressed” if argument evaluates to 1 or True
  read(<json>) if the `<json>` text respects the JSON format it is send to the connected WebSocket server and the response is bound to the variable `_`