Compromised Device Behavior

The DERSim simulator can be used to simulate compromised device behavior. This is done by using the --compromised_behavior option in the command line. The following options are available:

--compromised_behavior HACK_SCRIPT
    A script to trigger SunSpec Modbus readback modifications. Select from:
    'da_manipulation' - Modify the device ID of the DER
    'falsify_device_identity' - Change the DER manufacturer and model
    'meas_p_always_nameplate' - Set the DER meas to always be at nameplate power
    'meas_q_always_minimum' - Set the DER to always be at minimum reactive power
    'meas_q_always_maximum' - Set the DER to always be at maximum reactive power
    'meas_q_always_zero' - Set the DER to always be at zero reactive power
    'meas_zero_p' - Set the DER to always be at zero P, Q, and S
    'meas_invert_q' - Set the DER to reverse the Q measurement data
    'meas_low_v' - Set the DER to always measure low voltage
    'meas_high_v' - Set the DER to always measure high voltage
    'meas_low_l1_v' - Set the DER to always measure low line 1 voltage
    'meas_high_l1_v' - Set the DER to always measure high line 1 voltage
    'meas_low_f' - Set the DER to always measure low frequency
    'meas_high_f' - Set the DER to always measure high frequency
    'meas_low_amps' - Set the DER to always measure low current
    'meas_high_amps' - Set the DER to always measure high current
    'meas_high_s' - Set the DER to always measure high apparent power
    'meas_low_s' - Set the DER to always measure low apparent power
    'meas_high_q' - Set the DER to always measure high reactive power
    'meas_low_q' - Set the DER to always measure low reactive power
    'meas_low_pf' - Set the DER to always measure low power factor
    'meas_low_reversed_pf' - Set the DER to always measure low reversed power factor
    'nameplate_high_p' - Set the DER nameplate power to be high
    'nameplate_low_p' - Set the DER nameplate power to be low
    'nameplate_high_s' - Set the DER nameplate apparent power to be high
    'nameplate_low_s' - Set the DER nameplate apparent power to be low
    'nameplate_high_q' - Set the DER nameplate reactive power to be high
    'nameplate_low_q' - Set the DER nameplate reactive power to be low
    'nameplate_high_nom_v' - Set the DER nameplate voltage to be high
    'nameplate_low_nom_v' - Set the DER nameplate voltage to be low
    'nameplate_low_amps' - Set the DER nameplate current to be low
    'nameplate_low_varmaxinj' - Set the DER nameplate varmaxinj to be low
    'nameplate_low_varmaxabs' - Set the DER nameplate varmaxabs to be low
    'nameplate_low_pf' - Set the DER nameplate power factor to be low
    'settings_high_nom_v' - Set the DER settings nominal voltage to be high
    'settings_low_amps' - Set the DER settings current to be low
    'settings_high_p' - Set the DER settings power to be high
    'settings_low_p' - Set the DER settings power to be low
    'settings_high_vamax' - Set the DER settings vamax to be high
    'settings_high_varmaxinj' - Set the DER settings varmaxinj to be high
    'settings_high_varmaxabs' - Set the DER settings varmaxabs to be high
    'change_common_model_id' - Change the common model ID
    'change_common_model_length' - Change the common model length

The same functionality can also be enabled via the 64412 SunSpec Modbus model.