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
This commit is contained in:
redPanther
2016-08-23 20:07:12 +02:00
committed by GitHub
parent c207828069
commit d679affeb4
103 changed files with 1244 additions and 596 deletions

View File

@@ -11,10 +11,8 @@
// hyperion local includes
#include "LedDeviceSk6812SPI.h"
LedDeviceSk6812SPI::LedDeviceSk6812SPI(const std::string& outputDevice, const unsigned baudrate, const std::string& whiteAlgorithm,
const int spiMode, const bool spiDataInvert)
: LedSpiDevice(outputDevice, baudrate, 0, spiMode, spiDataInvert)
, _whiteAlgorithm(whiteAlgorithm)
LedDeviceSk6812SPI::LedDeviceSk6812SPI(const Json::Value &deviceConfig)
: LedSpiDevice(deviceConfig)
, bitpair_to_byte {
0b10001000,
0b10001100,
@@ -23,7 +21,21 @@ LedDeviceSk6812SPI::LedDeviceSk6812SPI(const std::string& outputDevice, const un
}
{
Debug( _log, "whiteAlgorithm : %s", whiteAlgorithm.c_str());
setConfig(deviceConfig);
Debug( _log, "whiteAlgorithm : %s", _whiteAlgorithm.c_str());
}
LedDevice* LedDeviceSk6812SPI::construct(const Json::Value &deviceConfig)
{
return new LedDeviceSk6812SPI(deviceConfig);
}
bool LedDeviceSk6812SPI::setConfig(const Json::Value &deviceConfig)
{
LedSpiDevice::setConfig(deviceConfig);
_whiteAlgorithm = deviceConfig.get("white_algorithm","").asString();
return true;
}
int LedDeviceSk6812SPI::write(const std::vector<ColorRgb> &ledValues)