Monday, 19 February 2018

Overcoming the limitations of ZWAVE switch status with WebCORE

It just happened that one fine day on 18 Feb 2018, all of my CORE pistons are not firing in Smartthings(ST). I could not find out why and I thought the CORE codes are way outdated and I upgraded it to the Dec2017 version. Still it did not work.

This is when I discover that the author of CORE, Ady264 have started development on WebCORE.
Seems that this will replace CORE eventually.

Eager to solve my problem, I installed WebCORE.
There is a very comprehensive youtube video of doing it ->

Still, even a simple piston is not firing for WebCORE after the installation. I suspect it's something to do with ST and I waited one day. As expected, it worked on the following day and it is likely to be due to issues on the ST services at the backend.

Anyway, I found WebCORE to be much more versatile and easier to program than CORE. It also provides the enabling of detail logging so that you know exactly why your pistons doesn't work.
Knowing the cause of the issue,  I manage to create a bypass for the ZWAVE switch status that has not been working correctly with ST. I am going to document down here.

Along with the issues faced with other Zwave switches, my Zwave switches is unable to report the status of its ON/OFF state to ST. Thus, I am unable to use the Toggle feature found in the CORE/WebCORE configurations. This is rather irritating as I have planned to turn my lights ON and Off using the same button (toggle). Without receiving the state of the switch, the piston can only turn it ON and not OFF because it is reading the state as OFF all the time.

I discover the cause when I saw the log says "skipped execution of physical command because it would make no change to the device."

WebCore have this setting of ignoring the status and proceed with the turning off even if the status is in the off state.

settingsdisable command optimization;end settings;

Now in order to allow the use of the Toggle, I will need to set the status of the switch within ST so that it reads the status from a variable I have declared instead of obtaining it from the Zwave switch.
Here's an example.

Now, all my ZWAVE switches can perform Toggling ON/OFF from the pressing of  a single button.

Monday, 19 June 2017

Now, the light switches

Now that I can control my TV,  AIRCON, CEILING FAN, YEELIGHTS , I want to control more/all things in my house using a combination of talking to Google home and the various sensors.
That brings on the numerous number of light switches I have at home. I must have like 20 of these switches installed in all parts of my house.

There is a complexity, all the popular switches sold in the US are designed based on US standards. They need a neutral wire on your switch to function properly. For most of us living in areas whereby your EU standard switches are just about opening and closing the circuit for the "Live" wire,  options are very limited.

I came across this GR-HOME ZWAVE switch  when I am out looking for a solution. It costs USD35 each and comes in option of 1,2 or 3 ways in one switch module, doesnt sound too expensive as compared to the USD90 Fibaro switches that requires the neutral wire. Their switches comes in EU or US Zwave frequency, so depending on the version of SMARTTHINGS hub that you have purchased, you will need to select the version properly.

Like all things where you buy cheap(esp from China), I felt feel skeptical at first if it will work for you. It was a USD35 risk with potential amount of opportunities to learn more from it, I went ahead and placed the order.

Once it arrived. It comes in two separate pieces of the switch(see above) and the bypass load. The bypass load is just a small little sealed box like the size of a small black pack of Wrigley chewing gum with 3 wires sticking out. It serves the purpose of allowing a very small current to pass through the circuit so that your ZWAVE module on your switch can function without the batteries.

Now, the bad news. The bypass load needs to be wired on near your light bulb or appliances. You will need to assess properly on where it is possible for you to install this bypass load and where it is not possible. Some appliances are just too concealed for you to conveniently install this bypass load. Only one Bypass load is required on a 3-way switch.  Note: The Bypass load can only be installed for the L1, so do swap your Live wires accordingly. A good way to assess is to look for a location whereby you can stash a  small pack of Wrigley chewing gum with access to both the Live and Neutral wire near the Bulb/Fan.

After all things installed, you should be able to switch on and off using touch switch control. The lights will reflect the switch status (red = on, blue = off). If turning off switch L1 causes the other two switch to switch off automatically and a "tick" sound, something is wrong and do review your connection again. This ever happened to me when my LED bulb consumes too little power. Once I switched it to a normal Florescent bulb, it worked normally. Once all is fine, you are ready to pair your Zwave switch with SMARTTHINGS.

