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

RFC: Remove support for ESP8266 #519

Closed
jessebraham opened this issue Nov 23, 2023 · 9 comments
Closed

RFC: Remove support for ESP8266 #519

jessebraham opened this issue Nov 23, 2023 · 9 comments
Labels
RFC Request for comment

Comments

@jessebraham
Copy link
Member

While esp8266-hal was still being actively developed and maintained at the time of this tool's inception, that is not longer the case. While there has been a small amount of interest in using this device with Rust, there has not been any commitment from anybody to make this feasible.

Given that we have no intentions of supporting this device, and its EOL date is creeping ever closer (2026), maybe we should just drop support for the ESP8266. Users will still have access to esptool.py and [email protected], both of which will support the ESP8266, if it's really needed.

@jessebraham jessebraham added the RFC Request for comment label Nov 23, 2023
@SergioGasquez
Copy link
Member

I think its reasonable to remove support for ESP8266 in [email protected], as it is not very used, the hal is not maintained, and they can always use old versions of espflash or esptool to flash it.

@elpiel
Copy link

elpiel commented Nov 26, 2023

From the community I've heard quite a few people that still have ESP8266 and want to use it.
Even if the hal is not maintained I think keeping the support can be vital for rewriting projects or using boards that you have laying around.

There are also new boards that come out with ESP8266 so it might be worth keeping it around.

@jessebraham
Copy link
Member Author

There are a number of factors that motivated this:

  1. esp8266-hal has been in maintenance mode since May 30th, 2022. There have been maybe a single-digit number of people who have contacted me regarding this package since switching to maintenance mode; a couple initially seemed interested in getting development started there again, however nothing ever came of this. This paired with the lack of downloads from crates.io, it really does not seem there is much interest from the community.
  2. This project (espflash) also has received very few consistent contributions from the community. I've largely been responsible for this application throughout its life (especially since the original author stopped contributing), and I just really do not have the time or interest in continuing. It does everything I need it to do for my day-to-day work, so I have been spending my time implementing and maintaining features which I don't even use myself. I have passed the reigns off to @SergioGasquez, however he also has other projects for which he is responsible. Without consistent contributions from the community, it's very difficult to justify maintaining features which essentially nobody seems to be using, from my perspective at least.

I have a soft spot for the ESP8266 as well, and know it's still reasonably popular in the open-hardware community. Unfortunately we have very limited resources and plenty of other projects which require attention, so we really need to see the community step up and A) communicate their interest in this device and B) contribute to the HAL, this application, and other supporting libraries.

@elpiel
Copy link

elpiel commented Nov 26, 2023

Ok, I agree with your points.
Then I really hope you support the rest of the no_std ecosystem like you've done so far even if we lose support of one or two chips.

@jessebraham
Copy link
Member Author

jessebraham commented Nov 27, 2023

I personally have every intention of supporting all other devices, and will do everything I can to provide as consistent experience between them as possible. Unfortunately the ESP8266 is just a bid of an odd duck.

I'll also add that nothing is permanent, if there is sufficient demand and we have people willing to contribute, it's always possible support could be re-added in the future. I just can't commit to this at this time.

@MabezDev
Copy link
Member

I don't have many thoughts on this really, but do we have some indication of the maintenance burden of the esp8266? We chose to remove direct-boot in esp-hal because it was eating up developer time but maybe if esp8266 support isn't bogging us down it's okay to stay?

@SergioGasquez
Copy link
Member

do we have some indication of the maintenance burden of the esp8266?

I think the main pain point of maintaining esp8266 in the future is updating the stubs, is the only target not supported in esp-flasher-stub so we need to use the C-stub. And, maybe if we introduce new features, having them working in esp8266 may also give us some trouble

@jessebraham
Copy link
Member Author

Removing both the direct-boot and esp8266 image formats also allows us to get rid of the ImageFormat trait and some other associated enums. Not the end of the world to keep it in, just would be nice to simplify things.

@SergioGasquez
Copy link
Member

ESP8266 current open issues: #472 and #471

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RFC Request for comment
Projects
Archived in project
Development

No branches or pull requests

4 participants