Rule Machine vs Webcore

Like some people here, I've grown accustomed to using WebCore with ST. I'm not used to Rule machine. I remember it in the Smart Thing community, but just as I got started it went away. So like many people here, one of the first things I did when I get my new Hubitat hub was to load WebCore, and get to moving my pistons over. I will say that it does work, and works well. But as I go on I realize I've never given Rule Machine a fair shot. I started thinking, a lot of development went into making this work and work well with Rule Machine. I'd say that it's likely that RM will be more stable, and also will likely get better support from the support team. Maybe it will really make no difference.

Anyway, I'm really just sharing my thoughts. I am now in the process of converting my simpler pistons to RM. I think there will be some that I just wont be able to do easily with RM, but maybe by starting off with the easier ones, I'll get more familiar with RM and even the more complex pistons will be able to be moved over as well. I know that Webcore is not going any where any time soon, but using it 100% still requires internet to make changes to my rules.

I’m the same as you, I’m converting my simpler pistons to RM rules, Motion Lighting and Simple Lighting rules.
I’ve also converted some more that were one webCoRE piston, are now 4 RM rules.
The big problem for me is local and global variables which I use for lots of other pistons.
Also things like happen, say, every 15 minutes or once a day ‘do’ something. Just cannot find a way to do them with RM.
I’m still worried webCoRE will be withdrawn. After all it was developed by a now ST employee and to change pistons you need his server.

1 Like

If you check out the webcore thread, a user has installed the GUI on a RPI, so no longer tied to a web host for editing.

1 Like

Thanks. Just found it and have asked the guy if he would put together an idiots guide, that’s me BTW, on how to do it.

Yeah, I saw that. I think I’m still going to continue to try to move my simpler pistons over to RM. Although I do like the idea of a local webcore, I don’t think I want to run another device to do it. We’ll see, maybe… I do enjoy tinkering as well. :slight_smile:

I have a RPi already on my network running some lights. Be nice if I could double it up for WC as well.

1 Like

I’m not a hardware expert, but I bet that underneath the hubitat hub is running android, or linux or something similiar. I have not taken the time to watch it boot. Who knows maybe in the future the hub will be able to host the webcore code as well as the hubitat. :slight_smile:


It is a Linux base afaik

It does host the WebCoRE code if you install the app. Are you just referring to the web server part of it?

Yes, just the web server part.

Hey all! Reviving this thread because I think this is an interesting topic.

As an elder geek/programmer I really like WebCoRE. It allows me to develop and visualize things logically kind of the way I would do when I am coding "real" languages. For now I think WC is more flexible/extensible and I love that it can run locally. My transition from ST went a lot smoother thanks to WC - was able to easily recreate most of my existing pistons which helped with continuity and WAF/PAF.

Having said that I do have some rules on RM. My unsupported assertion is certain rules might be quicker possibly more reliable/efficient with RM - things like closet lighting activation etc. WC pistons do seem pretty perky though. I'm trying to figure out a proper balance between native apps and WC pistons.

I just cannot express how happy I am at finding this system and am excited about the future. In the age of cloud controlled everything and large corporate masters this is a much welcomed/needed spark of resistance.

Thank you and the community for all your work and amazing ideas. name is Aaron. I was a WebCORE junkie until I found RM.

Anyways....I was heavy webCORE until HE. At first I installed webCORE on HE and ported all of my automations (mostly lighting) over. After two fairly significant upgrades by HE webCORE broke causing myself to be in a panic twice. Reminded me of the old ST days. None of my pistons executed correctly or at all. It wasn't HE but rather the always behind webCORE code to support HE changes. After those two incidents I decided to begin using the builtin apps. At first it was ML which was good but lacked certain things I needed. @bravenel added some features into ML but a lot of my more complex motion lighting still was working the way I had it in webCORE. So I switched over to RM. RM has grown so much in the last 3 months with features now being in both ML and RM but with RM you have more logic you can work with. After moving a very complex kitchen motion sensing rule from webCORE over to RM I found not only did RM perform better but it also gave me the results I have been looking for thanks to the cancel pending and pausing of rules which actually works as described (in webCORE you have to do some funky things if you have scenes). This has been incredible! My WAF (wife acceptance factor) of the motion lighting has really gone up compared to when it was on webCORE. I still have some bugs in my motion needs (cancel pending delay based on mode) which is expected to be added soon. This will give m the final flexibility I need for all motion based lighting.

