Jeff Epler
b1592564b2
displayio: Fix matrixportal crash
...
An RGBMatrix has no bus and no bus_free method. It is always possible
to refresh the display.
This was not a problem before, but the fix I suggested (#3449 ) added
a call to core_bus_free when a FramebufferDisplay was being refreshed.
This was not caught during testing.
This is a band-aid fix and it brings to light a second problem in which
a SharpDisplay + FrameBuffer will not have a 'bus' object, and yet does
operate using a shared SPI bus. This kind of display will need a
"bus-free" like function to be added, or it can have problems like
#3309 .
2020-10-02 15:07:36 -05:00
Scott Shawcroft
be6e6eabd2
Merge pull request #3449 from FoamyGuy/sdcard_odb_fix
...
Sdcard odb fix
2020-10-01 10:13:13 -07:00
FoamyGuy
422a7d4013
remove remaining top level displayio background check
2020-09-30 17:25:58 -05:00
FoamyGuy
d1bda47d94
removing top level displayio background check
2020-09-30 14:03:03 -05:00
Mark Roberts
ef245ef54e
Removed redundant subrectangle sizing code
2020-09-30 11:06:13 -07:00
Mark Roberts
9f19a8a760
Ran pre-commit locally
2020-09-30 11:06:13 -07:00
mdroberts1243
b1e1237887
Merge branch 'main' into New_quirk_for_SH1107
2020-09-28 19:40:47 -04:00
Mark Roberts
b921543571
Requested changes take 1
2020-09-25 21:27:29 -04:00
Mark Roberts
19dbff67f2
Fixed page set mask to be four bits!
2020-09-25 00:26:39 -04:00
Mark Roberts
06a3d15266
Mostly-working-version with comments
2020-09-24 22:07:33 -04:00
Mark Roberts
5a176c2c67
Removed redundant send of page setting
2020-09-22 13:41:25 -04:00
root
dbf8a9ad69
Changed delay calls to avoid conflicts with qspi_disable
2020-09-22 10:25:31 -05:00
Mark Roberts
5536e574db
Changes to compile cleanly
2020-09-21 22:08:16 -04:00
Mark Roberts
08189edf24
Quirk coded up for ...set_region_to_update
2020-09-21 21:07:42 -04:00
FoamyGuy
ff1a90a9c3
Merge branch 'adafruit_main' into sdcard_odb_fix
2020-09-21 17:58:05 -05:00
Mark Roberts
f21dc253e0
Initial commit bool column_and_page_addressing
2020-09-21 18:42:16 -04:00
Lucian Copeland
e504438fd2
Remove unlicensed file, fix reset pin type check
2020-09-14 11:58:13 -04:00
Lucian Copeland
ecc219fe50
Merge remote-tracking branch 'upstream/main' into esp32-displayio-fix
2020-09-14 10:44:31 -04:00
FoamyGuy
e114b5ab54
fixes showing OnDiskBitmap with adafruit_sdcard
2020-09-11 21:37:00 -05:00
Kevin Matocha
37e85aebd2
Fix off-by-one error, simplify the logic, add comments
2020-09-10 21:34:03 -05:00
Lucian Copeland
f95ad7b27c
Fix reset pin null reference, construct error null reference
2020-09-10 15:37:43 -04:00
Kevin Matocha
d600759bc8
Utilize MIN and MAX functions from py/misc.h
2020-09-08 20:02:34 -05:00
Kevin Matocha
297b7195b0
Delete unnecessary comment
2020-09-04 22:03:57 -05:00
Kevin Matocha
95db456a7e
Add final newline
2020-09-04 14:23:53 -05:00
Kevin Matocha
9edad9ea85
Delete trailing blank lines from Shape.c
2020-09-04 14:21:49 -05:00
Kevin Matocha
f7714649ee
Add dirty rectangle tracking to Shape display element
2020-09-04 14:15:15 -05:00
Kevin Matocha
fc513956be
Update refresh to force immediate redraw with display.refresh() or display.refresh(target_frames_per_second=None), even with auto_refresh=False
2020-09-01 09:36:29 -05:00
Scott Shawcroft
1527a3ce92
Merge remote-tracking branch 'adafruit/main' into add_pwmio
2020-08-24 18:25:18 -07:00
Kevin Matocha
a9f6d147c4
Merge adafruit/main latest
2020-08-21 14:37:32 -05:00
Kevin Matocha
7e529ed4c5
Merge with latest adafruit/main
2020-08-21 14:28:24 -05:00
Kevin Matocha
3753ea3cd8
Merge remote-tracking branch 'source/main' into main
2020-08-21 14:19:58 -05:00
Kevin Matocha
24ca133396
Updating main to adafruit/main
2020-08-21 14:19:28 -05:00
Scott Shawcroft
5771be9510
Merge pull request #3292 from jepler/allocate_display_bus_bug
...
allocate_display_bus: fix bug where in-use bus would be returned
2020-08-21 11:19:50 -07:00
Scott Shawcroft
6857f98426
Split pulseio.PWMOut into pwmio
...
This gives us better granularity when implementing new ports because
PWMOut is commonly implemented before PulseIn and PulseOut.
Fixes #3211
2020-08-18 13:08:33 -07:00
Jeff Epler
f2f18da189
Fix build error for !SHARPDISPLAY
2020-08-18 10:59:55 -05:00
Jeff Epler
0bec39118f
displayio: Don't need to specialcase reset of sharpdisplay framebuffer
...
.. for the case where the bus was not in use
2020-08-18 09:32:28 -05:00
Jeff Epler
6d2d36db3d
Finish implementing scott's suggestion
2020-08-17 21:09:21 -05:00
Jeff Epler
6425a411ca
Update shared-module/displayio/__init__.c
...
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2020-08-17 21:07:24 -05:00
Jeff Epler
1ccd2e234f
allocate_display_bus: fix bug where in-use bus would be returned
2020-08-17 10:48:23 -05:00
Kevin Matocha
fc1347ac2a
deleted whitespace
2020-08-14 13:37:06 -05:00
Kevin Matocha
ba5dedc1df
deleted whitespace
2020-08-14 13:37:06 -05:00
Kevin Matocha
b1fce9e933
Deleted trailing whitespace
2020-08-14 13:36:59 -05:00
Kevin Matocha
a66ef32da2
Added inclusive indexing for x2,y2, fixed default value handling for x1,y1, added bitmap palette comparison
2020-08-14 13:15:01 -05:00
Margaret Matocha
824f47d6e9
Added bitmap.blit function for bitmap slice copy
2020-08-14 12:59:57 -05:00
Margaret Matocha
4ba9ff892c
Added bitmap.blit function for copying slices of bitmaps
2020-08-14 12:59:48 -05:00
Jeff Epler
759ded9c38
Fix build errors when SHARPDISPLAY && !RGBMATRIX
2020-08-12 07:39:12 -05:00
Jeff Epler
c1400bae9b
sharpmemory: Implement support for Sharp Memory Displays in framebufferio
2020-08-12 07:32:18 -05:00
Margaret Matocha
b6008d0032
Adding bitmap.insert to copy a slice of a source bitmap into another bitmap
2020-08-07 15:59:42 -05:00
Margaret Matocha
64c9baa6aa
Added bitmap.insert function for slice copy into a bitmap from another bitmap
2020-08-07 15:46:00 -05:00
Jeff Epler
c243c13f02
framebufferio: Handle auto refresh flag at reset
...
if we don't set the flag via accessor fn the tick enable might become wrong
2020-07-20 08:52:35 -05:00
Jeff Epler
af520729fe
displayio, framebufferio: Enable supervisor tick when a display is auto-refresh
...
This is a step towards restoring the efficiency of the background
tasks
2020-07-15 09:26:47 -05:00
Jeff Epler
fcddfd0f39
Merge pull request #3083 from tannewt/esp32s2_busio
...
Add busio support for the ESP32-S2
2020-07-01 21:02:08 -05:00
Scott Shawcroft
ed6e81d688
Switch SPI to polling DMA and enable displayio
2020-06-24 13:10:08 -07:00
DavePutz
058c16e98c
Issue #3014 - refresh after changing to transparent
...
Adding self->needs_refresh = true; in common_hal_displayio_palette_make_opaque() and common_hal_displayio_palette_make_transparent()
2020-06-10 17:11:28 -05:00
Diego Elio Pettenò
dd5d7c86d2
Fix up end of file and trailing whitespace.
...
This can be enforced by pre-commit, but correct it separately to make it easier to review.
2020-06-03 10:56:35 +01:00
warriorofwire
58c8e00745
vectorio: clean up after group removal
...
VectorShape tells the Group to redraw whatever it left behind when it is removed now.
2020-05-10 15:36:23 -07:00
warriorofwire
6660311a96
vectorio: respect display transpose and mirror.
...
VectorShape now just uses the Group's and Display's absolute transforms.
2020-05-10 14:18:13 -07:00
warriorofwire
4086600b61
vectorio: switch per-shape transform to Display
...
Rather than maintain a transform per-shape, we'll just use whatever
settings are on the Display. Currently only transpose is done.
2020-05-09 22:15:51 -07:00
warriorofwire
206d0e598a
Add vectorio: for drawing shapes
...
vectorio builds on m4 express feather
Concrete shapes are composed into a VectorShape which is put into a displayio Group for display.
VectorShape provides transpose and x/y positioning for shape implementations.
Included Shapes:
* Circle
- A radius; Circle is positioned at its axis in the VectorShape.
- You can freely modify the radius to grow and shrink the circle in-place.
* Polygon
- An ordered list of points.
- Beteween each successive point an edge is inferred. A final edge closing the shape is inferred between the last
point and the first point.
- You can modify the points in a Polygon. The points' coordinate system is relative to (0, 0) so if you'd like a
top-center justified 10x20 rectangle you can do points [(-5, 0), (5, 0), (5, 20), (0, 20)] and your VectorShape
x and y properties will position the rectangle relative to its top center point
* Rectangle
A width and a height.
2020-05-09 15:38:22 -07:00
hierophect
c311b5c002
Merge pull request #2842 from hierophect/stm32-h7-displayio
...
STM32: Add displayio to F7/H7
2020-05-05 12:37:08 -04:00
Lucian Copeland
61b0994631
Fix flag typo
2020-05-01 14:46:06 -04:00
Lucian Copeland
4f71bd295d
Make PulseIO optional within DisplayIO
2020-04-30 14:47:50 -04:00
Scott Shawcroft
bebf27e733
Merge remote-tracking branch 'adafruit/master' into lower_power
...
This isn't perfect and needs a bit more testing.
2020-04-20 18:25:13 -07:00
Jeff Epler
5fcc6d6286
RGBMatrix: finish renaming from Protomatter
...
This gets all the purely internal references. Some uses of
protomatter/Protomatter/PROTOMATTER remain, as they are references
to symbols in the Protomatter C library itself.
2020-04-17 18:44:07 -05:00
Jeff Epler
3d6258f63d
Rename Protomatter -> RGBMatrix
...
This is a quick rename, it changes the user-facing names but not the
internal names of things.
2020-04-17 18:43:57 -05:00
Jeff Epler
a32337718d
Rename _protomatter -> protomatter
...
I originally believed that there would be a wrapper library around it,
like with _pixelbuf; but this proves not to be the case, as there's
too little for the library to do.
2020-04-17 18:43:57 -05:00
Scott Shawcroft
b580b34cbf
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-14 17:14:44 -07:00
Jeff Epler
d8362ef654
displayio: swap colors in palettes too
...
.. change the in-rom palette to be in RGB565 order
2020-04-14 18:25:00 -05:00
Jeff Epler
5dae23c0e7
protomatter: release the protomatter object during release_displays()
2020-04-14 18:24:58 -05:00
Jeff Epler
1f3821220e
fix build for non-displayio & non-protomatter targets
2020-04-14 18:24:58 -05:00
Jeff Epler
3a94412cd3
protomatter: more memory allocation fixes
...
- bump supervisor alloc count by 4 (we actually use 5)
- move reconstruct to after gc heap is reset
- destroy protomatter object entirely if not used by a FramebufferDisplay
- ensure previous supervisor allocations are released
- zero out pointers so GC can collect them
2020-04-14 18:24:58 -05:00
Jeff Epler
09dc46a984
Add Protomatter and FramebufferDisplay
2020-04-14 18:24:54 -05:00
Jeff Epler
8cba145c90
displayio: implement, use allocate_new_display_bus_or_raise
2020-04-14 18:24:54 -05:00
Jeff Epler
6378d600c4
displayio: implement, use allocate_display_or_raise
2020-04-14 18:24:54 -05:00
caternuson
a9fb34eb93
make packed word and copy it in
2020-04-13 16:48:27 -07:00
caternuson
dc75746842
add docstring, clean up
2020-04-09 08:59:26 -07:00
caternuson
49fff2d9b4
initial working fill
2020-04-09 08:43:50 -07:00
Scott Shawcroft
4ee6754ccd
Save backlight_on_high correctly.
...
Fixes #2750
2020-04-08 10:32:54 -07:00
Scott Shawcroft
8fe512c7e9
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-03-31 15:13:58 -07:00
Jeff Epler
54e8c63b4f
Merge pull request #2730 from tannewt/fix_fourwire_phase_polarity
...
Add polarity and phase to FourWire.
2020-03-28 07:28:37 -05:00
siddacious
9e0c00dfd4
adding a backlight polarity flag to Display
2020-03-25 22:51:20 -07:00
Scott Shawcroft
6b7acc65b6
Add polarity and phase to FourWire.
...
It was fixed as 0/0 even though it used to get it from the current
SPI state. This makes it more explicit with kwargs.
Thanks to magpie_lark and kmatocha on the Adafruit Support forum
for finding the issue: https://forums.adafruit.com/viewtopic.php?f=60&t=162515
2020-03-25 11:22:46 -07:00
Scott Shawcroft
6f60afe8c5
First try at lowering the power consumption
2020-03-13 11:12:30 -07:00
Lucian Copeland
3c86005546
Implement requested changes
2020-01-28 17:11:25 -05:00
Lucian Copeland
70932cab42
Simplify the flash-display conflict fix
2020-01-24 14:33:28 -05:00
Lucian Copeland
2afca4e942
Fix flash-display conflict error
2020-01-24 14:25:36 -05:00
Jeff Epler
a63da7a6c0
displayio: make 'rotation' property settable
2019-12-16 15:23:41 -06:00
Hierophect
ab74f45bfb
Define polarity and phase in Fourwire
2019-12-05 11:44:21 -05:00
Jeff Epler
95d9c49e43
Merge remote-tracking branch 'origin/master' into tick-refactor
2019-11-29 11:27:09 -06:00
Scott Shawcroft
d32dc814d3
Fix ePaper so it works after a GC.
...
We weren't correctly collecting the start and stop sequences. As
a result, the GC would free the space and allocate other info
there.
Thanks to JacobT on Discord for the bug report!
2019-11-26 12:48:36 -08:00
Jeff Epler
7f744a2369
Supervisor: move most of systick to the supervisor
...
This code is shared by most parts, except where not all the #ifdefs
inside the tick function were present in all ports. This mostly would
have broken gamepad tick support on non-samd ports.
The "ms32" and "ms64" variants of the tick functions are introduced
because there is no 64-bit atomic read. Disabling interrupts avoids
a low probability bug where milliseconds could be off by ~49.5 days
once every ~49.5 days (2^32 ms).
Avoiding disabling interrupts when only the low 32 bits are needed is a minor
optimization.
Testing performed: on metro m4 express, USB still works and
time.monotonic_ns() still counts up
2019-11-18 11:01:23 -06:00
Hierophect
de5691acf5
Add never_reset and reset to pin common hal, adjust files
2019-11-15 12:47:00 -05:00
Melissa LeBlanc-Williams
39b38256fd
Fixed I2CDisplay reset issue
2019-11-08 12:35:35 -08:00
Scott Shawcroft
6ad860a963
Merge pull request #2101 from matthewnewberg/display_io_dither
...
Add random dithering to ColorConverter
2019-09-09 10:11:07 -07:00
Matthew Newberg
4604a69498
Move dither parameter to ColorConverter constructor and parameter
2019-09-05 21:55:45 -04:00
Matthew Newberg
3ab6a23434
Removed unused return value in displayio_colorconverter_convert
2019-09-04 20:42:24 -04:00
Scott Shawcroft
70407e4d87
Bitpack bools in TileGrid and Group
2019-09-04 10:27:21 -07:00
Scott Shawcroft
949f8761b8
Add .hidden to TileGrid and Group
...
This allows for one to preserve ordering within a Group while
hiding something temporarily.
Fixes #1688
2019-09-03 16:15:27 -07:00
Scott Shawcroft
b53f169824
Fix I2CDisplay bus_free to not grab lock
...
Fixes #2098
2019-09-03 14:46:47 -07:00
Dave Astels
b318896b85
Capture rotation
2019-09-03 12:35:41 -04:00