Commit Graph

834 Commits

Author SHA1 Message Date
Scott Shawcroft f8ac1d9261
Rework the coproc API
It is now a generic `memorymap` API and an ESP specific `espulp` module.

Fixes #7218. Fixes #3234. Fixes #7300.
2022-12-19 14:08:38 -05:00
Jeff Epler 808161eaab
fix missing sentinel in call 2022-12-12 19:09:57 -06:00
Jeff Epler 3620d14542
Pass string length when enabling radio 2022-12-12 17:04:03 -06:00
Jeff Epler 1b15985783
Fix web workflow builds 2022-12-12 09:20:56 -06:00
Jeff Epler 44f15d563d
Rename "environ" errors to "getenv" errors 2022-12-09 14:14:53 -06:00
Jeff Epler 3a92c079fc
Finish renaming os_environ_get_key to os_getenv
.. for consistency.
2022-12-09 14:07:23 -06:00
Jeff Epler 3459fe322b
Withdraw the _environ module
This existed solely for testing, so expose it a different way during
the unix coverage build

Also turn off os.getenv support on samd21.
2022-12-08 15:33:10 -06:00
Jeff Epler 47339d4248
make a settings.toml file on boards that support the feature 2022-12-08 12:56:24 -06:00
Jeff Epler ef2bfdb5db
dotenv becomes settings.toml 2022-12-08 12:44:20 -06:00
Scott Shawcroft b354cec8cb
Three small ESP web workflow fixes
* Set nonblock on all accepted sockets. Not just ones for user code.
* Close an open websocket if another is accepted.
* Set debug level to INFO rather than DEBUG because DEBUG crashes
  on ESP32-S3 USB OTG.
2022-12-06 11:49:04 -08:00
Jeff Epler 9c6c25ae57
Merge pull request #7286 from tannewt/fix_web_workflow_write
Fix writing files from web workflow
2022-12-01 08:30:47 -06:00
Scott Shawcroft 65e913ecd6
Fix writing files from web workflow
Pico W changes assumed that f_write could handle a NULL fourth
argument. It can't.
2022-11-30 14:22:46 -08:00
Jeff Epler fb66a6bfe5
Don't use "offset" as an identifier 2022-11-30 14:39:54 -06:00
Jeff Epler d16c9515b7
Compact the characters of certain translations, so they fit in uint8_t
This saves a few hundred bytes on the affected translations, such
as `el` which shrunk from 186152 to 185588 bytes (564 bytes saved).
2022-11-30 14:39:53 -06:00
Scott Shawcroft c13ca95da1
Add MDNS support to Pico W
This adds both cpy-MAC.local and circuitpython.local support.

Fixes #7214
2022-11-28 16:15:28 -08:00
Scott Shawcroft ad2d190507
Merge pull request #7247 from tannewt/picow_web_workflow
Enable* web workflow for Pico W
2022-11-28 14:19:42 -08:00
Scott Shawcroft c3a96a63c0
Enable* web workflow for Pico W
* Except for circuitpython.local which depends on MDNS and will be
done in a follow up PR.

Progress on #7214
2022-11-21 16:24:05 -08:00
Dan Halbert 0f6c708cb1
Merge pull request #7227 from jepler/serial-break-is-interrupt
Allow serial "break" to trigger KeyboardInterrupt
2022-11-18 19:26:17 -05:00
Jeff Epler afca4cef6d
This code can only be active if USB CDC is enabled. 2022-11-18 16:05:46 -06:00
Jeff Epler 406e46f46b
Allow serial "break" to trigger KeyboardInterrupt
When the USB serial buffer is full, the Ctrl-C code to send
KeyboardInterrupt can't be sent, which creates a problem if you've
pasted code or otherwise filled the buffer and need to recover.
A similar problem affects advanced UIs that interact with CircuitPython
and may send characters when they're unexpected, such as mu when it
tries to move the cursor based on the user clicking on the screen.

The main way forward seems to be to use some kind of message that can
still reach CircuitPython when its internal serial recieve buffer is full.
RS232 defines a "break" signal, in which the transmitting device holds its
data line in the "space" state for many entire character times. This still
exists in the world of USB serial.

