mirror of
https://github.com/openshwprojects/OpenBK7231T_App.git
synced 2026-02-04 23:05:35 +00:00
drivers doc, post jsons
This commit is contained in:
37
docs/drivers.md
Normal file
37
docs/drivers.md
Normal file
@ -0,0 +1,37 @@
|
||||
# Drivers
|
||||
Here is the latest, up to date drivers list.
|
||||
This file was autogenerated by running 'node scripts/getcommands.js' in the repository.
|
||||
All descriptions were taken from code.
|
||||
Remember that some drivers might not be yet enabled on certain platforms,
|
||||
but we can enable them for you per request. Some drivers might also be WIP.
|
||||
Do not add anything here, as it will overwritten with next rebuild.
|
||||
| Driver | Description |
|
||||
|:------------- | -----:|
|
||||
| TuyaMCU | TuyaMCU is a protocol used for communication between WiFI module and external MCU. This protocol is using usually RX1/TX1 port of BK chips. |
|
||||
| tmSensor | tmSensor must be used only when TuyaMCU is already started. tmSensor is a TuyaMcu Sensor, it's used for Low Power TuyaMCU communication on devices like TuyaMCU door sensor, or TuyaMCU humidity sensor. After device reboots, tmSensor uses TuyaMCU to request data update from the sensor and reports it on MQTT. Then MCU turns off WiFi module again and goes back to sleep. Read more [https://www.elektroda.com/rtvforum/topic3914412.html](here). |
|
||||
| NTP | NTP driver is required to get current time and date from web. Without it, there is no correct datetime. |
|
||||
| TESTPOWER | This is a fake POWER measuring socket driver, only for testing |
|
||||
| TESTLED | This is a fake I2C LED driver, only for testing |
|
||||
| HTTPButtons | This driver allows you to create custom, scriptable buttons on main WWW page. You can create those buttons in autoexec.bat and assign commands to them |
|
||||
| I2C | Generic I2C, not used for LED drivers, but may be useful for displays or port expanders. Supports both hardware and software I2C. |
|
||||
| BL0942 | BL0942 is a power-metering chip which uses UART protocol for communication. It's usually connected to TX1/RX1 port of BK |
|
||||
| BL0937 | BL0937 is a power-metering chip which uses custom protocol to report data. It requires setting 3 pins in pin config: CF, CF1 and SEL |
|
||||
| CSE7766 | BL0942 is a power-metering chip which uses UART protocol for communication. It's usually connected to TX1/RX1 port of BK |
|
||||
| SM16703P | WIP driver |
|
||||
| IR | IRLibrary wrapper, so you can receive remote signals and send them. |
|
||||
| DDP | DDP is a LED control protocol that is using UDP. You can use xLights or any other app to control OBK LEDs that way. |
|
||||
| SSDP | SSDP is a discovery protocol, so BK devices can show up in, for example, Windows network section |
|
||||
| Wemo | Wemo emulation for Alexa. You must also start SSDP so it can run, because it depends on SSDP discovery. |
|
||||
| DGR | Tasmota Device groups driver. |
|
||||
| PWMToggler | PWMToggler is a custom abstraction layer that can run on top of raw PWM channels. It provides ability to turn off/on the PWM while keeping it's value, which is not possible by direct channel operations. It can be used for some custom devices with extra lights/lasers. |
|
||||
| DoorSensor | DoorSensor is using deep sleep to preserve battery. This is used for devices without TuyaMCU, where BK deep sleep and wakeup on GPIO is used. This drives requires you to set a DoorSensor pin. Change on door sensor pin wakes up the device. If there are no changes for some time, device goes to sleep. |
|
||||
| SM2135 | SM2135 custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both SM2135 pin roles. This may need you to remap the RGBCW indexes with SM2135_Map command |
|
||||
| BP5758D | BP5758D custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both BP5758D pin roles. This may need you to remap the RGBCW indexes with BP5758D_Map command |
|
||||
| BP1658CJ | BP1658CJ custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both BP1658CJ pin roles. This may need you to remap the RGBCW indexes with BP1658CJ_Map command |
|
||||
| SM2235 | SM2335 andd SM2235 custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both SM2235 pin roles. This may need you to remap the RGBCW indexes with SM2235_Map command |
|
||||
| CHT8305 | TODO |
|
||||
| MAX72XX | TODO |
|
||||
| TM1637 | Driver for 7-segment LED display with DIO/CLK interface |
|
||||
| SHT3X | TODO |
|
||||
| Battery | TODO |
|
||||
| Bridge | TODO |
|
||||
266
docs/json/channelTypes.json
Normal file
266
docs/json/channelTypes.json
Normal file
@ -0,0 +1,266 @@
|
||||
[
|
||||
{
|
||||
"name": "Default",
|
||||
"title": "TODO",
|
||||
"descr": "Default channel type. This channel type is often used in simple devices and is suitable for relays. You don't need to use anything else for most of the non-TuyaMCU devices.",
|
||||
"enum": "ChType_Default",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Error",
|
||||
"title": "TODO",
|
||||
"descr": "This is used to indicate an error.",
|
||||
"enum": "ChType_Error",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Temperature",
|
||||
"title": "TODO",
|
||||
"descr": "This channel type represents a temperature in degrees. The temperature is shown as a read only, integer value on WWW panel.",
|
||||
"enum": "ChType_Temperature",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Humidity",
|
||||
"title": "TODO",
|
||||
"descr": "This channel type represents a humidity in percent. The humidity is shown as a read only, integer value on WWW panel.",
|
||||
"enum": "ChType_Humidity",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Humidity_div10",
|
||||
"title": "TODO",
|
||||
"descr": "This is also humidity, but in TuyaMCU format, multiplied by 10, so 554 is 55.4%. Main WWW panel displays it correctly. If you want multiplied value to be published to MQTT, check flags.",
|
||||
"enum": "ChType_Humidity_div10",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Temperature_div10",
|
||||
"title": "TODO",
|
||||
"descr": "Just like humidity_div10, but for temperature.",
|
||||
"enum": "ChType_Temperature_div10",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Toggle",
|
||||
"title": "TODO",
|
||||
"descr": "This channel will show ON/OFF toggle, so it is very much like default channel type, but the toggle will be always shown, even if channel is not used",
|
||||
"enum": "ChType_Toggle",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Dimmer",
|
||||
"title": "TODO",
|
||||
"descr": "A custom dimmer channel. This will have a 0-100 range and will show a slider. The slider value will be saved to channel, but nothing else is done automatically. You can map it to TuyaMCU dpID to get dimming working or script it however you like.",
|
||||
"enum": "ChType_Dimmer",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "LowMidHigh",
|
||||
"title": "TODO",
|
||||
"descr": "This channel has 3 values: 0, 1 and 2. This will show radio selection with those 3 options on the main WWW panel.",
|
||||
"enum": "ChType_LowMidHigh",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "TextField",
|
||||
"title": "TODO",
|
||||
"descr": "This is a custom textfield channel, where you can type any value. Used for testing, can be also used for time countdown on TuyaMCU devices. Text field will be shown on main WWW panel",
|
||||
"enum": "ChType_TextField",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "ReadOnly",
|
||||
"title": "TODO",
|
||||
"descr": "This channel is read only. It will just print its value on main WWW page. Of course, you can still write to it with console commands and scripts.",
|
||||
"enum": "ChType_ReadOnly",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "OffLowMidHigh",
|
||||
"title": "TODO",
|
||||
"descr": "Like LowMidHigh, but with 4 options. Some of TuyaMCU fans might require that.",
|
||||
"enum": "ChType_OffLowMidHigh",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "OffLowestLowMidHighHighest",
|
||||
"title": "TODO",
|
||||
"descr": "Like LowMidHigh, but more options. Some of TuyaMCU fans might require that.",
|
||||
"enum": "ChType_OffLowestLowMidHighHighest",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "LowestLowMidHighHighest",
|
||||
"title": "TODO",
|
||||
"descr": "Like LowMidHigh, but more options. Some of TuyaMCU fans might require that.",
|
||||
"enum": "ChType_LowestLowMidHighHighest",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Dimmer256",
|
||||
"title": "TODO",
|
||||
"descr": "Just like dimmer, but it's using 0-255 range. Everything else is the same.",
|
||||
"enum": "ChType_Dimmer256",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Dimmer1000",
|
||||
"title": "TODO",
|
||||
"descr": "Just like dimmer, but it's using 0-1000 range. Everything else is the same.",
|
||||
"enum": "ChType_Dimmer1000",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Frequency_div100",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_Frequency_div100",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Voltage_div10",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_Voltage_div10",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Power",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_Power",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Current_div100",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_Current_div100",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "ActivePower",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_ActivePower",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "PowerFactor_div1000",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_PowerFactor_div1000",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "ReactivePower",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_ReactivePower",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "EnergyTotal_kWh_div1000",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_EnergyTotal_kWh_div1000",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "EnergyExport_kWh_div1000",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_EnergyExport_kWh_div1000",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "EnergyToday_kWh_div1000",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_EnergyToday_kWh_div1000",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Current_div1000",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_Current_div1000",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "EnergyTotal_kWh_div100",
|
||||
"title": "TODO",
|
||||
"descr": "For TuyaMCU power metering. Not used for BL09** and CSE** sensors. Divider is used by TuyaMCU, because TuyaMCU sends always values as integers so we have to divide them before displaying on UI",
|
||||
"enum": "ChType_EnergyTotal_kWh_div100",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "OpenClosed",
|
||||
"title": "TODO",
|
||||
"descr": "This will show an 'Open' or 'Closed' string on main WWW panel. Useful for door sensors, etc.",
|
||||
"enum": "ChType_OpenClosed",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "OpenClosed_Inv",
|
||||
"title": "TODO",
|
||||
"descr": "Like OpenClosed, but values are inversed.",
|
||||
"enum": "ChType_OpenClosed_Inv",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BatteryLevelPercent",
|
||||
"title": "TODO",
|
||||
"descr": "This will show current value as a battery level percent on the main WWW panel.",
|
||||
"enum": "ChType_BatteryLevelPercent",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "OffDimBright",
|
||||
"title": "TODO",
|
||||
"descr": "A 3 options radio button for lighting control.",
|
||||
"enum": "ChType_OffDimBright",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Max",
|
||||
"title": "TODO",
|
||||
"descr": "This is the current total number of available channel types.",
|
||||
"enum": "ChType_Max",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
}
|
||||
]
|
||||
2027
docs/json/commands.json
Normal file
2027
docs/json/commands.json
Normal file
File diff suppressed because it is too large
Load Diff
110
docs/json/constants.json
Normal file
110
docs/json/constants.json
Normal file
@ -0,0 +1,110 @@
|
||||
[
|
||||
{
|
||||
"name": "MQTTOn",
|
||||
"title": "MQTTOn",
|
||||
"descr": "Legacy variable, without $ prefix. Returns 1 if MQTT is connected, otherwise 0.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$MQTTOn",
|
||||
"title": "$MQTTOn",
|
||||
"descr": "Returns 1 if MQTT is connected, otherwise 0.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$CH***",
|
||||
"title": "$CH***",
|
||||
"descr": "Provides channel access, so you can do math expressions on channel values. $CH1 is channel 1, $CH20 is channel 20, $CH140 is channel 140, etc",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$CH**",
|
||||
"title": "$CH**",
|
||||
"descr": "Provides channel access, as above.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$CH*",
|
||||
"title": "$CH*",
|
||||
"descr": "Provides channel access, as above.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_dimmer",
|
||||
"title": "$led_dimmer",
|
||||
"descr": "Current value of LED dimmer, 0-100 range",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_enableAll",
|
||||
"title": "$led_enableAll",
|
||||
"descr": "Returns 1 if LED is enabled, otherwise 0.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_hue",
|
||||
"title": "$led_hue",
|
||||
"descr": "Current LED Hue value",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_red",
|
||||
"title": "$led_red",
|
||||
"descr": "Current LED red value",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_green",
|
||||
"title": "$led_green",
|
||||
"descr": "Current LED green value",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_blue",
|
||||
"title": "$led_blue",
|
||||
"descr": "Current LED blue value",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_saturation",
|
||||
"title": "$led_saturation",
|
||||
"descr": "Current LED saturation value",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$led_temperature",
|
||||
"title": "$led_temperature",
|
||||
"descr": "Current LED temperature value",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$activeRepeatingEvents",
|
||||
"title": "$activeRepeatingEvents",
|
||||
"descr": "Current number of active repeating events",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$voltage",
|
||||
"title": "$voltage",
|
||||
"descr": "Current value of voltage from energy metering chip. You can use those variables to make, for example, a change handler that fires when voltage is above 245, etc.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$current",
|
||||
"title": "$current",
|
||||
"descr": "Current value of current from energy metering chip",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$power",
|
||||
"title": "$power",
|
||||
"descr": "Current value of power from energy metering chip",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "$uptime",
|
||||
"title": "$uptime",
|
||||
"descr": "Time since reboot in seconds",
|
||||
"requires": ""
|
||||
}
|
||||
]
|
||||
170
docs/json/drivers.json
Normal file
170
docs/json/drivers.json
Normal file
@ -0,0 +1,170 @@
|
||||
[
|
||||
{
|
||||
"name": "TuyaMCU",
|
||||
"title": "TODO",
|
||||
"descr": "TuyaMCU is a protocol used for communication between WiFI module and external MCU. This protocol is using usually RX1/TX1 port of BK chips.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "tmSensor",
|
||||
"title": "TODO",
|
||||
"descr": "tmSensor must be used only when TuyaMCU is already started. tmSensor is a TuyaMcu Sensor, it's used for Low Power TuyaMCU communication on devices like TuyaMCU door sensor, or TuyaMCU humidity sensor. After device reboots, tmSensor uses TuyaMCU to request data update from the sensor and reports it on MQTT. Then MCU turns off WiFi module again and goes back to sleep. Read more [https://www.elektroda.com/rtvforum/topic3914412.html](here).",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "NTP",
|
||||
"title": "TODO",
|
||||
"descr": "NTP driver is required to get current time and date from web. Without it, there is no correct datetime.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "TESTPOWER",
|
||||
"title": "TODO",
|
||||
"descr": "This is a fake POWER measuring socket driver, only for testing",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "TESTLED",
|
||||
"title": "TODO",
|
||||
"descr": "This is a fake I2C LED driver, only for testing",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "HTTPButtons",
|
||||
"title": "TODO",
|
||||
"descr": "This driver allows you to create custom, scriptable buttons on main WWW page. You can create those buttons in autoexec.bat and assign commands to them",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "I2C",
|
||||
"title": "TODO",
|
||||
"descr": "Generic I2C, not used for LED drivers, but may be useful for displays or port expanders. Supports both hardware and software I2C.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "BL0942",
|
||||
"title": "TODO",
|
||||
"descr": "BL0942 is a power-metering chip which uses UART protocol for communication. It's usually connected to TX1/RX1 port of BK",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "BL0937",
|
||||
"title": "TODO",
|
||||
"descr": "BL0937 is a power-metering chip which uses custom protocol to report data. It requires setting 3 pins in pin config: CF, CF1 and SEL",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "CSE7766",
|
||||
"title": "TODO",
|
||||
"descr": "BL0942 is a power-metering chip which uses UART protocol for communication. It's usually connected to TX1/RX1 port of BK",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "SM16703P",
|
||||
"title": "TODO",
|
||||
"descr": "WIP driver",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "IR",
|
||||
"title": "TODO",
|
||||
"descr": "IRLibrary wrapper, so you can receive remote signals and send them.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "DDP",
|
||||
"title": "TODO",
|
||||
"descr": "DDP is a LED control protocol that is using UDP. You can use xLights or any other app to control OBK LEDs that way.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "SSDP",
|
||||
"title": "TODO",
|
||||
"descr": "SSDP is a discovery protocol, so BK devices can show up in, for example, Windows network section",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "Wemo",
|
||||
"title": "TODO",
|
||||
"descr": "Wemo emulation for Alexa. You must also start SSDP so it can run, because it depends on SSDP discovery.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "DGR",
|
||||
"title": "TODO",
|
||||
"descr": "Tasmota Device groups driver.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "PWMToggler",
|
||||
"title": "TODO",
|
||||
"descr": "PWMToggler is a custom abstraction layer that can run on top of raw PWM channels. It provides ability to turn off/on the PWM while keeping it's value, which is not possible by direct channel operations. It can be used for some custom devices with extra lights/lasers.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "DoorSensor",
|
||||
"title": "TODO",
|
||||
"descr": "DoorSensor is using deep sleep to preserve battery. This is used for devices without TuyaMCU, where BK deep sleep and wakeup on GPIO is used. This drives requires you to set a DoorSensor pin. Change on door sensor pin wakes up the device. If there are no changes for some time, device goes to sleep.",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "SM2135",
|
||||
"title": "TODO",
|
||||
"descr": "SM2135 custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both SM2135 pin roles. This may need you to remap the RGBCW indexes with SM2135_Map command",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "BP5758D",
|
||||
"title": "TODO",
|
||||
"descr": "BP5758D custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both BP5758D pin roles. This may need you to remap the RGBCW indexes with BP5758D_Map command",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "BP1658CJ",
|
||||
"title": "TODO",
|
||||
"descr": "BP1658CJ custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both BP1658CJ pin roles. This may need you to remap the RGBCW indexes with BP1658CJ_Map command",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "SM2235",
|
||||
"title": "TODO",
|
||||
"descr": "SM2335 andd SM2235 custom-'I2C' LED driver for RGBCW lights. This will start automatically if you set both SM2235 pin roles. This may need you to remap the RGBCW indexes with SM2235_Map command",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "CHT8305",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "MAX72XX",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "TM1637",
|
||||
"title": "TODO",
|
||||
"descr": "Driver for 7-segment LED display with DIO/CLK interface",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "SHT3X",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "Battery",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"requires": ""
|
||||
},
|
||||
{
|
||||
"name": "Bridge",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"requires": ""
|
||||
}
|
||||
]
|
||||
268
docs/json/flags.json
Normal file
268
docs/json/flags.json
Normal file
@ -0,0 +1,268 @@
|
||||
[
|
||||
{
|
||||
"index": "0",
|
||||
"enum": "OBK_FLAG_MQTT_BROADCASTLEDPARAMSTOGETHER",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Broadcast led params together (send dimmer and color when dimmer or color changes, topic name: YourDevName/led_basecolor_rgb/get, YourDevName/led_dimmer/get)\","
|
||||
},
|
||||
{
|
||||
"index": "1",
|
||||
"enum": "OBK_FLAG_MQTT_BROADCASTLEDFINALCOLOR",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Broadcast led final color (topic name: YourDevName/led_finalcolor_rgb/get)\","
|
||||
},
|
||||
{
|
||||
"index": "2",
|
||||
"enum": "OBK_FLAG_MQTT_BROADCASTSELFSTATEPERMINUTE",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Broadcast self state every N (def: 60) seconds (delay configurable by 'mqtt_broadcastInterval' and 'mqtt_broadcastItemsPerSec' commands)\","
|
||||
},
|
||||
{
|
||||
"index": "3",
|
||||
"enum": "OBK_FLAG_LED_RAWCHANNELSMODE",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED][Debug] Show raw PWM controller on WWW index instead of new LED RGB/CW/etc picker\","
|
||||
},
|
||||
{
|
||||
"index": "4",
|
||||
"enum": "OBK_FLAG_LED_FORCESHOWRGBCWCONTROLLER",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Force show RGBCW controller (for example, for SM2135 LEDs, or for DGR sender)\","
|
||||
},
|
||||
{
|
||||
"index": "5",
|
||||
"enum": "OBK_FLAG_CMD_ENABLETCPRAWPUTTYSERVER",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[CMD] Enable TCP console command server (for Putty, etc)\","
|
||||
},
|
||||
{
|
||||
"index": "6",
|
||||
"enum": "OBK_FLAG_BTN_INSTANTTOUCH",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[BTN] Instant touch reaction instead of waiting for release (aka SetOption 13)\","
|
||||
},
|
||||
{
|
||||
"index": "7",
|
||||
"enum": "OBK_FLAG_MQTT_ALWAYSSETRETAIN",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] [Debug] Always set Retain flag to all published values\","
|
||||
},
|
||||
{
|
||||
"index": "8",
|
||||
"enum": "OBK_FLAG_LED_ALTERNATE_CW_MODE",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Alternate CW light mode (first PWM for warm/cold slider, second for brightness)\","
|
||||
},
|
||||
{
|
||||
"index": "9",
|
||||
"enum": "OBK_FLAG_SM2135_SEPARATE_MODES",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[SM2135] Use separate RGB/CW modes instead of writing all 5 values as RGB\","
|
||||
},
|
||||
{
|
||||
"index": "10",
|
||||
"enum": "OBK_FLAG_MQTT_BROADCASTSELFSTATEONCONNECT",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Broadcast self state on MQTT connect\","
|
||||
},
|
||||
{
|
||||
"index": "11",
|
||||
"enum": "OBK_FLAG_SLOW_PWM",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[PWM] BK7231 use 600hz instead of 1khz default\","
|
||||
},
|
||||
{
|
||||
"index": "12",
|
||||
"enum": "OBK_FLAG_LED_REMEMBERLASTSTATE",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Remember LED driver state (RGBCW, enable, brightness, temperature) after reboot\","
|
||||
},
|
||||
{
|
||||
"index": "13",
|
||||
"enum": "OBK_FLAG_HTTP_PINMONITOR",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[HTTP] Show actual PIN logic level for unconfigured pins\","
|
||||
},
|
||||
{
|
||||
"index": "14",
|
||||
"enum": "OBK_FLAG_IR_PUBLISH_RECEIVED",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[IR] Do MQTT publish (RAW STRING) for incoming IR data\","
|
||||
},
|
||||
{
|
||||
"index": "15",
|
||||
"enum": "OBK_FLAG_IR_ALLOW_UNKNOWN",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[IR] Allow 'unknown' protocol\","
|
||||
},
|
||||
{
|
||||
"index": "16",
|
||||
"enum": "OBK_FLAG_LED_BROADCAST_FULL_RGBCW",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Broadcast led final color RGBCW (topic name: YourDevName/led_finalcolor_rgbcw/get)\","
|
||||
},
|
||||
{
|
||||
"index": "17",
|
||||
"enum": "OBK_FLAG_LED_AUTOENABLE_ON_WWW_ACTION",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Automatically enable Light when changing brightness, color or temperature on WWW panel\","
|
||||
},
|
||||
{
|
||||
"index": "18",
|
||||
"enum": "OBK_FLAG_LED_SMOOTH_TRANSITIONS",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Smooth transitions for LED (EXPERIMENTAL)\","
|
||||
},
|
||||
{
|
||||
"index": "19",
|
||||
"enum": "OBK_FLAG_TUYAMCU_ALWAYSPUBLISHCHANNELS",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Always publish channels used by TuyaMCU\","
|
||||
},
|
||||
{
|
||||
"index": "20",
|
||||
"enum": "OBK_FLAG_LED_FORCE_MODE_RGB",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Force RGB mode (3 PWMs for LEDs) and ignore futher PWMs if they are set\","
|
||||
},
|
||||
{
|
||||
"index": "21",
|
||||
"enum": "OBK_FLAG_MQTT_RETAIN_POWER_CHANNELS",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Retain power channels (Relay channels, etc)\","
|
||||
},
|
||||
{
|
||||
"index": "22",
|
||||
"enum": "OBK_FLAG_IR_PUBLISH_RECEIVED_IN_JSON",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[IR] Do MQTT publish (Tasmota JSON format) for incoming IR data\","
|
||||
},
|
||||
{
|
||||
"index": "23",
|
||||
"enum": "OBK_FLAG_LED_AUTOENABLE_ON_ANY_ACTION",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Automatically enable Light on any change of brightness, color or temperature\","
|
||||
},
|
||||
{
|
||||
"index": "24",
|
||||
"enum": "OBK_FLAG_LED_EMULATE_COOL_WITH_RGB",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Emulate Cool White with RGB in device with four PWMS - Red is 0, Green 1, Blue 2, and Warm is 4\","
|
||||
},
|
||||
{
|
||||
"index": "25",
|
||||
"enum": "OBK_FLAG_POWER_ALLOW_NEGATIVE",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[POWER] Allow negative current/power for power measurement (all chips, BL0937, BL0942, etc)\","
|
||||
},
|
||||
{
|
||||
"index": "26",
|
||||
"enum": "OBK_FLAG_USE_SECONDARY_UART",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[UART] Use alternate UART for BL0942, CSE, TuyaMCU, etc\","
|
||||
},
|
||||
{
|
||||
"index": "27",
|
||||
"enum": "OBK_FLAG_AUTOMAIC_HASS_DISCOVERY",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[HASS] Invoke HomeAssistant discovery on change to ip address, configuration\","
|
||||
},
|
||||
{
|
||||
"index": "28",
|
||||
"enum": "OBK_FLAG_LED_SETTING_WHITE_RGB_ENABLES_CW",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Setting RGB white (FFFFFF) enables temperature mode\","
|
||||
},
|
||||
{
|
||||
"index": "29",
|
||||
"enum": "OBK_FLAG_USE_SHORT_DEVICE_NAME_AS_HOSTNAME",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[NETIF] Use short device name as a hostname instead of a long name\","
|
||||
},
|
||||
{
|
||||
"index": "30",
|
||||
"enum": "OBK_FLAG_DO_TASMOTA_TELE_PUBLISHES",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Enable Tasmota TELE etc publishes (for ioBroker etc)\","
|
||||
},
|
||||
{
|
||||
"index": "31",
|
||||
"enum": "OBK_FLAG_CMD_ACCEPT_UART_COMMANDS",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[UART] Enable UART command line\","
|
||||
},
|
||||
{
|
||||
"index": "32",
|
||||
"enum": "OBK_FLAG_LED_USE_OLD_LINEAR_MODE",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[LED] Use old linear brightness mode, ignore gamma ramp\","
|
||||
},
|
||||
{
|
||||
"index": "33",
|
||||
"enum": "OBK_FLAG_PUBLISH_MULTIPLIED_VALUES",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] Apply channel type multiplier on (if any) on channel value before publishing it\","
|
||||
},
|
||||
{
|
||||
"index": "34",
|
||||
"enum": "OBK_FLAG_MQTT_HASS_ADD_RELAYS_AS_LIGHTS",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[MQTT] In HA discovery, add relays as lights\","
|
||||
},
|
||||
{
|
||||
"index": "35",
|
||||
"enum": "OBK_FLAG_NOT_PUBLISH_AVAILABILITY_SENSOR",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[HASS] Deactivate avty_t flag for sensor when publishing to HASS (permit to keep value)\","
|
||||
},
|
||||
{
|
||||
"index": "36",
|
||||
"enum": "OBK_FLAG_DRV_DISABLE_AUTOSTART",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[DRV] Deactivate Autostart of all drivers\","
|
||||
},
|
||||
{
|
||||
"index": "37",
|
||||
"enum": "OBK_FLAG_WIFI_FAST_CONNECT",
|
||||
"title": "todo",
|
||||
"file": "new_pins.h",
|
||||
"descr": "[WiFi] Quick connect to WiFi on reboot (TODO: check if it works for you and report on github)\","
|
||||
}
|
||||
]
|
||||
522
docs/json/ioRoles.json
Normal file
522
docs/json/ioRoles.json
Normal file
@ -0,0 +1,522 @@
|
||||
[
|
||||
{
|
||||
"name": "None",
|
||||
"title": "TODO",
|
||||
"descr": "Default pin role; this pin does nothing.",
|
||||
"enum": "IOR_None",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Relay",
|
||||
"title": "TODO",
|
||||
"descr": "an active-high relay. This relay is closed when a logical 1 value is on linked channel",
|
||||
"enum": "IOR_Relay",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Relay_n",
|
||||
"title": "TODO",
|
||||
"descr": "(as Relay but pin logical value is inversed)",
|
||||
"enum": "IOR_Relay_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button",
|
||||
"title": "TODO",
|
||||
"descr": "a typical button of Tuya device with active-low state (a button that connects IO pin to ground when pressed and also has a 10k or so pull up resistor)",
|
||||
"enum": "IOR_Button",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_n",
|
||||
"title": "TODO",
|
||||
"descr": "as Button but pin logical value is inversed",
|
||||
"enum": "IOR_Button_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "LED",
|
||||
"title": "TODO",
|
||||
"descr": "an active-high LED. The internals of 'LED' are the same as of 'Relay'. Names are just separate to make it easier for users.",
|
||||
"enum": "IOR_LED",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "LED_n",
|
||||
"title": "TODO",
|
||||
"descr": "(as Led but pin logical value is inversed)",
|
||||
"enum": "IOR_LED_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "PWM",
|
||||
"title": "TODO",
|
||||
"descr": "Pulse width modulation output for LED dimmers (with MQTT dimming support from Home Assistant). Remember to set related channel to correct color index, in the RGBCW order. For CW only lights, set only CW indices.",
|
||||
"enum": "IOR_PWM",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "LED_WIFI",
|
||||
"title": "TODO",
|
||||
"descr": "special LED to indicate WLan connection state. LED states are following: LED on = client mode successfully connected to your Router. Half a second blink - connecting to your router, please wait (or connection problem). Fast blink (200ms) - open access point mode. In safe mode (after failed boots), LED might not work.",
|
||||
"enum": "IOR_LED_WIFI",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "LED_WIFI_n",
|
||||
"title": "TODO",
|
||||
"descr": "As LED_WIFI, but with inversed logic.",
|
||||
"enum": "IOR_LED_WIFI_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_ToggleAll",
|
||||
"title": "TODO",
|
||||
"descr": "this button toggles all channels at once",
|
||||
"enum": "IOR_Button_ToggleAll",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_ToggleAll_n",
|
||||
"title": "TODO",
|
||||
"descr": "Button_ToggleAll as, but inversed logic of button",
|
||||
"enum": "IOR_Button_ToggleAll_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DigitalInput",
|
||||
"title": "TODO",
|
||||
"descr": "this is a simple digital input pin, it sets the linked channel to current logical value on it, just like digitalRead( ) from Arduino. This input has a internal pull up resistor.",
|
||||
"enum": "IOR_DigitalInput",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DigitalInput_n",
|
||||
"title": "TODO",
|
||||
"descr": "As DigitalInput as above, but inverted",
|
||||
"enum": "IOR_DigitalInput_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "ToggleChannelOnToggle",
|
||||
"title": "TODO",
|
||||
"descr": "this pin will toggle target channel when a value on this pin changes (with debouncing). you can connect simple two position switch here and swapping the switch will toggle target channel relay on or off",
|
||||
"enum": "IOR_ToggleChannelOnToggle",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DigitalInput_NoPup",
|
||||
"title": "TODO",
|
||||
"descr": "As DigitalInput, but without internal programmable pullup resistor. This is used for, for example, XR809 water sensor and door sensor.",
|
||||
"enum": "IOR_DigitalInput_NoPup",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DigitalInput_NoPup_n",
|
||||
"title": "TODO",
|
||||
"descr": "As DigitalInput_n, but without internal programmable pullup resistor",
|
||||
"enum": "IOR_DigitalInput_NoPup_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BL0937_SEL",
|
||||
"title": "TODO",
|
||||
"descr": "SEL pin for BL0937 energy measuring devices. Set all BL0937 pins to autostart BL0937 driver. Don't forget to calibrate it later.",
|
||||
"enum": "IOR_BL0937_SEL",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BL0937_CF",
|
||||
"title": "TODO",
|
||||
"descr": "CF pin for BL0937 energy measuring devices. Set all BL0937 pins to autostart BL0937 driver. Don't forget to calibrate it later.",
|
||||
"enum": "IOR_BL0937_CF",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BL0937_CF1",
|
||||
"title": "TODO",
|
||||
"descr": "CF1 pin for BL0937 energy measuring devices. Set all BL0937 pins to autostart BL0937 driver. Don't forget to calibrate it later.",
|
||||
"enum": "IOR_BL0937_CF1",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "ADC",
|
||||
"title": "TODO",
|
||||
"descr": "Analog to Digital converter converts voltage to channel value which is later published by MQTT and also can be used to trigger scriptable events",
|
||||
"enum": "IOR_ADC",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SM2135_DAT",
|
||||
"title": "TODO",
|
||||
"descr": "SM2135 DAT pin for SM2135 modified-I2C twowire LED driver, used in RGBCW lights. Set both required SM2135 pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_SM2135_DAT",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SM2135_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "SM2135 CLK pin for SM2135 modified-I2C twowire LED driver, used in RGBCW lights. Set both required SM2135 pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_SM2135_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BP5758D_DAT",
|
||||
"title": "TODO",
|
||||
"descr": "BP5758D DAT pin for BP5758D modified-I2C twowire LED driver, used in RGBCW lights. Set both required BP5758D pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_BP5758D_DAT",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BP5758D_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "BP5758D CLK pin for BP5758D modified-I2C twowire LED driver, used in RGBCW lights. Set both required BP5758D pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_BP5758D_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BP1658CJ_DAT",
|
||||
"title": "TODO",
|
||||
"descr": "BP1658CJ DAT pin for BP5758D modified-I2C twowire LED driver, used in RGBCW lights. Set both required BP1658CJ pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_BP1658CJ_DAT",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BP1658CJ_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "BP1658CJ CLK pin for BP5758D modified-I2C twowire LED driver, used in RGBCW lights. Set both required BP1658CJ pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_BP1658CJ_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "PWM_n",
|
||||
"title": "TODO",
|
||||
"descr": "as above, but percentage of duty is inversed. This might be useful for some special LED drivers that are using single PWM to choose between Cool white and Warm white (it also needs setting a special flag in General options)",
|
||||
"enum": "IOR_PWM_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "IRRecv",
|
||||
"title": "TODO",
|
||||
"descr": "IR receiver for our IRLibrary port",
|
||||
"enum": "IOR_IRRecv",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "IRSend",
|
||||
"title": "TODO",
|
||||
"descr": "IR sender for our IRLibrary port",
|
||||
"enum": "IOR_IRSend",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_NextColor",
|
||||
"title": "TODO",
|
||||
"descr": "for RGB strip with buttons; sets next predefined color. For a LED strip that has separate POWER and COLOR buttons.",
|
||||
"enum": "IOR_Button_NextColor",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_NextColor_n",
|
||||
"title": "TODO",
|
||||
"descr": "As NextColor, but inversed button logic",
|
||||
"enum": "IOR_Button_NextColor_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_NextDimmer",
|
||||
"title": "TODO",
|
||||
"descr": "for RGB strip with buttons; when hold, adjusts the brightness",
|
||||
"enum": "IOR_Button_NextDimmer",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_NextDimmer_n",
|
||||
"title": "TODO",
|
||||
"descr": "As NextDimmer, but inversed button logic",
|
||||
"enum": "IOR_Button_NextDimmer_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "AlwaysHigh",
|
||||
"title": "TODO",
|
||||
"descr": "always outputs 1",
|
||||
"enum": "IOR_AlwaysHigh",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "AlwaysLow",
|
||||
"title": "TODO",
|
||||
"descr": "always outputs 0",
|
||||
"enum": "IOR_AlwaysLow",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "UCS1912_DIN",
|
||||
"title": "TODO",
|
||||
"descr": "WIP driver, write a post on Elektroda if you need it working",
|
||||
"enum": "IOR_UCS1912_DIN",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SM16703P_DIN",
|
||||
"title": "TODO",
|
||||
"descr": "WIP driver, write a post on Elektroda if you need it working",
|
||||
"enum": "IOR_SM16703P_DIN",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_NextTemperature",
|
||||
"title": "TODO",
|
||||
"descr": "Button that automatically allows you to control temperature of your LED device",
|
||||
"enum": "IOR_Button_NextTemperature",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_NextTemperature_n",
|
||||
"title": "TODO",
|
||||
"descr": "Like Button_NextTemperature, but inversed button logic",
|
||||
"enum": "IOR_Button_NextTemperature_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_ScriptOnly",
|
||||
"title": "TODO",
|
||||
"descr": "This button does nothing automatically, even the linked channel is not changed. Useful for scripts, but you can still also use any buttons for scripting.",
|
||||
"enum": "IOR_Button_ScriptOnly",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Button_ScriptOnly_n",
|
||||
"title": "TODO",
|
||||
"descr": "Like Button_ScriptOnly, but inversed logic",
|
||||
"enum": "IOR_Button_ScriptOnly_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DHT11",
|
||||
"title": "TODO",
|
||||
"descr": "DHT11 data line. You can have multiple DHT sensors on your device. Related driver is automatically started. Results are saved in related channels to pin with that role (when editing pins, you get two textboxes to set channel indexes)",
|
||||
"enum": "IOR_DHT11",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DHT12",
|
||||
"title": "TODO",
|
||||
"descr": "DHT12 data line. You can have multiple DHT sensors on your device. Related driver is automatically started. Results are saved in related channels to pin with that role (when editing pins, you get two textboxes to set channel indexes)",
|
||||
"enum": "IOR_DHT12",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DHT21",
|
||||
"title": "TODO",
|
||||
"descr": "DHT21 data line. You can have multiple DHT sensors on your device. Related driver is automatically started. Results are saved in related channels to pin with that role (when editing pins, you get two textboxes to set channel indexes)",
|
||||
"enum": "IOR_DHT21",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DHT22",
|
||||
"title": "TODO",
|
||||
"descr": "DHT22 data line. You can have multiple DHT sensors on your device. Related driver is automatically started. Results are saved in related channels to pin with that role (when editing pins, you get two textboxes to set channel indexes)",
|
||||
"enum": "IOR_DHT22",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "CHT8305_DAT",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"enum": "IOR_CHT8305_DAT",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "CHT8305_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"enum": "IOR_CHT8305_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SHT3X_DAT",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"enum": "IOR_SHT3X_DAT",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SHT3X_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "TODO",
|
||||
"enum": "IOR_SHT3X_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SOFT_SDA",
|
||||
"title": "TODO",
|
||||
"descr": "Generic software SDA pin for our more advanced, scriptable I2C driver. This allows you to even connect a I2C display to OBK.",
|
||||
"enum": "IOR_SOFT_SDA",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SOFT_SCL",
|
||||
"title": "TODO",
|
||||
"descr": "Generic software SCL pin for our more advanced, scriptable I2C driver.",
|
||||
"enum": "IOR_SOFT_SCL",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SM2235_DAT",
|
||||
"title": "TODO",
|
||||
"descr": "It works for both SM2235 and SM2335. SM2235 DAT pin for SM2235 modified-I2C twowire LED driver, used in RGBCW lights. Set both required SM2235 pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_SM2235_DAT",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SM2235_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "It works for both SM2235 and SM2335. SM2235 CLK pin for SM2235 modified-I2C twowire LED driver, used in RGBCW lights. Set both required SM2235 pins to autostart the related driver. Don't forget to Map the colors order later, so colors are not mixed.",
|
||||
"enum": "IOR_SM2235_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BridgeForward",
|
||||
"title": "TODO",
|
||||
"descr": "Motor/Relay bridge driver control signal. FORWARD direction.",
|
||||
"enum": "IOR_BridgeForward",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BridgeReverse",
|
||||
"title": "TODO",
|
||||
"descr": "Motor/Relay bridge driver control signal. REVERSE direction.",
|
||||
"enum": "IOR_BridgeReverse",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SmartButtonForLEDs",
|
||||
"title": "TODO",
|
||||
"descr": "A single button that does all control for LED. Click it toggle power, hold to adjust brightness, double click for next color, triple click for next temperature",
|
||||
"enum": "IOR_SmartButtonForLEDs",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "SmartButtonForLEDs_n",
|
||||
"title": "TODO",
|
||||
"descr": "As SmartButtonForLEDs, but inverted",
|
||||
"enum": "IOR_SmartButtonForLEDs_n",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DoorSensorWithDeepSleep",
|
||||
"title": "TODO",
|
||||
"descr": "Setting this role will make DoorSensor driver autostart. DoorSensor will work like digital input, sending only its value on change. When there are no changes for some times, device will go into deep sleep to save battery. When a change occurs, device will wake up and report change.",
|
||||
"enum": "IOR_DoorSensorWithDeepSleep",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "DoorSensorWithDeepSleep_NoPup",
|
||||
"title": "TODO",
|
||||
"descr": "As DoorSensorWithDeepSleep, but no pullup resistor",
|
||||
"enum": "IOR_DoorSensorWithDeepSleep_NoPup",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BAT_ADC",
|
||||
"title": "TODO",
|
||||
"descr": "Like ADC, but for a Battery driver that does Battery measurement.",
|
||||
"enum": "IOR_BAT_ADC",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "BAT_Relay",
|
||||
"title": "TODO",
|
||||
"descr": "Like Relay, but for a Battery driver that does Battery measurement.",
|
||||
"enum": "IOR_BAT_Relay",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "TM1637_DIO",
|
||||
"title": "TODO",
|
||||
"descr": "TM1637 LED display driver DIO pin. Setting all required TM1637 pins will autostart related driver",
|
||||
"enum": "IOR_TM1637_DIO",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "TM1637_CLK",
|
||||
"title": "TODO",
|
||||
"descr": "TM1637 LED display driver CLK pin. Setting all required TM1637 pins will autostart related driver",
|
||||
"enum": "IOR_TM1637_CLK",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
},
|
||||
{
|
||||
"name": "Total_Options",
|
||||
"title": "TODO",
|
||||
"descr": "Current total number of available IOR roles",
|
||||
"enum": "IOR_Total_Options",
|
||||
"file": "new_pins.h",
|
||||
"driver": ""
|
||||
}
|
||||
]
|
||||
@ -860,6 +860,8 @@ fs.writeFileSync('docs/flags.md', flagsmdshort);
|
||||
console.log('wrote flags.md');
|
||||
fs.writeFileSync('docs/constants.md', constantsmdshort);
|
||||
console.log('wrote constants.md');
|
||||
fs.writeFileSync('docs/drivers.md', driversmdshort);
|
||||
console.log('wrote drivers.md');
|
||||
fs.writeFileSync('docs/commands-extended.md', mdlong);
|
||||
console.log('wrote commands-extended.md');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user