Battery Vibrator Customization

Overview

Introduction

OpenHarmony provides the vibrator customization function for the battery service. Specifically, you can modify the vibrator configuration file of the battery service so that vibration is triggered when a charger is connected to the device.

Constraints

The device must be equipped with a vibrator.

How to Develop

Setting Up the Environment

  • Hardware requirements:

    Development board running the standard system, for example, the DAYU200 open source suite, and connected to a vibrator

  • Environment requirements:

    For details about the requirements on the Linux environment, see Quick Start.

Getting Started with Development

The following uses the RK3568 development board as an example to illustrate battery charging vibration customization.

  1. Write the custom battery_vibrator.json file by referring to the battery_vibrator.json file in the default folder of battery vibrator configuration.

    profile
    ├── BUILD.gn
    ├── battery_config.json
    ├── battery_vibrator.json
    

    Example configuration:

    {
        "start_charge": {
            "enable": true, 
            "type": "haptic.charging"
        }
    }
    
    • start_charge: name of the vibration scenario, which cannot be changed.

    • enable: whether to enable vibration. The value true indicates that vibration is enabled, and the value false indicates the opposite. The default value is false.

    • type: vibration type. The default value is haptic.charging in the current mode.

  2. Build the customized version by referring to Quick Start.

    ./build.sh --product-name rk3568 --ccache
    
  3. Burn the customized version to the RK3568 development board.

Debugging and Verification

Upon device restarting, connect a charger to the device and check whether the device vibrates. If the device vibrates, the customization is successful.

Reference

During development, you can refer to the default battery vibrator configuration:

Default Battery Vibrator Configuration