diff --git a/light9/collector/device.py b/light9/collector/device.py --- a/light9/collector/device.py +++ b/light9/collector/device.py @@ -150,6 +150,11 @@ def untype_toOutputAttrs(deviceType, dev } elif deviceType == L9['SimpleDimmer']: return {L9['level']: _8bit(floatAttr(L9['brightness']))} + elif deviceType == L9['MegaFlash']: + return { + L9['brightness']: _8bit(floatAttr(L9['brightness'])), + L9['strobeSpeed']: _8bit(floatAttr(L9['strobeSpeed'])), + } elif deviceType == L9['Mini15']: out = { L9['rotationSpeed']: 0, # seems to have no effect diff --git a/show/dance2019/deviceClass.n3 b/show/dance2019/deviceClass.n3 --- a/show/dance2019/deviceClass.n3 +++ b/show/dance2019/deviceClass.n3 @@ -5,9 +5,16 @@ :brightness a :DeviceAttr; rdfs:label "brightness"; :dataType :scalar . :strobe a :DeviceAttr; rdfs:label "strobe"; :dataType :scalar; rdfs:comment "0=none, 1=fastest" . +:strobeSpeed a :DeviceAttr; rdfs:label "strobeSpeed"; :dataType :scalar . :doNotUse a :DeviceAttr; rdfs:label "-"; :dataType :scalar . - +:MegaFlash a :DeviceClass; rdfs:label "Mega Flash" ; +:doc ; + :deviceAttr :brightness, :strobeSpeed; + :attr + [ :outputAttr :strobeSpeed; :dmxOffset 0 ], + [ :outputAttr :brightness; :dmxOffset 1 ] . + :SimpleDimmer a :DeviceClass; rdfs:label "SimpleDimmer"; :deviceAttr :brightness; :attr diff --git a/show/dance2019/theaterLightConfig.n3 b/show/dance2019/theaterLightConfig.n3 --- a/show/dance2019/theaterLightConfig.n3 +++ b/show/dance2019/theaterLightConfig.n3 @@ -17,6 +17,7 @@ dev:par6 a :LedPar54; :dmxUn dev:par7 a :LedPar54; :dmxUniverse dmxA:; :dmxBase 161 . dev:par8 a :LedPar54; :dmxUniverse dmxA:; :dmxBase 168 . +dev:strobe a :SimpleDimmer; :dmxUniverse dmxA:; :dmxBase 115 . dev:down1 a :SimpleDimmer; :dmxUniverse dmxA:; :dmxBase 11 . dev:down2 a :SimpleDimmer; :dmxUniverse dmxA:; :dmxBase 9 .