
Good afternoon, dear community!
In
my previous articles, I talked about how to do smart home. Since then, quite a lot of time has passed and I have advanced quite seriously both in hardware and in software. I think that this next article can be called “Smart Home v3” :)
In short, I’ve been interested in building a smart home in my home for a long time. Today it is a fashion trend, but earlier it was a real topic for the inveterate geeks.
I'll tell you what I have now from the equipment:
')
- Multiple ZWave dimmers
- ZWave sensors (volume, presence, temperature, leakage, door / window opening, PC dongle)
- ZWave valves
- Noolite switches (power modules + switch transmitters, RX and TX (PC) dongles for PC)
- Noolite dimmers are coming
- Android tablets (serve as system terminals)
- On the shelf is a 1-wire dongle :)
About all these technologies are described in sufficient detail on Habré (including in my articles), but I would like to dwell on
Noolite . The technology is well described
vvzvlad (for example,
here ). Now it's my turn :)
This is how pretty it looks in boxes (I apologize in advance for the quality, done during installation on a mobile phone without any problems with a background littered with a horizon, etc.):

This is how the dongle looks like to transfer commands to power units:

And so for the reception:

Yes Yes! It is for receiving commands! This is the missing part of Noolite, which I personally lacked in order to use these devices in myself. For some reason, there is no information about this anywhere except the official website.
Why is it so important? If you have read about Noolite before, then you know that the power modules (what turns the load on / off) have only a receiver, but no transmitter. This significantly limited (personally for me) the use of such equipment in a smart home. The manufacturer solved the problem with a
crutch with an original solution - they released a separate receiver of signals from the transmitters themselves (radio switches). The only problem with this device is a very small reception radius. Perhaps here the radio switch itself imposes its limitations, since it has a rather weak antenna, and they were usually placed on the places of the former switches (to hide holes in the walls :)) - perhaps some sort of pickup.
Actually, here is one of the moments of the installation process, instead of the old switch:

As you can see, the old power wires are shorted in the terminal board, the radio switch itself is placed on top.

The power unit did not get into the phone lens for some reason :) The result of its connection:

The power unit in the off-load state shines pleasantly with a green LED. At night, it turns a sort of duty light.
Everything becomes attached and untied very simply and quickly, the instruction is very detailed and clear. The only thing that did not like is the software that comes in the box. It is clearly written on the knee, without any frills and sometimes spits mistakes. But I don’t need it - it was used only once to make sure that the purchased devices worked correctly, since it was ruthlessly drank.
Now you can talk about the smart part of the house. Pieces are good and interesting, but there must be a practical part. I'll tell you an example of my morning.
If today is not a weekend or a holiday, then at 6.00 a night light starts to flare up, installed on my side of the bed - a light alarm clock.
About 6.45 the terminal of the smart home (a tablet on Android hanging next to the bed) receives a command from the main server to turn on the alarm (yes, I understand that one could simply turn on the alarm on the tablet :)) - the pleasant noise of the morning forest is played, under which I continue to wake up.
At the same time, the lights in the hallway, in the kitchen, in the bathroom and toilet are switched on.
When I finally crawl out into the corridor, the presence sensors determine my sleeping carcass and the synthesized voice of the google woman greets me. At the same time, the smart home opens the water supply valves (I have such a phobia - pour the neighbors).
After all the toilet procedures, I crawl into the shower. The presence sensor in the bathroom will determine that I'm already here and the local terminal asks if I want to know the latest news. Here I am free to answer yes or no (modified answers are accepted) - voice recognition from the same Google + Wit.AI neural networks works.
(By the way, while voice communication is in progress during development, we need to speak clearly and loudly, speech is not always received from the first time, and recognition and reaction of the system takes some time (from 2 to 5 seconds on average))Then I go out of the bathroom, turn on the kettle myself and pour tea (yeah, a bug :)). If I linger and the system sees me with its sensors (the presence + sensor on the front door did not work) - I am driven by voice messages.
I leave, I close the door - the light everywhere automatically turns off.
This is specifically my example. There are possible nuances - the wife will rise, I have a vacation, etc. But in general, the script is suitable for me in 90% of cases.
A little about the software. The system of the smart home itself is implemented from three components. This is the core of the system, which, in fact, controls everything. The web interface on the Play Framework 1.2.7, which in the future will be implemented chelove-friendly management of smart home systems. And an android application that serves as the terminal of a smart home.
The software is published on Github'e, the specific implementation of the above described in it is not yet available, because A lot of scary code that I put in order, but in general, functions are present.
The system is written in Java and currently has no human-friendly interface, except for some semblance of REST. Now the system is not ready for a simple user and is in the globally alpha. Some of the functions that I use in my not yet in the public repository, but this is a matter of time.
The main purpose of this topic is to attract developers of smart home enthusiasts. I do not hide it :)
Actually, the link to the repository of the main module (the rest are in the same place:
github.com/Neuronix2/IRISv2 )
Suggestions, constructive criticism and questions are welcome.