Commit Graph
132 Commits
Author SHA1 Message Date
Laurent Louf db64b79120 Fix for case where multiple MQTT messages are fitted into a single TCP packet : iterate over the buffer received.
Merges https://github.com/espressif/esp-mqtt/pull/82
Closes #64
Closes #80
2019-01-03 09:14:34 +01:00
David Čermák 1e787461dc Merge branch 'feature/event_before_connect' into 'idf'
Add BEFORE_CONNECt event and refresh the connection option

See merge request idf/esp-mqtt!10
2018-11-09 23:26:35 +08:00
Tuan 2b49d37f8d Add BEFORE_CONNECt event and refresh the connection option 2018-11-09 23:26:35 +08:00
David Čermák a7b1cea5b3 Merge branch 'feature/mutual_authentication' into 'idf'
Added mutual authentication from master, minor corrections, doxy comments

See merge request idf/esp-mqtt!9
2018-10-29 17:22:58 +08:00
David Cermak 85f2eddabd commented event fields, added description of supplied user data to user event handler
closes #66
2018-10-25 09:25:41 +02:00
David Cermak 8b45c25fdc corrections per renaming transports to esp_ prefixed 2018-10-16 08:29:47 +02:00
Riccardo Binetti d2bcdd84a1 Add mutual SSL auth config to mqtt_client
picked from master
2018-10-16 08:29:47 +02:00
david-cermak 52cb6980b0 Merge pull request #77 from rbino/session-present
Expose the session_present flag in the CONNACK packet
2018-10-16 08:28:55 +02:00
david-cermak d8b2c77ec5 Merge pull request #75 from rbino/fix-buffer-length
Fix buffer length during connection read
2018-10-16 08:25:16 +02:00
Riccardo Binetti 4db9918220 mqtt_client: add session_present field to mqtt_event
Populate it using the CONNACK packet
2018-10-15 11:31:46 +02:00
Riccardo Binetti 8bd8583216 Add mqtt_get_connect_session_present 2018-10-15 11:29:47 +02:00
Riccardo Binetti a9e796025a Fix buffer length during connection read
Use the in_buffer length instead of the out msg length
2018-10-15 11:26:51 +02:00
david-cermak 439a2eb481 Merge pull request #78 from rbino/fix-publish-enqueue
Fix bug in esp_mqtt_client_publish message enqueueing
2018-10-12 08:26:54 +02:00
Riccardo Binetti c2f3b9f4b4 Fix bug in esp_mqtt_client_publish message enqueueing
We have to enqueue first and then assign to outbound/pending variables,
otherwise the previous pending message is lost and the publish message
is present twice
2018-10-10 14:48:32 +02:00
David Čermák ab357e3ae3 Merge branch 'bugfix/client_stop_only_if_started' into 'idf'
client to stop only if started

See merge request idf/esp-mqtt!7
2018-10-09 13:25:38 +08:00
David Cermak e26764502a mqtt_client_stop stops only if started, fixed tabs->spaces, updated README, removed unused config
closes #62
2018-10-05 16:01:29 +02:00
David Čermák ddca82d553 Merge branch 'feature/transpost_methods_renamed_no_collision' into 'idf'
transport: renamed transport headers to avoid compilation collisions

See merge request idf/esp-mqtt!5
2018-10-03 14:12:58 +08:00
David Cermak 85ee406d03 tcp_transport: renamed possibly generic function names to be esp_ prefixed and not to colide with user namespace 2018-10-02 14:18:03 +02:00
David Cermak d344f928ca transport: renamed transport headers to avoid compilation collisions 2018-10-02 14:17:54 +02:00
Angus Gratton ba35d2de56 Merge branch 'revert-99093849' into 'idf'
Revert "Merge branch 'feature/idf_transport_API_change' into 'idf'"

See merge request idf/esp-mqtt!4
2018-09-24 14:58:36 +08:00
Angus Gratton 61f411c1f9 Revert "Merge branch 'feature/idf_transport_API_change' into 'idf'"
This reverts merge request !3
2018-09-24 13:25:04 +08:00
Angus Gratton 990938491c Merge branch 'feature/idf_transport_API_change' into 'idf'
esp-mqtt: Add support for modified transport_set_func() API from esp-idf/component/tcp_transport

