6 // HostModel has eight inputs and eight relay outputs and occupies slot
8 HostModel = "m31-axax8080g-u"
10 // MixedModel adds eight digital inputs and eight digital outputs.
11 MixedModel = "m31-gaxax8080-u"
13 // InputModel adds sixteen digital inputs.
14 InputModel = "m31-gaxxxa000-u"
16 // OutputModel adds sixteen digital outputs.
17 OutputModel = "m31-gxxax00a0-u"
19 // AnalogModel adds eight voltage outputs from zero through ten volts.
20 AnalogModel = "m31-gxxxb0008-u"
23 // Module occupies its slice index in Settings.Modules. PulseWidths maps digital
24 // output channels to hardware pulse widths. Widths must be whole milliseconds
25 // from 50 through 65535 milliseconds. Other digital outputs use level mode. The
26 // constructor copies the topology and does not retain these maps.
29 PulseWidths map[int]time.Duration