Project zero is all about making your home extra smart. We have seen the evolution of mobile phones to smart phones. And now time has come where our cars are getting smarter. Now we feel that its’ the perfect time to make our homes smarter. A lot of companies across the world have tried their hands in home automation. But more or less they gave other way of doing things like turning fan on and off using remote or your mobile etc. None of these solutions gave a real intelligence to the entire home. Like what I do when I come back from office. Which are my favorite programs on the television. Adjust AC depending upon the temperature. Just allowing an easier way to switch on and switch off doesn’t mean automation. Rather than we would call it Smart Home (~ to SmartPhone).
Our main goal is to make home smarter enough to save our electricity, remind us about our favorite tv programs, secure home when nobody is there, remotely allow us to switch on or switch off a particular appliance, remotely open a door for you and so on. What we want to do has a lot of applications, but we want to start with a basic platform for all this intelligence.
In this bit, we are going to present some scenarios where our ProjectZERO army would come in handy. This is continuously being updated.
I should be able to check out who is ringing the bell on Mobile or on desktop or available display screen in my room. I should be able to ask the questions, allow/disallow the entrant.
I should be able to ask the knowledge questions like “Who is the president of India?” and there is voice reply to the question from the room.
I am sitting on dining table at kitchen with family and receives the phone call, I should be able to put the phone on system’s speaker.
When I am outside home, I should get alert notification/ preferably call for leakage of LPG detection in house.
The system should automatically suggest a prevention mechanism like showcase controls to open up the windows, curtains etc
If I am watching TV in hall or bedroom, system should be able to redirect my phone call to TV (If allowed).
The system should mute the TV while speaking on phone in a hall/bedroom.
I eat dinner at 9 pm everyday, I should be able to start oven remotely to save my time.
I should get notifications like weather updates, twitter mentions, phone notifications, subscribed feeds on Room Screen.(If allowed)
I am big fan of cricket and follow live score updates. If I am sitting at bedroom/hall, I should be able to see live scores on screen.
I am outside home and wanted to give access to maid for certain amount of time without giving keys. I should be able to provide/revoke the access remotely.
I am sitting in a room and its raining outside, the system should be able to adjust the AC’s temperature wrt expected room temperature.
I wanted to see/set poster inside room/hall. The system should allow me to set wallpaper and run slideshow on room’s screen.
Call 100 with voice commands with pre recorded message
Our Sergeant will have a pressure sensor, which will detect automatically when to start the exhaust fans and when to stop them.
Mobile apps will register and authenticate with home. Cloud server will have a constant full duplex communication channel with Home controller Node.
Mobile apps will have an intuitive display. It will show control options based on its location, time etc contexts.
This would be very nice, as starting from iOS 8, all the devices supporting this protocol would be directly controlled using already installed tool on iPhone. (Apple Homekit)
Android wearable apps will be available (which also includes voice commands) for handling this system.
Room controller with have integration with iSpeech api, and it will perform the STS (Speecht to text). This text will be routed through, http://www.lexalytics.com/ and generate voice command structure from natural language.
Speech commands will be of 2 type -
1. Direct voice commands - These are direct command and control actions. Eg. turn off lights. Start fan. Increase temperature. etc.
2. General Queries : This will involve generic questions like - What is birthday of Sachin tendulkar, convert 3 meters to centimeters etc. This will have to be an integration with Knowledge graph services like Wolpharm alpha, Wikipedia extracts etc. Needs to be figured out.
These will be room specific control options. This screen will also show other context sensitive information like - Current time, temperature, Sports updates, news updates. It can be configured to show a photostream of choice.
Project codename is ProjecZERO. All the components in this project are called an Army as in ProjectZERO army.
Logically a home will be divided into small components and each of the component will be attached with Project Zero Army.
Kernel is the core of processing unit of this entire home automation system. It does all the heavy lifting related with the ProjectZERO. Kernel is the device which would have direct internet connection (preferably Ethernet), contains the entire logic of voice processing, current status of entire army, fail-safe controls etc.
Kernel is supposed to be equipped with ethernet card, wifi chip, BLE chip, min 800MHz-1GHz processor, storage drive (preferably Solid state hard drive), speaker, microphone, power source input, basic minimal battery support, HDMI output pin (for having display support), Sim card support (for telephone related things), RAM
Sergeant can be considered as room controllers. They work directly with Kernel. Sargents’ main work is to decide if he can take an action on an event on himself or if he needs Kernel to carry out actions. For example, Turn off and Turn on for fans would be carried out by Sergeant if its using gesture*, or mobile app. But if user has given any voice command then he will push the command to Kernel, Kernel will process that entire voice sample and will return the command to Sergeant to perform.
Sergeant is supposed to be equipped with Atom 1GHZ or equivalent ARM processor, Wifi chip, BLE chip, speakers, microphone, power source, minimal battery backup, basic storage card (EPROM for OS, RAM and SDCard for persistence),Motion and presence detection sensors (infra red).
Soldiers are behind every electric board inside a room. Their job is perform the actions instructed by the sergeant. They dont have any intelligence.
BLE SOC with microcontroller, GPIO output pins. SSR switches for switches.
Entire machine learning component would be running in the cloud to understand how users are using the system inside their house. Different kind of projections, suggestions would be drawn by the government and would be pushed to the Kernel.
Bare metal software seems to be the better option with C (and in some cases C++/Python).
One of the interesting project I have found related to this bare metal approach. Return Infinity has provided a very basic OS for embedded system. Last update was in Aug 2013. We can take this project and carry forward their work. Short description of Return Infinity:
BareMetal is a 64-bit OS for x86-64 based computers. The OS is written entirely in Assembly, while applications can be written in Assembly or C/C++. Development of the Operating System is guided by its 3 target segments: