Become a leader in the IoT community!

New DevHeads get a 320-point leaderboard boost when joining the DevHeads IoT Integration Community. In addition to learning and advising, active community leaders are rewarded with community recognition and free tech stuff. Start your Legendary Collaboration now!

Step 1 of 5

CREATE YOUR PROFILE *Required

OR
Step 2 of 5

WHAT BRINGS YOU TO DEVHEADS? *Choose 1 or more

Collaboration & Work 🤝
Learn & Grow 📚
Contribute Experience & Expertise 🔧
Step 3 of 5

WHAT'S YOUR INTEREST OR EXPERTISE? *Choose 1 or more

Hardware & Design 💡
Embedded Software 💻
Edge Networking
Step 4 of 5

Personalize your profile

Step 5 of 5

Read & agree to our COMMUNITY RULES

  1. We want this server to be a welcoming space! Treat everyone with respect. Absolutely no harassment, witch hunting, sexism, racism, or hate speech will be tolerated.
  2. If you see something against the rules or something that makes you feel unsafe, let staff know by messaging @admin in the "support-tickets" tab in the Live DevChat menu.
  3. No age-restricted, obscene or NSFW content. This includes text, images, or links featuring nudity, sex, hard violence, or other graphically disturbing content.
  4. No spam. This includes DMing fellow members.
  5. You must be over the age of 18 years old to participate in our community.
  6. Our community uses Answer Overflow to index content on the web. By posting in this channel your messages will be indexed on the worldwide web to help others find answers.
  7. You agree to our Terms of Service (https://www.devheads.io/terms-of-service/) and Privacy Policy (https://www.devheads.io/privacy-policy)
By clicking "Finish", you have read and agreed to the our Terms of Service and Privacy Policy.

Preventing data loss on ESP32 during MQTT disconnects

Greetings every one what you do if you iot device infield get disconnected to wifi and you dont have anyother connectivity available?
How you can ensure that data is not lost has anyone did something like this on esp32

  1. josephogbonna#0000

    I haven’t done something like this, but maybe you can put a backup storage in the device that can store the data when the WiFi is disconnected. Then after it gains back connection it sends the stored data to the cloud.That will be of a great help.

  2. josephogbonna#0000

    The type of data here is also to be considered as well

  3. techielew#0000

    @umeshlokhande

  4. umeshlokhande#0000

    This situation could be handled by adding SDCard or using the built-in Flash memory of ESP32 for local storage to ensure data will not be lost during network issues. And, then implement the *Retry Mechanism* to reconnect ESP32 back to the network

  5. electro_coco#0000

    How would you handle data if it is saved in file will you chuck all data to mqtt server at once? After reading the file back

  6. josephogbonna#0000

    You can do that in the firmware, maybe you can a file for each dataset and then in sequence

  7. electro_coco#0000

    thank you

  8. umeshlokhande#0000

    I will break down the file into chunks in binary format and then publish them separately. And then merge all the data again when it finishes sending the last chunk

  9. electro_coco#0000

    Then this will be handled on iot server side

  10. umeshlokhande#0000

    Yes, both mqtt server and the client can handle these chunks as long as the payload size doesn’t exceed. I use *Mosquitto Broker* which supports a maximum payload size of *268435455 bytes*

  11. greenepagemarketing#0000

    Preventing data loss on ESP32 during MQTT disconnects

  12. jayesh06204#0000

    We use something like history packets. Packers are stored in a lifo stack and it will be appended with the live packets and sent as history packets . Server separately handles history packets and stores accordingly

  13. youcef_ali#0000

    @josephogbonna You can use buffering, each time you send message check if it was tranmitted or not if not put in a buffer (Queue,file in sd card for example) once connetion restablished ( wifi / internet connextion mqtt connection) send all the untrasmitted mssages in your queue

CONTRIBUTE TO THIS THREAD

Leaderboard

RANKED BY XP

All time
  • 1.
    Avatar
    @Nayel115
    1620 XP
  • 2.
    Avatar
    @UcGee
    650 XP
  • 3.
    Avatar
    @melta101
    600 XP
  • 4.
    Avatar
    @lifegochi
    250 XP
  • 5.
    Avatar
    @Youuce
    180 XP
  • 6.
    Avatar
    @hemalchevli
    170 XP