Skip to content

diodes: make diode helper work

Stuart Fisher requested to merge diode-helper into master

Provides two devices

A diode manager: with diodes.on(diode_id), diodes.off(diode_id)

BLISS [3]: diodes                                                                                                                                                                                   
  Out [3]: Diodes:
             d0:	OFF	[wcid27e]
             d1:	OFF	[wcid27e]
             d2:	OFF	[wcid27e]
             d3:	OFF	[wcid27e]
             d4:	OFF	[wcid27e]
             d5:	OFF	[wcid27e]
             d6:	OFF	[wcid27e]
             d7:	OFF	[wcid27e]
             d8:	OFF	[wcid27e]
             d9:	OFF	[wcid27e]
             d10:	OFF	[wcid27e]
             d11:	OFF	[wcid27e]
             d12:	OFF	[wcid27e]
             d13:	OFF	[wcid27e]
             d14:	OFF	[wcid27e]
             d15:	OFF	[wcid27e]
             d16:	OFF	[wcid27e]
             d17:	OFF	[wcid27e]
             d18:	OFF	[wcid27e]
             d19:	OFF	[wcid27e]
             d20:	OFF	[wcid27electro]
             d21:	OFF	[wcid27electro]
             d22:	OFF	[wcid27electro]
             d23:	OFF	[wcid27electro]
             d24:	OFF	[wcid27electro]
             d25:	OFF	[wcid27electro]
             d26:	OFF	[wcid27electro]
             d27:	OFF	[wcid27electro]
             d28:	ON	[wcid27electro]
             d29:	ON	[wcid27electro]
             d30:	OFF	[wcid27electro]
             d31:	ON	[wcid27electro]
             d32:	OFF	[wcid27electro]
             d33:	OFF	[wcid27electro]
             d34:	OFF	[wcid27electro]
             d35:	OFF	[wcid27electro]
             d36:	OFF	[wcid27electro]
             d37:	OFF	[wcid27electro]
             d38:	OFF	[wcid27electro]
             d39:	ON	[wcid27electro]

And a preset manager, that can apply functions to objects:

name: presets
plugin: bliss
package: id27.controllers.presetmanager
class: PresetManager
config:
  devices:
   - $diodes
   - $lhth
   - $obj1t
   - $obj2t
  presets:
    look1:
      - lhth:
         - move: 0
      - diodes:
         - off: 24
         - on: 32
         - off: 31
         - on: 27
         - on: 28
         - off: 26
         - off: 30
         - off: 25

    look1y:
      - diodes:
         - off: 30
         - off: 28
         - off: 26
         - off: 25

Presets can be applied with preset.apply("name"):

BLISS [4]: presets = config.get("presets")                                                                                                                                                          
BLISS [5]: presets                                                                                                                                                                                  
  Out [5]: Preset Manager:
           
           Devices:
            - diodes
            - lhth
            - obj1t
            - obj2t
           
           Available Presets:
            - look1
            - look1y
            - look1f
            - look1off
            - look2
            - look2y
            - look2f
            - look2off
Edited by Stuart Fisher

Merge request reports