Commit graph

113 commits

Author SHA1 Message Date
9bd7813dc3 Add rudimentary multi-connector support to fbmirror as well 2025-03-10 09:53:34 -05:00
2442bee476 Make temporal dithering schedules actually work
10/4 planes gives 100fps on the active3 spiral demo on 3 64x64 panels, or
1.2 megapixels/second. And to my eye, there's no brightness shimmer.

All the below settings "look good" to my eye, higher FPS ones tend to look
better to a camera. In "10/4" mode with my camera at 100FPS it still looks
solid but because the beat frequency between the dither pattern and the
shutter is pretty pronounced I can see it shift between the sub-frames.

There's still some brightness variation between modes, with more planes
being a little brighter than fewer planes.

10/0: 50fps
10/2: 72fps
10/4: 100fps

8/0: 92fps
8/2: 109fps
8/4: 134fps

5/0: 135fps
5/2: 153fps
5/4: 210fps
2025-03-10 09:52:00 -05:00
e2c5bc3467 tweak comment & no-temporal check 2025-03-10 08:24:50 -05:00
4f548a318c the rest of the plumbing. now it should be possible to use temporal dither. untested 2025-03-09 19:50:27 -05:00
a5f505241d tidy some build errors 2025-03-09 19:36:50 -05:00
7c7569236b plumb temporal dither most of the way through 2025-03-09 19:33:48 -05:00
68c24fcc00 allow multiple schedules for temporal dithering
(however, there's no code yet to generate such schedules)
2025-03-09 14:04:13 -05:00
39bc663b26 introduce pixel schedules 2025-03-09 13:46:37 -05:00
25c324dd7d run pre-commit and commit formatting change 2025-03-07 11:43:03 -06:00
4fba6a6ee3 Merge remote-tracking branch 'origin/main' into make-package 2025-03-07 11:42:44 -06:00
foamyguy
2b7a9c6d61
Merge pull request #26 from FoamyGuy/virtual_display_withkeyboard
virtualdisplay_keyboard example
2025-03-07 10:04:00 -06:00
65b8b6fbf6 A variant spiral demo now works on active3!
.. with 3 64x64 panels.
2025-03-07 10:02:41 -06:00
296047a806 Allow using fewer than all the lanes
It's always the lowest numbered lanes. So now you can at least run
the first lane of an Active3 with a standard matrix map
2025-03-06 14:24:19 -06:00
274adf1805 Improve error reporting when address lines wrong
Before, a weird error would be shown because of the blitter thread
destructor running.
2025-03-06 14:23:30 -06:00
cfec6060d8 WIP support more RGB out pins 2025-03-06 13:49:48 -06:00
d008684e5d Add active3 pinout (only first connector works) 2025-03-06 13:49:24 -06:00
d26bba84ba Update ruff config
I saw this warning on the terminal...
2025-03-06 10:17:35 -06:00
4ffb57c3d5 Reorganize includes per ruff's preferences 2025-03-06 10:17:11 -06:00
47226cf246 Move the click options into the piomatter package 2025-03-06 10:13:27 -06:00
97d5a4454d Allow passing in the matrix map directly to a Geometry object 2025-03-06 10:12:17 -06:00
cab2d4293d Move everything to a package structure 2025-03-06 10:12:17 -06:00
foamyguy
f627e654fb requirements sort 2025-03-04 10:56:29 -06:00
foamyguy
86070bb49a virtualdisplay_keyboard example 2025-03-04 10:38:44 -06:00
foamyguy
749734085b
Merge pull request #23 from adafruit/pyvirtualdisplay-example
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Pyvirtualdisplay example
2025-02-26 09:27:15 -06:00
9b54dd1431 fix copypaste error
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
2025-02-25 11:09:35 -06:00
ebefcce1c3 new example 2025-02-25 11:09:30 -06:00
419f3f7eb7
Merge pull request #21 from FoamyGuy/docs_updates
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Docs updates
2025-02-15 14:43:59 -06:00
foamyguy
c0150816d2
Merge pull request #22 from adafruit/fix-module-name
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Change module name
2025-02-13 10:21:14 -06:00
60ae2029b9 Change module name
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Change all references from adafruit_raspberry_pi5_piomatter to
adafruit_blinka_raspberry_pi5_piomatter.

Closes #20
2025-02-13 09:50:37 -06:00
foamyguy
15942f5c74 argument docstrings for PioMatter init 2025-02-12 12:21:12 -06:00
foamyguy
19706d79b9 add rotation to Geometry init docstring 2025-02-12 11:40:27 -06:00
985d72ceb9
Merge pull request #18 from FoamyGuy/updating_examples
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Updating examples for newer init API
2025-02-11 09:39:49 -06:00
foamyguy
248c59ae2a remove unused import 2025-02-10 16:32:30 -06:00
foamyguy
c886a13fd6 add colorspace and pinout to auto generated docs 2025-02-10 16:31:02 -06:00
foamyguy
22ad9aa7df update examples to use PioMatter() init. update fbmirror_scaled to use the click wrapper. remove colorspace as an argument and hardcode it in the examples. 2025-02-10 16:14:02 -06:00
foamyguy
dd77450f15
Merge pull request #14 from adafruit/bgr-panel-support
Some checks are pending
Pip / build (ubuntu-24.04-arm, 3.11) (push) Waiting to run
Pip / build (ubuntu-24.04-arm, 3.12) (push) Waiting to run
Pip / build (ubuntu-24.04-arm, 3.13) (push) Waiting to run
pre-commit / pre-commit (push) Waiting to run
Wheels / Build SDist (push) Waiting to run
Wheels / Wheels on ubuntu-24.04-arm (push) Waiting to run
Wheels / Upload release (push) Blocked by required conditions
Support swapped (bgr) matrices
2025-02-10 09:49:04 -06:00
1a3f5d4ebe examples: Add common argument parsing code, use it in fbmirror
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Now you can set most anything you'd want from the commandline:

```
Usage: fbmirror.py [OPTIONS]

Options:
  --x-offset INTEGER              The x offset of top left corner of the
                                  region to mirror
  --y-offset INTEGER              The y offset of top left corner of the
                                  region to mirror
  --num-address-lines INTEGER     The number of address lines used by the
                                  panels
  --num-planes INTEGER            The number of bit planes (color depth. Lower
                                  values can improve refresh rate in frames
                                  per second
  --orientation [Normal|R180|CCW|CW]
                                  The overall orientation (rotation) of the
                                  panels
  --pinout [AdafruitMatrixBonnet|AdafruitMatrixBonnetBGR|AdafruitMatrixHat|AdafruitMatrixHatBGR]
                                  The details of the electrical connection to
                                  the panels
  --colorspace [RGB888Packed|RGB888|RGB565]
                                  The memory organization of the framebuffer
  --serpentine / --no-serpentine  The organization of multiple panels
  --height INTEGER                The panel height in pixels
  --width INTEGER                 The panel width in pixels
  --help                          Show this message and exit.
```

It might would be good to apply this generally across the examples.
2025-02-09 10:28:26 -06:00
d27897fd18 add an example for the 64x64 matrix 2025-02-09 10:27:12 -06:00
f33e9ca82e Format code with pre-commit 2025-02-09 10:27:12 -06:00
a2f1470548 fix ignore of files in top level 2025-02-09 10:27:12 -06:00
9eafd20e9d Support swapped (bgr) matrices
& add enumerated types so there's not an explosion of constructors in
the Python code.
2025-02-09 10:27:12 -06:00
2cd187da15
Merge pull request #11 from adafruit/rtd-config
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
add readthedocs conf
2025-02-06 10:11:22 -06:00
65c9942bb8 add readthedocs conf
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
2025-02-06 10:08:32 -06:00
foamyguy
a857bb6b38
Merge pull request #10 from FoamyGuy/learn_guide_link
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
learn guide link
2025-02-05 11:05:37 -06:00
foamyguy
ae6cfb83ec learn guide link 2025-02-05 11:00:49 -06:00
foamyguy
00101f6668
Merge pull request #9 from FoamyGuy/various_touchups
Some checks failed
Pip / build (ubuntu-24.04-arm, 3.11) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.12) (push) Has been cancelled
Pip / build (ubuntu-24.04-arm, 3.13) (push) Has been cancelled
pre-commit / pre-commit (push) Has been cancelled
Wheels / Build SDist (push) Has been cancelled
Wheels / Wheels on ubuntu-24.04-arm (push) Has been cancelled
Wheels / Upload release (push) Has been cancelled
Various touchups
2025-02-04 17:17:11 -06:00
foamyguy
5452337f38 fbmirror.py args fix 2025-02-04 12:10:53 -06:00
foamyguy
502beb6cda animated gif example 2025-02-04 10:08:27 -06:00
foamyguy
33b8041ef6 font color var, normal rotation, fix margin 2025-02-04 08:50:20 -06:00
foamyguy
c3675b74bd fix rotation, use smaller size pen 2025-02-04 08:38:36 -06:00