Skip to content

Fixes REPL not booting on heltec_esp32s3_wifi_lora_v3. #10408

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

Closed
wants to merge 412 commits into from

Conversation

baldengineer
Copy link

Fixes #10407.

Changed the GPIO in board.c, which controls the rail for the OLED screen and I2C pull-ups. Also added RESET signal to busdisplay constructor.

Tested with two Heltec WiFi LoRa V3 boards. On power-up the OLED shows the CircuitPython REPL. Opening serial port shows boot getting past Serial console setup and into the REPL. I was able to upload libraries and run code via code.circuitpython.org.

relic-se and others added 30 commits April 16, 2025 08:33
Surprisingly this leads to some code size savings on itsybitsym4,
even though LTO optimization should have let the compiler deduce
(almost) all of this.

When a compiler knows a call can never return, it is possibly able
to avoid emitting code, such as saving caller-saved registers to the
stack, or doing _ANYTHING_ affter the function returns, explaining
why code size savings is possible with this attribute.

With the exception of raise_deinited_error, these were found by checking
the functions found by `-Wmissing-noreturn` and making a case by case
decision. However, this dignostic can't be enabled unconditionally as it
has false positives, functions we do NOT want to mark as noreturn.

Testing performed: built itsybitsy m4, flash size savings 128 bytes.
didn't test on hardware as none came on this trip with me.
This was only used in espressif but became a no-op in
5e26862 so it should just be removed.
bitmaptools.arrayblit fix: make x2,y2 optional and update docstring
…queue-ops

extmod/modasyncio.c: remove push_head, push_sorted, pop_head
* Use 0 bytes for QSTR hash. Fixes adafruit#10151
* Update libgcc used on SAMD21 to 14.2. Reduces test build by over 100 bytes.
* Turn off 'd' typecode support on non-full builds.
Currently translated at 100.0% (1013 of 1013 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/en_GB/
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/
jepler and others added 24 commits May 27, 2025 08:20
…re-ports

Enable -Werror=old-style-definition against more ports
…covery

nordic: Fix BLE HID to work after deep sleep
improve keypad doc re RP2350 E-9 erratum
Currently translated at 100.0% (1015 of 1015 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/zh_Latn/
The waveshare_esp32_s3_zero/mpconfigboard.h
file does not have SPI nor IC2 defined. I suspect this board was built off another board and while the SPI and IC2 definitions were correctly removed from the mpconfigboard.h file, they were accidentally left in the pins.c file. So if you call a board.I2C or board.SPI you get an error even though they show up in 'dir (board)'.

The board does not have any silkscreen for these busses nor are the specifically called out in the schematic.
https://www.waveshare.com/wiki/ESP32-S3-Zero
…main

Translations update from Hosted Weblate
Currently translated at 100.0% (1015 of 1015 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/en_GB/
…main

Translations update from Hosted Weblate
…hain

fixed download URL (has 14.2 twice in the url)
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.

Hi - this is merging from main to 9.2.x, which is causing an excessive number of commits.

Side comment, not related to the above: we suggest creating your own branch instead of using your main for changes, which causes your main to get out of sync with upstream main. See https://learn.adafruit.com/contribute-to-circuitpython-with-git-and-github/always-work-on-a-branch#create-your-new-branch-2992239

@baldengineer
Copy link
Author

Thanks for the feedback. I tried following that guide the first time, but I didn't do it correctly. Now, I am unsure what to do next. I'll just close this request.

@dhalbert
Copy link
Collaborator

dhalbert commented Jun 9, 2025

Here are some ideas for how to fix:

  • Just make a new PR, specifying base main instead of 9.2.x.
  • After your PR is merged, clean up your main do a git reset --hard on your main to a commit before any of the changes you made on main. Then catch up your main to adafruit/main by doing git pull adafruit main (merging from upstream), or git fetch adafruit; git merge --ff-only adafruit/main. This assumes you've named the upstream git remote as adafruit (by default it is upstream.

@dhalbert
Copy link
Collaborator

dhalbert commented Jun 9, 2025

  • Just make a new PR, specifying base main instead of 9.2.x.

You will probably be able to do that with your existing commit(s), without changes.

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.