Skip to content

Conversation

@dhalbert
Copy link
Collaborator

@dhalbert dhalbert commented Sep 13, 2025


  • Make all port_* storage operations use critical sections, not just those for LWIP.
  • Fix a bug in espressif that was raising the wrong error code on a connect() failure. Discovered in passing.
  • Incorporate some recent fixes from MicroPython extmod/modlwip.c.

This is a draft for now because there still seem to be occasional crashes on CYW43, and I want to understand why a connect failure is ECONNRESET instead of ECONNREFUSED, as it is on Linux.

@anecdata FYI

@anecdata
Copy link
Member

Running Pico W against macOS server, looking good so far.

(Having issues updating a QT Py S3, will have to work on that one later.)

@dhalbert
Copy link
Collaborator Author

(Having issues updating a QT Py S3, will have to work on that one later.)

You may need to update the bootloader if it is a 4MB flash QT Py: https://learn.adafruit.com/adafruit-qt-py-esp32-s3/update-tinyuf2-bootloader-for-circuitpython-10-4mb-boards-only

@anecdata
Copy link
Member

anecdata commented Sep 14, 2025

I did, with erase, several times (esptool and webserial), but the CP firmware doesn't take after that (it lights the neopixel solid orange and ejects all other USB devices). I'll try a different board.

update: working now with a reverse TFT S3. Both the PicoW and S3 are hitting the macOS server. Both clients are also still doing PulseOut just for fun. Looking good so far.

@anecdata
Copy link
Member

anecdata commented Sep 15, 2025

Pico W and S3 have been running solid >16 hours, no hard faults, occasional client exceptions (mostly ETIMEDOUT, some I/O Error, and a few EINPROGRESS on Pico W; mostly ETIMEDOUT and a few EINPROGRESS on S3).

@dhalbert dhalbert marked this pull request as ready for review September 15, 2025 15:29
@dhalbert
Copy link
Collaborator Author

There was a CI failure on one board on the first run, unrelated to the PR. For some reason I was unable to re-run just that job: CI tried to re-run everything, which I cancelled.

Copy link
Member

@anecdata anecdata left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me from an operational / testing perspective.

Copy link
Member

@tannewt tannewt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine to me once the CI is happy. Maybe just push a new commit for testing?

@dhalbert dhalbert merged commit 2317aec into adafruit:main Sep 15, 2025
394 of 400 checks passed
@dhalbert dhalbert deleted the lwip-fixes branch September 15, 2025 18:40
@dhalbert
Copy link
Collaborator Author

The CI failure was just some one-off CI timeout.

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

Successfully merging this pull request may close these issues.

Hard crashes on Pico W with high network activiity

3 participants