See merge request idf/esp-mqtt!3
2018-09-24 11:54:13 +08:00
Jitin George cbeaf67fe3 esp-mqtt: Add support for modified transport_set_func() API from esp-idf/component/tcp_transport 2018-09-18 17:49:41 +05:30
David Cermak bcb38e45f5 deleted Kconfig as this is used as component in esp-idf 2018-09-13 11:33:52 +02:00
David Cermak abaab2abcc Moved examples with tests to idf, renamed Kconfig to be included from component config in idf,
All these changes are necessary to support new CMake based build system and documentation generation so that this version of esp-mqtt is no longer usable as standalone component, but a standart component of esp-idf
2018-09-11 11:33:10 +02:00
David Cermak c1ce30f693 Added doxygen tags for API reference documentation 2018-08-21 15:31:10 +02:00
David Cermak 3bbdebcca9 bugfix for longer data on ws transport 2018-08-21 11:55:36 +02:00
David Cermak 0c25441fdd support for custom implementation of msg outbox 2018-08-21 11:55:36 +02:00
David Cermak fa7ade77b1 IDF integration: Refactored to common tcp transport component, fixed warnings 2018-08-21 11:55:36 +02:00
Manuel Wick 9e2f69cc17 Fixed QoS2 publishing (#58)
- Fixed message type check: Previously, it checked for PUBREL, but the
enqueued packet is the PUBLISH packet, hence check for this type in
is_valid_mqtt_msg().

- Moved mqtt_enqueue after the preparation of the packet, so that the
correct message id gets stored (also relevant for QoS1).
2018-08-06 13:19:23 +07:00
Andrej cd7d321842 Add mbedtls to dependencies (#59) 2018-08-06 13:18:49 +07:00
Tony 4c19674b16 Adding disconnection if no PINGRESP (#54)
* Adding disconnection if no pingresp

* Initializing wait_for_ping_resp to false

* Setting wait_for_ping_resp to false if aborting connection or when sending connect
2018-08-06 13:18:12 +07:00
Tony da573b482b Adding ESP32 core selection for MQTT task (#53)
* Adding core selection in KConfig and starting thread with those parameters

* Updating for code consistency
2018-07-25 13:58:38 +07:00
Tuan PM c26f1dc607 Add emitter client example 2018-06-08 10:47:47 +07:00
Ivan Aponte 87ef46a9b4 fix some keepalives issues (#51)
* merge some changes

* fix blocking issue
2018-06-01 23:06:53 +07:00
Tuan b2916ccaf9 Update license 2018-06-01 22:29:28 +07:00
esinayana 677db77415 Fix C++ build, add extern "C" to header file. (#49) 2018-05-27 08:50:31 +07:00
Dominikus Gierlach f3f223e031 Add cmake support (#42)
The new esp-idf build system is based on cmake.
Components require their own CMakeLists.txt with their dependencies.
2018-05-08 12:04:09 +07:00
Tuan PM 75d3c65cb6 Add error handling for mqtt, fixed some issues 2018-05-03 21:50:24 +07:00
Christian Gawron 4bc37bb8db fix handling of large messages (#40) 2018-05-03 20:46:06 +07:00
XuanZe c837f9cc5f fix: add header "esp_err.h" (#31)
use type esp_err_t but you not include it's header
2018-03-26 16:07:20 +08:00
oldgreen 55f04a8e61 Abort MQTT connection if sending of ping fails (#30)
* Remove unused code: the state here is always MQTT_STATE_CONNECTED.

Under the assumption that only the esp_mqtt_task can change the client state
(otherwise we are missing a lock around the state usage everywhere).

* Change the return type of esp_mqtt_client_ping from int to esp_err_t.

* Abort the MQTT connection if we can't send ping.

Try to handle the situation when the underlying connection changes and the
sockets have wrong status (see esp-idf/docs/api-guides/wifi.rst).
2018-03-16 19:25:34 +08:00
agmuntianu 5c46be5ada Crash fixes and ssl connection (#29)
* add missing config for setting default port for SSL in Kconfig

* free the TCP only after closing the connection , not before

* set the config in the client before we access the schema in the client

* fix typo

* dispatch also Publish event
2018-03-09 22:04:33 +07:00
Tijn Kooijmans 6d8a6c79bd Fixed length of binary lwt message (#28)
* changed reconnect timeout to 5 seconds

* changed reconnect timeout to 5 sec

* fixed binary lwt message

* stop reconnect timer to block CPU

* reduced task stack and network timeout

* fixed length of non-string lwt message
2018-03-06 18:12:51 +07:00
Tuan PM 60567cb238 Add vTaskDelay in STATE_WAIT_TIMEOUT, resolve #27 2018-03-02 11:24:27 +07:00
Tuan PM 12c6c293bb Update document 2018-03-01 23:32:36 +07:00
Tuan PM 54e76011bc Update README with svg build icon, mention about kconfig 2018-03-01 23:14:11 +07:00
Tuan PM 0d4d269dc3 Add Kconfig, make easy to custom configurations 2018-03-01 23:07:26 +07:00
Tuan PM 7090311476 Merge branch 'master' into feature/kconfig 2018-03-01 22:34:02 +07:00
Tuan PM c06c24a947 fixed default protocol is 3.11 2018-03-01 22:30:15 +07:00