This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Problem with MQTT tab
#1
Question 
Currently I am working on getting an ESP8266 to input data to OP via MQTT using ESP Easy. Mostly it seems to work great.

There are two flow meters and a BME280 hooked up to the ESP8266 and they seem to be working flawlessly.

To import the data via MQTT I am using the MQTT tab on OP. First I import the data from the ESP8266, run it thru a node red flow and change pulses to quantities. Once done it is sent back to local MQTT to be converted to signal.k

All the updates from the ESP are happening at 10 seconds now. The problem is that the local MQTT seems to be duplicating messages. The problem starts at two repeats and then it appears to double and then double again. It gets to the point that the processor nearly maxes out.

One peculiar thing I noticed is that if the topic name is shortened the problem goes away. This only works with a small number of messages soon as you put more than 3 or 4 topics into the MQTT local server it goes crazy.

I have checked for feed backs into the MQTT and there are none.

Here is a screen shot of the message doubling. I have the topic in the top flow set to "plevel". The local MQTT server shows two messages at the same time


Double Post



Here is a screenshot with a debug node next to the covert to % full node. It shows that it is only outputting one message every ten seconds(how often the ESP8266 sends flow info), but once it gets into the MQTT it turns into two:


Only 1 message sent



Here is an illustration of shortening the name of the topic and it will stop double posting the message in MQTT. I changed "plevel" to "pl":


Short Topic



Here is a screenshot of my MQTT tab in OP:


MQTT Tab


Any ideas? It seems like the local MQTT server gets a certain amount of data in it and goes crazy. Sorry for all the links, for some reason I cannot attach a picture to the post. Hasn't been a problem in the past.

Thanks Huh Huh
  Reply
#2
There is something definitely up with the MQTT to SignalK converter.

I was able to replicate the function of the tab by convert all the data from the ESP to the SignalK in Node Red. The local MQTT server behaved fine with no issues. It has been running two days with no issues.

If you use the MQTT tab to covert the data(outside source) it seems to be fine for up to two items. But, if you exceed two conversions it seems to create a loop and causes the processor to go up to near 100%. The more conversions you add the sooner the problem happens.

At five conversions the problem would happen within 10-15 minutes.
  Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)