1) Turn on and off on one of the switch 3 times, literally on-off-on-off-on-off, that should put your Zwave switch into pairing mode.
2) Go to SMARTTHINGS app on  your phone and add new devices, they should detect a ZWAVE switch. It will only detect one switch instead of the 3 switch you are expecting.
3) On SMARTTHINGS app, go to "Automation" -> SmartApps and then "Add a SmartApp". Select "More" and then "Multi-Channel Control". Name each of your switches and there you go, all switches appearing on your SMARTTHINGS.

There appears to be some limitations on the ZWAVE switch itself where it takes a couple of seconds to refresh its status on the SMARTTHINGS APP. This is due to that the switch does not have an instant update function built in. Should not affect you much as long as you do not manually turn on and off the switches using SMARTTHING APP.

This switch turns out to be a great buy indeed. Works like a charm !

Sunday, 18 June 2017

Adding Xiaomi sensors into SMARTTHINGS

You will need all kinds of sensors and switches to fully automate your house to exactly how you want it to be.

Sensors aint cheap.

Then, there is this Xiaomi who saved the world of home automation with very reasonably priced sensors. These sensors don't work out-of-the-box with your Smartthings, but it is not difficult to get it working. Once you get the hang of it, it's a piece of cake.

Motion Sensor - RMB59

Window/Door Sensor - RMB49
Wireless Switch - RMB39

Zigbee Power Plug - RMB69

You can order them through your favorite channels of buying from the China market.
According to Xiaomi, the batteries in these devices(apart from Power Plug) can last for 2 years.

In order to pair them with Smartthings, first, you will need to be as close to the Smartthings hub as possible with the sensor, your notebook and your phone.

1) On your notebook, login into your SMARTTHINGS IDE on a web browser ->       login.

2) On the IDE web browser, select "My device Handlers" from the top and then click on "Create New device Handlers". Give it a name and click create, then paste the entire thing you have copied from the following. Take note that you will need to create one device handlers for each of the type of devices.

You can get all your device handlers from here  

3) After you have added all the Device Handlers you are trying to add, click "My Location" from the top and then, Events .

4) On your Smartthings App on the mobile phone, go to "My Home" , under the "Things" tab, scroll all the way down and select " + Add a Thing".

5) Each of these sensors comes with a small hole, which you will need to poke it for 5 secs either with a tooth pick or the pin that comes with it to reset it and put it in a pairing mode. You can see the device reacting with its LED light when you have successfully done that.

6) On your IDE, refresh it and look for an entry that says "Catchall", it should appear seconds after you reset the sensor. Once you find that entry, mouse over the entry and you should have a String of Hexadecimal numbers that don't make much sense to you. Look out for the 4 character which I have highlighted in yellow, note that down. It should be on the 19th -22th character of the string.

7) Once done, one the IDE, click "My devices" from the top and then "+ New devices", key in as follows and click Create. Your devices should appear on your Smartthings.

Friday, 5 May 2017


The SMART home poison have ate into me, this is probably the must have if you wish to turn your house into something SMART. Yes, I took the plunge and bought this SMARTTHINGS which comes with a few sensors.

It comes in two different flavors, the US and EU. Be sure to buy the right version or else it will not support the Z-wave frequency of the region that you are in. It is unfortunate that I need the EU version and have to live with the expensive shipping from Amazon UK.

Setting it up is easy, but there is an undocumented IDE website that you will need to visit in order to do the detail configuration of the SMARTTHINGS.

Of course, you will also need to download a phone APP for the convenience. You may add your own phone as a presence sensor as well.

