Sending 200-300ms pulses from CBus?

Discussion in 'General Discussion' started by scott_, Apr 30, 2010.

  1. scott_


    Aug 21, 2006
    Likes Received:

    I'm looking for a way to toggle my Air Conditioner via CBus. My system has an expansion port on the back, if short 2 wires on it for 200-300ms, this toggle the system on/off.

    I've been told the system won't register longer duration pulses.

    However ... a 200-300ms pulse is a bit quick for cbus to do consistently.

    Does anyone know of a good 3rd-party device I could use?

    Thinking I could close my CBus relay for a couple of seconds ... which then tells the 3rd party device to send a 200-300ms pulse ...

    Any suggestions or other ideas appreciated. :)

    scott_, Apr 30, 2010
    1. Advertisements

  2. scott_

    NickD Moderator

    Nov 1, 2004
    Likes Received:
    I would have thought a 200-300ms window for the messages is achievable using C-Bus, particularly if you have a logic engine. The logic engine runs 200ms cycles, so if you were to turn a group on in one cycle and off the next, it will be *at least* 200ms, and unless your bus is *really* busy, the message should get through in the 100ms window you have. The problem then is that if you use a relay as your output device, the response time of the relay comes into play.

    Instead, you could probably just use a bus coupler with external LEDs (5102BCLEDL), and wire the LED of an optoisolator in place of the LED, and the open collector output of the optoisolator across your expansion input (assuming it's a low voltage input). This way, when you turn the group on and the bus coupler turns its indicator on, the optoisolator turns on its output.

    Alternatively, if you want a guaranteed 250ms pulse, you could build something yourself.. depending on how handy you are with electronics, a simple 555 timer circuit could do this... only a few $ worth of bits plus your time to make it up.

    Back in the day when Dick Smith used to sell electronic components (well.. they still do, but they're hidden away pretty well and the selection is very ordinary), they used to have a printed catalogue with a "Data" section in the back... no idea if they still publish this. There was an example of a 555 timer circuit configured as a "monostable" circuit. This provides a fixed pulse output (which you define with the choice of a few resistors and capacitors) from an incoming edge. You could use the output from the monostable to drive an optoisolator, or a relay. You could use the same optoisolated/bus coupler method as above to trigger the monostable.

    NickD, Apr 30, 2010
    1. Advertisements

  3. scott_


    Aug 4, 2004
    Likes Received:
    Townsville, Australia
    Another way to generate a short pulse in C-Bus without the need for a logic engine, if you want to make it happen in response to pressing a button on any C-Bus key unit is as follows:

    1) configure the key unit so that the 'long press time' is set to approximately 200ms (it's normally set to 400ms to give a good response when setting a light brightness)
    2) set the key functions so that "short press" (just press) is OKNEY and all other press events are set to OFFKEY.
    3) configure the button to control a group

    4) configure a relay (or bus coupler with external LEDs as Nick pointed out) to react to the same group as the button above is controlling.

    The relay or bus coupler should then produce a pulsed output as required. Depending upon C-Bus traffic, the pulse should be reliable, but if you are pressing the button just after the start of a C-Bus status report, the pulse will be extended to as high as 330ms, but this should be a rare event (and you can always jus press the button a second time if it happens)

    Another way that would be more reliable, but ties up valuable relay outputs is to configure the first two channels of a relay unit that supports interlocking so that they are interlocked. Then set up the first channel so the relay is closed at a threshold of zero, and the second channel to close at a threshold of say 5%. Both relays should be configured to be controlled by the same group. If the group is initially OFF, then if the group is given a RAMP command to any level higher than 5%, the ramp rate and the threshold for the second relay can be used to define the pulse duration. If the ramp is achieved with a recall ramp command on a key unit for instance, with a rate of 4 seconds, then the first relay will close for around 200ms before it opens and the second relay takes over. Issuing an OFF command will reset the system. This way the timing is entirely within the relay unit, and the pulse width will be consistent irrespective of bus traffic.
    Don, Apr 30, 2010
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.