Commit Graph

299 Commits

Author SHA1 Message Date
Bill Sideris 8abce77971
fix safemode 2023-02-17 00:52:13 +02:00
Bill Sideris 5a9264261e
Merge branch 'adafruit:main' into settings-toml-pystack 2023-02-17 00:50:27 +02:00
Bill Sideris 66215f7983
gcc is evil, I respond with fake pointer 2023-02-16 23:57:47 +02:00
Bill Sideris c003b8817a
Put on all and preinit with NULL 2023-02-16 23:40:49 +02:00
Bill Sideris 4bb0b0acdf
volatile to skip optimisation 2023-02-16 23:37:37 +02:00
Bill Sideris 54ae7ced82
Updated to requested changes 2023-02-16 23:10:11 +02:00
Dan Halbert bbadc00599
Merge pull request #7577 from dhalbert/safemode-py
Implement safemode.py
2023-02-16 14:15:20 -05:00
Bill Sideris 6dc179dc4a
Removed old supervisor stack setting code and revert some 'optimisations' 2023-02-16 13:33:37 +02:00
Bill Sideris a61a9f4bde
Size reductions (attempts, at the very least) 2023-02-16 13:12:21 +02:00
Bill Sideris f6e7edc900
Size reductions 2023-02-16 12:34:48 +02:00
Bill Sideris c920dbb81c
Skip unecessary check for space 2023-02-16 11:50:35 +02:00
Bill Sideris 8061e8e7c6
Names changed to better fit mp style 2023-02-16 11:05:29 +02:00
Bill Sideris b00a25fecc
Merge branch 'adafruit:main' into settings-toml-pystack 2023-02-16 10:44:01 +02:00
Bill Sideris 659adb7172
fix for stackless 2023-02-16 00:45:41 +02:00
Bill Sideris 8216aa4890
struct stacks 2023-02-16 00:41:49 +02:00
Bill Sideris 133045a95a
Add error message and guardrail 2023-02-15 23:15:21 +02:00
Bill Sideris 818d1d4cb1
Discard pystack_size 2023-02-15 22:43:57 +02:00
Bill Sideris c3b9567641
using vm cleanup and no globals 2023-02-15 22:27:37 +02:00
Bill Sideris cf6afe250c
re-add attribute 2023-02-15 22:00:52 +02:00
Bill Sideris fa302b2e29
Now works on reload. 2023-02-15 21:54:53 +02:00
Gregory Neverov ffbb7550b4 Move serial init to earlier in boot process 2023-02-15 11:08:09 -08:00
Bill Sideris 2077bb9da9
pystack_size as multiple of sizeof size_t, no more stackless via settings.toml 2023-02-15 17:54:52 +02:00
Bill Sideris 0d5b400b33
swap int for mp_int_t 2023-02-15 16:08:22 +02:00
Bill Sideris 9e2235d7f7
pystack works via settings.toml, stackless not working yet 2023-02-15 15:23:16 +02:00
Bill Sideris 422098e171
pystack is now a valid supervisor allocation 2023-02-15 12:30:42 +02:00
Dan Halbert 328585f160 don't enter safemode.py on USER safe mode 2023-02-14 11:20:29 -05:00
Dan Halbert d8231f1588 Implement safemode.py 2023-02-13 18:26:38 -05:00
Bill Sideris 1f1a495e26
rename _pystack -> pystack 2023-02-13 20:57:54 +02:00
Bill Sideris a460410d6a
First attempt at using alloc 2023-02-10 22:45:25 +02:00
Jeff Epler d2e2a61075
Reworking how "run list" works saves a dozen bytes 2022-11-30 14:39:54 -06:00
Dan Halbert ded134c346 store wake_alarm in a static object 2022-10-29 16:26:36 -04:00
Dan Halbert 9307b62ad5 wip 2022-10-27 22:42:04 -04:00
Dan Halbert 86a0f9a861 save about 112 bytes 2022-10-09 19:22:39 -04:00
Jeff Epler 346fff2e7c
cyw43 basic gpio support, hwaddr in boot_out 2022-09-28 10:06:33 -05:00
Dan Halbert 14adfb16dd avoid pwmout_reset() workaround by reordering in main(); remove unnecessary never-resets 2022-09-12 21:32:21 -04:00
Dan Halbert 2c42a48962 Clear stale exception in _exec_result; more status_bar fixups 2022-09-01 19:29:32 -04:00
Dan Halbert 2fa671c0f8 avoid status bar updates immediately after hard restart 2022-08-30 22:33:29 -04:00
Dan Halbert 52080e24eb status bar control 2022-08-30 15:23:44 -04:00
Scott Shawcroft 3dc0290e56
Don't reload or enter repl when autoreloading
A keypress while we waited for autoreload used to enter repl. Now
it won't.