There are also other SMART home controllers, some cheaper,  but they are not as flexible and configurable as SMARTTHINGS. They is also a huge community supporting the SMARTTHINGS with their own customized device handlers. Not to mention, the CORE (Community's Own Rule Engine) is quite a must have if you are the hands-on person. You can install CORE as an add-on APP on the SMARTTHINGS itself, the installation procedure is quite straight forward, you just copy the entire source code and paste it into the IDE. Do a bit of goggle if you encounter issues.

Saturday, 11 March 2017

Yeelight - a cheap and good alternative to Philip Hue

The white bulb cost about SGD12 while the color ones cost about SGD20.
All using the conventional E27 bulb socket, it can be controlled over using the WIFI.

It works well with google home along with the free IFTTT services.

There may have been frustration and feedback from many that controlling a group of bulbs doesnt work. I had that problem until I discover that the scene management is an effective workaround to that.

1) Download and install the Yeelight (not Mi home) app, login and set the locale to Singapore(important, anywhere but China).

2) Add your bulbs accordingly.

3) To set any scene, set the group of bulbs to the on/off state that you want, then go to scene management. For example, create a scene where all of your bulbs are in an off-state. Then create another one where they are in the on-state.

4) Choose the bulb that you want to apply the scene to.

5) Give the scene a name and you are done for the Yeelight App.

6) From IFTTT, create an applet with Google Assistance as the trigger, then choose Yeelight and select "set scene", even for the turn on and off events.

7) You will be able to set the different scene you have defined.

8) Now you can control them in a group with these IFTTT applets !

Tuesday, 28 February 2017

Logitech Harmony Hub

Ok, the easiest step to get you started on home automation is to get a harmony hub. This will take care of controlling whatever you can control using infrared remote control
This harmony hub cost me US$104 including Amazon shipping direct to Singapore. The remote controller is optional, which I dont need it at this point of time. The harmony hub comes with an additional IR blaster, which comes in handy if you need to control those equipment in the enclosed TV cabinet.
Setting it up is very straight forward and I shall skip that technical part. This harmony hub powered by a USB socket from my WIFI router, works surprisingly well. Once done, the equipments can now be controlled via Google Home through the IFTTT. I spent a good 3 hours to get the following equipments working for the voice controlled. - Starhub TV box - Samsung TV - Xiaomi TV box - Haiku fan - Mitsubishi air-conditioner

Wednesday, 8 February 2017

The Google Home Genesis

Google Home was launched on 04 Nov 2016 and have promised to be a strong competitor of Amazon Echo. I have decided to take the plunge when they offered a USD30 discount during the Black Friday(25 Nov 16) period. While I was at it, I thought might as well grab a Chromecast together to ride on the shipping fees.

The all trust worthy EZBUY was giving a 50% discount to all shipping fee and no agent fee.

All added up to S$200, with another S$13 for shipping to Singapore and delivering to my door step.

Yes, I think Walmart was having a overwhelming number of sales during the Black Friday, both items only arrived at the EZBUY address on 18 Dec 2016, 3 weeks later after the order was placed.

The item later took another 2.5weeks to arrive at my doorstep. EZBUY was having their fair share of load issues on their side that was accumulated from the mad number of 11 Nov sales in China.

Brushed away the frustration on the delay, shopping is suppose to be something happy.

It turned out to be something smaller than I thought.

But the volume can be tuned to a level whereby you can hear clearly what it says from the other corner of my house.

Setting it up is fairly easy, just download the "Google Home" app on your mobile and follow the instructions on the APP itself.

The Google Chromecast was nicely plugged behind my TV and powered by one of the free USB slots mean for USB thumbdrive. It stays hidden all the time and installation was a breeze. The Google Home APP will detect the Chromecast and add it to one of the devices on the APP itself.

Chromecast comes with 4 months free subscription to the Youtube red membership and Google Play music subscription.

Now, on how I am enjoying this setup,

Listening to Music
You can upload your own stash of MP3, build playlist to these music and get Google to play them out ,
"Hey Google, play my playlist 80s music one"
"Hey Google, play the song WE ARE THE CHAMPIONS by QUEEN"
"Hey Google, set volume to 80%"
"Hey Google, skip to next song"
"Hey Google, stop"

Watching Youtube
Assuming you have switched to the source to Chromecast on your TV, you can order Google Home to play specific movies on your TV,

"Hey Google, play some comedy with Youtube on my TV in living room"
"Hey Google, skip  to next video"
"Hey Google, stop"

You get the picture....

Will compile a list of other things you can do with Google home in next post.....