Commit Graph

32 Commits

Author SHA1 Message Date
ntim
59ce0a640e Added brightnessFactor configuration option to LedDevicePhilipsHue (#427)
* Added missing json document compilation to states retrieval.

* Major rework and implemented feature to increase brightness by a configurable factor.

* Made network manager property of the hue bridge class.

* Fixed some errors regarding model id handling.

* Removed early return.

* Update of philips hue schema for new parameter
2017-03-31 10:17:14 +02:00
penfold42
f96b0143a8 [untested] added Sk6822 led device support (#397)
* Adding support for sk6822 timing
This isnt complete, but should be a good starting point for others to learn from.

1) Here is where the led device source is located:

cd libsrc/leddevice

2) Find the files that need changing:

root@loungepi:libsrc/leddevice# grep -ri 2812spi *
CMakeLists.txt:         ${CURRENT_SOURCE_DIR}/LedDeviceWs2812SPI.h
CMakeLists.txt:         ${CURRENT_SOURCE_DIR}/LedDeviceWs2812SPI.cpp
LedDeviceFactory.cpp:   #include "LedDeviceWs2812SPI.h"
LedDeviceFactory.cpp:   REGISTER(Ws2812SPI);
LedDeviceSchemas.qrc:           <file alias="schema-ws2812spi">schemas/schema-ws2812spi.json</file>
LedDeviceWs2812SPI.cpp:#include "LedDeviceWs2812SPI.h"
LedDeviceWs2812SPI.cpp:LedDeviceWs2812SPI::LedDeviceWs2812SPI(const QJsonObject &deviceConfig)
LedDeviceWs2812SPI.cpp:LedDevice* LedDeviceWs2812SPI::construct(const QJsonObject &deviceConfig)
LedDeviceWs2812SPI.cpp: return new LedDeviceWs2812SPI(deviceConfig);
LedDeviceWs2812SPI.cpp:bool LedDeviceWs2812SPI::init(const QJsonObject &deviceConfig)
LedDeviceWs2812SPI.cpp:int LedDeviceWs2812SPI::write(const std::vector<ColorRgb> &ledValues)
LedDeviceWs2812SPI.h:class LedDeviceWs2812SPI : public ProviderSpi
LedDeviceWs2812SPI.h:   LedDeviceWs2812SPI(const QJsonObject &deviceConfig);

3) Copy the existing files as a starting point:

cp LedDeviceWs2812SPI.cpp LedDeviceSk6822SPI.cpp
cp LedDeviceWs2812SPI.h LedDeviceSk6822SPI.h
cp schemas/schema-ws2812spi.json schemas/schema-sk6822spi.json

4) Do some search and replacing:

:%s/Ws2812SPI/Sk6822SPI/g

5) edit the other files (see the diffs in this commit)

* Added wait time and reset time

