Commit graph

75 commits

Author SHA1 Message Date
Henner Zeller
3f47b57598 o Update documentation. 2016-12-16 10:24:42 -08:00
Henner Zeller
fe67391222 o Provide a flag printing option. 2016-12-15 17:16:41 -08:00
Henner Zeller
1a0b3e800f o Smallish documentation updates. 2016-11-01 09:14:39 -07:00
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
cc96e209c6 o C-API: Report back options actually used. 2016-09-16 18:24:34 -07:00
Henner Zeller
e10f9f00fa o Make sample section simpler to ignore with simple comment skipper. 2016-09-14 09:47:44 -07:00
Henner Zeller
6f2209eb37 o Add led_matrix_create_from_options() that provides the freedom to
set any option that is also available in the C++ part.
o Also, provide the command line parsing of the --led-* flags.
o Make header parseable down to C89 (no // comments).
2016-09-13 22:03:15 -07:00
Henner Zeller
2c1df4a5cb o Rename hardware pulsing flag to be disable_hardware_pulsing
instead of allow_hardware_pulsing. A little easier to understand and also
  reflects 'an off bit is the default'.
2016-09-13 20:51:05 -07:00
Henner Zeller
4c2a013716 o Make the LargeSquare64x64Transformer more universal, so that it
can work with any even-numbered long chain. Also allow for parallel
  chains.
2016-09-04 20:50:23 -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
97247b7698 o Update documentation. 2016-08-25 09:46:18 -07:00
Henner Zeller
4ade855471 o for parsing flags and creating matrix from options, don't make
parameters optional.
2016-08-23 20:20:59 -07:00
Henner Zeller
ddf446d952 o Separate out flag parsing and creation of matrix into separate
functions to call.
2016-08-23 19:41:00 -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
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
d5286000ce o add the concept of RuntimeOptions. This contins the daemon, drop-privs
and gpio slowdown values.
o Add gpio slowdown to the values that can be modified programmatically
  and with flags.
o Have the default flags passed into CreateMatrixFromFlags() also be
  an output value, so that the settings read from the flags can be
  used back in the user program.
2016-08-21 15:58:23 -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
51db6ce6d0 o Better documentation and more flexibility with daemon option. 2016-08-21 10:57:48 -07:00
Henner Zeller
7557c40e17 o Add some common runtim options (--led-daemon, --led-drop-privs)
o Add more options for matrix parameters (--led-brightness, --led-pwm-bits)
2016-08-20 19:26:20 -07:00
Henner Zeller
edce0acadb o Initial parsing of matrix command line options. 2016-08-20 17:25:06 -07:00
Henner Zeller
eb0a10b0f0 o Provide an RGBMatrix::Options struct as input for all parameters.
Preparation to have other parameter tweaks move from #defines to
  runtime options.
2016-08-20 11:10:32 -07:00
Henner Zeller
5543956e8a o SwapOnVSync(): make it possible to choose a fraction of the refresh-rate
as animation timing for applications that want to lock the update
  to the refresh rate.
  Usually, the refresh rate in the several hundred Hz range is not
  as useful for that.

  Adds a feature that emerged in a discussion in issue #184.
2016-07-26 20:55:40 -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
409d7bd3ce o Add a C-API (experimental right now, don't use yet)
o Provide a shared library
2016-05-05 08:29:51 -07:00
Henner Zeller
a559db250b o Allow to separate setting GPIO initialization from thread starting
(but keep same defaults).
2016-02-14 11:12:55 +00:00
Henner Zeller
90283819e5 o minor style issues. 2015-12-01 22:33:15 -08:00
Ian Foster
d7fd1fb561 o Added support for background colors on DrawText and DrawGlyph
o Make the versions with the background the default functions, keep
  the old versions merely for compatibility.
2015-12-01 22:30:55 -08:00
Yaroslav Halchenko
2f5ce9c6ea DOC: no LargeSquare64x64Canvas anymore -- dealing with LargeSquare64x64Transformer 2015-11-12 16:03:48 -05:00
Henner Zeller
b754be39d3 o Make it a parameter of Thread::Start() to choose an affinity mask. 2015-10-12 02:17:14 +00:00
Henner Zeller
08023d418a o Bind display refresh to one CPU core to avoid flicker-inducing kernel
jumpiness.
2015-10-12 00:33:36 +00:00
Henner Zeller
6890187140 o Make sure that no copy-constructor is used for Font. 2015-09-29 23:59:25 -07:00
Henner Zeller
6d2383c6b6 o Make ThreadedCanvasManipulator restartable (fixes #60) 2015-09-13 16:26:31 -07:00
Henner Zeller
246becad2e o Add a way to slow down even more. 2015-09-13 14:08:22 -07:00
Henner Zeller
cf252fbf4a o Proper brightness clipping and documentation added. 2015-08-15 11:55:07 +02:00
Henner Zeller
cc49ab7418 o Some stylistic changes. 2015-07-27 18:11:11 -07:00
Saij
7a0da0e136 o Add new transformers to provide logical Canvases that are transformed
before writing to another physical Canvas.
   - RotateTransformer: rotates by multiple of 90 degrees
   - LargeSquare64x64Transformer: does the 64x64 conversion from
     earlier examples
   - LinkedTransformer allows to have a sequence of transformers
     applied.
o Provide a flag in demo-main to influence rotation.
2015-07-23 23:42:21 -07:00
Henner Zeller
bbfdecc6a1 Merge branch 'experimental-pwm-bit' 2015-07-19 17:18:45 -07:00
Henner Zeller
be8c4e6e55 o Make gpio-bit writing more inline-able. 2015-07-19 12:47:03 -07:00
Henner Zeller
83b8bf4bc2 o Add CanvasTransformer interface as common base for objects
that want to provide canvas manipulations.
2015-07-09 00:13:53 -07:00
Henner Zeller
8ad4a616b8 Merge branch 'master' into experimental-pwm-bit 2015-07-06 20:18:30 -07: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
5e591b27b6 o Send pulses asynchronously and wait later.
o document deficiencies for fixing.
2015-06-14 08:37:30 +00:00
Henner Zeller
20beaa1510 o Some comment clarifications. 2015-06-13 20:51:32 +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
ef4151c2a5 o small code style fixes. 2015-04-06 21:42:13 -07:00
root
6474b43217 Added DrawCircle and DrawLine
api updated for color
2015-04-06 22:29:35 +02:00
Henner Zeller
cde792d762 o Make slowdown of GPIO switchable. Make it default off, because the
old Raspberry Pis should typically do fine (but their performance hurts
  a lot if this is switched on).
o Exposes the setting experimentally added in issue #16 in the Makefile.
o Update README describing what to do in these cases and how to switch
  it on.
2015-03-04 23:08:43 -08:00
Henner Zeller
d398dffdc8 o Add Double and Multi-buffering and atomic swap on VSync. 2015-03-04 21:55:52 -08:00