| Age | Commit message (Collapse) | Author |
|
|
|
new CIRCUITPY_DEBUG flag passes DEBUG into C preprocessor
|
|
|
|
|
|
|
|
add-translation-for-builtin-object-help
* 'main' of https://github.com/adafruit/circuitpython:
update wake-alarm implementation
enable light-sleep functionality
update frozen libs for 6.1.0-beta.3
Revert "Removing frozen libs"
add pretend-to-sleep functionality
expose wake pin parameter and more tweaks
add touch alarm support for esp32s2
implement touch alarm
|
|
Support localizing the output of a call to to match the
firmware's language.
|
|
|
|
|
|
|
|
Several issues have been found in the implementation. While they're
unresolved, it may be better to disable the built-in module. (This
means that to work on fixing the module, it'll be necessary to
revert this commit)
|
|
* Better messaging when code is stopped by an auto-reload.
* Auto-reload works during sleeps on ESP32-S2. Ticks wake up the
main task each time.
* Made internal naming consistent. CamelCase Python names are NOT
separated by an underscore.
|
|
|
|
|
|
|
|
build: Update to gcc10
|
|
Fixes #3787
|
|
#3702 breaks printing an exception twice
|
|
alarm.sleep_memory + alarm.wake_alarm
|
|
|
|
|
|
|
|
|
|
|
|
This changes lots of files to unify `board.h` across ports. It adds
`board_deinit` when CIRCUITPY_ALARM is set. `main.c` uses it to
deinit the board before deep sleeping (even when pretending.)
Deep sleep is now a two step process for the port. First, the
port should prepare to deep sleep based on the given alarms. It
should set alarms for both deep and pretend sleep. In particular,
the pretend versions should be set immediately so that we don't
miss an alarm as we shutdown. These alarms should also wake from
`port_idle_until_interrupt` which is used when pretending to deep
sleep.
Second, when real deep sleeping, `alarm_enter_deep_sleep` is called.
The port should set any alarms it didn't during prepare based on
data it saved internally during prepare.
ESP32-S2 sleep is a bit reorganized to locate more logic with
TimeAlarm. This will help it scale to more alarm types.
Fixes #3786
|
|
|
|
|
|
Moving Adafruit_CircuitPython_BusDevice to core
|
|
|
|
Initial alarm and sleep PR: time alarms with light and deep sleep; PinAlarms not yet implemented
|
|
|
|
|
|
|
|
|
|
|
|
Add movable supervisor allocations
|
|
|
|
This reverts commit 0cd951fb73198f5c3dd03ea0463382edac0d3d4d.
It is not a correct solution because it prevents printing the same exception twice.
|
|
Moving memory is now done by the infrastructure and neither necessary nor correct here anymore.
|
|
This allows calls to `allocate_memory()` while the VM is running, it will then allocate from the GC heap (unless there is a suitable hole among the supervisor allocations), and when the VM exits and the GC heap is freed, the allocation will be moved to the bottom of the former GC heap and transformed into a proper supervisor allocation. Existing movable allocations will also be moved to defragment the supervisor heap and ensure that the next VM run gets as much memory as possible for the GC heap.
By itself this breaks terminalio because it violates the assumption that supervisor_display_move_memory() still has access to an undisturbed heap to copy the tilegrid from. It will work in many cases, but if you're unlucky you will get garbled terminal contents after exiting from the vm run that created the display. This will be fixed in the following commit, which is separate to simplify review.
|
|
|
|
|
|
|
|
update tinyusb to fix cdc connection race
|
|
`pow(a, b, c)` can compute `(a ** b) % c` efficiently (in time and memory).
This can be useful for extremely specific applications, like implementing
the RSA cryptosystem. For typical uses of CircuitPython, this is not an
important feature. A survey of the bundle and learn system didn't find
any uses.
Disable it on M0 builds so that we can fit in needed upgrades to the USB
stack.
|
|
|
|
ulab: Update to release tag 1.1.0
|
|
Disable certain classes of diagnostic when building ulab. We should
submit patches upstream to (A) fix these errors and (B) upgrade their
CI so that the problems are caught before we want to integrate with
CircuitPython, but not right now.
|
|
|
|
|