Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

esp_mqtt_client_publish with data longer than buffer causes disconnect and issues with Mosquitto (IDFGH-6461) #214

Closed
DCSBL opened this issue Dec 20, 2021 · 4 comments

Comments

@DCSBL
Copy link

DCSBL commented Dec 20, 2021

Summary

When using esp_mqtt_client_publish with a message longer than the buffer size (MQTT_BUFFER_SIZE_BYTE), the client disconnects and Mosquitto receives garbage data.

Environment

  • Tested with ESP-IDF: v4.1.2, v4.3 and [master] @ (espressif/esp-idf@279c8ae), (Issue not present on v4.1)

  • Tested with selected esp-mqtt submobule and with 383e7e5.

  • ESP32-WROOM-32D

  • Mosquitto 2.0.14 with this config:

    allow_anonymous true
    
    listener 1883
    protocol mqtt
    
    listener 80
    protocol websockets
    

How to reproduce

  1. Used this example https://github.com/espressif/esp-idf/tree/master/examples/protocols/mqtt/ws @ espressif/esp-idf@279c8ae

  2. Configured example project with Wifi SSID and pass and MQTT server address.

  3. Added this at line 63 (after sending topic/qos0/"data" (string with +1200 characters):

    case MQTT_EVENT_SUBSCRIBED:
        ESP_LOGI(TAG, "MQTT_EVENT_SUBSCRIBED, msg_id=%d", event->msg_id);
        msg_id = esp_mqtt_client_publish(client, "/topic/qos0", "data", 0, 0, 0);
        ESP_LOGI(TAG, "sent publish successful, msg_id=%d", msg_id);
        
    +   msg_id = esp_mqtt_client_publish(client, "/topic/long", "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nibh nibh, tempus ut vulputate in, auctor eu quam. Suspendisse vel auctor nisi. Nam tellus erat, porta auctor vulputate vel, venenatis id arcu. Phasellus a viverra risus. Maecenas imperdiet nibh augue, ut malesuada sapien scelerisque eget. Donec iaculis dui ut ultrices interdum. Maecenas convallis mattis lobortis. Quisque ac congue ipsum, eu mollis est. Pellentesque nec ante leo. Nam a ipsum tristique, sagittis nunc non, mollis sapien. Cras quam urna, consectetur ut tellus vulputate, venenatis suscipit mi. Proin pretium arcu convallis, dictum dolor vitae, ultricies nulla. Integer id eleifend mauris. Integer iaculis, augue ut mattis tempor, est felis sodales justo, ac interdum lacus orci non eros. Nulla accumsan ut arcu sed ornare. Ut aliquet erat vel eleifend consequat. Ut sit amet tincidunt eros. Vivamus nec libero ut velit pretium molestie. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam rhoncus nisi ut interdum blandit. Fusce tincidunt dictum tellus, sit amet suscipit ex fermentum tempus. Integer feugiat iaculis volutpat. Pellentesque habitant morbi tristique posuere.", 0, 0, 0);
    +   ESP_LOGI(TAG, "sent long publish successful, msg_id=%d", msg_id);
        break;
  4. Uploaded to ESP, got the following result:

    Click to see full verbose log
    I (5571) esp_netif_handlers: example_connect: sta ip: 192.168.5.126, mask: 255.255.255.0, gw: 192.168.5.1
    I (5571) example_connect: Got IPv4 event: Interface "example_connect: sta" address: 192.168.5.126
    I (5581) example_connect: Connected to example_connect: sta
    I (5581) example_connect: - IPv4 address: 192.168.5.126
    D (5591) MQTT_CLIENT: MQTT client_id=ESP32_2547D8
    D (5591) MQTT_CLIENT: Core selection disabled
    I (5601) MQTTWS_EXAMPLE: Other event id:7
    W (5641) wifi:<ba-add>idx:0 (ifx:0, 78:8a:20:8d:ec:be), tid:0, ssn:0, winSize:64
    D (5651) TRANSPORT_WS: sub_protocol: mqtt
    D (5651) TRANSPORT_WS: Write upgrade request
    GET / HTTP/1.1
    Connection: Upgrade
    Host: 192.168.5.119:80
    User-Agent: ESP32 Websocket Client
    Upgrade: websocket
    Sec-WebSocket-Version: 13
    Sec-WebSocket-Key: TDRus8asdaEKkZPR4P+T9Qg==
    Sec-WebSocket-Protocol: mqtt
    
    
    D (5801) TRANSPORT_WS: Read header chunk 159, current header size: 159
    D (5801) TRANSPORT_WS: server key=1kZasdd2xa++p1OP/LEiPTNOxmrI=, send_key=TDRus8asdaEKkZPR4P+T9Qg==,     expected_server_key=1kZasdd2xa++p1OP/LEiPTNOxmrI=
    D (5811) MQTT_CLIENT: Transport connected to ws://192.168.5.119:80
    D (5811) MQTT_CLIENT: Sending MQTT CONNECT message, type: 1, id: 0000
    D (5861) TRANSPORT_WS: Opcode: 2, mask: 0, len: 4
    
    D (5861) TRANSPORT_WS: Actual data to receive (4) are longer than ws buffer (1)
    D (5861) MQTT_CLIENT: mqtt_message_receive: first byte: 0x20
    D (5871) TRANSPORT_WS: Actual data to receive (3) are longer than ws buffer (1)
    D (5871) MQTT_CLIENT: mqtt_message_receive: read "remaining length" byte: 0x2
    D (5881) MQTT_CLIENT: mqtt_message_receive: total message length: 4 (already read: 2)
    D (5891) MQTT_CLIENT: mqtt_message_receive: read_len=2
    D (5891) MQTT_CLIENT: mqtt_message_receive: transport_read():4 4
    D (5901) MQTT_CLIENT: Connected
    I (5901) MQTTWS_EXAMPLE: MQTT_EVENT_CONNECTED
    D (5911) MQTT_CLIENT: mqtt_enqueue id: 29847, type=3 successful
    D (5911) OUTBOX: ENQUEUE msgid=29847, msg_type=3, len=23, size=23
    I (5921) MQTTWS_EXAMPLE: sent publish successful, msg_id=29847
    D (5931) MQTT_CLIENT: mqtt_enqueue id: 16553, type=8 successful
    D (5931) OUTBOX: ENQUEUE msgid=16553, msg_type=8, len=18, size=41
    D (5941) MQTT_CLIENT: Sent subscribe topic=/topic/qos0, id: 16553, type=8 successful
    I (5951) MQTTWS_EXAMPLE: sent subscribe successful, msg_id=16553
    D (5951) MQTT_CLIENT: mqtt_enqueue id: 26594, type=8 successful
    D (5961) OUTBOX: ENQUEUE msgid=26594, msg_type=8, len=18, size=59
    D (5971) MQTT_CLIENT: Sent subscribe topic=/topic/qos1, id: 26594, type=8 successful
    I (5971) MQTTWS_EXAMPLE: sent subscribe successful, msg_id=26594
    D (5981) MQTT_CLIENT: unsubscribe, topic"/topic/qos1", id: 62594
    D (5991) MQTT_CLIENT: mqtt_enqueue id: 62594, type=10 successful
    D (5991) OUTBOX: ENQUEUE msgid=62594, msg_type=10, len=17, size=76
    D (6001) MQTT_CLIENT: Sent Unsubscribe topic=/topic/qos1, id: 62594, successful
    I (6001) MQTTWS_EXAMPLE: sent unsubscribe successful, msg_id=62594
    D (6011) TRANSPORT_WS: Opcode: 2, mask: 0, len: 4
    
    D (6021) TRANSPORT_WS: Actual data to receive (4) are longer than ws buffer (1)
    D (6031) MQTT_CLIENT: mqtt_message_receive: first byte: 0x40
    D (6031) TRANSPORT_WS: Actual data to receive (3) are longer than ws buffer (1)
    D (6041) MQTT_CLIENT: mqtt_message_receive: read "remaining length" byte: 0x2
    D (6041) MQTT_CLIENT: mqtt_message_receive: total message length: 4 (already read: 2)
    D (6051) MQTT_CLIENT: mqtt_message_receive: read_len=2
    D (6061) MQTT_CLIENT: mqtt_message_receive: transport_read():4 4
    D (6061) MQTT_CLIENT: msg_type=4, msg_id=29847
    D (6071) MQTT_CLIENT: pending_id=62594, pending_msg_count = 4
    D (6071) OUTBOX: DELETED msgid=29847, msg_type=3, remain size=53
    D (6081) MQTT_CLIENT: received MQTT_MSG_TYPE_PUBACK, finish QoS1 publish
    I (6091) MQTTWS_EXAMPLE: MQTT_EVENT_PUBLISHED, msg_id=29847
    D (6101) TRANSPORT_WS: Opcode: 2, mask: 0, len: 5
    
    D (6101) TRANSPORT_WS: Actual data to receive (5) are longer than ws buffer (1)
    D (6111) MQTT_CLIENT: mqtt_message_receive: first byte: 0x90
    D (6111) TRANSPORT_WS: Actual data to receive (4) are longer than ws buffer (1)
    D (6121) MQTT_CLIENT: mqtt_message_receive: read "remaining length" byte: 0x3
    D (6131) MQTT_CLIENT: mqtt_message_receive: total message length: 5 (already read: 2)
    D (6131) MQTT_CLIENT: mqtt_message_receive: read_len=3
    D (6141) MQTT_CLIENT: mqtt_message_receive: transport_read():5 5
    D (6141) MQTT_CLIENT: msg_type=9, msg_id=16553
    D (6151) MQTT_CLIENT: pending_id=62594, pending_msg_count = 3
    D (6161) OUTBOX: DELETED msgid=16553, msg_type=8, remain size=35
    D (6161) MQTT_CLIENT: deliver_suback, message_length_read=5, message_length=5
    I (6171) MQTTWS_EXAMPLE: MQTT_EVENT_SUBSCRIBED, msg_id=16553
    I (6181) MQTTWS_EXAMPLE: sent publish successful, msg_id=0
    I (6181) MQTTWS_EXAMPLE: sent long publish successful, msg_id=0
    D (6221) TRANSPORT_WS: Opcode: 2, mask: 0, len: 5
    
    D (6221) TRANSPORT_WS: Actual data to receive (5) are longer than ws buffer (1)
    D (6221) MQTT_CLIENT: mqtt_message_receive: first byte: 0x90
    D (6221) TRANSPORT_WS: Actual data to receive (4) are longer than ws buffer (1)
    D (6231) MQTT_CLIENT: mqtt_message_receive: read "remaining length" byte: 0x3
    D (6241) MQTT_CLIENT: mqtt_message_receive: total message length: 5 (already read: 2)
    D (6251) MQTT_CLIENT: mqtt_message_receive: read_len=3
    D (6251) MQTT_CLIENT: mqtt_message_receive: transport_read():5 5
    D (6261) MQTT_CLIENT: msg_type=9, msg_id=26594
    D (6261) MQTT_CLIENT: pending_id=62594, pending_msg_count = 2
    D (6271) OUTBOX: DELETED msgid=26594, msg_type=8, remain size=17
    D (6281) MQTT_CLIENT: deliver_suback, message_length_read=5, message_length=5
    I (6281) MQTTWS_EXAMPLE: MQTT_EVENT_SUBSCRIBED, msg_id=26594
    I (6291) MQTTWS_EXAMPLE: sent publish successful, msg_id=0
    I (6301) MQTTWS_EXAMPLE: sent long publish successful, msg_id=0
    D (6301) TRANSPORT_WS: Opcode: 2, mask: 0, len: 4
    
    D (6311) TRANSPORT_WS: Actual data to receive (4) are longer than ws buffer (1)
    D (6321) MQTT_CLIENT: mqtt_message_receive: first byte: 0xb0
    D (6321) TRANSPORT_WS: Actual data to receive (3) are longer than ws buffer (1)
    D (6331) MQTT_CLIENT: mqtt_message_receive: read "remaining length" byte: 0x2
    D (6331) MQTT_CLIENT: mqtt_message_receive: total message length: 4 (already read: 2)
    D (6341) MQTT_CLIENT: mqtt_message_receive: read_len=2
    D (6351) MQTT_CLIENT: mqtt_message_receive: transport_read():4 4
    D (6351) MQTT_CLIENT: msg_type=11, msg_id=62594
    D (6361) MQTT_CLIENT: pending_id=62594, pending_msg_count = 1
    D (6361) OUTBOX: DELETED msgid=62594, msg_type=10, remain size=0
    D (6371) MQTT_CLIENT: UnSubscribe successful
    I (6371) MQTTWS_EXAMPLE: MQTT_EVENT_UNSUBSCRIBED, msg_id=62594
    D (6381) TRANSPORT_WS: Opcode: 2, mask: 0, len: 19
    
    D (6391) TRANSPORT_WS: Actual data to receive (19) are longer than ws buffer (1)
    D (6391) MQTT_CLIENT: mqtt_message_receive: first byte: 0x30
    D (6401) TRANSPORT_WS: Actual data to receive (18) are longer than ws buffer (1)
    D (6411) MQTT_CLIENT: mqtt_message_receive: read "remaining length" byte: 0x11
    D (6411) MQTT_CLIENT: mqtt_message_receive: total message length: 19 (already read: 2)
    D (6421) MQTT_CLIENT: mqtt_message_receive: read_len=17
    D (6431) MQTT_CLIENT: mqtt_message_receive: transport_read():19 19
    D (6431) MQTT_CLIENT: msg_type=3, msg_id=0
    D (6441) MQTT_CLIENT: deliver_publish, message_length_read=19, message_length=19
    D (6441) MQTT_CLIENT: deliver_publish: msg_topic_len=11
    D (6451) MQTT_CLIENT: Get data len= 4, topic len=11, total_data: 4 offset: 0
    I (6461) MQTTWS_EXAMPLE: MQTT_EVENT_DATA
    TOPIC=/topic/qos0
    DATA=data
    E (6471) TRANSPORT_WS: Error read data
    E (6471) MQTT_CLIENT: mqtt_message_receive: transport_read() error: errno=128
    I (6481) MQTTWS_EXAMPLE: MQTT_EVENT_ERROR
    E (6481) MQTTWS_EXAMPLE: Last error reported from esp-tls: 0x8008
    I (6491) MQTTWS_EXAMPLE: Last errno string (Success)
    E (6491) MQTT_CLIENT: mqtt_process_receive: mqtt_message_receive() returned -1
    D (6501) MQTT_CLIENT: Reconnect after 10000 ms
    I (6511) MQTTWS_EXAMPLE: MQTT_EVENT_DISCONNECTED
    
    I (5594) esp_netif_handlers: example_connect: sta ip: 192.168.5.126, mask: 255.255.255.0, gw: 192.168.5.1
    I (5594) example_connect: Got IPv4 event: Interface "example_connect: sta" address: 192.168.5.126
    I (5604) example_connect: Connected to example_connect: sta
    I (5604) example_connect: - IPv4 address: 192.168.5.126
    I (5614) MQTTWS_EXAMPLE: Other event id:7
    W (5674) wifi:<ba-add>idx:0 (ifx:0, 78:8a:20:8d:ec:be), tid:0, ssn:0, winSize:64
    I (5994) MQTTWS_EXAMPLE: MQTT_EVENT_CONNECTED
    I (6004) MQTTWS_EXAMPLE: sent publish successful, msg_id=28377
    I (6004) MQTTWS_EXAMPLE: sent subscribe successful, msg_id=15705
    I (6004) MQTTWS_EXAMPLE: sent subscribe successful, msg_id=20415
    I (6014) MQTTWS_EXAMPLE: sent unsubscribe successful, msg_id=57707
    I (6034) MQTTWS_EXAMPLE: MQTT_EVENT_PUBLISHED, msg_id=28377
    I (6034) MQTTWS_EXAMPLE: MQTT_EVENT_SUBSCRIBED, msg_id=15705
    I (6044) MQTTWS_EXAMPLE: sent publish successful, msg_id=0
    I (6044) MQTTWS_EXAMPLE: sent long publish successful, msg_id=0
    I (6054) MQTTWS_EXAMPLE: MQTT_EVENT_SUBSCRIBED, msg_id=20415
    I (6054) MQTTWS_EXAMPLE: sent publish successful, msg_id=0
    I (6064) MQTTWS_EXAMPLE: sent long publish successful, msg_id=0
    I (6074) MQTTWS_EXAMPLE: MQTT_EVENT_UNSUBSCRIBED, msg_id=57707
    I (6074) MQTTWS_EXAMPLE: MQTT_EVENT_DATA
    TOPIC=/topic/qos0
    DATA=data
    E (6084) TRANSPORT_WS: Error read data
    E (6084) MQTT_CLIENT: mqtt_message_receive: transport_read() error: errno=128
    I (6094) MQTTWS_EXAMPLE: MQTT_EVENT_ERROR
    E (6094) MQTTWS_EXAMPLE: Last error reported from esp-tls: 0x8008
    I (6104) MQTTWS_EXAMPLE: Last errno string (Success)
    E (6104) MQTT_CLIENT: mqtt_process_receive: mqtt_message_receive() returned -1
    I (6114) MQTTWS_EXAMPLE: MQTT_EVENT_DISCONNECTED
    

I've also subscribed to the topics to see the what is send (mosquitto_sub -v -h 192.168.5.119 -t '#'). Here you see that there is some weird characters being send (I think a missing null terminator).

/topic/qos1 data_3
/topic/qos0 data
/topic/long Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nibh nibh, tempus ut vulputate in, auctor eu quam. Suspendisse vel auctor nisi. Nam tellus erat, porta auctor vulputate vel, venenatis id arcu. Phasellus a viverra risus. Maecenas imperdiet nibh augue, ut malesuada sapien scelerisque eget. Donec iaculis dui ut ultrices interdum. Maecenas convallis mattis lobortis. Quisque ac congue ipsum, eu mollis est. Pellentesque nec ante leo. Nam a ipsum tristique, sagittis nunc non, mollis sapien. Cras quam urna, consectetur ut tellus vulputate, venenatis suscipit mi. Proin pretium arcu convallis, dictum dolor vitae, ultricies nulla. Integer id eleifend mauris. Integer iaculis, augue ut mattis tempor, est felis sodales justo, ac interdum lacus orci non eros. Nulla accumsan ut arcu sed ornare. Ut aliquet erat vel eleifend consequat. Ut sit amet tincidunt eros. Vivamus nec libero ut velit pretium molestie. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus 0
                                                   /topic/qos0data0�
                                                                        /topic/longLorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nibh nibh, tempus ut vulputate in, auctor eu quam. Suspendisse vel auctor nisi. Nam tellus e
@github-actions github-actions bot changed the title esp_mqtt_client_publish with data longer than buffer causes disconnect and issues with Mosquitto esp_mqtt_client_publish with data longer than buffer causes disconnect and issues with Mosquitto (IDFGH-6461) Dec 20, 2021
@ESP-YJM
Copy link
Contributor

ESP-YJM commented Dec 21, 2021

@DCSBL Please use this patch and test
0001-mqtt_client-Fix-mqtt-send-long-data-error.zip
.

@DCSBL
Copy link
Author

DCSBL commented Dec 21, 2021

Thanks. Tested with same example and espressif/esp-idf@279c8ae. Confirmed that this patch fixes my issue.

@DCSBL
Copy link
Author

DCSBL commented Dec 21, 2021

I am not really sure, but it seems that this test does not tests payloads larger than the buffer size. The largest payload is tested with start_publish_case(transport, qos, 50, 1, q): 50 * DEFAULT_MSG_SIZE (16) = 800, smaller than MQTT_BUFFER_SIZE_BYTE (1024 by default).

Is it possible to test for this to prevent something like this issue?

@ESP-YJM
Copy link
Contributor

ESP-YJM commented Dec 21, 2021

@DCSBL Thanks for pointing out it. I think it is a good idea, we will implement it.

espressif-bot pushed a commit to espressif/esp-idf that referenced this issue Jan 24, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c130ac64a916ce6cf299d99f9756692394..985078affa8a2d2b56b87c8e6455252850f895c6

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif/esp-mqtt@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif/esp-mqtt#214
  - See commit espressif/esp-mqtt@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif/esp-mqtt@df8dc92
dskulina pushed a commit to playable-tech/esp-idf that referenced this issue Feb 4, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c130ac64a916ce6cf299d99f9756692394..985078affa8a2d2b56b87c8e6455252850f895c6

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif/esp-mqtt@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif/esp-mqtt#214
  - See commit espressif/esp-mqtt@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif/esp-mqtt@df8dc92
dskulina pushed a commit to playable-tech/esp-idf that referenced this issue Feb 5, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c130ac64a916ce6cf299d99f9756692394..985078affa8a2d2b56b87c8e6455252850f895c6

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif/esp-mqtt@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif/esp-mqtt#214
  - See commit espressif/esp-mqtt@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif/esp-mqtt@df8dc92
espressif-bot pushed a commit to espressif/esp-idf that referenced this issue Mar 16, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c130ac64a916ce6cf299d99f9756692394..985078affa8a2d2b56b87c8e6455252850f895c6

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif/esp-mqtt@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif/esp-mqtt#214
  - See commit espressif/esp-mqtt@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif/esp-mqtt@df8dc92
espressif-bot pushed a commit to espressif/esp-idf that referenced this issue Apr 29, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c130ac64a916ce6cf299d99f9756692394..985078affa8a2d2b56b87c8e6455252850f895c6

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif/esp-mqtt@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif/esp-mqtt#214
  - See commit espressif/esp-mqtt@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif/esp-mqtt@df8dc92
david-cermak added a commit that referenced this issue Dec 16, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c..985078a

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (c28a56d)
  - See commit 6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes #214
  - See commit 372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit df8dc92
egnor pushed a commit to egnor/esp-mqtt that referenced this issue Dec 23, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c..985078a

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif#214
  - See commit espressif@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif@df8dc92
egnor pushed a commit to egnor/esp-mqtt that referenced this issue Dec 23, 2022
* Fix sending mqtt message longer than Tx buffer size
* Fix enqueue API to send data with correct dup flag
* Update submodule: git log --oneline b86d42c..985078a

Detailed description of the changes:
* Isolate IDF env for v4.4 and v5.0(master)
  - See merge request espressif/esp-mqtt!111
  - ci: Isolate IDF env for v4.4 and v5.0(master) (espressif/esp-mqtt@4c5a65c)
* Client: Remove usage of legacy FreeRTOS types
  - See merge request espressif/esp-mqtt!120
  - ci: Fix build issues with IDF-4.4 against master (espressif/esp-mqtt@c28a56d)
  - See commit espressif@6ef98d6
* mqtt_client: Fix mqtt send long data error
  - See merge request espressif/esp-mqtt!117
  - Closes espressif#214
  - See commit espressif@372b323
* Client: Fix use esp_mqtt_client_enqueue API to send data, data dup flag will be set 1
  - See merge request espressif/esp-mqtt!116
  - See commit espressif@df8dc92
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants