micropython / micropython/micropython-lib

umqtt.simple cannot transmit longer messages than 125 ascii characters on Pico1 W

Open
#994 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
2.9k
Forks
1.1k
Avg merge
7d 6h
Merged PRs (30d)
3

Description

tried different libraries

started with https://github.com/peterhinch/micropython-mqtt.git

then https://github.com/bobveringa/micropython-mqtt.git

but now reverted to umqtt.simple and they all exhibit same behavior

gradually increasing message lenght up to 125 characters, when reached wireshark show multiple retransmits and the publishing stalls

tried with 200ms to 1000ms interval, no difference

!"#$%&'()+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'( !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()
!"#$%&'()
+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()* !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()+
!"#$%&'()
+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^
abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+, !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()+,-
!"#$%&'()
+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()+,-./
!"#$%&'()
+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^
abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./0 this one stalls !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&'()*+,-./01

tested with a socket tcp transfer and i can transmit 20000 bytes without problem

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the length threshold with umqtt.simple on the Pico1 W and inspect the publish traffic in Wireshark. Compare the failing MQTT behavior with the reported socket TCP transfer and the peterhinch/micropython-mqtt and bobveringa/micropython-mqtt implementations. Done means identifying and fixing the cause so longer ASCII messages publish without retransmits or stalling.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
embedded-iot, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.