MQTT large delay between messages
I have a testing configuration which consists of a raspberry pi 3 b+ has a mqtt server, an esp32 with some led´s and a webpage to toogle them (webpage and esp32 are clients). For the esp32 i am using the PubSubClient has the library for the communication. Basically what it happens when i toogle a led, i publish "in1" topic which the esp32 is subscribed, reads its payload ("on" or "off") and then it publishs a message to the broswer according the output state for confirmation. Keep in mind that this is all happening in a local network. After some tests, i saw that it takes max. 10 ms for the browser to publish a message. However, the complete cycle takes from 20 to 100 ms since the first publish message till the confirmation message (message esp32 sends reporting output state). Ive found out that it has nothing to do with the code since it takes 1ms from when the subscribed topic gets a new message, till the esp32 publishs the output state of the designed led.
The raspberry pi is running mosquitto v 1.5.5 with websockets enabled.
Don´t think it has something to do with the configuration since the same happens
when i test it with the mosquitto server i have in my laptop.
All the messages and subscriptions are 0 qos.
I just think it is a ridiculous amount of time for a communication in a local network, not to talk it´s very inconsistent (20 to 100 ms).
Very gratefull for all the help.
raspberry-pi raspbian arduino mqtt
add a comment |
I have a testing configuration which consists of a raspberry pi 3 b+ has a mqtt server, an esp32 with some led´s and a webpage to toogle them (webpage and esp32 are clients). For the esp32 i am using the PubSubClient has the library for the communication. Basically what it happens when i toogle a led, i publish "in1" topic which the esp32 is subscribed, reads its payload ("on" or "off") and then it publishs a message to the broswer according the output state for confirmation. Keep in mind that this is all happening in a local network. After some tests, i saw that it takes max. 10 ms for the browser to publish a message. However, the complete cycle takes from 20 to 100 ms since the first publish message till the confirmation message (message esp32 sends reporting output state). Ive found out that it has nothing to do with the code since it takes 1ms from when the subscribed topic gets a new message, till the esp32 publishs the output state of the designed led.
The raspberry pi is running mosquitto v 1.5.5 with websockets enabled.
Don´t think it has something to do with the configuration since the same happens
when i test it with the mosquitto server i have in my laptop.
All the messages and subscriptions are 0 qos.
I just think it is a ridiculous amount of time for a communication in a local network, not to talk it´s very inconsistent (20 to 100 ms).
Very gratefull for all the help.
raspberry-pi raspbian arduino mqtt
im calling client.loop(); in void loop() without any other task or delay.
– João Marques
Jan 14 at 1:41
add a comment |
I have a testing configuration which consists of a raspberry pi 3 b+ has a mqtt server, an esp32 with some led´s and a webpage to toogle them (webpage and esp32 are clients). For the esp32 i am using the PubSubClient has the library for the communication. Basically what it happens when i toogle a led, i publish "in1" topic which the esp32 is subscribed, reads its payload ("on" or "off") and then it publishs a message to the broswer according the output state for confirmation. Keep in mind that this is all happening in a local network. After some tests, i saw that it takes max. 10 ms for the browser to publish a message. However, the complete cycle takes from 20 to 100 ms since the first publish message till the confirmation message (message esp32 sends reporting output state). Ive found out that it has nothing to do with the code since it takes 1ms from when the subscribed topic gets a new message, till the esp32 publishs the output state of the designed led.
The raspberry pi is running mosquitto v 1.5.5 with websockets enabled.
Don´t think it has something to do with the configuration since the same happens
when i test it with the mosquitto server i have in my laptop.
All the messages and subscriptions are 0 qos.
I just think it is a ridiculous amount of time for a communication in a local network, not to talk it´s very inconsistent (20 to 100 ms).
Very gratefull for all the help.
raspberry-pi raspbian arduino mqtt
I have a testing configuration which consists of a raspberry pi 3 b+ has a mqtt server, an esp32 with some led´s and a webpage to toogle them (webpage and esp32 are clients). For the esp32 i am using the PubSubClient has the library for the communication. Basically what it happens when i toogle a led, i publish "in1" topic which the esp32 is subscribed, reads its payload ("on" or "off") and then it publishs a message to the broswer according the output state for confirmation. Keep in mind that this is all happening in a local network. After some tests, i saw that it takes max. 10 ms for the browser to publish a message. However, the complete cycle takes from 20 to 100 ms since the first publish message till the confirmation message (message esp32 sends reporting output state). Ive found out that it has nothing to do with the code since it takes 1ms from when the subscribed topic gets a new message, till the esp32 publishs the output state of the designed led.
The raspberry pi is running mosquitto v 1.5.5 with websockets enabled.
Don´t think it has something to do with the configuration since the same happens
when i test it with the mosquitto server i have in my laptop.
All the messages and subscriptions are 0 qos.
I just think it is a ridiculous amount of time for a communication in a local network, not to talk it´s very inconsistent (20 to 100 ms).
Very gratefull for all the help.
raspberry-pi raspbian arduino mqtt
raspberry-pi raspbian arduino mqtt
asked Jan 14 at 1:28
João MarquesJoão Marques
1
1
im calling client.loop(); in void loop() without any other task or delay.
– João Marques
Jan 14 at 1:41
add a comment |
im calling client.loop(); in void loop() without any other task or delay.
– João Marques
Jan 14 at 1:41
im calling client.loop(); in void loop() without any other task or delay.
– João Marques
Jan 14 at 1:41
im calling client.loop(); in void loop() without any other task or delay.
– João Marques
Jan 14 at 1:41
add a comment |
1 Answer
1
active
oldest
votes
The question was solved. All i had to do was disable esp32 wifi power save mode
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1393936%2fmqtt-large-delay-between-messages%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The question was solved. All i had to do was disable esp32 wifi power save mode
add a comment |
The question was solved. All i had to do was disable esp32 wifi power save mode
add a comment |
The question was solved. All i had to do was disable esp32 wifi power save mode
The question was solved. All i had to do was disable esp32 wifi power save mode
answered Jan 15 at 0:13
João MarquesJoão Marques
1
1
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1393936%2fmqtt-large-delay-between-messages%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
im calling client.loop(); in void loop() without any other task or delay.
– João Marques
Jan 14 at 1:41