Introduction: Alexa Voice Control of 16CH Relay Board With ESP32 DEVIKIT 32D & Sinric

About: Electronic, Arduino, Raspberry, Photography, Model Train Entusiat

This project illustrates how to control 16 relays (devices) through Amazon Alexa Voice Control and by SinricSkill for Alexa (or Sinric App for Smartphones).

For interfacing ESP32 DEVIKIT32D (30pins) and Amazon Alexa, we will be using an Amazon Skill called Sinric by Sinric.com

Sinric.com provides a "Simple, elegant way to link your development boards like RaspberryPi, ESP8226, ESP32 or Arduino with Amazon Alexa or Google Home for FREE!"

Step 1: Hardware

Hardware used for this project::

1 x 16-Channel 12V Relay Board

1 x ESP-WROOM-32 (30 pins) / ESP32 DEV KIT 32D (30pins)

1 x LM2596S DC-DC Buck Converter - 3.2-46V to 1.25-35V Step-Down

3 x IC 74LS14

1 x DC 12V NE555 Monostable Delay Relay Board

1 x PCB Custom Developed to host the 3 ICs 74LS14 and the ESP32 DEV KIT 32D (30pins) designed with EasyEDA and produced with JLCPCB

Provide 12V DC Power Supply to the Realy Board and 5V DC to the ESP32 DEV KIT preferably using the micro-USB port

Step 2: How to Use Alexa Sinric Skill

1. Register for an account at Sinric.com if you do not have one.

2. Login and create a smart home device, (i.e. Switch 5). Sinric will assign to Switch 5 a unique device ID similar to 5eaxxxxxxxxxxxxxx655555b)

Create as many devices which you want to control. In my case, I have created 16 Smart Home Devices (16 Switch to control 16 Relays which a named "Dado 1-16" as is easy to call in italian) .

3. Install Amazon Alexa smart home skill (US, UK, Germany, Australia, India, Italy, Spanish (ES/MX), Canada, Japan) here

4. To connect your new smart home device created on Sinric.com, copy the ID of the device that will be used later in the ESP32 code and your API Key (belonging to your Sinric account)..

Step 3: Coding

For this project, we will be using the ESP32 DEV KIT 32D module (with 30pins).

For programming the board we will be using Arduino IDE.

Download the example Sinric code from Github by kakopappa

As a reference you can watch this video

Step 4: Demonstration

In this video I demonstrate how the system works:

The 16CH Relay Board is controlled by ESP32 Dev Kit 32D & ALEXA - SINRIC Skill


This project was realized by design a custom electronic circuit and PCB board with EasyEDA to host the ESP32 Dev Kit (30pins) and the 3 ICs 74LS14 to drive the 16CH Relay Board.

The 3 ICs 74LS14 (Schmitt Triggers Dual Gate/Hex Inverter) are needed to provide the proper voltage/current to the Relay Board (working at 12V - 5V DC).

The PCB was produced with JLCPCB

I speack in italian to invocke Alexa command ("Turn On" - Accendi) or ("Turn OFF" - Spegni) each Relay named "DADO" and numbered 1 to 16

Step 5: Final Step - Wiring Modules

To power-up the system is needed a 12V DC power-supply, a bulk step-down 12V DC to 5V DC to power up the the ESP32 DEVKIT allowing its start-up and a delayed relay (1 sec delay) to power up (at 12V DC) the relay board after a delay from the ESP32 DEVKIT start-up. This step is needed to avoid ghost activation of the relays at startup and to put all relay in OFF position at start-up.

Step 6: Final Remarks

Be carefully managing 110V AC or 220V AC if you wire Relays contact to AC current