Introduction: Use Cortana and a Arduino to Control RGB Leds or Ledstrips With Your Voice!
In this instructable i will show you how you can control your RGB led or led strip with your voice. This is done by a simple C# application called CortanaRoom. This app is part of my CortanaRoom project. When you are done with this project you can walk into your room and just ask Cortana to turn on the led strip in for example blue and Cortana will turn it on for you. For this tutorial you do not need much.
1x windows 10 pc
3x N channel mosfet (can be done without but you can than only hook up 1 RGB led)
1x arduino with usb port
1x RGB led or RGB ledstrip with a common +
Here is a list of the functions of cortanaRGB and also check out the video!
-Turn on or off your led strip in multiple colors by voice
Colors supported are
-Activate the fade effect by voice
-set custom fade speed
-Activate the flashing effect by voice
-set a custom flashing color and flashing speed
-Activate the single color fade effect by voice
-set custom single color fade speed and color
-CortanaRGB remembers your settings even if you close the application
-A complete help list is build in -Create your own custom RGB color with sliders
-Smart layout design
-CortanaRGB can be activated from the background just by voice.
-Multiple voice command possibilities for one function. For example "Please turn led red" will work but "please turn my led on in color red" will also work
-support for multiple serial converter chips
So lets get started!
Step 1: Lets Build the Hardware
First we have to build the hardware. Do this by following the schematic. Use the complicated one if you use a RGB led strip or a array of RGB led's. If you only use one or two led's you can use the less complicated one. This is because the Arduino cant handle the high current.
A short explanation of the complicated one.
In the schematic you can see 3 N-channel mosfets. I use the IRF44N. Make sure your mosfets are high current. Hook up the mosfets as followed:
Gate: Connect this pin with the DigitalPin on the Arduino. Remember to use the correct digital pin by the correct color. Otherwise the colors wont be correct.
Drain: Connect this directly to the RGB led strip or Led array.
Source: Connect this pin to GND.
The 12V/5V wires on the left of the schematic should be connected to your power supply. I used a 12V led-strip so is used a 12V 3A power brick i had laying around. Make sure your brick has enough current for your ledstrip.
Make sure that your ledstrip OR RGB led is common Anode!. Otherwise onthing will work.
Step 2: Setup the Arduino
Now we have to upload some code to the Arduino. Do this by first connection the Arduino to the PC.
1. open the arduino ide
2. go to file
3. go to examples
4. go to Firmata
5. select StandardFirmata
6. Click the upload button and you are done.
Step 3: Setup CortanaRGB
Now we have to download and install CortanaRGB. First download CortanaRGB from my github:
After you have downloaded CortanaRGB we first have to put your PC into developer mode. This is so that you can run the app without the stupid windows store certificate. Do this by:
1 Going to the settings
2 go to security & updates
3 go to for developers
4 Click the option that says Developer mode
After that go to the folder that you have downloaded. There you can see a folder called Compiled. Open that folder and you can then see a file called Add-AppDevPackage. Right click this file and click run with power shell. After that follow the onscreen instructions and you are done.
Now we only have to make contact between CortanaRGB and your arduino. For this we first need your arduino's PID and VID.
You can get these by:
1. windows key + x and select device manager
2.go to ports
3.right click your device and select properties
4. go to the details tab
5. in the property selection area click hardware lds
6. now you will see your VID and PID
Now that you have these open the CortanaRGB app. You can find it when you type in cortanaRGB into the start menu. Then scroll down to the button that says help. Click on that button and than scroll down until you see two text boxes. Type in the VID text box your VID and in the PID text box the PID. For me the PID and VID was: "VID_2341" and "PID_0043".
Step 4: Enjoy
Now you are done with setting everything up. If you have done everything correct you can now ask Cortana to turn your led strip on. If something does not work feel free to ask me any questions. I hope that this instructable has helped you and enjoy your new smart room.
Please also check out my other instructable called CortanaRoom. This is an application that also controls an RGB led strip but also controls your lights.
Also please help me win one of the contests i have entered. You can do this by voting on this project! Really appreciate it!