Programming Guide 
Marathon MM  Rev. D7 Jul 2017  67 
10 Programming Guide 
This  section  explains  the  sensor’s  communication  protocol.  A  protocol  is  the  set  of  commands  that 
define  all  possible  communications  with  the  sensor.  The  commands  are  described  along  with  their 
associated ASCII command characters and related message format information. Use them when writing 
custom  programs  for  your  applications  or  when  communicating  with  your  sensor  with  a  terminal 
program. 
10.1 Serial Interface versus Control Panel 
Since the sensor includes a control panel, the possibility exists for the user to make manual changes to 
parameter settings. To resolve conflicts between manual parameter settings and settings by means of 
the serial interface, the sensor observes the following rules: 
  Command precedence: the  most recent parameter change is  valid, whether originating from 
control panel or the serial interface. 
  If  a  manual  parameter  change  on  the  control  panel  is  made,  the  sensor  will  transmit  a 
“notification” string to the host (e.g. a PC).  Notification strings are suppressed  in multidrop 
mode. 
10.2 Storing of Parameters 
All sensor parameters, which are changed via the serial interface, are changed in the sensor internal 
EEPROM memory. The EEPROM memory will retain all information after powering off the sensor. 
10.3 Command Structure 
After transmitting one command, it is obligatory to wait for the response from the sensor before sending 
another. Make sure that a command sent was completely transmitted from the sender before the next 
command can be sent. 
10.3.1 Requesting a parameter (Poll Mode) 
?E<CR>  “?” is the command for “request” 
  “E” is the parameter requested 
  <CR> carriage return (0Dh) is closing the request 
10.3.2 Setting a parameter (Poll Mode) 
E=0.975<CR>  “E” is the parameter to be set 
  “=” is the command for “set a parameter” 
  “0.975” is the value for the parameter 
  <CR> carriage return (0Dh) is closing the setting