Comments (9)
@q2dg yes, even AVR boards like the Uno should be fine. See comments in #53 (comment) for more metrics.
from arduino-mqtt.
Thanks for raising this.
The underlying library (Paho) uses constants to activate QOS1 an QOS2 and as the Arduino IDE offers no library configuration via constants, enabling these features would result in more program space usage for all users.
Therefore, this feature is delayed until the Arduino IDE offers a suitable solution.
Ongoing discussions:
from arduino-mqtt.
@q2dg what boards would you like to use the QoS1 and QoS2 with?
from arduino-mqtt.
Since the increase in programming space usage is minimal, I think we should enable support for all QoS levels in v2.
The usage table again for future reference:
QoS0: 25768 bytes (9%)
QoS1: 26240 bytes (10%)
QoS2: 26552 bytes (10%)
from arduino-mqtt.
@sandeepmistry Hello! Well, I'm not a skilled technician but I think SAMD's boards (Zero and MKRxxx) -at least- could do the job, don't you think?
from arduino-mqtt.
I am trying to use this library with ESP8266 and QoS1. I have not written any app code yet, just in selecting sutable library yet, but I suppose that some modification would be useful in src/lib/MQTTClient.h:
#ifdef ESP8266
extern "C" void yield( void );
#endif
// only used in single-threaded mode where one command at a time is in process
template<class Network, class Timer, int a, int b>
int MQTT::Client<Network, Timer, a, b>::waitfor(int packet_type, Timer& timer)
{
int rc = FAILURE;
do
{
if (timer.expired())
break; // we timed out
#ifdef ESP8266
yield();
#endif
}
while ((rc = cycle(timer)) != packet_type);
return rc;
}
Please, fix me if I am wrong!
from arduino-mqtt.
@alim-s-ajiev The library has been tested and successfully used with the ESP8266. No modification should be necessary to use it with the current feature set.
from arduino-mqtt.
Yes, you are right! It turns out that yield() is called inside cycle method for ESP8266 WiFi.
Thank you very much!
from arduino-mqtt.
This is beeing addressed in #59.
from arduino-mqtt.
Related Issues (20)
- MQTT reconnection when not disconnected. ESP8266 HOT 6
- Unreliable behaviour with reconnections HOT 3
- MQTT HOT 1
- Websockets support HOT 3
- MQTT SSL connection issue with QoS1 and QoS2 messages HOT 1
- DCU: cannot connect to local MQTT broker HOT 1
- This library uses some posix functions that are not provided for Uno R4 HOT 3
- Subscribe query HOT 1
- Release version `v2.5.1` different of master version HOT 1
- 0
- Error connect MQTT SSL/TLS with module CBU use platform libretiny
- RP2040 seems to work fine HOT 2
- payload length / reconnect HOT 1
- Random error in MQTTClient::loop() function HOT 2
- Cosmetics only in MQTTClient.h / MQTTClient(...)
- Wrong version in README.md?
- ESP32 PSRAM for MQTT buffer?
- if available bytes on the network is available, close connection. HOT 1
- MQTT5 HOT 1
- subscribe fails HARD HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arduino-mqtt.