Charmed Quark Systems, Ltd. - Support Forums and Community
Class: Relay - Printable Version

+- Charmed Quark Systems, Ltd. - Support Forums and Community (
+-- Forum: General Discussion (
+--- Forum: Device Classification (
+--- Thread: Class: Relay (/showthread.php?tid=8316)

Class: Relay - Dean Roddey - 05-01-2013

General Description

This thread is for discussion of the Relay device class. Drivers that implement this device class will provide one or more relays which can be opened or closed via external control, and their current open/close state sensed.

Fields Provided

[INDENT]It is assumed that, in the general case, the fields will likely be nameable by the user, therefore there are no naming convention limitations on the fields of this device class, other than that they MUST use the appropriate prefix indicator, i.e. that all of them be in one of the forms:


This indicates that the fields are implementing the Relay device class. As long as the 'fieldname' portion follows the standard CQC field name conventions, that is all that is required from a field naming point of view.

If initial default names are assigned until the user can/does rename them, then it is SUGGESTED that the default names be in some way related back to device specific characteristics so that which relay is controlled is obvious.

Relays may be readable, but they may not. Some devices will not support it. If you are creating portable content, don't depend on being able to read them.

Multi-Unit Considerations

[INDENT]Though generally it is assumed that all relay fields will just be nameable by the user to reflect their usage, if a device provides identical banks of relays, the driver MAY use the sub-unit naming convention, though that means that each sub-unit must provide an identical set of fields. In this case, the user or device provided name will be the sub-unit name.[/INDENT]

Semantic Requirements

[INDENT]All such fields should be semantically marked with the Relay semantic field type, and follow the conventions indicated by that semantic field type[/INDENT]

Backdoor Commands/Queries

[INDENT]None are required at this time.[/INDENT]

Class: Relay - Dean Roddey - 05-01-2013

(reserved for expansion)

Class: Relay - Dean Roddey - 05-01-2013

(reserved for expansion 2)

Class: Relay - Dean Roddey - 05-04-2013

Very similar to the DIO and AIO ones basically. Does that all make sense?

Class: Relay - Dean Roddey - 07-31-2014

Tightened up to require readability, and to clarify multi-unit naming. At first on these types of things I said that there wouldn't be multi-unit requirements, but that's overly broad. In some cases it might be useful, so it's been expanded to discuss that.