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

RPi PICO mPyEasy support #5

Open
Budman1758 opened this issue Jan 23, 2021 · 6 comments
Open

RPi PICO mPyEasy support #5

Budman1758 opened this issue Jan 23, 2021 · 6 comments

Comments

@Budman1758
Copy link

Just bought a couple of these new Raspberry PICO units. Will this software run on them? Haven't received them yet. Just curious.

@enesbcs
Copy link
Owner

enesbcs commented Jan 23, 2021

I am curious too. Native micropython runs on it and API is something similar than ESP32. Basic functions may work on Pico but i do not see any network interfaces. Maybe W5500 can be coded to work on Pico but currently W5500 is only works with STM32 chips.
2MB flash is not too much but as i see OTA will never be supported, so it may be enough - as changing firmware needs physical button press and copying firmware onto them manually.

@enesbcs
Copy link
Owner

enesbcs commented Feb 1, 2021

In theory W5500 will compile with RP2 but i am unable to make it yet. Maybe micropython official will be added soon.
micropython/micropython#6819

@panchalnikunj

This comment has been minimized.

@enesbcs enesbcs changed the title Raspberry Pi PICO? RPi PICO mPyEasy support Feb 14, 2021
@enesbcs
Copy link
Owner

enesbcs commented Apr 15, 2021

Micropython STM32 driver for W5500 LAN is not compatible with RP architecture.

But i've succesfully modified Adafruit_CircuitPython_Wiznet5k to work with micropython and run a subset of mpyeasy.. although there was an even larger problem, as _thread (multiprocessing) module is working very strangely, differs from any other ports such as ESP32, resulting in constant freezes. So i have to say that Pi Pico in its current state is absolutely not usable with mpyeasy. :(

@enesbcs
Copy link
Owner

enesbcs commented May 2, 2021

Current status:

  • adafruit wiznet5k circuitpython driver works with micropython, with static IP address. dhcp is untested, but may not work.
  • microWebSrv requires working threading implementation, which is unstable at Pico port without GIL, unusable
  • picoweb requires uasyncio, which works at Pico, but adafruit wiznet5k socket driver somehow works only blocking IO mode, so this is also unusable
  • Adafruit WSGI minimized webserver finally looks like its working with wiznet5k socket, but may fail with larger html files, as the whole response has to be fit in the memory, testing in progress

@enesbcs
Copy link
Owner

enesbcs commented Jul 30, 2022

@Budman1758
Finally Wiznet driver works with micropython. Although threading is not really work on RP2 platform, so i had to partially rewrite the code to asyncio:
https://github.com/enesbcs/mpyeasy-async
Releases can be reached here:
https://github.com/enesbcs/mpyeasy-async/releases/
And this is for W5100S-EVB-Pico (W5500 is still not working on micropython)
https://github.com/enesbcs/mpyeasy-async/releases/download/v1.1.206-beta/mpyeasy-11260-pico-w5100.uf2

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

3 participants