Commit Graph

1235 Commits

Author SHA1 Message Date
redPanther
b293ea20db build script optimization (#642)
* implement make install
set CMAKE_INSTALL_PREFIX e.g. to /opt to install to /opt/hyperion
set ENABLE_SYSTEM_INSTALL to ON to activate installation
after compiling use
make install
or
make install/strip
(for performance/size optimized binaries - compile in Release to get best performance)

* cleanup cmake files
use
cmake -DINSTALL_PREFIX=/opt/hyperion ..
to install all files to hyperion or
cmake -DINSTALL_PREFIX=/usr/
to install to usr. install folders are linux standard. bin go to bin folder and additionals (effects) go to share/hyperion

* add uninstall target - be patient with that, this will remove files from your system
install service files to share/hyperion - if you want to use them you have to make a symlink to your location of service files

* optimize build release script
install service files into hyperion share folder (services not activated, this must be done by distribution package script)
initial support of cmake option -DPLATFORM= option. This selects platform specific cmake flags. no need for -DENABLE_... options (unless you want some special things)
automatic detect for apple build

* update submodule


Former-commit-id: 5f06f314841810c780c871f810158010d3d2de70
2016-05-22 00:27:06 +02:00
brindosch
19a6bf1ee7 change default effect priority
Former-commit-id: ccdda396083b61c417eaf908b628a2e5a7796ba4
2016-05-18 20:35:52 +02:00
Matthias Reichl
f584b05de5 dispmanx: fix grabber issues with certain widths and support cropping (#634)
* dispmanx: fix grabber issues with certain widths and support cropping

The dispmanx grabber will produce garbage output if the destination
pitch is not set to a multiple of 64 bytes (16 RGBA pixels).

It can also fail when retrieving only a part of the image
(eg in 3DSBS or TAB mode).

Handle these cases by capturing the full image into a separate
buffer with the pitch set to an appropriate value and manually
handle 3D SBS/TAB left/top half copying.

At this point supporting cropping like in the V4L2 grabber is
rather easy and added as well. This'll help handling overscan
setups (old TVs) and removing (possibly asymmetric) overscan
borders.

Cropping is disabled in video capture mode (when the
DISPMANX_SNAPSHOT_FILL flag is set).

Signed-off-by: Matthias Reichl <hias@horus.com>

* hyperion-dispmanx: add optional crop values and 3D mode options

Signed-off-by: Matthias Reichl <hias@horus.com>

* hyperiond: support cropping on the dispmanx grabber

Honor cropLeft, cropRight, cropTop and cropBottom settings in
the framegrabber section of the conf file to control cropping.

Signed-off-by: Matthias Reichl <hias@horus.com>

Former-commit-id: bbb55f6621b90384e417f37da4f2543d112ef57a
2016-05-18 11:26:25 +02:00
Rick164
4ccda40250 Kodi video checker bugifx (#633)
* Kodi video checker patch to make it compliant with recent JSON RPC API specs.

* Updated inline documentation for Kodi video checker.


Former-commit-id: e0760f55e1ddd61f10ae457c485aa01ae4507260
2016-05-17 02:54:10 +02:00
brindosch
04414b11b9 cleanup
Former-commit-id: b2dbb71c420528b78fd374dbcdba36bf4139c1b4
2016-05-15 18:57:16 +02:00
recliq
8310a6d9d0 added simple TPM2.net support to UDP output (#627)
Former-commit-id: 59356ae53c90e178a4bc198c6babc5832bb15d12
2016-05-15 18:39:26 +02:00
penfold42
a960894d14 Another option for Ws2812 - direct spi from the pi with 1 wire (#631)
* Removed -HUP so the default -TERM signal is sent instead.
- hyperiond only listens for TERM and INT. HUP is often used to get an exe to reread its config

Changed pgrep to add '-x' so it wont partial match on the exe name.
- I have multiple instances with multiple hyperiond-instance1 names
- this ensures the service script only kills the right process

* reversing errant change to hyperion.systemd.sh

* This add a new device type - ws2812spi.

I've (ab)used the SPI interface to send the correct timing pulses to keep the ws2812 happy.
THE RATE IS IMPORTANT!
A FIXED CORE_CLK IS IMPORTANT!

Attach the SPI MOSI pin on the Pi to the DIN pin on your ws2812

        "device" :
        {
                "name"       : "MyPi",
                "type"       : "ws2812spi",
                "colorOrder" : "grb",
                "output"     : "/dev/spidev0.0",
                "rate"       : 3800000
        },

* updated hyperiond.test-binary

* Updated default SPI speed to the "correct" value.
My Pi was undervolted so was dropping the core clock confusing everything

* Code cleanups
explicitly set the final 3 bytes to 0

* Removed latchtime option - not applicable

* updated test binary


Former-commit-id: d3c19c8374999f7a554bb25ca181a8a483f86289
2016-05-15 18:39:17 +02:00
penfold42
c17e4894d9 Apa102 fix if the led strip has more physical LEDs than you want to configure with hyperion (#626)
* Removed -HUP so the default -TERM signal is sent instead.
- hyperiond only listens for TERM and INT. HUP is often used to get an exe to reread its config

Changed pgrep to add '-x' so it wont partial match on the exe name.
- I have multiple instances with multiple hyperiond-instance1 names
- this ensures the service script only kills the right process

* reversing errant change to hyperion.systemd.sh

* started bug fixes for APA strips with more physical leds than configured

* 1st cut of changes to APA102.

now looks at config for "leds" which is the # of hardware leds in the strip.
This enables us to write the correct trailer length in the packet.

Also fixed a bug where switchoff was writing the wrong # of leds

* removed commented out old code

removed debug printf

* included prebuild test binary for Pi2

* Second attempt at the fix.
BEFORE:
If you have more physcial LEDs than defined in the "leds" "index" section of the config there is random junk added to the end of the strip.

WITH THIS FIX:
In the "device" section specify the number of physical leds with:
 "leds" : 212,
If this is greater than the number of led indexes, additional LEDs are set to black
If this is smaller than the number of led indexes, it is ignored

* included test binary

* Clean exit if the device config is missing or a non-supported device type is specified

Former-commit-id: 8ae96188fa74d91b13a921e7d5faf6d6ac1c42ee
2016-05-10 12:16:19 +02:00
brindosch
1a3d2771b1 Merge pull request #625 from pdf/random_blobs
Allow random mood blobs color, set mood-blobs-full to random

Former-commit-id: 7d1060ac2cf8222287ece9bd88bf40e4bfcf45eb
2016-05-10 08:40:12 +02:00
brindosch
b62acc8c72 Merge pull request #622 from Paulchen-Panther/Beta
Get current LED color (JSON API)

Former-commit-id: e7a54e674d982bf06cdd4a6a84741d466b555519
2016-05-10 08:39:50 +02:00
Peter Fern
3ba86a1253 Allow random mood blobs color, set mood-blobs-full to random
Small change to allow a random start hue for mood blobs - adds a bit of
spice instead of starting at the same color every time.


Former-commit-id: 2b5a0250b95ac5632661d3b8fce3c1567f5daaa3
2016-05-10 16:34:24 +10:00
Paulchen-Panther
536b51dba1 Update JsonClientConnection.cpp
JSON API: Get current LED color

Former-commit-id: 0b40c1eb1627afd8077bdf690109609fd531c2fb
2016-05-06 15:05:28 +02:00
brindosch
9cd53ecfd0 Merge remote-tracking branch 'refs/remotes/origin/Beta'
Former-commit-id: 21a4f0c17270e4823e29739f783cba78a1000c6d
2016-05-05 15:04:43 +02:00
brindosch
a0b81e9d4c Merge pull request #621 from RickDB/Beta
AtmoOrb device - removed skip same color change

Former-commit-id: 1aa4244c18b2b2c6b1cf7ac307620d41b8b57f32
2016-05-05 15:02:03 +02:00
RickDB
3227a3125b AtmoOrb - removed skip same color change.
Former-commit-id: 399ad830d9ecad8bf8d1e62241744f15631f0515
2016-05-05 14:48:33 +02:00
brindosch
cd0526a414 Merge remote-tracking branch 'refs/remotes/origin/master' into Beta
Former-commit-id: 4ad7195cb635410c8f4c36bb074c5cd4f22c1944
2016-05-05 14:12:24 +02:00
brindosch
fdbbdd09cc prevent spam
Former-commit-id: 3848e23575cb73e322652a9d2f2b677c64763f14
2016-05-05 12:55:11 +02:00
brindosch
2b077aad94 typo fix
Former-commit-id: 9525da45219ba48a8e45ac275182f17016b9f7b5
2016-05-05 12:42:34 +02:00
brindosch
f1c510bc81 LibreELEC support added
Former-commit-id: 8448696709ac57bb29f9e31d17125776e50ad2bb
2016-05-05 12:38:24 +02:00
brindosch
d5e6a4cdaa rasplex install
Former-commit-id: 083c6e95432d6bd776eba3e70b23a7d1fd5d9d84
2016-05-04 18:50:40 +02:00
brindosch
f4c07f6c83 revert script changes
Former-commit-id: 98b2d971b780ccae61cc01b9da1a339ed5799b19
2016-05-04 15:41:58 +02:00
brindosch
89a8e6c6e5 rasplex support
Former-commit-id: 5dc6697124fe2e4fbfee6228db131bd574a921c6
2016-05-04 10:28:25 +02:00
brindosch
fdbb1673eb add logfiles dir for oe install
Former-commit-id: d549732905e85d224921de574463f540d8d5d647
2016-04-30 17:09:41 +02:00
brindosch
4853d17563 maybe fix install.sh
Former-commit-id: 2713fb28ddf70d6a22fd743ca931b2f120e03a8e
2016-04-30 17:00:29 +02:00
brindosch
7a9ba876b0 Update README.md
Former-commit-id: a1bc04f01efe52cb87f85aa68e8f181c0e95900b
2016-04-30 01:14:28 +02:00
brindosch
e0b677f134 Merge pull request #618 from hyperion-project/Beta
Merge Beta to Master

Former-commit-id: a31855da06132db8c4c9e16be3cc0a4d12a2194d
2016-04-29 21:58:22 +02:00
penfold42
deed8066b0 Piblaster fix (#614)
* Removed -HUP so the default -TERM signal is sent instead.
- hyperiond only listens for TERM and INT. HUP is often used to get an exe to reread its config

Changed pgrep to add '-x' so it wont partial match on the exe name.
- I have multiple instances with multiple hyperiond-instance1 names
- this ensures the service script only kills the right process

* reversing errant change to hyperion.systemd.sh

* Experimental changes to piblaster code to work how i think it should

It is now assumed that the PWM pins in groups of 3 correspond to RGB channels of the led.
                "assignment"       : "rgbrgbrgb",
Would result in:
//Channel number    GPIO number   Led channel
//      0               4             0 red
//      1              17             0 green
//      2              18             0 blue
//      4              27             1 red
//      5              21             1 green
//      6              22             1 blue
//      7              23             2 red
//      8              24             2 green
//      9              25             2 blue

* Ammend pwm channel mapping comments to match the code

* 1st cut of the new more flexible piblaster pin mapping support

it works but is still rough

* removed old "assignment" handling
- prints an error messaage if found and terminates

fixed the switchoff method

* removing iPins hard coded list of valid GPIO pins

* removed iPins array for switchOff function

* code cleanups

input validation

* Handle catching (and ignoring) SIGPIPE.
You can now kill and restart pi-blaster daemon and hyperiond will gracefully recover

* added a binary for testing

* Added sample config and my modified pi-blaster version to support more GPIOs

* moved hyperiond

* removed testing binaries

move sample configuration to the configs directory

* re enabled device config display

* removed sample configuration


Former-commit-id: 95e4d4ea2fb7cb5439e8cd597883a638da61a574
2016-04-29 16:00:33 +02:00
brindosch
77996fd65a amlogic docu update
Former-commit-id: a0293a6becf58fa9a0ee5d7162ba4d8f6b9e189d
2016-04-28 14:46:53 +02:00
brindosch
1e5f3cdd4a merged scripts
Former-commit-id: 2cc8dd2ab9b5ef7a467e5c90a7ede3ca427f028d
2016-04-26 17:21:30 +02:00
brindosch
ad2962bbf4 update install with osmc
Former-commit-id: c4595324e766c6908a9da4414337a97414c4b92b
2016-04-26 15:54:02 +02:00
brindosch
da3db8d0cf cleanup
Former-commit-id: 199a8d3bd4db8900c95b151e601835463e7554bb
2016-04-26 12:56:16 +02:00
brindosch
fc59df9976 preperation for next release and cleanup
Former-commit-id: dc829ea7671584d4aaf982cadba329998a824593
2016-04-26 12:27:59 +02:00
Paulchen-Panther
bb9b02cf05 get current state (active Effects) over JSON Interface (#608)
* Create ActiveEffectDefinition.h

* Update EffectEngine.h

* Update Hyperion.h

* Update Effect.h

* Update EffectEngine.cpp

* Update Hyperion.cpp

* Update JsonClientConnection.cpp


Former-commit-id: 5664b69da6893dd0d0de0e7c74c01cdcafd57310
2016-04-24 17:07:31 +02:00
Rick164
d4dda2dcc4 AtmoOrb LedDevice now only processes new color commands and skips identical, saves last send color per light id separately in Qmap. (#602)
Former-commit-id: 38873e5b718c73d95111abcb10cf148f6a6ab18b
2016-04-21 14:51:43 +02:00
brindosch
e318c9ab19 openelec logfile support
Former-commit-id: 87e4bbddaabdfb89e9843cfc9235dfcdb40bff77
2016-04-09 17:55:05 +02:00
penfold42
908612adf8 init scripts need to send SIGTERM not SIGHUP
* Removed -HUP so the default -TERM signal is sent instead.
- hyperiond only listens for TERM and INT. HUP is often used to get an exe to reread its config

Changed pgrep to add '-x' so it wont partial match on the exe name.
- I have multiple instances with multiple hyperiond-instance1 names
- this ensures the service script only kills the right process

* reversing errant change to hyperion.systemd.sh


Former-commit-id: 7df14c9ab31bd808df7f286a8db89de3ac7d18bd
2016-04-02 15:05:46 +02:00
brindosch
8111d320e3 extend install-hyperion.sh
Former-commit-id: f330c1b9d292529b82541ca7b727ec2269e1e9dc
2016-04-02 01:24:08 +02:00
brindosch
1d8b529192 mark deprecated values at hyperion-remote
Former-commit-id: b6095d193c3d928f223839967f4debd16bc9eaa7
2016-04-02 00:41:01 +02:00
Rick164
02fef83bb8 AtmoOrb smoothing additions
* Updated smoothing options for AtmoOrb, can now choose between Orb external or Hyperion's internal smoothing.
With skipSmoothingDif you can set the maximum allowed color difference before overriding / clearing Orb smoothing during faster color change like for instance color <-> black.

* Updated inline documentation.

* Fixed command type typo in AtmoOrb device.

* Corrected variable spelling in AtmoOrb device.

* Make smoothing also match equal values for AtmoOrb smoothing differential


Former-commit-id: 3eede43c2f76fa324f0144aeac0526b8125ad149
2016-04-02 00:07:28 +02:00
AEtHeLsYn
b37cbd26d5 Add color adjustment to all RBG channels
* Channel adjustment config

* Create RgbChannelAdjustment.h

* Delete RgbChannelAdjustment.h

* Create RgbChannelAdjustment.cpp

* Create RgbChannelAdjustment.h

* Delete RgbChannelAdjustment.cpp

* Create ColorAdjustment.cpp

* Delete RgbChannelAdjustment.h

* Create ColorAdjustment.h

* Update ColorAdjustment.h

* Update ColorAdjustment.h

* Update ColorAdjustment.h

* Update ColorAdjustment.cpp

* Update Hyperion.cpp

* Update Hyperion.cpp

* Update Hyperion.cpp

* Update Hyperion.h

* Create RgbChannelAdjustment.cpp

* Create RgbChannelAdjustment.h

* Create ColorAdjustment.h

* Create MultiColorAdjustment.h

* Update MultiColorAdjustment.h

* Create MultiColorAdjustment.cpp

* Delete ColorAdjustment.cpp

* Delete ColorAdjustment.h

* Update RgbChannelAdjustment.cpp

* Update Hyperion.cpp

* Update Hyperion.h

* Update Hyperion.cpp

* Bug fixes

* Update hyperion.config.json

* Add color adjustment to json server and client and adapt hyperion-remote

* Change the color modification order

* Minor bug fix

* Create calibration Images folder

* Create calibration Gamma folder

* Create calibration RGB folder

* Added files via upload

* Delete .gitkeep

* Delete .gitkeep

* Added files via upload

* Delete .gitkeep

* Update color effect order and don't correct twice

* Uploaded gradient images


Former-commit-id: 8ab465e59834f12a21709a6f4546bd6808a2a495
2016-04-02 00:04:11 +02:00
brindosch
078dbfd88e Merge remote-tracking branch 'refs/remotes/origin/master' into Beta
Former-commit-id: a08f7606f783a89e4c1fea265f9f6b0346c881f3
2016-03-23 23:46:52 +01:00
brindosch
1813ba735a Image update to V1.01.1
Former-commit-id: f64b6eb8dbaeef0f4aae8954da3b87524be106bd
2016-03-23 22:55:58 +01:00
brindosch
ad584aa548 Typos
Former-commit-id: fc7bc3c0e4bddcb5a6b778c2afabc3940a08782c
2016-03-23 18:54:49 +01:00
brindosch
f332473b77 Merge remote-tracking branch 'refs/remotes/origin/Beta'
Former-commit-id: 5bdbda1406bb0ddb99440502584604b85b0f3063
2016-03-23 17:53:32 +01:00
brindosch
c427081ac5 Merge pull request #564 from AEtHeLsYn/master
Allow hyperion-remote to send correction and transform at the same time

Former-commit-id: bb69c6c9eb43ca0d1185fef80418ba3dcade3877
2016-03-23 17:46:50 +01:00
brindosch
fe8a92b2eb Typo
Former-commit-id: a6032547f54a181f4a48d41b9f8018ac84d42140
2016-03-23 17:44:29 +01:00
brindosch
fa66c3b2b5 Rework log messages
Former-commit-id: eac93c0fd78fdf353e940d08df3cabf0b962a3e2
2016-03-23 17:40:45 +01:00
AEtHeLsYn
1b50fdd74e Update hyperion-remote.cpp
Former-commit-id: dec50a509837d19120ed9699a2618b61d77ec00d
2016-03-23 13:35:38 +01:00
tpmodding
c4ce0ce1f5 Merge pull request #563 from penfold42/master
Rename test device to "file" device

Former-commit-id: 80e5098ae1cb792d5ebf6f0b88b1106f721ae7b4
2016-03-23 13:01:36 +01:00
penfold42
a3204ae6be LedDeviceFile now defaults to /dev/null if the output is omitted.
Former-commit-id: eff12ec16d08ffa00287ed68238ab6b397f1c53d
2016-03-23 21:28:31 +11:00