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

Allow overriding CIRCUITPY_BLEIO on 4MB espressif boards #10089

Merged

Conversation

Neradoc
Copy link

@Neradoc Neradoc commented Feb 21, 2025

While we are waiting for CP 10, this allows overwriting CIRCUITPY_BLEIO on 4MB espressif boards from the make command, or with the github custom build action on a fork. It it is then possible to make space for _bleio by disabling other modules.
Or by using the no-ota-no-uf2 partition scheme. Note that the no-ota with uf2 build won't work with the current versions of tinyuf2 (pending adafruit/tinyuf2#432) so this requires installing via the bin anyway (or a custom tinyuf2 while you're at it).

For example:

make BOARD=adafruit_qtpy_esp32s3_4mbflash_2mbpsram CIRCUITPY_BLEIO=1 \
FLASH_SIZE_SDKCONFIG=esp-idf-config/sdkconfig-flash-4MB-no-ota-no-uf2.defaults
esptool.py --port $PORT --after=no_reset erase_flash
esptool.py --port $PORT write_flash 0x0000 build-adafruit_qtpy_esp32s3_4mbflash_2mbpsram/firmware.bin

Note that you can also preserve the drive when erasing. (It does erase NVM)
These values are for the 4MB-no-ota-no-uf2 partition scheme.

esptool.py --port $PORT --after=no_reset erase_region 0 0x210000

@dhalbert dhalbert requested a review from tannewt February 22, 2025 04:08
Copy link
Collaborator

@dhalbert dhalbert left a comment

Choose a reason for hiding this comment

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

I think is a good idea, even if it is temporary, because it makes it easier to enable BLE now on these boards.

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.

Fine with me too!

@tannewt tannewt merged commit 4cce4fa into adafruit:main Feb 24, 2025
234 checks passed
@henrygab
Copy link

henrygab commented Mar 6, 2025

or with the github custom build action on a fork

I have never built CircuitPython locally, and I would prefer to avoid setting up and validating a custom build environment just for this purpose. Thus, I'm excited to use GitHub actions.

@Neradoc ... I'd like to try this. Presume that I have already:

  • created various github actions in the past
  • forked this repository, and
  • enabled github actions in my fork of circuitpython
  • want to enable this for an ESP32-S3 board with 4MB flash and 8MB PSRAM (specifically, the reverseTFT feather)

Could you give a few more details on the changes needed to enable this custom build action for that fork? (Or, if you already have this fork yourself, can you point to it?)

thank you!

@Neradoc
Copy link
Author

Neradoc commented Mar 6, 2025

The custom build action is currently broken, see #10117
This is how you start it (to do in you fork) - but currently results in an error.

Capture d’écran 2025-03-06 à 12 55 29 Capture d’écran 2025-03-06 à 12 58 49

If you understand github actions, you can try to fix the issue in your fork (and make a PR when it works !)

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.

4 participants