Commit graph

58 commits

Author SHA1 Message Date
Henner Zeller
b68d100ae0 o Next step in avoiding the need to re-compile: make hardware GPIO
mapping choosable at run-time (and hence: via command line flag).
  Now, Adafruit HAT users don't have to recompile.
2016-10-13 12:51:49 -07:00
Henner Zeller
8462ca7cd6 o Catch a common misconfiguration: Setting ADAFRUIT_RGBMATRIX_HAT_PWM
but forgetting to set HARDWARE_DESC=adafruit-hat
2016-09-14 09:35:09 -07:00
Henner Zeller
816b30d67e o Introduce the concept of a StaticTransformer: this is a transformer
that is applied at the beginning and permanently modifies the internal
  pixel mapping without the need for function calls at runtime.
o This fixes the confusing case that a FrameCanvas does not by default
  get the features of a CanvasTransformer.
o The old transformer interface is kept for backwards compatibility.
  (we might think of having that simplified with a callback function
   or something).
o The new function call is ApplyStaticTransformer(); the old methods
  SetTransformer() and transformer() are still supported but clearly
  marked deprecated.
o This is in preparation to provide different multiplexing (for outdoor
  panels) and have an easier way to provide a transformer in Python.
2016-09-04 13:01:32 -07:00
Henner Zeller
4db2faf420 o Prepare PixelMapper to be shared between frame buffers,
owned by RGBMatrix
2016-09-04 09:14:01 -07:00
Henner Zeller
6ac91ddfb6 o Remove a couple of branches to speed up things even though
we now control a lot of stuff with runtime flags instead of
  compile-time #ifdef's
2016-09-03 18:51:40 -07:00
Henner Zeller
b4b511a459 o Make brightness-lookup less expensive. 2016-09-03 17:52:54 -07:00
Henner Zeller
f083838032 o Prepare framebuffer for easier central pixel mapping.
o Preprocessing color bits resulted in pixel-setting 12% faster.
2016-09-03 17:19:35 -07:00
Henner Zeller
c42e94ffce o Detect old configuration settings and hint to new way. 2016-08-23 08:53:44 -07:00
Henner Zeller
810c54f849 o Allow hardware pin pulsing select also to be set programmatically
and via flag.
2016-08-21 20:01:51 -07:00
Henner Zeller
480af6cc1a o Move pinout definitions in a hardware subdirectory. 2016-08-21 19:26:54 -07:00
Henner Zeller
85e707116f o Allow to choose the lsb pwm nanoseconds on the command line. 2016-08-21 17:02:54 -07:00
Henner Zeller
6d26807d88 o Making dropping privileges the default.
o Make it possible to select scan mode programmatically.
2016-08-21 16:24:29 -07:00
Henner Zeller
b664571c3d o Allow to set a default options for the CreateMatrixFromFlags().
o Allow to set show-refresh-rate, inverse-colors and green-blue
  swap programmatically. That way, nobody has to re-compile just for
  these options, which makes things more easy to distribute as library.
  also: Make these flags.
