@@ -556,9 +556,11 @@ A :any:`SysfsGPIO` resource describes a GPIO line.
556
556
557
557
SysfsGPIO :
558
558
index : 12
559
+ active_low : False
559
560
560
561
Arguments:
561
562
- index (int): index of the GPIO line
563
+ - active_low (bool, default=False): optional, invert the logical line value when True
562
564
563
565
Used by:
564
566
- `GpioDigitalOutputDriver `_
@@ -577,6 +579,7 @@ USB based gpiochips.
577
579
' @SUBSYSTEM ' : ' usb'
578
580
' @ID_SERIAL_SHORT ' : ' D38EJ8LF'
579
581
pin : 0
582
+ active_low : False
580
583
581
584
The example would search for a USB gpiochip with the key `ID_SERIAL_SHORT `
582
585
and the value `D38EJ8LF ` and use the pin 0 of this device.
@@ -585,6 +588,7 @@ The `ID_SERIAL_SHORT` property is set by the usb_id builtin helper program.
585
588
Arguments:
586
589
- match (dict): key and value pairs for a udev match, see `udev Matching `_
587
590
- pin (int): gpio pin number within the matched gpiochip.
591
+ - active_low (bool, default=False): optional, invert the logical line value when True
588
592
589
593
Used by:
590
594
- `GpioDigitalOutputDriver `_
@@ -2213,6 +2217,72 @@ Implements:
2213
2217
Arguments:
2214
2218
- delay (float, default=2.0): delay in seconds between off and on
2215
2219
2220
+ ManualButtonDriver
2221
+ ~~~~~~~~~~~~~~~~~~
2222
+ A :any: `ManualButtonDriver ` requires the user to control the taget button.
2223
+ This is required if a strategy is used with the target, but no automatic
2224
+ button control is available.
2225
+
2226
+ The driver's name will be displayed during interaction.
2227
+
2228
+ Binds to:
2229
+ - None
2230
+
2231
+ Implements:
2232
+ - :any: `ButtonProtocol `
2233
+
2234
+ .. code-block :: yaml
2235
+
2236
+ ManualButtonDriver :
2237
+ name : ' example-board'
2238
+
2239
+ Arguments:
2240
+ - None
2241
+
2242
+ ExternalButtonDriver
2243
+ ~~~~~~~~~~~~~~~~~~~~
2244
+ An :any: `ExternalButtonDriver ` is used to control a target button via an
2245
+ external command.
2246
+
2247
+ Binds to:
2248
+ - None
2249
+
2250
+ Implements:
2251
+ - :any: `ButtonProtocol `
2252
+
2253
+ .. code-block :: yaml
2254
+
2255
+ ExternalButtonDriver :
2256
+ cmd_press : ' example_command press and hold'
2257
+ cmd_release : ' example_command release'
2258
+ cmd_press_for : ' example_command press_for'
2259
+ delay : 2.0
2260
+
2261
+ Arguments:
2262
+ - cmd_press (str): command to press and hold the button on the board
2263
+ - cmd_release (str): command to release the button on the board
2264
+ - cmd_press_for (str): command to press, pause, and release the button on the board
2265
+ - delay (float, default=1.0): delay in seconds when calling press_for
2266
+
2267
+ DigitalOutputButtonDriver
2268
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
2269
+ A :any: `DigitalOutputButtonDriver ` is used to control a target button via a
2270
+ DigitalOutputDriver
2271
+
2272
+ Binds to:
2273
+ - :any: `DigitalOutputProtocol `
2274
+
2275
+ Implements:
2276
+ - :any: `ButtonProtocol `
2277
+
2278
+ .. code-block :: yaml
2279
+
2280
+ DigitalOutputButtonDriver :
2281
+ delay : 2.0
2282
+
2283
+ Arguments:
2284
+ - delay (float, default=1.0): delay in seconds when calling press_for
2285
+
2216
2286
GpioDigitalOutputDriver
2217
2287
~~~~~~~~~~~~~~~~~~~~~~~
2218
2288
The :any: `GpioDigitalOutputDriver ` writes a digital signal to a GPIO line.
@@ -2228,13 +2298,17 @@ Binds to:
2228
2298
2229
2299
Implements:
2230
2300
- :any: `DigitalOutputProtocol `
2301
+ - :any: `ResetProtocol `
2302
+ - :any: `PowerProtocol `
2303
+ - :any: `ButtonProtocol `
2231
2304
2232
2305
.. code-block :: yaml
2233
2306
2234
- GpioDigitalOutputDriver : {}
2307
+ GpioDigitalOutputDriver :
2308
+ delay : 2.0
2235
2309
2236
2310
Arguments:
2237
- - None
2311
+ - delay (float, default=1.0): delay in seconds between off and on for a power cycle or between states for button press_for
2238
2312
2239
2313
SerialPortDigitalOutputDriver
2240
2314
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0 commit comments