Commit Graph

24508 Commits

Author SHA1 Message Date
Kenny
051d7a970e fix rotation and mirroring
now works with all vector shapes, even those with internal reference locations
that are negative. All shape locations are anchored to their 0,0 but they can
display pixels from negative coordinates if the shape's location on the screen
would have room for it.
2021-08-07 19:32:02 -07:00
Kenny
b5837b157d improve transpose and mirror
* add heuristic to avoid drawing area unnecessarily
* fix Polygon.points
* fix transpose
* fix mirror x and y

Known broken:
Polygon with negative Y coordinates does not work right.
2021-08-07 19:31:22 -07:00
Kenny
6be952d3ba found more documentation dependencies that needed updating 2021-08-05 00:13:10 -07:00
Kenny
85bf3d074f stub checker does not approve of shared vectorshape properties 2021-08-04 23:55:03 -07:00
Kenny
48ea81e2f1
Vexing pedantry
Spaces deleted from phone
Eternal chore, lint
2021-08-03 11:25:31 -07:00
Kenny
ac2f4bb6c9
Create __init__.h
More random spaces. Why isn’t this in a pre-commit check
2021-08-03 09:20:11 -07:00
Kenny
739ef92fc9
Update __init__.h
More random spaces. Why isn’t this in a pre-commit check
2021-08-03 09:20:02 -07:00
Kenny
464281b881
Stub comma 2021-08-03 08:08:11 -07:00
Kenny
8c22993e28 fix linter 2021-08-02 20:38:37 -07:00
Kenny
8607cdd783 vectorio: add draw protocol
* Removes VectorShape from user python interactions
* Re-integrates vectorio with displayio behind draw protocol implementations
* Implements draw protocol with VectorShape
* Composes VectorShape behaviors into Rectangle, Circle and Polygon
* Fixes terrible pixel garbage being left behind
* Improves redraw performance (heuristically) by tracking dirty area separately from current area.

Known Issues:
It does not work with transposed views.
2021-08-02 20:19:54 -07:00
Kenny
1b67b91edd fix inverted logic 2021-07-31 16:59:44 -07:00
Kenny
0afd863224 vectorio: palettes don't color dirty rectangles
This is a breaking change with previous palette semantic with respect to python code that uses vectorio.
Displayio has breaking changes in cpy 7 for Group's removal of max_size parameter so this is as good a
time as any to break everything.

Currently:
To color vectorio shapes correctly you have to pass in a palette with length 2. Palette[0] must be set transparent and palette[1] must be the color you want.

New:
To color vectorio shapes correctly you pass in a palette with length >= 1. Palette[0] will be the color of the shape.

Also improves pixels per second when skipping areas that aren't covered by the shape.
2021-07-31 16:32:01 -07:00
microDev
98cd989c16
Merge pull request #5083 from hierophect/stm32-sleepmem
STM32: add SleepMemory
2021-07-31 08:48:25 +05:30
Lucian Copeland
da149b0a42 Merge remote-tracking branch 'upstream/main' into stm32-sleepmem 2021-07-30 15:35:55 -04:00
Scott Shawcroft
bfe29786ce
Merge pull request #5074 from tannewt/break_deep_sleep
Fix a couple fake sleep bugs on nrf and esp
2021-07-30 09:19:08 -07:00
microDev
afa4ddb8d6
Merge pull request #5075 from tannewt/magtag_4_status
Use all four LEDs for status on MagTag
2021-07-29 08:42:31 +05:30
Scott Shawcroft
d5cdceb9b9
Use all 4 status pixels on neotrinkey too 2021-07-28 14:25:21 -07:00
Scott Shawcroft
bc0f8ac55d
Use all four LEDs for status on MagTag
Fixes #5051
2021-07-28 14:17:31 -07:00
Scott Shawcroft
cdf978f3af
Fix a couple fake sleep bugs on nrf and esp
On ESP ctrl-c during fake sleep will now stop the sleep. A crash
on real deep sleep is now fixed as well. (Exception string saving
was crashing on reading the deep sleep exception.) Fixes #4010

This also fixes nRF fake sleep after the first time. The internal
variable wasn't being reset early enough. Fixes #4869
2021-07-28 13:27:48 -07:00
Dan Halbert
e9369d50e1
Merge pull request #5067 from tannewt/pulseout_switch
Switch to pin, frequency and duty_cycle PulseOut
2021-07-28 14:58:06 -04:00
Scott Shawcroft
9e54606ba1
Set output low in SIO 2021-07-28 09:00:36 -07:00
Dan Halbert
7641bf15c0
Merge pull request #5070 from jepler/check-duplicate-topdir
check vid/pid: find topdir relative to this script
2021-07-27 21:08:33 -04:00
Jeff Epler
5e07b7959f check vid/pid: find topdir relative to this script
@dhalbert noticed that if a fork was called `micropython`, the
existing check could fail during CI because it will be cloned into a
directory also called `micropython`.

Instead of hardcoding a range of strings that are OK as top directories,
find the location of the top directory relative to the script.