Now my conundrum....I have just ONE webCORE piston that I can't seem to move over to RM even with multiple rules. That complex piston is my car autostart which checks to ensure the garage door opened, unlocks the vehicle, starts the vehicle, delays 20 minutes and then does the reverse in order in case someone didn't leave on time. Can't seem to get this to work reliably in RM even using rule execution logic. This may be where I need to keep webCORE but it would only be one piston.

So my only issue with webCORE is that it takes some time to find the bugs that haunt it when HE makes core changes. The community has done a great job porting code over as quickly as possible but for me all day-to-day operations (locks, motion, lighting, HVAC, etc) will only be controlled by native HE applications as I can't have my home become unresponsive until a patch becomes available for a 3rd party app. That's the reason for moving to HE right? Having local, reliable home automation.

Just my $0.02


One of the major advantages to Hubitat is that we can individually decide when to upgrade. If WebCoRE is critical, then watching this Community to know when WebCoRE and the Hub image are aligned again, is a huge advantage, in my eyes. ( my $0.02 )


If you want to take it a step further, learn groovy and write your own apps. I've written apps to replace a lot of things so that I can have things work like how I want them. Its so much more powerful. And spinning up a new app is a lot easier as I basically take one of my other apps as a template and start from there.

Once you do this and uninstall webcore you will find that your hub responds so much faster and is a lot more reliable.

Since I am relatively new to HE I have not yet experienced a WC/HE breakage {fingers crossed}. Also thanks to being able to decide when to update I can mitigate this issue somewhat.

With WebCoRE I can "see" and edit the whole picture and logic as I go which is helpful. I also think the GUI works well. I am really interested in learning how to write my own SmartApps/Devices too.

I think that because of the flexibility of HE there are an almost overwhelming number of ways to do a particular thing - which is awesome and daunting.

As a recommendation to my home clients I would probably stick with RM to keep things clean and simple.

I have everything in RM except my NodeMCU Blinds devices. I just need to find the time to rewrite some basic servo control for them, and then I can finally turn off my ST hub.

I have an enormous list of rules (around 66) due to branching out my webcore pistons, but that's okay. It's fast!

I have to mention something that just happened to me. Today tried to access my hub via web interface and it was slow to the point of being locked up. I could only get to a few clicks before everything became unresponsive. At one point even got a Zigbee network offline message. I emailed support but while waiting decided to troubleshoot myself.

Began to suspect WebCoRE was the cause as everything else was pretty standard - no funky devices etc. Tried shutting off my WC server and rebooting HE but no go. Still locking up. In desperation I powered off the HE and removed the usb stick. Powered back on let it come up. Was finally able to get into the web interface. I removed WebCoRE app and shutdown via the interface. Put the usb stick back in, powered up again and everything started working speedily again...

Have decided to stick with RM until things stabilize. I really do prefer the WC interface but am happy to do things the HE way for now.

Support did respond in a fairly quick manner (kudos!) but things were sorted out by then. I reported my experience back to them for documenting purposes.

Same here.

This is exactly the same thing that happened to me months ago. I gave up on webcore for now. I am also thinking about spinning my SmartThings hub back up to use that for anything that requires cloud connectivity or stable custom interfaces.

Rule Machine is a very capable app. You have to think differently than you do with webcore, and often use multiple rules to replace one piston. Other than a fringe case where I was using webcore essentially a port forwarding service, I was able to duplicate the functionality of my 70-something pistons in RM. It took like 130 rules to do it, but it just works, and works well.


This is recounted over and over again. As @destructure00 points out, Rule Machine is very capable and you can do pretty well everything you need with it. You just need to think of it as building blocks. You link them together to get the structure you need.