* Fixed up debugging output and commented it out.
2017-02-14 09:33:28 +01:00
Paulchen Panther
464de381a0 JsonCpp to QTJson (Final Part) (#273)
* Update CMakeLists.txt

* Update Hyperion.h

* Update LedDevice.h

* Update LedDeviceFactory.h

* Update Hyperion.cpp

* Update LedString.cpp

* Update JsonClientConnection.cpp

* Update LedDeviceAdalight.cpp

* Update LedDeviceAdalight.h

* Update LedDeviceAPA102.cpp

* Update LedDeviceAdalightApa102.h

* Update LedDeviceAdalightApa102.cpp

* Update LedDeviceAPA102.h

* Update LedDeviceAtmo.cpp

* Update LedDeviceAtmo.h

* Update LedDeviceAtmoOrb.cpp

* Update LedDeviceAtmoOrb.h

* Update LedDeviceDMX.cpp

* Update LedDeviceDMX.h

* Update LedDeviceFactory.cpp

* Update LedDeviceFadeCandy.cpp

* Update LedDeviceFadeCandy.h

* Update LedDeviceFile.cpp

* Update LedDeviceFile.h

* Update LedDeviceHyperionUsbasp.cpp

* Update LedDeviceHyperionUsbasp.h

* Update LedDeviceLightpack.cpp

* Update LedDeviceLightpack.h

* Update LedDeviceLpd6803.cpp

* Update LedDeviceLpd6803.h

* Update LedDeviceLpd8806.cpp

* Update LedDeviceLpd8806.h

* Update LedDeviceMultiLightpack.cpp

* Update LedDeviceMultiLightpack.h

* Update LedDeviceP9813.cpp

* Update LedDeviceP9813.h

* Update LedDevicePaintpack.cpp

* Update LedDevicePaintpack.h

* Update LedDevicePhilipsHue.cpp

* Update LedDevicePhilipsHue.h

* Update LedDevicePiBlaster.cpp

* Update LedDevicePiBlaster.h

* Update LedDeviceRawHID.cpp

* Update LedDeviceRawHID.h

* Update LedDeviceSedu.cpp

* Update LedDeviceSedu.h

* Update LedDeviceSk6812SPI.cpp

* Update LedDeviceSk6812SPI.h

* Update LedDeviceTinkerforge.cpp

* Update LedDeviceTinkerforge.h

* Update LedDeviceTpm2.cpp

* Update LedDeviceTpm2.h

* Update LedDeviceTpm2net.cpp

* Update LedDeviceTpm2net.h

* Update LedDeviceUdpE131.cpp

* Update LedDeviceUdpE131.h

* Update LedDeviceUdpH801.cpp

* Update LedDeviceUdpH801.h

* Update LedDeviceUdpRaw.cpp

* Update LedDeviceUdpRaw.h

* Update LedDeviceWs2801.cpp

* Update LedDeviceWs2801.h

* Update LedDeviceWS2812b.cpp

* Update LedDeviceWS2812b.h

* Update LedDeviceWs2812SPI.cpp

* Update LedDeviceWs2812SPI.h

* Update LedDeviceWS281x.cpp

* Update LedDeviceWS281x.h

* Update ProviderHID.cpp

* Update ProviderHID.h

* Update ProviderRs232.cpp

* Update ProviderRs232.h

* Update ProviderSpi.cpp

* Update ProviderSpi.h

* Update ProviderUdp.cpp

* Update ProviderUdp.h

* Update LedDevice.cpp

* Update CMakeLists.txt

* Update hyperiond.cpp

* Update hyperiond.h

* Update TestSpi.cpp

* Delete AUTHORS

* Delete CMakeLists.txt

* Delete LICENSE

* Delete json_batchallocator.h

* Delete json_internalarray.inl

* Delete json_internalmap.inl

* Delete json_reader.cpp

* Delete json_tool.h

* Delete json_value.cpp

* Delete json_valueiterator.inl

* Delete json_writer.cpp

* Delete sconscript

* Delete autolink.h

* Delete config.h

* Delete features.h

* Delete forwards.h

* Delete json.h

* Delete reader.h

* Delete value.h

* Delete writer.h
2016-10-13 21:59:58 +02:00
redPanther
5aac2be702 Leddevice refactoring the next next part (#263)
* switch rs232 provider to completly async transfer

* start of implementing a seperate init function for leddevices

* rename setconfig to init

* more fixes

* implement missing code

* fix code style

* remove debug  code

* remove  debug stuff

* set loglevel to original state
2016-10-08 08:14:36 +02:00
redPanther
d6a34edfb2 Leddevice refactoring the next part (#253)
* add general switchOff

* refactoring of leddevices regarding ledcount and switchoff

* remove obsolete includes
2016-09-23 08:49:22 +02:00
redPanther
d679affeb4 Leddevice rework2 (#193)
* commit debug code to save it due to merge

* migrate first devices to new device registry and configure on runtime

* fadecandy and rs232 resets device if config is set

* try to hunt crash on osx

* test commit if this works with osx

* refactor spi devices

* cleanup

* refactor leddevices file, tinkerforge and ws2812b

* refactor raw usb devices

* refactor udp devices

* - add tpm2net driver
- remove old udp driver from build (files left in place for reference for new udp driver)
- json serverinfo shows available leddevices

* finish rework part 2 of leddevices

* add schemas for leddevices.
currently only compiled in, but not usedx
2016-08-23 20:07:12 +02:00
redPanther
97181fa83c leddevice refactoring. code style and extension of baseclass to avoid dups (#174) 2016-08-14 10:46:44 +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
ntim
926f47fc1a Added more precise outputs on failures as well as some additional checks.
Former-commit-id: a0def586410d90abda002504d9c2ae88abc43088
2016-03-19 12:36:55 +01:00
ntim
83c92703eb Merge remote-tracking branch 'upstream/master' into support_for_philips_hue
Former-commit-id: 51089fb3522bf9c228d67f2c2f9a1a5b33e5d0a5
2016-01-18 10:36:20 +01:00
ntim
9c1e565d33 Transition to QNetworkAccessManager for compatibility to QT5
Former-commit-id: 6e65da9338d131d1017051e505db8c28696adf4f
2016-01-10 22:17:59 +01:00
frostworx
defe217c89 added optional QT5 support - LedDevicePhilipsHue needs proper fixes
Former-commit-id: 7f0971ccda221933da4be836628532e7cfc7c085
2016-01-06 17:31:23 +01:00
mrgreywater
c0c8490b95 Maintain compatibility with gcc 4.6
This fixes a compatibility issue when compiling with gcc 4.6 (which is
the version distributed with raspbian by default)


Former-commit-id: ff8518cbc0627049526138b67f4965cedfdfd4be
2015-08-11 12:47:44 +02:00
Tim Niggemann
b2b4e17bb8 Renamed lamp to light to match HUE api convention.
Former-commit-id: f9b37989291a32162a41a7549fe4b050b79daba2
2015-03-03 15:46:53 +01:00
Tim Niggemann
ecea6e55ea Added light ids to device config.
Former-commit-id: 601616b0d7509b0e8ebb5226f00af5028fa905b5
2015-03-03 15:45:09 +01:00
Tim Niggemann
dfc2e6bfb5 Default setting of transition time to 100 ms.
Former-commit-id: c0981e09494c59456f45325cdcacf9bfa6e26c99
2015-02-01 15:56:51 +01:00
Tim Niggemann
9d506b888d Added config options for username and transitiontime
Former-commit-id: 2ae179c670fda838115d985f40d970e10ef002ef
2015-02-01 15:29:40 +01:00
Tim Niggemann
dbd7a86665 Moved color logic to lamp class.
Former-commit-id: f450eebc8c9d0f29dc053f2115dac6576a5fa591
2014-07-16 20:22:37 +02:00
Tim Niggemann
f76b5ffbd8 Added author tag, added missing return statement.
Former-commit-id: 4d0a29a8ba3d33de6f86b90a4eaf2f0de12ea59a
2014-07-16 16:21:11 +02:00
Tim Niggemann
b055578759 Added config switch for turing off the lamps if the color black is written.
Former-commit-id: bb4f4bc74c035c10a8dc678a11052ea276ea0149
2014-07-16 11:49:34 +02:00
Tim Niggemann
fcb2ff6667 Renamed method parameters.
Former-commit-id: e10705dd6d93f5c1398a213583bbe349833d2648
2014-07-15 12:08:27 +02:00
Tim Niggemann
7e049273a8 Comments.
Former-commit-id: bb4573afa8072bf03a3ae7c1b8ece721c7ea91ff
2014-07-15 12:06:26 +02:00
Tim Niggemann
67970fce08 Created HueLamp class holding the color space as well as the original state and current color.
Former-commit-id: 129c34f6008a68bca6cafb63eb0c0ad6a37f5179
2014-07-15 09:55:58 +02:00
Tim Niggemann
9269b0a1e3 Removed saving of model ids. Save the corresponding color triangles instead for speedup.
Former-commit-id: 72e6031234e12a488a5425e80e73dc8b03ec364f
2014-07-15 08:54:40 +02:00
Tim Niggemann
f5a8174783 Implemented color triangle calculations.
Former-commit-id: dbde6635077a82ace5f4ed1fdf89458a28e7bf05
2014-07-15 08:51:07 +02:00
ntim
853d002894 Timer to restore light state properly implemented. Lights are not switched on after state has been saved.
Former-commit-id: 04959ea3731eb7de9f59b80a789f03cfeb2d4ba3
2014-05-07 15:22:13 +02:00
ntim
32f09dcc24 Merge branch 'master' into support_for_philips_hue
Former-commit-id: ee3816fde708fa2f9f9e6ad50ec1e6d2ff552b23
2014-05-07 07:44:11 +02:00
ntim
8cca280fdc Implemented timeout for restoring original state.
Former-commit-id: 925b063aba1a859b592ead9b75ce67d90fb81e28
2014-05-03 10:12:41 +02:00
johan
1e66045d3e Added author tag for Philps Hue device
Former-commit-id: 6fc5dc0ac7177ddd23e601c8ca1f65981ff0e778
2014-04-30 22:38:59 +02:00
Tim Niggemann
ab5e17e105 State of all lights is saved and restored on switchOff().
Former-commit-id: 1ee26e8c01d90456424c1b5ea3f113dfd0ff6525
2014-04-28 14:32:37 +02:00
ntim
ebb22cdc87 Removed rate limiting from code. Setting framegrabbing frequency of 10 Hz / number of lights is sufficient.
Former-commit-id: 0686a8d18c780038eb017fdf26b5faf4b8053f3a
2014-04-27 18:42:26 +02:00
ntim
88c523518a Initial commit of support for the Philips Hue system.
Former-commit-id: 5b7d802c326151ee96a5b950badb01e94adfe7f3
2014-04-27 12:59:44 +02:00