A wireless voice-controllable household system using Arduino

A wireless voice controllable household system

Motivation    top

We design a smart home control system which allow people control their home devices by voice command at home. This is a wireless, voice control system. People could control almost all the facilities at home including lights, fans or even back ground music. Right now, the basic function of lights control, fan control and music control have all been implemented. Except for basic turning on and off of fasilities at home, we also realize the function of fixed-time control, and error detection when some device is broken. The system is quick enough for respond all the commands.

Our smart home system is a simulation product for the future life. The purpose of it is to make people’s lives more convenient. To replace turn on or turn off on switches by hand for current product, our system is controlled by voice. That should be a trend for the future 10 years which we believe that it is coming to real product soon. How to make people’s life more convenient, more comfortable, more safe and how to save more energy will be the series of questions we will care, discuss and design in our project. Just imagining, after you cook a big pot soup and want to leave the kitchen, you don’t have more hands to turn off the kitchen’s light. If our project becomes a mature product, you can set up our system in the home, you can turn off the lights by voice when you hold a pot soup at the same time. When you read the book in bed at night, you are not sure when you will sleep, you can tell the system when you want the light turn off, the timer in the system will help count the time and turn off the lights with the time you have set.

Early Work    top

Why we choose wireless signal transmission?

When someone gets home and wants to enable light, fan, music at home, he may use his voice to control his household appliance. However, the transmission distance of the voice is short and it is even hard to recognize what you said when there is some noise mixed with the signal. Sometimes the voice recognition chip will send out wrong instructions because of the noise outside. So we decide to place a central control unit in the center of the room and send digital signal wirelessly to where other microcontroller is. Once the receiver gets the signal, it will operate on/off/dimmer function which has been programmed in it previously. As xbee could transmit at most 1000 meters, this method avoids the distance problem and signal interference problem.

A wireless voice controllable household system

Why we choose xbee?

XBEE promises many advantages over existing remote control solutions, including richer communication and increased reliability, enhanced features and flexibility, interoperability, and no line-of-sight barrier. In our project we use XBEE for point to point communication. It is efficient and enough to be used in household. The transmission of signal won’t be blocked in a long distance and even by a wall. Due to this spec of the xbees, we may put the center voice recognition microcontroller in the center of one household so that it could communicate any other microcontroller (which has xbee receiver with it) and enable different functions by sending out different instructions. Here, I use different characters, like “a”,”b”,”c” etc to represent controls on fan, lounge room LED and bedroom LED.

X-CTU is the program provided by digi to initialize and test with xbee communications. We change the baud rate to 9600, set the same pin number for two xbees through the program so that it is ensures there will be no other xbee or RF devices interfering the wireless communication between two our two xbees.

High Level Design    top

Rationale and Sources

Many companies on the school career fair showed their products for students. Lutron, a famous lighting control company, focus on the light system for house, company and some other building. They showed us their high-level LED products, with the basic entire control system costs around $3000. We got interested in their product and also figuring out a more convinient way to control and save energy.

After discussing, we consider it could better if we implement the wireless, voice control system in the household. The basic idea of our project is when people stay in the room and within a distance of the device they wants to control, they could control the house electrical devices by voice instructions. Under most of the circumstances, this system will bring more convenience in people’s lives.

Logical Structure

Figure 1:Overview of Logical Strcture Diagram

There are two CPU in our project, ATmega328 and ATmega1284. We set up the wireless communication by two Xbee chips. One of them connects with ATmega328 working as the transmitter to transmit the signal, another one is connected with ATmega1284 to be the receiver. We pick up ATmega328 to be our transmitter part because there is a microphone on it which could receive and store the voice signal from people. When people say the voice instruction, microphone gets it first and then ATmega328 receive it. By the program controlling, ATmega328 will send the signal to transmitter Xbee. When the Xbee is enabled, it will send the corresponding signal to the receiver Xbee by the different voice instructions. When the wireless communication set up successfully, it will send instructions for ATmega1284.

