Open Lighting Architecture  Latest Git
SPIPluginDescription.h
1 /*
2  * This program is free software; you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation; either version 2 of the License, or
5  * (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU Library General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software
14  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
15  *
16  * SPIPluginDescription.h
17  * Contains the description for the spi plugin.
18  * Copyright (C) 2016 Florian Edelmann
19  *
20  * This file has been autogenerated by convert_README_to_header.sh, DO NOT EDIT.
21  */
22 #ifndef PLUGINS_SPI_SPIPLUGINDESCRIPTION_H_
23 #define PLUGINS_SPI_SPIPLUGINDESCRIPTION_H_
24 
25 namespace ola {
26 namespace plugin {
27 namespace spi {
28 
29 const char plugin_description[] = "SPI Plugin\n"
30 "==========\n"
31 "\n"
32 "This plugin enables control of LED pixel strings using SPI. Each SPI output\n"
33 "is represented as an OLA Device. Devices can have multiple Ports, each of\n"
34 "which controls a pixel string. Each Port can use a different personality\n"
35 "(pixel type) and DMX start address, this allows a combination of various\n"
36 "strings lengths & pixel hardware types. The start address and personality\n"
37 "settings are controllable via RDM (each Port appears as a RDM responder).\n"
38 "\n"
39 "To support multiple ports per SPI output, we use an SPI-Backend. Two\n"
40 "backends are supported right now, a software backend which concatenates all\n"
41 "the pixel data into a single buffer and a hardware multiplexer backend which\n"
42 "uses the GPIO pins to control an off-host multiplexer. It's recommended to\n"
43 "use the hardware multiplexer.\n"
44 "\n"
45 "\n"
46 "## Config file: `ola-spi.conf`\n"
47 "\n"
48 "`base_uid = <string>` \n"
49 "The starting UID to use for the SPI RDM, e.g. `7a70:00000100`.\n"
50 "\n"
51 "`device_prefix = <string>` \n"
52 "The prefix of files to match in `/dev`. Usually set to `spidev`. Each match\n"
53 "will instantiate a Device.\n"
54 "\n"
55 "### Per Device Settings\n"
56 "\n"
57 "`<device>-spi-speed = <int>` \n"
58 "The speed of the SPI bus, range is 0 - 32000000 Hz.\n"
59 "\n"
60 "`<device>-ce-high = <bool>` \n"
61 "The mode of the CE pin. Set to false this pulls the CE pin low when writing\n"
62 "data. Set to true this will pull the pin high when writing.\n"
63 "\n"
64 "`<device>-backend = [software | hardware]` \n"
65 "The backend to use to multiplex the SPI data.\n"
66 "\n"
67 "`<device>-gpio-pin = <int>` \n"
68 "The GPIO pins to use for the hardware multiplexer. Add one line for each\n"
69 "pin. The number of ports will be 2 ^ (# of pins).\n"
70 "\n"
71 "`<device>-ports = <int>` \n"
72 "If the software backend is used, this defines the number of ports which will\n"
73 "be created.\n"
74 "\n"
75 "`<device>-sync-ports = <int>` \n"
76 "Controls which port triggers a flush (write) of the SPI data. If set to -1\n"
77 "the SPI data is written when any port changes. This can result in a lot of\n"
78 "data writes (slow) and partial frames. If set to -2, the last port is used.\n"
79 "\n"
80 "\n"
81 "### Per Port Settings\n"
82 "\n"
83 "Ports are indexed from 0.\n"
84 "\n"
85 "`<device>-<port>-dmx-address = <int>` \n"
86 "The DMX address to use. e.g. `spidev0.1-0-dmx-address = 1`\n"
87 "\n"
88 "`<device>-<port>-device-label = <string>` \n"
89 "The RDM device label to use.\n"
90 "\n"
91 "`<device>-<port>-personality = <int>` \n"
92 "The RDM personality to use.\n"
93 "\n"
94 "`<device>-<port>-pixel-count = <int>` \n"
95 "The number of pixels for this port. e.g. `spidev0.1-1-pixel-count = 20`";
96 
97 } // namespace spi
98 } // namespace plugin
99 } // namespace ola
100 
101 #endif // PLUGINS_SPI_SPIPLUGINDESCRIPTION_H_
The namespace containing all OLA symbols.
Definition: Credentials.cpp:44