Skip to main content

Grove - Heelight Sensor

Grove – Heelight Sensor is a smart voice sensor that can recognize up tp 500 digital voice commands. It was originally used on the Heelight – a smart colorful bulb that can be controlled by digital sound waves. Now we introduce this sensor into the small and neat Grove modules, allow you to realize smart control in your Arduino – based projects.


  • Digital Voice Recognition

  • Support over 500 digital voice commands

  • Compatible with the Grove system


Product NameGrove-Heelight Sensor
Operating VoltageDC 3.3V~5V
Operating Current15mA
Identification Range0.1~10m
Angle Range360°
Baud Rate115200
Serial Port OutputTTL logic level

Getting Started

What do we need?

Base Shield V2Provide Grove connectors1Get One Now
Seeeduino V4.2Controller1Get One Now
Grove - Heelight SensorSensor1Get One Now

Hardware Connection

  • Plug the Base Shield V2 on the Seeeduino V4.2
  • Connect the Grove - Heelight Sensor to D6 port of Base Shield V2.

Upload the code

Before uploading the code, please make sure you have already selected the right board and COM port. For Seeeduino V4.2, we can choose Arduino/Genuino Uno.

This is the basic example that can show the ability of the sensor, which is output different hex values in the serial monitor when it receives (or hear) different digital sounds. You can also download this example in the Resources

Software serial multple serial test

Receives from the hardware serial, sends to software serial.
Receives from software serial, sends to hardware serial.

The circuit:
* RX is digital pin 10 (connect to TX of other device)
* TX is digital pin 11 (connect to RX of other device)

Not all pins on the Mega and Mega 2560 support change interrupts,
so only the following can be used for RX:
10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69

Not all pins on the Leonardo support change interrupts,
so only the following can be used for RX:
8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).

created back in the mists of time
modified 25 May 2012
by Tom Igoe
based on Mikal Hart's example

This example code is in the public domain.

#include <SoftwareSerial.h>

SoftwareSerial mySerial(6, 7); // RX, TX

void setup()
// Open serial communications and wait for port to open:
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only

Serial.println("Goodnight moon!");

// set the data rate for the SoftwareSerial port

//mySerial.println("Hello, world?");

void loop() // run over and over
if (mySerial.available())
Serial.print(" ");
Serial.print(" ");
Serial.print(" ");
if (Serial.available())


Open the serial monitor, set baud rate to be 57600, then play the sound. We have prepared 511 different digital sounds for you. Every time one sound is played, the heelight sensor will output a hex value correspond to the sound, and the last 2 characters of the hex value is the same as the sounds value.


If this sensor doesn't work well when you play the specific sounds we provided via PC or other speakers, please set the volume in a low level. We recommend 10/100 in windows PC.


Tech Support & Product Discussion

Upgradable to Industrial Sensors

With the SenseCAP S2110 controller and S2100 data logger, you can easily turn the Grove into a LoRaWAN® sensor. Seeed not only helps you with prototyping but also offers you the possibility to expand your project with the SenseCAP series of robust industrial sensors.

The IP66 housing, Bluetooth configuration, compatibility with the global LoRaWAN® network, built-in 19 Ah battery, and powerful support from APP make the SenseCAP S210x the best choice for industrial applications. The series includes sensors for soil moisture, air temperature and humidity, light intensity, CO2, EC, and an 8-in-1 weather station. Try the latest SenseCAP S210x for your next successful industrial project.

Loading Comments...