TIDUC26A April 2022 – April 2024
This reference design uses the SCB to control the different ICs on board. The firmware for this design was developed using Code Composer Studio™ IDE. Once the SCB is flashed with the proper firmware, the SCB can be used along with this reference design. Since the SCB can be used with multiple EVMs, the SCB can easily be flashed by using the GUI to upload the proper firmware.
The firmware for this design starts by initializing the different ICs on the board. The LDC3114s are setup for the button application and set the registers according to the coil design discussed above. The DRV2605 haptic driver is setup to perform haptic feedback when and I2C command is received. The device is also setup for the specific LRA that is attached to the board and runs a calibration check each initialization. The TMAG5273 is setup so that the X and Y components of the magnetic field are used for rotational calculations. This device can also be configured to send interrupts under specific conditions, but that is not used in this design. Additionally, each mode in this design uses the angle from the TMAG5273 to determine which LED to turn on for the dial position. Since this is acting like a 12-position selector, hysteresis is added to the dial angle output. This prevents cases where the angle can be right on the line between two LED outputs causing the two LEDs to flicker back and forth. This has the same impact as included a physical keep out method for the position between each of the 12 LEDs.
During normal operation, this reference design has three different operational modes that change the functions of the inductive touch buttons.