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 -> https://youtu.be/y_ElUwmmI6Y
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.
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.