Datasheet
Table Of Contents
- General Description
- Key Features
- Applications
- System Diagrams
- Contents
- Figures
- Tables
- Legal
- Product Family
- 1 Terms and Definitions
- 2 Block Diagram
- 3 Pinout
- 4 Characteristics
- 5 Functional Description
- 5.1 Features Description
- Driving LRA and ERM Actuators
- Automatic LRA Resonant Frequency Tracking
- Wideband LRA Support
- I2C and PWM Input Streaming
- Low Latency I2C/GPI Wake-Up from IDLE State
- Three GPI Sequence Triggers for up to Six Independent Haptic Responses
- On-Board Waveform Memory with Amplitude, Time, and Frequency Control
- Active Acceleration and Rapid Stop for High-Fidelity Haptic Feedback
- Continuous Actuator Diagnostics and Fault Handling
- No Software Requirements with Embedded Operation
- Differential Output Drive
- Current Driven System
- Configurable EMI Suppression
- Automatic Short Circuit Protection
- Ultra-Low Power Consumption with State Retention
- Ultra-Low Latency in STANDBY State
- Supply Monitoring, Reporting, and Automatic Output Limiting
- Open- and Closed-Loop Modes
- Open-Loop Sine/Custom Wave Drive Support
- Small Solution Footprint
- Additional Features
- 5.2 Functional Modes
- 5.3 Resonant Frequency Tracking
- 5.4 Active Acceleration and Rapid Stop
- 5.5 Wideband Frequency Control
- 5.6 Device Configuration and Playback
- 5.7 Advanced Operation
- 5.7.1 Frequency Tracking
- 5.7.2 Rapid Stop
- 5.7.3 Initial Impedance Update
- 5.7.4 Amplitude PID
- 5.7.5 Wideband Operation
- 5.7.6 Custom Waveform Operation
- 5.7.7 Embedded Operation
- 5.7.8 Polarity Change Reporting for Half-Period Control in DRO Mode
- 5.7.9 Loop Filter Configuration
- 5.7.10 UVLO Threshold
- 5.7.11 Edge Rate Control
- 5.7.12 Double Output Current Range
- 5.7.13 Supply Monitoring, Reporting, and Automatic Output Limiting
- 5.7.14 BEMF Fault Limit
- 5.7.15 Increasing Impedance Detection Accuracy
- 5.7.16 Frequency Pause during Rapid Stop
- 5.7.17 Frequency Pause during Rapid Stop
- 5.7.18 Coin ERM Operation
- 5.8 Waveform Memory
- 5.9 General Data Format
- 5.10 I2C Control Interface
- 5.1 Features Description
- 6 Register Overview
- 7 Package Information
- 8 Ordering Information
- 9 Application Information
- 10 Layout Guidelines
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
46 of 76
© 2019 Dialog Semiconductor
Byte
Number
Register Bit
Definitions
Description
1
SNP_ID_L[2:0]
SNP_ID_L is mandatory and contains the LSBs of the snippet ID (SNP_ID).
Up to eight snippets can be addressed.
2
SNP_ID_LOOP[3:0]
SNP_ID_LOOP is the loop multiplier of the snippet identified by
SNP_ID_L/H and shows how many times a snippet is looped. If not
present, the loop multiplier is 1. The number of loop iterations is equal to
SNP_ID_LOOP + 1 (that is, 0 = 1 iteration, 15 = 16 iterations). When the
loop multiplier is > 1, playback begins from P1 instead of P0, see Figure
26, after the first playback loop is complete.
2
FREQ_CMD
If FREQ_CMD = 1, the frame is a 3-byte command with frequency
information. The frequency information is stored in FREQ[7:0].
2
FREQ[8]
Drive frequency MSB. The total frequency range is represented by the 9-bit
concatenation of FREQ[8] and FREQ[7:0] (possible values: 0 to 511),
which corresponds to the range 1 Hz to 1024 Hz. The LSB step size is 2 Hz
and values below 25 Hz are interpreted as 25 Hz. The result is also
converted from frequency to period and stored in the
FRQ_LRA_PER_ACT_x registers for read-back.
2
SNP_ID_H
SNP_ID_H is the MSB of the snippet ID (SNP_ID). This can be used to
increase the range of addressable snippets from 8 to 16. This bit is optional
and if not present SNP_ID_H = 0.
3
FREQ[7:0]
Drive frequency LSBs. The total frequency range is represented by the 9-
bit concatenation of FREQ[8] and FREQ[7:0] (possible values: 0 to 511),
which corresponds to the range 1 Hz to 1024 Hz. The LSB step size is 2 Hz
and values below 25 Hz are interpreted as 25 Hz. The result is also
converted from frequency to period and stored in the
FRQ_LRA_PER_ACT_x registers for read-back.
Note: The frequency command should be used only when FREQ_TRACK_EN = 0, otherwise the
frequency tracking loop will update the frequency away from the set one.
Note: The If FREQ_TRACK_EN = 0 and a frequency update containing frame is played, the new
frequency will be maintained for all subsequent frames or sequences until a new frame with a new
frequency command is played. Assume that Sequence 0 contains no frames with frequency
commands, Sequence 1 has a frame with command setting the frequency at 150 Hz, and Sequence
2 has one at 200 Hz. If Sequence 0 is played after Sequence 1, it will be played at 150 Hz. If
Sequence 0 is played after Sequence 2, it will be played at 200 Hz.
5.8.4 Sequence Definition
A sequence is built up of one or more frames, see Figure 28, and written to memory using the format
described in Section 5.8.1.
Sequence
Frame0 Frame1 Frame2 FrameN
Each frame points to an individual snippet with certain playback parameters
Figure 28: Sequence Structure
Note: Only sequences can be played. It is not possible to point directly to a snippet (although a
sequence can be created which contains only one snippet).
Note: If a sequence ends on a non-zero value, zero is assumed to follow and the device will end the
haptic playback at the end of the sequence.
Note: The starting amplitude at the beginning of a frame or snippet is dependent on the ending
amplitude of the previous frame or snippet. The starting amplitude at the start of a sequence is zero,
see Figure 26.