Commit Graph

644 Commits

Author SHA1 Message Date
redPanther
f1a4672a93 Amlogic box uses aml and fb buffer (#141)
* v4l: fix auto mode opens usable device twice

* on amlogic system, start framegrabber and amlogic grabber

* tune code formating

* make aml grabber always one prio below fb

* hyperiond refactoring

* refactor hyperiond grabber donfig code
add json clinet view of active and inactive input sources
2016-07-27 22:52:59 +02:00
Paulchen-Panther
b7d1fbf378 Fixing "Required" Tag (#140)
ok ich merge mal ... passt ja soweit
2016-07-26 14:53:27 +02:00
redPanther
6840d93206 v4l: fix auto mode opens usable device twice (#139) 2016-07-24 22:45:26 +02:00
redPanther
108e06ed46 LedDevicePhilipsHue: fix isNan sometimes not compile
sometime <cmath> is add automaticly, sometimes not. This leads to compile errors. Including <cmath> should fix this.

info taken from here:
http://en.cppreference.com/w/cpp/numeric/math/isnan
2016-07-24 22:43:26 +02:00
redPanther
b4d8d3989c fix missing logger init 2016-07-24 20:31:25 +02:00
redPanther
d551739903 fix amlogic logic leads to crash
... most of the format strings had wrong types
2016-07-24 19:56:41 +02:00
redPanther
30b9c20611 new frame grabber handling (#137)
* - implement framegrabber type option
- framegrabber autoselect
- integrate x11 grabber in hyperiond

* add doxy

* v4l: select device by name
hyperiond: fix x11 grabber connection to kodichecker
config: tune default prios of boblight and v4l

* make v4l name finding case insensitive
2016-07-24 15:18:34 +02:00
Paulchen-Panther
01ec4a3655 KODIVideoChecker Fix (#138)
* Update KODIVideoChecker.h

* Update KODIVideoChecker.cpp

* Update KODIVideoChecker.cpp
2016-07-24 13:56:13 +02:00
Paulchen-Panther
5bd8c33529 Add Screensaver mode to Kodi video checker (#132)
* Update KODIVideoChecker.h

* Update GrabbingMode.h

* Update AmlogicWrapper.cpp

* Update DispmanxWrapper.cpp

* Update FramebufferWrapper.cpp

* Update OsxWrapper.cpp

* Update KODIVideoChecker.cpp

* Update ProtoConnection.cpp

* Update X11Wrapper.cpp
2016-07-21 20:15:54 +02:00
redPanther
a930d4e403 fix logger crash (#136)
make logger don't crash when long messages put to logger. Currently longest message is 1024 chars. Longer messages are truncated
2016-07-21 20:12:51 +02:00
redPanther
fff42f370c fix serial port device crash (#134)
* fix resourceerror in serialport implemention and  extend error output

* cleanup

* fix json schema

* remove some nerd setting
2016-07-20 23:26:47 +02:00
Paulchen-Panther
230cf9e970 Rewrite JSONSchemaChecker to QT (#128)
* Add files via upload

* Update CMakeLists.txt

* Add files via upload

* Update TestConfigFile.cpp

* Update TestConfigFile.cpp

* Update TestConfigFile.cpp

* Update QJsonFactory.h
2016-07-20 17:16:06 +02:00
redPanther
b1d9a041d4 various fixes (#129)
* various fixes:
- add folder for firmware known as working with hyperion
- rs232: add debug message for close and do not repeat "port not found" message more than neccessary
- v4l2: fix grabber started on creation when set to disabled
- cmake: add new platform x86-dev - this as most code coverage and is usefull for test/development. This is not for release

* add hints for effect-args
2016-07-20 16:04:56 +02:00
brindosch
c1e4a0a6fd Fix KodivideoChecker menu detection 2016-07-17 17:28:34 +02:00
Paulchen-Panther
295e6b6212 Update KODIVideoChecker.cpp (#123)
* Update KODIVideoChecker.cpp

Replace RegExp with QT JSON

* Travis check fix. Thanks redPanther
2016-07-17 14:26:10 +02:00
redpanther
4538e81b4b fix aml build 2016-07-16 23:01:18 +02:00
redpanther
acd15fa108 fix compile for aml 2016-07-16 22:58:13 +02:00
redpanther
d1a5e5b75a Merge remote-tracking branch 'upstream/master' into grabber_rework 2016-07-16 22:52:18 +02:00
redpanther
a8da7acd14 make proto uses priorityRegister 2016-07-16 22:51:31 +02:00
Paulchen-Panther
02c90e8684 Update EffectDefinition.schema.json 2016-07-16 20:34:47 +02:00
Paulchen-Panther
c677a42a74 Update hyperion.schema.json 2016-07-16 20:33:09 +02:00
redpanther
505b83f028 every input sources trackes now its priority and ID to hyperion core
ATM all input sources except inputs via proto are tracked
2016-07-15 23:08:55 +02:00
redpanther
d3e77eb018 fix doxy 2016-07-15 10:28:12 +02:00
redPanther
b49ada956b hyperion won't fail, if v4l2 has invalid device + auto device (#118)
* hyperion won't fail, if v4l2 has invalid device

* add v4l auto select. use "auto" as device name
2016-07-14 23:40:10 +02:00
redPanther
946f9fc603 compile fix (#114)
* multi fix commit

- refactoring leddevicefactory
- adalight: default for "delayAfterConnect" is 1s now - needed for most arduino's because of there special behaviour on open
- fadecandy: new option for disabling configuration send - if you want to keep your fadecandy defaults
- Hyperion.cpp: simplify createSmoothing discussed in #105
- smoothing:
-- add option for continuous output
-- when updatedelay>0 and continousOutput is disabled, buffer is flushed correctly after no input is detected

* add doxygen to travis

* fix code

* fix compile fir ws281x pwm

* remove git merge stuff

* fix compile
2016-07-13 16:19:19 +02:00
redPanther
5a2ef6c4a3 multi fix commit (#112)
* multi fix commit

- refactoring leddevicefactory
- adalight: default for "delayAfterConnect" is 1s now - needed for most arduino's because of there special behaviour on open
- fadecandy: new option for disabling configuration send - if you want to keep your fadecandy defaults
- Hyperion.cpp: simplify createSmoothing discussed in #105
- smoothing:
-- add option for continuous output
-- when updatedelay>0 and continousOutput is disabled, buffer is flushed correctly after no input is detected

* add doxygen to travis
2016-07-13 11:18:12 +02:00
brindosch
1cf7fd545e Bugfix sync with hyperion repo (#110)
* #702  if led color not black

* colorless backlight #707
2016-07-12 23:33:30 +02:00
redPanther
48d20529d3 extend Fadecandy driver (#109)
* add functions to send sysEx (not working correctly atm)

* make new values avail via config
2016-07-12 22:37:45 +02:00
penfold42
7b9b9bcdef logging migration of blackborder and grabber (#108)
* logging migration of blackborder and grabber

* change to "Debug" for noise blackborder log messages
2016-07-12 15:13:06 +02:00
penfold42
49f16ac2e6 HTTP server logging migration (and other random small cleanups) (#106) 2016-07-12 13:47:30 +02:00
penfold42
b7b17b36e8 Migrate logging and add "enable" to smoothing (#105)
* Migrate logging and add "enable" to smoothing

* Migrated the linearcolorsmoothing file
2016-07-12 12:46:54 +02:00
brindosch
76acff8043 Logging for dispmanx, framebuffer, x11, v4l2, osx (#103)
* dispmanx

* typi

* Framebuffer

* fix attempt

* x11

* osx

* V4L2
2016-07-12 00:53:48 +02:00
brindosch
c802505553 logging rework json/proto (#102)
* cleanup: remove ambiled device

as written at the forum this is no longer supported. All people should move to adalight. They just need to flash a new sketch.

* fix typo

* travis.ci

* travis: move to ubuntu 14.04

* script try

* add serialport

* update .json files

* .

* .

* .

* update travis

* fix

* typo

* fix

* .

* disable v4l2 on mac

* disable email notification

* update osx

* maybe fix

* .

* disable osx and rm v4l2

* try osx

* try fix

* travis update

* add oe systemd file

* Proto

* Json

* fix

* fix2

* fix3

* .

* typo

* update

* revert runtime error
2016-07-11 17:08:22 +02:00
penfold42
80fc153d35 udplistener will now set remaining LEDs to black. (#99)
eg: configure 42 leds, but a udp packet only contains 10 leds, the remaining 32 are now set to black
2016-07-11 13:15:08 +02:00
redPanther
2013304130 implement auto avaluation of used platform. To use it simply not add -DPLATFORM (#98) 2016-07-11 11:02:18 +02:00
redPanther
c2e2c26ab2 Logging migration continues ... (#97)
* migrate logging for blackborder and bonjour. fix logging bug in hyperion

* fix kodichecker when kodi is not there
2016-07-10 23:14:23 +02:00
redPanther
3ac0781c1f Kodi checker rework (+enable option) (#96)
* big kodichecker rework

- use new logger
- 'enable' flag in config
- startable on runtime (atm not stoppable and no reconfigure)
- rename xbmc to kodi

* remove unnecceasry checks for kodi

* make kodichecker stoppable and add reconfigure

* tune config
2016-07-10 22:04:31 +02:00
penfold42
d4635bba4e Sk6812rgbwfix (#95)
* sk6812rgbw bug fix and rename device to sk6812rgbw-spi

* Added white_algorithm support to sk6812rgbw-spi device type
2016-07-10 17:07:19 +02:00
penfold42
ca795d883e Add "enable" to forwarder, fix udp listener (#91)
* Add "enable" to forwarder

fix udp listener - address and port parsing was broken

* updated example configs

* updated example config with comments
2016-07-10 12:42:21 +02:00
redPanther
78eaaa2e84 Filter rework, next step (#82)
* common ledbuffer for color transform

hyperion class uses a common buffer for all operations on ledColors got from muxer
all color transforms uses new ledBuffer instead of making copies of ledbuffer

other fixes:
fix compile bug in profiler
update doxygen config

* migrate logging for color transform classes

* prepare new logger in hyperion class

* implement hwledcount

* Update Hyperion.cpp

Fix off color

* remove ledscount equivalent from apa102
migrate logging in hyperion.cpp
remove unused and duuplicate colorcorrection - but same is available through tempertature

* remove colorcorrection completly
fix compile

* set colororder back to static

* in remote: using correction is the same as using temperature - correction is obsolete, command not delete atm for compat reasons

* refactoring of RgbChannelAdjustment

* - remove rgbchannelcorrection, this was a dup of rgbchanneladjustment
- add cmake policy to hide warning
- tune code of rgbchanneltransform
2016-07-04 00:43:41 +02:00
redPanther
921f164b26 refactoring of RgbChannelAdjustment (#79)
* common ledbuffer for color transform

hyperion class uses a common buffer for all operations on ledColors got from muxer
all color transforms uses new ledBuffer instead of making copies of ledbuffer

other fixes:
fix compile bug in profiler
update doxygen config

* migrate logging for color transform classes

* prepare new logger in hyperion class

* implement hwledcount

* Update Hyperion.cpp

Fix off color

* remove ledscount equivalent from apa102
migrate logging in hyperion.cpp
remove unused and duuplicate colorcorrection - but same is available through tempertature

* remove colorcorrection completly
fix compile

* set colororder back to static

* in remote: using correction is the same as using temperature - correction is obsolete, command not delete atm for compat reasons

* refactoring of RgbChannelAdjustment
2016-07-02 14:00:48 +02:00
redPanther
36b4d072c5 common ledbuffer for color transform (#77)
* common ledbuffer for color transform

hyperion class uses a common buffer for all operations on ledColors got from muxer
all color transforms uses new ledBuffer instead of making copies of ledbuffer

other fixes:
fix compile bug in profiler
update doxygen config

* migrate logging for color transform classes

* prepare new logger in hyperion class

* implement hwledcount

* Update Hyperion.cpp

Fix off color

* remove ledscount equivalent from apa102
migrate logging in hyperion.cpp
remove unused and duuplicate colorcorrection - but same is available through tempertature

* remove colorcorrection completly
fix compile

* set colororder back to static

* in remote: using correction is the same as using temperature - correction is obsolete, command not delete atm for compat reasons
2016-07-01 23:20:41 +02:00
penfold42
faf5110558 More logging migration. (#74)
Cleaned up old commented out printf statements.

The piblaster stuff probably needs to be moved out of the devicefactory but Ill have to do that later
2016-06-29 16:49:05 +02:00
XfableX
6327a38582 Added logging to X11Grabber (#71)
* Added logging to X11Grabber

* Added logging to Amlogic grabber.

* Fixed mistake in amlogicgrabber.h

* fixed compile issue

* Trigger

* cleaned up log messages
2016-06-29 16:48:53 +02:00
XfableX
1faead11c5 added logging for files that were lacking it. (#66) 2016-06-28 21:53:34 +02:00
redPanther
03ac5689cf make log level settings avail in config file (#63) 2016-06-27 23:56:21 +02:00
redPanther
809ab82524 migrate boblight to new logger and make it start/stoppable during runtime (#62) 2016-06-27 22:43:43 +02:00
penfold42
96037da1cf Added support for sk6812RGBW leds (ab)using the SPI interface. (#61)
right now it only uses RGB - white is set to zero
2016-06-27 22:43:35 +02:00
penfold42
2fff9ae4fc Remove unused constructors (#60) 2016-06-27 22:43:28 +02:00
redPanther
b9634e57d6 Udplistener start/stop during runtime (#56)
* start implementening runtime start/stop for udplistener

* add signal slots for start/stop/statusChanged for better connectivity with other qt stuff

* fix typo
2016-06-27 09:27:11 +02:00
penfold42
de39ff8997 UDPListener improvements: (#53)
- if you listen to a multicast address, it now also listens to all ipv4 addresses
- shared udp sockets - multiple hyperiond instance can optionally share the same udp packets
2016-06-26 20:08:03 +02:00
redPanther
e486b10aa6 Logging leds (#52)
* switch to new logger for folowing led devices:
LedDeviceAtmo
LedDeviceFactory
LedDeviceFadeCandy
LedDeviceHyperionUsbasp
LedDeviceLightpack-hidapi
LedDevicePiBlaster
LedDeviceWS281x
LedRs232Device

leddevice base class defines logger already as protected member _log

* migrate to new logger for led devices.
still todo:
LedDeviceWS2812b
LedDeviceWs2812SPI
LedDeviceTinkerforge
LedDeviceLightpack
LedDeviceMultiLightpack

* migrate leddevice tinkerforge to new logger

* migrate Lightpack and MultiLightpack to new logger
2016-06-26 11:53:16 +02:00
redPanther
4033de85ec Logging leds (#50)
* switch to new logger for folowing led devices:
LedDeviceAtmo
LedDeviceFactory
LedDeviceFadeCandy
LedDeviceHyperionUsbasp
LedDeviceLightpack-hidapi
LedDevicePiBlaster
LedDeviceWS281x
LedRs232Device

leddevice base class defines logger already as protected member _log

* migrate to new logger for led devices.
still todo:
LedDeviceWS2812b
LedDeviceWs2812SPI
LedDeviceTinkerforge
LedDeviceLightpack
LedDeviceMultiLightpack
2016-06-25 22:08:17 +02:00
penfold42
0b59614ab3 native UDP listener enhancements (#48)
- uses new logger
- can specifiy which ip address to listen on
- if its a multicast address, multicast is enabled
2016-06-25 15:15:23 +02:00
penfold42
33f1ef457b More logging cleanup on led devices (#47) 2016-06-25 14:44:52 +02:00
redPanther
56ae551cbd extend hyperion version number (#46)
* add version number for hyperion and json level

* add new jsonrpc_version in HyperionConfig.h.in
add new hard coded version number for hyperion
2016-06-24 23:22:31 +02:00
penfold42
a6e1b89724 cleanup for compiler warning "Note: No relevant classes found. No output generated." (#42)
* Fixed compile error when no grabbers are defined

* Remove stupid avahi warning...

* Started on the new integrated UDP listener to replace the python effect.

Cloned boblight server and rename it to be UDP listener
It compiles!, It starts! it seems to work as a second boblight protocol server...

* moving from the exsting TCP to UDP.
i can catch packets now.. need to consider ditching the connection handling

* It kinda works right now.
UDP packets are received, led data is sent and hyperion displays them.
.... for a moment before going back to what it was doing

* It works!

looks like the default priority of 900 was fighting with something else that was also 900

commented out some udp packet debugging

* oops, forgot to add the changes the the previous commit

* resolving merge conflicts

* Fixed random http port due to uninitialized _port

* cleaning up compiler warning

* cleaned up CMakeLists to remove warning:
Note: No relevant classes found. No output generated.
2016-06-24 17:46:30 +02:00
penfold42
b6a0b7261d logging migration for ws281x and LedUdpDevice (#45) 2016-06-24 17:46:23 +02:00
redPanther
33ebdcaffc - add cmake qt check, minimum 5.2 (#40)
- on x86 use dynamic avahi libs
- fix compile error
2016-06-23 19:56:50 +02:00
redPanther
d4142b4eb4 migrate logging for effects and verbose options (#38)
* start step by step  migration to new logger

* fix linking for serialport

* migrate effectengine to new logger

* tune log messages

* add commandline options for hyperiond to control verbosity
--silent
--verbose
--debug
2016-06-23 13:48:49 +02:00
redPanther
34252b434d fix linking for serialport (#37) 2016-06-23 09:39:56 +02:00
redPanther
93e3981df1 Serialport (#36)
* migrate serialport to qt5 serialport

* remove old serialport
add logging to serialport

* remove try catch - qt serialport uses plain return values

* tiny fix, but not working atm

* make it work, tested with adalight
2016-06-23 00:11:09 +02:00
penfold42
48134d0aef Remove widgets (#35)
* Trying to remove dependency on Widget
removed unused bonjour example source

* forgot the modified files
2016-06-21 23:34:57 +02:00
redPanther
f48af9daff extend logger (#34) 2016-06-21 21:41:26 +02:00
redPanther
eccd4e6637 rework bootsequence (#30)
* udplistener/boblight: use hyperion::getInstance
hyperiond: fix dispmanx is started twice
hyperiond: rework bootsequence - now named as InitalEffect

* pull out webconfig from hyperiondaemon to functional when daemon crashes
initialEffect: forbid foreground effect duration infinitiy
2016-06-20 23:41:07 +02:00
penfold42
1cb6ee0a43 Fixed random http port due to uninitialized _port (#29) 2016-06-20 15:51:34 +02:00
penfold42
a23735d1ef New builtin udp listener (#18)
* Fixed compile error when no grabbers are defined

* Remove stupid avahi warning...

* Started on the new integrated UDP listener to replace the python effect.

Cloned boblight server and rename it to be UDP listener
It compiles!, It starts! it seems to work as a second boblight protocol server...

* moving from the exsting TCP to UDP.
i can catch packets now.. need to consider ditching the connection handling

* It kinda works right now.
UDP packets are received, led data is sent and hyperion displays them.
.... for a moment before going back to what it was doing

* It works!

looks like the default priority of 900 was fighting with something else that was also 900

commented out some udp packet debugging

* oops, forgot to add the changes the the previous commit

* resolving merge conflicts
2016-06-20 08:38:12 +02:00
brindosch
065e65b8e0 cleanup: remove ambiled and fix typo (#13)
* cleanup: remove ambiled device

as written at the forum this is no longer supported. All people should move to adalight. They just need to flash a new sketch.

* fix typo
2016-06-19 17:18:11 +02:00
redPanther
4533b34606 Hyperiond refactoring + preparation for ip restriction settings (#12)
* make hyperion to singelton.
remove arguments for config and hyperion - both are gettable via Hyperion::getInstance

* refactor hyperiond

* remove qt4 comapt
make zeroconf mandatory
refactor hyperiond

* xbmcchecker is now a singleton

* cleanup in hyperiond
zeroconf switchable between static and shared linking

* fix xbmcchecker

* extensive refactoring of hyperiond
webserver: make client ip information availabel in request object - preparation for ip filters
proto/json server, use hyperion::getInstance instead of hyperion argument

* move creation of hyperion core into hyperionDeamon class
cleanup
2016-06-19 00:56:47 +02:00
penfold42
0e5607db65 Fixed compile error when no grabbers are defined + remove avahi warning (#11)
* Fixed compile error when no grabbers are defined

* Remove stupid avahi warning...
2016-06-18 16:33:25 +02:00
redPanther
88fbc4dfde refactoring and cleanup (#2)
* make hyperion to singelton.
remove arguments for config and hyperion - both are gettable via Hyperion::getInstance

* refactor hyperiond

* remove qt4 comapt
make zeroconf mandatory
refactor hyperiond

* xbmcchecker is now a singleton

* cleanup in hyperiond
zeroconf switchable between static and shared linking

* fix xbmcchecker
2016-06-17 01:25:40 +02:00
redPanther
4a841710dd webui - "cgi" handler and multiple fixes (#700)
* initial commit of webconfig

* update example config with webconfig and fix format of file
update debian postinst script for install example config

* fix compiling
add new web server command "serverinfo" to use in webapp to retrieve json port

* change web default port to 8099

* add cgi engine to webserver

* fix include
2016-06-14 20:14:06 +02:00
redPanther
eb64e7e528 webui fix and serverinfo (#699)
* initial commit of webconfig

* update example config with webconfig and fix format of file
update debian postinst script for install example config

* fix compiling
add new web server command "serverinfo" to use in webapp to retrieve json port

* change web default port to 8099
2016-06-13 22:54:08 +02:00
redPanther
9f564f8d89 fix build on osx (#695) 2016-06-12 22:27:34 +02:00
redPanther
7dfb9f1967 integrated webserver ... (#697)
* initial commit of webconfig

* update example config with webconfig and fix format of file
update debian postinst script for install example config
2016-06-12 22:27:24 +02:00
brindosch
8746e0795c -
Former-commit-id: 7aa71ba95e2bb9d76daf612a79fc3f1dd745cf0e
2016-06-10 23:54:53 +02:00
brindosch
4743208eff silent kodi check
Former-commit-id: 45199d123fcf49194aeaaf2df0789dc7ea4df449
2016-06-10 19:52:03 +02:00
brindosch
b3fa72adba fix
Former-commit-id: 2019d94e3bb06e23890759aecfd646facbcc0f37
2016-06-10 18:55:42 +02:00
brindosch
ae40edc578 Add version string to json output (#690)
* hyperionversionid

* typo

* -


Former-commit-id: ec5777ccb32fc343ef2f478a7c779a901c8aa489
2016-06-10 18:32:50 +02:00
Paulchen-Panther
f0dec4cf73 Hyperion X11 KodiCheck (#685)
* Update X11Grabber.h

* Update ProtoConnection.h

* Update ProtoConnectionWrapper.h

* Update ProtoServer.h

* Update X11Grabber.cpp

* Update message.proto

* Update ProtoClientConnection.cpp

* Update ProtoClientConnection.h

* Update ProtoConnection.cpp

* Update ProtoConnectionWrapper.cpp

* Update ProtoServer.cpp

* Update hyperion-x11.cpp

* Update X11Wrapper.cpp

* Update X11Wrapper.h

* Update hyperiond.cpp

* Update ProtoClientConnection.cpp

* Update X11Wrapper.cpp

* Update hyperiond.cpp


Former-commit-id: a572f275b270217cd8ce8cdd91b3eca3037d6472
2016-06-07 23:12:18 +02:00
redPanther
614131ebe6 compile fix, cleanup (#684)
* 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

* fix cmake error when no platform is given

* initial support for deb,rpm and tgz packages - no usefull content atm!

* make packeages contain usefull stuff

* add license
make packes more functional. package specific install missing yet

* implement debian postinstall

* disable rpm generation until it has a working state

* add hypercon compat

* add posibility for multiple config files. first one found is taken

* remove hyperion comaptlayer
services is not started automaticly

* rework debian postinstall:
- remove /opt compatibility complety. This makes more trouble as it is usefull
- when hyperiond already started, restart it
- cleanup

* add deb package dependencies

* wipe out last support for /opt installation

* change default effect path in config to /usr

* revert service files and config files

* remove last occurences of ENABLE_PROTOBUF
fix cmake warnings and make it ready for cmake 3
fix refactoring of hyperiond.cpp creates no objects for network services

* all arguments via reference ...

* fix xbmcchecker not working

* add logger class

* - profiler must be activated with ENABLE_PROFILER, otherwise an error will raise
-> this should prevent profiler gets into release code

* fix profiler

* make logger compat with older/partial c++11 versions (r.g. debian wheezy)
fix description of optionparser
fix atmoorb not compile for qt4. now it should compile for qt5 and 4

* make logger compiles with qt5 too
fix compiler warnings

* remove debug code


Former-commit-id: 6aa41351667caed712b1f28010dbedfca8a6a5a0
2016-06-07 22:24:29 +02:00
brindosch
ad65ca2983 atmoorb qt5 fix (#683)
Former-commit-id: 64ce9cd676059d5225493a97c89b83f589f68417
2016-06-07 13:17:40 +02:00
brindosch
9578a3e386 Kodicheck: Add option for pause modus (#681)
* introduce pause mode

* fix it fe...

* fix

* fix compile warning

* change solution

* fix order

* fix

* last update

* -


Former-commit-id: b35c4d672aed5be7a6a694b3c861c6cf287d89df
2016-06-07 12:34:50 +02:00
redPanther
f39f074dcf add logger/compiler class (#680)
* 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

* fix cmake error when no platform is given

* initial support for deb,rpm and tgz packages - no usefull content atm!

* make packeages contain usefull stuff

* add license
make packes more functional. package specific install missing yet

* implement debian postinstall

* disable rpm generation until it has a working state

* add hypercon compat

* add posibility for multiple config files. first one found is taken

* remove hyperion comaptlayer
services is not started automaticly

* rework debian postinstall:
- remove /opt compatibility complety. This makes more trouble as it is usefull
- when hyperiond already started, restart it
- cleanup

* add deb package dependencies

* wipe out last support for /opt installation

* change default effect path in config to /usr

* revert service files and config files

* remove last occurences of ENABLE_PROTOBUF
fix cmake warnings and make it ready for cmake 3
fix refactoring of hyperiond.cpp creates no objects for network services

* all arguments via reference ...

* fix xbmcchecker not working

* add logger class

* - profiler must be activated with ENABLE_PROFILER, otherwise an error will raise
-> this should prevent profiler gets into release code

* fix profiler


Former-commit-id: b716dd40dbf5b837356eec876d85ec71c86d5c6c
2016-06-05 16:08:55 +02:00
redPanther
f2e9193987 fix #674 (#676)
* 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

* fix cmake error when no platform is given

* initial support for deb,rpm and tgz packages - no usefull content atm!

* make packeages contain usefull stuff

* add license
make packes more functional. package specific install missing yet

* implement debian postinstall

* disable rpm generation until it has a working state

* add hypercon compat

* add posibility for multiple config files. first one found is taken

* remove hyperion comaptlayer
services is not started automaticly

* rework debian postinstall:
- remove /opt compatibility complety. This makes more trouble as it is usefull
- when hyperiond already started, restart it
- cleanup

* add deb package dependencies

* wipe out last support for /opt installation

* change default effect path in config to /usr

* revert service files and config files

* remove last occurences of ENABLE_PROTOBUF
fix cmake warnings and make it ready for cmake 3
fix refactoring of hyperiond.cpp creates no objects for network services


Former-commit-id: 56e3e0d1014999b2555418c7b5a2898ac29fb5f1
2016-06-04 19:26:34 +02:00
penfold42
e8207cfe31 fix more "dos" line endings (#673)
* 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

* cleaned up a couple of compiler warnings

* moved bitpair_to_byte initialiser to (hopefully) work with older GCC

* compiler warning in udp driver
removed some tabs in ws2812b.cpp

* formatting - spaces to tabs

* moved rpi_281x to tag sk6812-v1.0

* moving to my fork of rpi_281x

* removed dos line endings

* Found some more "dos" line ending files


Former-commit-id: c756e3ccc153fd36e23a26eff37a1230bdd4b9b4
2016-06-03 16:46:45 +02:00
penfold42
d5ce395e8e Add sk6812rgbw support (#666)
* 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

* adding support for SK6812 - not working yet

* Changed rpi_ws281x submodule to be penfold42's fork

* Set White to zero for now

* starting on the code to make the White led do stuff

* Added some basic whie led calculation
white = min(r,g,b)
r-=w, g-=w, b-=w

* cleaned up a couple of compiler warnings

* updated strip type to use corrected RGBW strip type
(the SK6812RGBW datasheet is wrong)

* moved bitpair_to_byte initialiser to (hopefully) work with older GCC

* compiler warning in udp driver
removed some tabs in ws2812b.cpp

* formatting - spaces to tabs

* moved rpi_281x to tag sk6812-v1.0

* attempt #3 at migrating the rpi_281x submodule to my fork/branch

* moving to my fork of rpi_281x

* Started implementing multiple RGB to RGBW conversion options

a quick hack has been implemented inside WS281x.cpp but ive started
moving this to RgbToRgbw.cpp for reuse by other led device types

* migrated RGB to RGBW conversion to RgbToRgbw.cpp


Former-commit-id: ff8e9038c4bb8203b71b42d12bf23be4abcc0b3b
2016-05-31 22:55:56 +02:00
penfold42
6fbfda03fa add zeroconf support based on qt4 libraries (#667)
* 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

* added bonjour/zeroconf service discovery to the json interface.

When clients are also modified, they can
- find hyperiond on the network much more quickly than ping/portscan;
- find multiple instances running on different ports instead of assuming 19444

* Moved zeroconf calls to hyperiond.cpp

* Added mDNS/zerconf/bonjour registration for proto server

Added config options.
        "jsonServer" :
        {
                "port" : 49444,
//              "mDNSDescr" : "hyperiond jsonServer blah de blah",
                "mDNSService" : "_hyperiond_json._tcp"
        },

* cleaned up a couple of compiler warnings

* moved bitpair_to_byte initialiser to (hopefully) work with older GCC

* compiler warning in udp driver
removed some tabs in ws2812b.cpp

* formatting - spaces to tabs

* moved rpi_281x to tag sk6812-v1.0

* moving to my fork of rpi_281x

* Now uses the led device name and hostname to create the annouce name


Former-commit-id: abfa51bcf359cafa63338181c1b83ecfd231bc87
2016-05-31 22:55:11 +02:00
ntim
03cee33784 Fix for Philips Hue flickering when switchOffOnBlack is set true (#668)
* Improved switch off on black feature.

* Changed "isnan" to "std::isnan"


Former-commit-id: 5db2b97674661e4e19f796a91dd443a501268e27
2016-05-31 22:54:47 +02:00
penfold42
6f43fe1196 New QT based udp driver (#662)
* 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

* cleaned up a couple of compiler warnings

* moved bitpair_to_byte initialiser to (hopefully) work with older GCC

* compiler warning in udp driver
removed some tabs in ws2812b.cpp

* formatting - spaces to tabs

* moved rpi_281x to tag sk6812-v1.0

* moving to my fork of rpi_281x

* half way thru re merging the newudp support

* Whoops.... dont know how it compiled before..

* Removed debugging that was commented out


Former-commit-id: ac4330422f93f3d594dfcba5593759288298d25e
2016-05-30 23:58:31 +02:00
Paulchen-Panther
23042ba07c Update Json Interface (Active LED Color) (#664)
* add getCurrentPriority

* add getCurrentPriority

* Update active led color


Former-commit-id: 0e6b828991fdf51d2ec859d3836ce4f976dfd88c
2016-05-30 22:39:12 +02:00
tpmodding
019d4ba6d8 Update LedDevicePhilipsHue.cpp
Changed "isnan" to "std::isnan"

Former-commit-id: 528f02452762fade16b84d17dc7692de9129559c
2016-05-27 11:16:42 +02:00
redPanther
945f3d1c5b big code cleanup. mostly line endings and indentions (#659)
No functional changes - except protobuffer is mandatory and not optional now.

Former-commit-id: 1e6347e708707cc388cdedb8d0352a9f017030b8
2016-05-26 23:44:27 +02:00
brindosch
13b08d5df1 Merge branch 'Beta' of https://github.com/hyperion-project/hyperion into Beta
Former-commit-id: 7e6f328f5cd1912374fb25a5676e07b9e44630be
2016-05-26 07:46:01 +02:00
brindosch
716935dfff xbmc checker fix (3)
Former-commit-id: c8b406033d333177dd2470522b2d8526a9c02d07
2016-05-26 07:45:54 +02:00
redPanther
a41051cc84 prevent colorsmoothing from flooding led device with data when no new input data is available (#654)
resolve compiler warnings

Former-commit-id: c7fbdce5dc7fde8b8e188320408dc547b9ad5e51
2016-05-26 07:01:10 +02:00
brindosch
84d9f4ef80 xbmc checker fix (2)
Former-commit-id: 735f8e3e356b0fca0562185f30532860c7879ee3
2016-05-25 21:15:49 +02:00
brindosch
1e319be54a hotfix x11grabber
Former-commit-id: 7068bad863cf229e01382f859ff06a51dad82d17
2016-05-25 18:53:09 +02:00
Funatiq
45dff6d1d3 Reduce saturation in backlight (#651)
Former-commit-id: c2c4fd6f957c3623e03c37393cf3c03a7a27dc1e
2016-05-24 22:15:39 +02:00
redPanther
06afe06774 better output for effect path loading (#652)
* better output for effect path loading

* effectengine: error when no efx available


Former-commit-id: 7724e56850ef9f9a703fb41e82baf88e5534f492
2016-05-24 22:14:45 +02:00