meta data for this page
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
documentation:recsdaemon [2016/10/12 13:46] – Fixed missing commas kru | documentation:recsdaemon [2016/12/14 15:33] – vor | ||
---|---|---|---|
Line 13: | Line 13: | ||
After downloading the file you can install it e.g. on Ubuntu using the following command: | After downloading the file you can install it e.g. on Ubuntu using the following command: | ||
- | | + | <code bash> |
+ | dpkg --install | ||
+ | </ | ||
The installation script will try to auto-detect some of the configuration parameters, but as platforms supported by the daemon are very diverse, manual configuration of remaining parameters most probably will be necessary. | The installation script will try to auto-detect some of the configuration parameters, but as platforms supported by the daemon are very diverse, manual configuration of remaining parameters most probably will be necessary. | ||
Line 19: | Line 21: | ||
RECSDaemon comes with both systemd and classical init scripts to allow automatically starting the daemon during system boot. Depending on your distribution, | RECSDaemon comes with both systemd and classical init scripts to allow automatically starting the daemon during system boot. Depending on your distribution, | ||
- | systemctl enable RECSDaemon | + | <code bash> |
+ | systemctl enable RECSDaemon | ||
+ | </ | ||
or | or | ||
- | + | ||
- | update-rc.d RECSDaemon defaults | + | <code bash> |
+ | update-rc.d RECSDaemon defaults | ||
+ | </ | ||
===== Configuration ===== | ===== Configuration ===== | ||
Line 37: | Line 43: | ||
==== Communication ==== | ==== Communication ==== | ||
+ | |||
To be able to send sensor values and to receive commands, the RECSDaemon has to communicate with the management system of the RECS< | To be able to send sensor values and to receive commands, the RECSDaemon has to communicate with the management system of the RECS< | ||
This can happen via one of two different communication channels: On the one hand it is possible to use the internal management bus (I2C) of the RECS< | This can happen via one of two different communication channels: On the one hand it is possible to use the internal management bus (I2C) of the RECS< | ||
Line 52: | Line 59: | ||
=== LinuxCommunicatorDev === | === LinuxCommunicatorDev === | ||
+ | |||
If necessary, the I2C bus to be used can be changed. This is done by setting the '' | If necessary, the I2C bus to be used can be changed. This is done by setting the '' | ||
Example configuration: | Example configuration: | ||
- | < | + | |
+ | < | ||
+ | [Comm] | ||
PluginName=LinuxCommunicatorDev | PluginName=LinuxCommunicatorDev | ||
- | i2cBus=0</ | + | i2cBus=0 |
+ | </ | ||
=== CommunicatorTCP configuration === | === CommunicatorTCP configuration === | ||
Line 65: | Line 76: | ||
Example configuration: | Example configuration: | ||
- | < | + | |
+ | < | ||
+ | [Comm] | ||
PluginName=CommunicatorTCP | PluginName=CommunicatorTCP | ||
baseboard=2 | baseboard=2 | ||
- | controller=192.168.13.56</ | + | controller=192.168.13.56 |
+ | </ | ||
==== Slot detection ==== | ==== Slot detection ==== | ||
+ | |||
Because some of the RECS< | Because some of the RECS< | ||
Line 79: | Line 94: | ||
=== LinuxSlotDetectorGPIO configuration === | === LinuxSlotDetectorGPIO configuration === | ||
+ | |||
This plugin needs the numbers of the GPIO pins used to sense the slot position as used by the running kernel. These are set with the '' | This plugin needs the numbers of the GPIO pins used to sense the slot position as used by the running kernel. These are set with the '' | ||
Example configuration: | Example configuration: | ||
- | < | + | < |
+ | [Slot] | ||
slotPluginName=LinuxSlotDetectorGPIO | slotPluginName=LinuxSlotDetectorGPIO | ||
Bit0GPIO=133 | Bit0GPIO=133 | ||
- | Bit1GPIO=134</ | + | Bit1GPIO=134 |
+ | </ | ||
==== Sensor providers ==== | ==== Sensor providers ==== | ||
+ | |||
Sensor providers, as the name implies, add one or more sensors to the RECSDaemon' | Sensor providers, as the name implies, add one or more sensors to the RECSDaemon' | ||
Line 107: | Line 127: | ||
=== SensorProviderZynq === | === SensorProviderZynq === | ||
+ | |||
This plugin needs the base address of the monitoring peripheral it should read in the Zynq's memory space. Configure it with the '' | This plugin needs the base address of the monitoring peripheral it should read in the Zynq's memory space. Configure it with the '' | ||
=== SensorProviderZynqModule === | === SensorProviderZynqModule === | ||
+ | |||
This plugin needs the name of the serial port of the management microcontroller on the Zynq module. Configure it with the '' | This plugin needs the name of the serial port of the management microcontroller on the Zynq module. Configure it with the '' | ||
+ | |||
==== Sensors ==== | ==== Sensors ==== | ||
+ | |||
Besides SensorProviders that automatically add a set of sensors when enabled, the RECSDaemon also allows manual configuration of additional sensors. | Besides SensorProviders that automatically add a set of sensors when enabled, the RECSDaemon also allows manual configuration of additional sensors. | ||
Line 124: | Line 148: | ||
An example configuration for one manual sensor could be: | An example configuration for one manual sensor could be: | ||
- | < | + | < |
+ | [Sensors] | ||
count=1 | count=1 | ||
pluginName1=SensorFileReader | pluginName1=SensorFileReader | ||
sensorName1=Test | sensorName1=Test | ||
- | options1=path=test.txt type=U8</ | + | options1=path=test.txt type=U8 |
+ | </ | ||
=== SensorFileReader configuration === | === SensorFileReader configuration === | ||
+ | |||
This plugin reads and parses the first line of a given file each time it is requested to update the sensor value. It recognizes the following options: | This plugin reads and parses the first line of a given file each time it is requested to update the sensor value. It recognizes the following options: | ||
Line 145: | Line 172: | ||
==== Other settings ==== | ==== Other settings ==== | ||
+ | |||
In the '' | In the '' | ||
+ | |||
===== TCP/IP server ===== | ===== TCP/IP server ===== | ||
+ | |||
The RECSDaemon provides a simple TCP/IP server (by default on port 2023) that can be used by external programs to gain information or provide additional sensors. | The RECSDaemon provides a simple TCP/IP server (by default on port 2023) that can be used by external programs to gain information or provide additional sensors. | ||
Line 159: | Line 189: | ||
==== Getting monitoring data ==== | ==== Getting monitoring data ==== | ||
+ | |||
Using the '' | Using the '' | ||
The returned JSON string has the following format: | The returned JSON string has the following format: | ||
- | < | + | < |
+ | [ | ||
{" | {" | ||
{" | {" | ||
{" | {" | ||
{" | {" | ||
- | ]</ | + | ] |
+ | </ | ||
The '' | The '' | ||
+ | |||
==== Adding and updating sensors ==== | ==== Adding and updating sensors ==== | ||
Line 194: | Line 228: | ||
Example: | Example: | ||
- | < | + | < |
+ | [ | ||
{ | { | ||
" | " | ||
Line 207: | Line 242: | ||
" | " | ||
} | } | ||
- | ]</ | + | ] |
+ | </ |