Grove - Haptic Motor

Grove - Haptic motor is a grove module integrated with DRV2605L which will give your project more feelings. This motor is specially designed for various effects, such as ramping the vibration level up and down, for wearables and other IoT devices. Right now we have developed an easy-to-use library which simulate 123 kinds in total of vibrating modes and this will make your prototyping quicker. Also, you can develop more advanced functions with driver DRV2605L which will improve actuator performance in terms of acceleration consistency, start time, and break time and is accessible through a shared I2C compatible bus or PWM input signal.


  • More vibration effects.
  • Quicken your project prototyping process.
  • Easy-to-use library with 123 kinds of vibrating modes.
  • Powerful driver to implanting more advanced functions.


More details about Grove modules please refer to Grove System


Parameter Value
Operating voltage 3.3~5.0 V
Ripples (at maximum power) 50~100 mV
Max power 750 mW
I2C speed 100 kHz
Vibration effects 123 types
Driver DRV2605L
Port I2C
Default I2C Address 0x5A

Platforms Supported

Arduino Raspberry Pi BeagleBone Wio LinkIt ONE


The platforms mentioned above as supported is/are an indication of the module's hardware or theoritical compatibility. We only provide software library or code examples for Arduino platform in most cases. It is not possible to provide software library / demo code for all possible MCU platforms. Hence, users have to write their own software library.

Application ideas

  • Mobile phone, tablets.
  • Wearable devices.
  • Remote controls, touch-enabled devices.
  • Industrial human-machine interfaces.

Hardware Overview

Front view:

Rear view:

Getting started


This section only shows you how to build a basic development environment. You can build a development environment for your project with following guides:

Build IDE

Refer to following guides to building an appropriate IDE:

Getting Started on Windows

Getting Started on Mac OS X


Arduino board will also be fine if you happen to have no Seeeduino board because Seeeduino is compatible with Arduino.

Hardware connection


a. Make sure you have built a development environment successful through previous steps.

b.Make sure your board has selected Arduino Uno and COM port right chosen. Connect to I2C interface on Seeeduino board and Haptic motor with grove wire.

Download sample code

  1. You can download sample code and library or header files.
  2. Click a button named "Download Zip" at Github.
  3. Decompress the downloaded ZIP file.
  4. Remove the "-master" twice in decompressed file name.
  5. Copy the folder Grove_Haptic_Motor into your library folder (In default, it is same with Sketchbook Location which can be found by clicking File > Preference).Under Windows, it will likely be called "My Documents\Arduino\libraries". For Mac users, it will likely be called "Documents/Arduino/libraries". On Linux, it will be the "libraries" folder in your sketchbook.
  6. Copy file drv2605.cpp and file drv2605.h to its parent directory.

Load sample code


In this case we use Seeeduino 4.2 as experiment board which is a compatible board with Arduino.


You can use Base shield v2 as expansion board which will make your connection of modules simple.


Never touch driver DRV2605L which may cause damage to it when it is powered.

  1. Make sure haptic motor and main control board well connected.
  2. Load your sample code drv2605.ino under example file of decompressed file.
  3. Flash your code to your main control board by click Project->Upload(CTRL+U).
  4. After uploading, you now get haptic motor vibrate at a smooth style.


Tech Support

Please do not hesitate to contact techsupport@seeed.cc if you have any technical issue. Or submit the issue into our forum.