Hello,
I started a nodeMCU project that communicates with HomeSeer via MQTT and noticed several issues with the mcsMQTT plugin. Maybe it's my setup? Is it not recommended to have mosquitto installed on the HS machine? I'm using Ubuntu Server x64 16.04.03 and Mono 5.0.1.1. System info and picures are attached below.
Here's a list of what I've found.
Excessive CPU load.
The mcsMQTT process uses the most CPU resources of any process on my machine. Even the HomeSeer Console process. After I successfully configured my project last night in Arduino, I took a look at the HS machine and the CPU was pegged at 100%, when it's typically under 10%. I rebooted the PC and the load went down but it was still over 60%. As of this morning, it's down to about 25%, but that's still very high. This brings me to the next issue.
Excessive MQTT Topics
After I rebooted last night I found excessive topics listed in the mcsMQTT plugin page. There is a topic for every HomeSeer device on my system. This includes all Z-Wave and virtual devices. Is this by design? There are 300 of them and the page takes quite a while to load.
Removing Topics Deletes the HS Device
So after finding these extra topics, I started removing them and it actually deleted the device in HomeSeer! For example, when I removed the topic for a Z-Wave light, it actually removed the HS device for the light in HS device management and I lost all control of the device. I didn't realize it was doing this until all topics were removed and when I went to device management, I had only like 10 devices when there should be 300!!! I lost all control of my HS system and had to restore a backup.
Publish Label / Number Radio Buttons do not always appear
Of all the issues, this one cost me the most time because on the original topic I was using for testing, this did not appear. I was testing turning on and off a led on the nodeMCU and it worked fine sending a 1 or 0. So I then added On and Off buttons but the led wouldn't work with On and Off. In the nodeMCU serial console I noticed it was receiving the string On and Off. This was a total pain to program for and took several hours to figure out how to convert a Byte value to Char then to String so it could be parsed by the nodeMCU. After having the issue above with the excessive devices, I notice some of the devices have a radio button to publish either the label or the number. I then noticed that if I refreshed the mcsMQTT page, the devices that had the radio buttons would change. So I did this quite a few times until my test device had them and enabled number. I then tested this and sure enough, pressing the On button sends a 1 and Off sends a 0. This would have saved me hours!!!!
Please see my attached pictures of the CPU load, excessive topics, and topics that do not have radio buttons. Is there something I did wrong? This was very frustrating and I'm super lucky to have had a working backup to revert to otherwise this would have been a disaster. I have since removed all traces of this plugin from my system but would like to use it again if the bugs can be worked out.
Current Date/Time: 3/13/2018 6:41:39 AM
HomeSeer Version: HS3 Pro Edition 3.0.0.420
Linux version: Linux hometrollerSEL 4.4.0-109-generic #132-Ubuntu SMP Tue Jan 9 19:52:39 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux System Uptime: 0 Days 4 Hours 40 Minutes 49 Seconds
IP Address: 192.168.8.2
Number of Devices: 300
Number of Events: 138
Available Threads: 199
HSTouch Enabled: True
Event Threads: 1
Event Trigger Eval Queue: 0
Event Trigger Priority Eval Queue: 0
Device Exec Queue: 0
HSTouch Event Queue: 0
Email Send Queue: 0
Anti Virus Installed:
Enabled Plug-Ins
3.3.0.0: APCUPSD
3.1.1.24385: Blue-Iris
1.2.2.0: Device History
0.0.0.19: DoorBird
3.0.0.43: EasyTrigger
3.0.0.22: Ecobee
3.0.9.2: mcsMQTT
3.0.1.4: MeiHarmonyHub
0.0.0.38: Pushover 3P
30.0.0.36: RFXCOM
3.0.5.6: SDJ-Health
3.0.6542.35207: UltraWeatherWU3
3.0.1.199: Z-Wave