Datasheet

Table Of Contents
DA7280
LRA/ERM Haptic Driver with Multiple Input Triggers,
Integrated Waveform Memory and Wideband Support
Datasheet
Revision 3.0
30-Jul-2019
CFR0011-120-00
34 of 76
© 2019 Dialog Semiconductor
5.7 Advanced Operation
DA7280 features several advanced modes of operation to fine-tune actuator haptic performance.
5.7.1 Frequency Tracking
The closed-loop frequency tracking on DA7280 is implemented via a proportional-integral (PI)
controller. The proportional coefficient is stored in FRQ_PID_Kp_H/L and the integral coefficient in
FRQ_PID_Ki_H/L. The default values of the coefficients are optimized to cover a wide range of
actuators with typical settling times of approximately 40 ms from a 20 % frequency offset. If further
optimization is required to target a specific actuator the coefficients can be updated. The LRA tuning
tool in the DA7280 SmartCanvas GUI provides an intuitive and graphical way to easily adjust the Kp
and Ki coefficients.
To increase absolute accuracy of the lock during playback, DA7280 supports automatic scaling of the
frequency tracking controller proportional coefficient. This feature is enabled via
FREQ_TRACKING_AUTO_ADJ and becomes active after the device has achieved initial frequency
lock. The FRQ_LOCKED_LIM value is used to determine the threshold for the initial lock and can be
scaled up or down depending on system requirements. If optimizing FRQ_PID_K<x> coefficients with
the FREQ_TRACK_AUTO_ADJ enabled in normal operation, ensure that the closed loop is stable
for a step response when FREQ_TRACK_AUTO_ADJ is set at either 0 or 1.
The resonant frequency tracking algorithm converges to the correct value from up to 25 % offset
between the initial nominal datasheet value and the actual resonant frequency. This range is
conservative to prevent unwanted behavior. A fault triggers if the actuator resonant frequency is
outside the 50 Hz to 300 Hz range. To block these checks, set FREQ_TRACKING_FORCE_ON = 1.
FRQ_TRACK_BEMF_LIM disables the frequency tracking if the BEMF signal becomes too low. It
should always be set lower than the value in RAPID_STOP_LIM.
The instantaneous value of the resonant frequency period is updated every half-period and written to
LRA_PER_ACTUAL_H/L. The values can be converted to period using the following formula:
󰇛󰇜  

󰇛  󰇜
(10)
If more accurate information is required (for example if a frequency tracking enabled sequence is
played to determine the resonant frequency before entering wideband operation), the average
resonant frequency information over the last four half-periods is written to
LRA_PER_AVERAGE_H/L. The values can be converted to period using the following formula:
󰇛󰇜  

󰇛  󰇜
(11)
5.7.2 Rapid Stop
The Rapid Stop algorithm relies on actuator BEMF sensing to detect actuator motion during a stop-
to-zero LRA acceleration. The algorithm provides a stopping signal to the LRA until the actuator
crosses the point of no acceleration. Since drive updates happen only at the zero cross point, this
introduces latency that may cause the actuator to overshoot the stop position. Due to this, the Rapid
Stop will also trigger at a pre-determined threshold set by RAPID_STOP_LIM. The default setup
covers most actuators, but if Rapid Stop is too short (actuator not fully stopped), the register value
should be decreased; and if Rapid Stop overshoots (actuator stopped and then reversed), the
register value should be increased.
Note: The Rapid Stop algorithm can be triggered only for sequences longer than three half-periods.
5.7.3 Initial Impedance Update
DA7280 performs an impedance measurement at the very first half-period of drive at the start of
playback. This allows a one-shot update of V2I_FACTOR_H/L to take into account specific actuator