This will be conflicty after #5069 is merged, but it should be easy to
fix.
2021-07-27 15:20:58 -05:00
Scott Shawcroft
4be904fd4a
Switch to gpio mux to disable/enable pwm signal 2021-07-27 12:38:18 -07:00
Scott Shawcroft
e87e1d8175
Block when setting duty_cycle until the new value is taken 2021-07-27 12:37:35 -07:00
Dan Halbert
84ddb17c78
Merge pull request #5054 from jepler/rmatrix
docs: Add list of supported board to each module's page
2021-07-27 15:05:47 -04:00
Scott Shawcroft
17ff891ee0
Merge pull request #5071 from weblate/weblate-circuitpython-main
Translations update from Weblate
2021-07-27 11:29:25 -07:00
Jeff Epler
94a4090542 Make summary more helpful; use a html list 2021-07-27 12:01:18 -05:00
Hosted Weblate
adfe2f0504
Merge remote-tracking branch 'origin/main' into main 2021-07-27 17:35:12 +02:00
Kattni
fc59a7ac02
Merge pull request #5068 from dhalbert/remove-gamepad
remove gamepad; deprecate gamepadshift
2021-07-27 11:35:06 -04:00
Hosted Weblate
7ddb4159ed
Merge remote-tracking branch 'origin/main' into main 2021-07-27 17:18:52 +02:00
Kattni
460643f983
Merge pull request #5066 from dhalbert/led-everywhere
add board.LED wherever possible
2021-07-27 11:18:47 -04:00
Noel Gaetan
6713a254cb
Translated using Weblate (French)
Currently translated at 94.3% (955 of 1012 strings)

Translation: CircuitPython/main
Translate-URL: https://hosted.weblate.org/projects/circuitpython/main/fr/
2021-07-27 16:33:15 +02:00
Dan Halbert
297919bbdd
Merge pull request #5069 from kamtom480/sdk2.2.0
spresense: update SDK to 2.2.0
2021-07-27 10:15:51 -04:00
Dan Halbert
a974a2d3c1 allow micropython as top-level dir name in duplicate pid/vid check 2021-07-27 09:04:44 -04:00
Dan Halbert
0eab2eb162 Use sphinx-autoapi 1.8.1 until it's fixed 2021-07-27 08:45:30 -04:00
Kamil Tomaszewski
ff65863719 spresense: update SDK to 2.2.0 2021-07-27 11:25:51 +02:00
Dan Halbert
b0fb709d83 more gamepad removal 2021-07-26 23:34:25 -04:00
Dan Halbert
7392bf7cb4 Use sphinx-autoapi 1.8.1 until it's fixed
Thanks @tannewt for this:
080e5233b4
2021-07-26 22:35:25 -04:00
Scott Shawcroft
080e5233b4
Use sphinx-autoapi 1.8.1 until it's fixed
Related to https://github.com/readthedocs/sphinx-autoapi/issues/299
2021-07-26 19:21:52 -07:00
Dan Halbert
901a6c27c0 remove gamepad; deprecate gamepadshift 2021-07-26 22:15:09 -04:00
Scott Shawcroft
daf90aae83
Merge remote-tracking branch 'adafruit/main' into pulseout_switch 2021-07-26 18:48:59 -07:00
Scott Shawcroft
412eb87080
Switch to pin, frequency and duty_cycle PulseOut
Passing in a PWMOut still works but is deprecated. It will be
removed in CircuitPython 8.0.0

This also switches STM32 timer indices and channel indices to
0-based in our pin data rather than `- 1` everywhere. The latter is
more bug prone.

Most of the way for #3264

Tested on Metro M0, Metro M4, Feather S2, Feather nRF52840, Feather
STM32F4 and Arduino RP2040.
2021-07-26 18:35:49 -07:00
Dan Halbert
11ca505fdb add board.LED wherever possible 2021-07-26 19:57:12 -04:00
Scott Shawcroft
8258f51132
Merge pull request #5061 from evildave666/blackpill-remove-nvm
remove unused nvm reserved space from stm32f411ce_blackpill_with_flash
2021-07-26 14:13:29 -07:00
microDev
a5d700392e
Merge pull request #5065 from jepler/remote-settings-txt
Remove settings.py/txt as alternatives for boot.py
2021-07-27 00:39:26 +05:30
Jeff Epler
4e786494dd Remove settings.py/txt as alternatives for boot.py
Closes: #5064
2021-07-26 13:04:41 -05:00
Jeff Epler
b9fa06cf6b
Merge pull request #5056 from cdwilson/cdwilson/circuitpython/fix-feather-stm32f405-express-can-pins
Fix CAN pin assignment on Feather STM32F405 Express board.
2021-07-26 09:00:11 -05:00
evildave666
f059bab253 Modify mpconfigboard.mk to point to the new linker file and re-include modules 2021-07-26 14:13:41 +09:00
evildave666
57c6279b40 Added new linker file 2021-07-26 13:59:25 +09:00