This does work, sort of, except that your host computer software will need
to properly handle blocking serial writes; tio can send a break with
the **ctrl-c b** sequence, but this only works if it hasn't yet written
too much data, so it doesn't actually help in most situations :-/
2022-11-18 14:35:06 -06:00
MicroDev dd01fc97e5
Merge pull request #7223 from jepler/issue7222
supervisor_start_terminal: don't crash if display is tiny
2022-11-18 09:34:26 +05:30
Jeff Epler b0d0fcbabc
supervisor_start_terminal: don't crash if display is tiny
Closes: #7222
2022-11-17 12:03:33 -06:00
Scott Shawcroft 93ee54a2fb
Fix PWM status LED never_reset
It doesn't need never reset because the status LED is only active
when user code isn't.

This also fixes PWM never reset on espressif so that deinit will
undo it.

Fixes #6223
2022-11-15 16:14:31 -08:00
Matthew McGowan ad9db01f5f Implements PDMIn for STM32L4 using the SAI peripheral and decimation/filtering in software. 2022-11-04 17:27:08 -07:00
Neradoc 8f82db5b22 define out the safe mode message if none 2022-10-30 03:55:59 +01:00
Neradoc 0aa41fa92e change BOARD_USER_SAFE_MODE_ACTION into a separate sentence 2022-10-30 01:55:42 +02:00
Dan Halbert 7e4b2a09eb
Merge pull request #7000 from MicroDev1/storage-extend
Add Storage Extension Support
2022-10-13 10:05:55 -04:00
Dan Halbert 844cd17f03 delay first serial write by 50ms 2022-10-11 23:02:14 -04:00
microDev b0ef35d50b
update storage extension implementation 2022-10-06 09:19:56 +05:30
Dan Halbert 1c2d2c9be4
Merge pull request #6980 from MicroDev1/supervisor
Implement certain supervisor functions as properties
2022-10-04 08:54:11 -04:00
Jonathan Myers db28605add Fix mask for minutes field when computing modified_ns 2022-10-02 18:29:07 -07:00
microDev 17ed2a6898
implement certain supervisor functions as properties
- disable_ble_workflow
- set_next_stack_limit
- set_rgb_status_brightness
2022-10-01 23:44:22 +05:30
Dan Halbert db065a299f
Merge pull request #6933 from jepler/🥧🐮
Implement a useful subset of `wifi` and `socketpool` modules on 🥧🐮
2022-09-28 18:09:24 -04:00
Jeff Epler 346fff2e7c
cyw43 basic gpio support, hwaddr in boot_out 2022-09-28 10:06:33 -05:00
Dan Halbert 0cd37376a0 finish status bar internal simplification 2022-09-27 15:14:40 -04:00
Dan Halbert e5f2f0be25 simplify suppressing status bar writes 2022-09-25 00:00:37 -04:00
Dan Halbert 9aca092900 squeeze the usb identification code; manufacturer was being copied to product 2022-09-20 20:23:17 -04:00
Dan Halbert daf415d9c7 squeeze the usb identification code 2022-09-20 20:08:16 -04:00
Dan Halbert adf15faa8f merge from main; throw NotImplementedError if CIRCUITPY_USB not set 2022-09-20 13:18:32 -04:00
Patrick c271a421bf
Update supervisor/shared/web_workflow/static/directory.html 2022-09-09 16:34:11 -07:00
Patrick b50bafa22c
Update supervisor/shared/web_workflow/static/directory.html 2022-09-09 16:31:11 -07:00
Patrick c5f014f2a6
web workflow file system page
Fixes #6884
2022-09-09 15:40:02 -07:00
Dan Halbert dd37c81136
Merge pull request #6847 from dhalbert/status-bar-control
Allow enabling and disabling of status bar
2022-09-08 10:48:36 -04:00
Dan Halbert 4cb69a51d5 Use MP_WEAK for default board.c routines 2022-09-08 07:36:50 -04:00
Dan Halbert 2c42a48962 Clear stale exception in _exec_result; more status_bar fixups 2022-09-01 19:29:32 -04:00
Melissa LeBlanc-Williams 8be2d650c7 Add info and link for Web Workflow /code/ page 2022-09-01 12:26:33 -07: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
Melissa LeBlanc-Williams 1ae4d881fd Allow Move/Rename to be called from localhost 2022-08-24 14:50:42 -07:00
Neradoc dfd6fa2114 add serial number to version.json, UID like in boot_out.txt 2022-08-21 04:09:44 +02:00