Fixes #6480
2022-08-11 12:23:25 -07:00
Scott Shawcroft f3ca15265e
Change to line@filename 2022-08-09 10:42:20 -07:00
Scott Shawcroft 86f4014f83
Add exception filename to title bar
Add the exception filename after the line number and change the
line number so it is in that file. It used to always be code.py.

Fixes #6702
2022-08-08 13:52:05 -07:00
Scott Shawcroft 207311b02a
Merge branch 'main' into title_execution_status 2022-08-05 13:42:58 -07:00
Scott Shawcroft eb7ddf52e6
Fix BLE workflow and add boot_out.txt UID
Fixes #6621
2022-08-04 16:33:10 -07:00
Scott Shawcroft 3a2bcbc5c7
Enable title bar on all builds
* Tweak scroll area position so last line is complete and top is
  under the title bar.
* Pick Blinka size based on the font to minimize unused space in
  title bar. Related to #2791
* Update the title bar after terminal is started. Fixes #6078

Fixes #6668
2022-08-04 16:33:10 -07:00
Scott Shawcroft 577d53dda4
Add execution status into title bar 2022-08-04 16:33:09 -07:00
Jeff Epler 82be75adb5 Add ability to reserve psram
.. the primary user of which will be the camera, since the framebuffers
must be allocated via esp-idf allocation function and never from the
gc heap.

A board can have a default value, and the value can also be set in the
/.env file using the key CIRCUITPY_RESERVED_PSRAM with the value being
the reserved size in bytes.

Co-authored-by: Dan Halbert <halbert@adafruit.com>
2022-08-03 16:19:40 -05:00
Scott Shawcroft d6344812e8
Lots of web workflow, C3 and title bar fixes
* Fixes #6221 - C3 hang on `import wifi`. Enabling the WiFi PHY was
  disabling USB. Now boards that use it set CONFIG_ESP_PHY_ENABLE_USB
  explicitly.
* Fixes #6655 - Allows pasting into the web serial page. Fixes reading
  more than 0xf bytes at a time.
* Fixes #6653 - Fixes web socket encoding of payloads >125 bytes. Can
  happen when printing a long string.
* Fixes C3 responsiveness when waiting for key to enter REPL. (It
  now correctly stops sleeping.)
* Disables title bar updates when in raw REPL. Related to #6548.
* Adds version to title bar.
2022-07-28 16:06:56 -07:00
Jeff Epler afa8b2ea72
Don't hard fault trying to run boot.py if there's no heap 2022-07-13 13:56:49 -05:00
Jeff Epler ed326c4c70
Always release displays during deep sleep
Closes #6523
2022-06-30 15:59:15 -05:00
Scott Shawcroft 6446010753
Wi-Fi autoconnect and title bar status
This adds support for CIRCUITPY_WIFI_SSID and CIRCUITPY_WIFI_PASSWORD
in `/.env`. When both are defined, CircuitPython will attempt to
connect to the network even when user code isn't running. If the
user code attempts to a network with the same SSID, it will return
immediately. Connecting to another SSID will disconnect from the
auto-connected network. If the user code initiates the connection,
then it will be shutdown after user code exits. (Should match <8
behavior.)

This PR also reworks the default displayio terminal. It now supports
a title bar TileGrid in addition to the (newly renamed) scroll area.
The default title bar is the top row of the display and is positioned
to the right of the Blinka logo when it is enabled. The scroll area
is now below the Blinka logo.

The Wi-Fi auto-connect code now uses the title bar to show its
state including the IP address when connected. It does this through
the "standard" OSC control sequence `ESC ] 0 ; <s> ESC \` where <s>
is the title bar string. This is commonly supported by terminals
so it should work over USB and UART as well.

Related to #6174
2022-06-09 14:55:54 -07:00