We set up two timers, timer0 and timer2 for four PWM waves to do the function of turn on, turn off and shift the level of lights and fan. On the other hand, there is one pin which is used to turn on and turn off the music player by the high voltage or low voltage enabling the MOS transister. One more function is delay off realized by timer1. User could tell the device when to turn off the lights or fan automatic. There still is a time counter to show the time decreasing process. In order to tell the user when the light or fan are broken, the LCD could show the detail to remind user the light or fan broken by open circuit which is the fault detection function. Generally, our project could control the lights, fan and music player parallel.


We decided the idea of voice control smart home system at the beginning of this project. Because we owned the ATmega328, so we were looking for some voice recognition module to put on it. At final, we chose the EasyVR Shield – Voice Recognition Shield which is perfect to suit for ATmega328 and has the high level voice recognition function. It is the cheaper one which is under the budget, but still cost us around $50. The little more cost increase the final budget for our project. In order to make a tidy and beautiful circuit, we used much time to design the circuit to improve space utilization. We set up ATmega1284, one Xbee chip, one LCD, one music player chip and three PWM wave circuits on three solder boards (6 inch). We got a good wire connection on the solder boards and carefully to solder and re-solder them together. Our initial idea was to use batteries to provide the power for the whole circuit. By this way, we could take our device convenient. But after test, we found the batteries is really hard continuously provide the power for three different home devices and sometime the voltage is instability. Finally we had to give up it and changed to use the power supply in the lab.

FCC Rules

We used the xbee chips to set up the wireless communication. To make sure if we could use the xbee to set up the wireless communication in the United States, we need to check the Federal Communications Commission Rules. The Xbee chips are operated in the ISM 2.4 Ghz frequency. After we check the FCC rules part 15 subpart B, we got 2.4 Ghz frequency are exempt from complying with the technical provisions of this part which prevent the harmful interference in a residential installation.

Existing Patents and Copyrights

To make sure we don’t infringe someone’s patents or copyrights, we search the key word in google after we are done. We try to search the “voice control home” and other similar key word, we find a product named HAL, the Home Automated Living at smarthome.com.(HVL,Home Automated living) We never read their product detail or their website before. After we finish our project, we read their product and compared it with our project. We find they are not same. HVL connect the cellphone with the software in PC by the telephone wire. When people want to control their home device they need make a phone call for the device and send the commands which they want to control, such as when to turn on the living room light and turn on how long. All of them are controlled by the computer. But our device is totally different. People need to stay in the home and have a short distance with the microphone. Use the voice instructions to control the home device which they want to.

Hardware Design   top

Hardware Overview

These are the overview of our project schematics and physical map. We solder all of them in three solder boards. The microphone, EasyVR Shield and transmitter Xbee are connected on the ATmega328 chip and no need to solder. ATmega1284 connect to LCD and provide the voltage to the receiver Xbee. We pass the Vcc in a voltage regulator to get the 3.3V to the Xbee. On the other hand, there are three pins provide the PWM waves to the three different home devices. There is one pin is used to connect the gate of NMOS which is let the VCC flow in to the NMOS and into the voltage regulator to get the 3.3V output to the music player chip.

Part1-Transmitter part

Figure 4:Transmitter Part

In this part, there are three part, EasyVR Shield which has the microphone, the ATmega328 and the transmitted Xbee. With the ready-made board we can put the EasyVR chip on the ATmega328 direct. We input the 3.3V from the ATmega328 to Xbee and connected the Xbee and ATmega328’s ground. In order to transmit the signal from Xbee we connected Xbee DOUT pin to ATmega328 (PCINT16/RXD) PD0 pin.

Part2-Receiver Part

A wireless voice controllable household system schematic


Read more: A wireless voice-controllable household system

Leave a Comment

Your email address will not be published. Required fields are marked *