Home » Technical Resources » Using Haptic Drivers as Battery Level Monitors

Using Haptic Drivers as Battery Level Monitors

Looking for our Haptics range? View our main Haptics hub here.

Reducing power consumption is one of the most important aspects of designing a device that is powered by batteries. This means there is a great incentive to keep the component count to an absolute minimum, especially active components which draw small amounts of current even when in ‘sleep’ mode.

One of the most common ways to achieve this is to use chips that combine multiple functions, the term SoC or ‘System on Chip’ is often used. This works particularly well for infrequently used features or where there is little differentiation.

For example, a small internet-connected sensor (e.g. IoT devices) might not need an extremely accurate measurement of battery level. This would be particularly true if the device only issued a “low battery warning”, instead of constantly reporting a % level. Other example devices could include a touchscreen that was normally ‘off’, but woke on touch, or almost all wearable devices. In fact, there are many devices that don’t have a screen and solely rely on haptics for communicating to the user – these cannot reasonably report the ongoing battery level.

Some designs would typically incorporate a specialised chip as a battery level monitor, often accessed with I2C communication. However, it may be that other chips in the system actually already monitor the battery level. These would not be as accurate as a dedicated chip, however, as discussed above the accuracy provided by a battery level monitor might be superfluous and over-designed.

Close up of the DRV2605 haptic driver BGA package
DRV2605 Haptic Driver BGA Package

Relating this to haptic applications and our vibration motors, the DRV2605 is one such driver that monitors the battery level. Register VBAT (0x21) provides a 1-byte value that can be used to calculate VDD, which directly relates to the battery’s remaining capacity. The calculation is as follows:

$$V_{DD} = VBAT[7:0] \times \frac{5.6V}{255}$$

One caveat is that the DRV2605 must be playing a waveform to take a real-time reading, so reading the battery level would be best built into the haptic effect procedure.

For many wearables, haptic feedback is considered an important feature – one where a product that invests in a quality actuator and driver can be differentiated from low-cost designs. As a result, many already use haptic drivers – so by using this method a battery level monitor can be removed. Alternatively, if the existing design has omitted a battery level monitor (for whatever reason), a small update to the effect playing code can add this functionality in with no change to the hardware. It may not seem like much, but this type of approach to energy conservation can pay dividends when applied system-wide.

Female wearing a phone headset and sat in front of a desktop computer. In the background, other team members are sat at desks working.

Get in touch

Speak to a member of our team.

Motor catalogue

Looking for our products?

Reliable, cost-effective miniature mechanisms and motors that meet your application demands.


Sign up to receive new blogs, case studies and resources – directly to your inbox.

A PMD team member sat in front of a computer (but with their back the to camera) discussing a project with a colleague. To their right two more colleagues are discussing motor specifications.

Sign up