2016-08-21 12:54:45 -07:00
Henner Zeller
2543e732da o First step: moving out hardware descriptions. 2016-08-10 10:01:38 -07:00
Henner Zeller
dc67b42aa4 o Minimize dark-time for longer display chains (addresses
issue #180).
o Expose the LSB pwm time as a settable #define
o Update documentation for various #defines in lib/Makefile
2016-07-23 16:37:04 -07:00
Henner Zeller
3cf3548509 o add an interlaced option. 2016-07-23 09:15:25 -07:00
Henner Zeller
01ec618072 o Fix typo in row-range-check message. 2016-05-08 09:02:57 -07:00
Henner Zeller
6c67391c19 o Add support for 'E' line (addresses #120)
o (does not yet address adapter PCBs. Awaiting feedback where the
  outputs usually are).
2016-05-05 10:31:14 -07:00
Henner Zeller
a9345e1861 o Make it configurable to only have one sub-panel per panel, as some
older panels provide that. Fixes #96
2015-12-05 13:01:23 -08:00
Henner Zeller
e655b7355a o Provide a way to swap green and blue. Some panels out there are
broken that way.
  Fixes #58
2015-12-02 07:35:37 +00:00
Henner Zeller
b05713876e o Fix weird indentation. 2015-10-12 21:44:44 -07:00
Henner Zeller
cf252fbf4a o Proper brightness clipping and documentation added. 2015-08-15 11:55:07 +02:00
Lutz Wolf
eedaf12e3b Allow Hardware PWM with Adafruit HAT 2015-08-02 01:32:23 +02:00
Henner Zeller
f79d48eab8 o Make Adafruit HAT compile again. Adresses #51 2015-07-25 08:49:13 -07:00
Henner Zeller
b59f83828d o Choose a base PWM value that is good enough in 'classic' wiring as well
(Maybe this should be configurable).
2015-07-19 18:03:51 -07:00
Henner Zeller
5253075725 o Make multi-parallel the default. 2015-07-19 13:39:09 -07:00
Henner Zeller
9e03ed91f0 o Make the PWM pinout the new 'default' pinout, but leave the
old pinout accessible with RGB_CLASSIC_PINOUT
2015-07-19 13:23:14 -07:00
Henner Zeller
f9966431ff Merge branch 'master' into experimental-pwm-bit 2015-07-06 20:37:27 -07:00
Henner Zeller
c88c965330 o Fix luminance array access. 2015-07-06 20:36:37 -07:00
Henner Zeller
8ad4a616b8 Merge branch 'master' into experimental-pwm-bit 2015-07-06 20:18:30 -07:00
Saij
07225c9b87 Fixed typos 2015-07-06 18:42:28 +02:00
Saij
f5e779ae05 Remove -j parameter (doesn't exist anymore)
Implemented SetBrightness function
Rewritten SetBrightness function (only first idea at the moment)
Use CIE1931 to modify brightness
Adding new function to python bindings
Fixed bug with CIE1931 lookup
- Adding brightness control to python library
- Adding new python sample for brightness control
Fixed bug without CIE1931 correction
Fixed typings
2015-07-06 09:28:12 +02:00
Henner Zeller
c4f55fc903 o PWM bit allows faster switching. 2015-07-02 03:16:35 +00:00
Henner Zeller
c98da275a2 Merge branch 'master' into experimental-pwm-bit 2015-07-01 06:08:48 +00:00
Henner Zeller
17ce9896ad o Work around namespace weirdness only showing with clang++
o Don't use parallel_ instance variable if never used.
2015-06-30 23:06:03 -07:00
Henner Zeller
5e591b27b6 o Send pulses asynchronously and wait later.
o document deficiencies for fixing.
2015-06-14 08:37:30 +00:00
Henner Zeller
0f45810cf4 Merge branch 'master' into experimental-pwm-bit 2015-06-13 18:52:44 +00:00
Henner Zeller
d67dd02d09 o Fix initialization of pin-pulser.
o Better fix for #32
2015-06-13 18:41:35 +00:00
Henner Zeller
d6afe7926a o work in progress: proposed new pinout, making sure pin18 is PWM pin
and while at it, shuffling other bits around.
2015-06-01 01:42:00 +00:00
Henner Zeller
273b294d5f o Move the concept of a pin-pulser to a class, so that we can create
different implementations.
2015-05-31 23:47:28 +00:00
Henner Zeller
b57459be93 o Generally break out row-bits to make it easier to shuffle around
(also, simplifies as some #ifdefs can go.)
2015-05-31 21:40:20 +00:00
Henner Zeller
cb9df7bb13 o Fix some whitespace issues. 2015-03-07 19:36:35 -08:00
Henner Zeller
6252d0a386 o combine some unneeded fields into unused.
o Warn is both, the HAT support and parallel support are enabled.
2015-03-06 18:53:42 -08:00
Roger Guess
ae8089d9bf Provide Adafruit HAT support that has a different GPIO mapping.
Contributed by Roger Guess
2015-03-06 18:48:07 -08:00
Henner Zeller
948094211c o Simplify the MULTI_PARALLEL setup. Previously it was a bit confusing
that it worked with 2 parallel, but not 3. Now, default is 1 (as
  it used to be) and with MULTI_PARALLEL switched on, 2 and 3 is allowed
  as well.
2015-03-04 23:47:32 -08:00
Henner Zeller
d398dffdc8 o Add Double and Multi-buffering and atomic swap on VSync. 2015-03-04 21:55:52 -08:00
Henner Zeller
7785d65982 o doc update. 2015-03-02 10:29:12 -08:00
Henner Zeller
63399d1601 o Add support for a third parallel chain. 2015-03-01 12:24:57 -08:00
Henner Zeller
083cf4ba70 Merge branch 'parallel-rows' 2015-02-28 23:20:10 -08:00
Henner Zeller
5c168a2170 o Use additional GPIO pins on Plus models and Raspberry Pi 2 to
drive a second parallel chain. 100% more panels for 0% more CPU :)
2015-02-28 23:17:52 -08:00