0
\$\begingroup\$

I have a module that outputs 3V, has a 'Common' terminal (GND), and a switch terminal. The latter two can accept a toggle input OR a pulse input, and internally it switches on a light.

I have a touch switch that sends a pulse on two different pins. Normally, it drives a dual coil relay - so a SET pulse will turn the relay on, and a RESET pulse will turn the relay off. I have removed all this, and want to use the pulse signals to connect directly to the Aeon Labs Module.

schematic

simulate this circuit – Schematic created using CircuitLab

The circuit above works great. The diodes create the OR, and the transistor connects the internal switch of the Aeon Labs Module. Perfect.

However, when the device first powers up, the PIC controller sends a pulse to the RESET pin - presumably to set itself to a known state on startup. However for me - it means it will tell the Aeon Labs Module to turn the light on!

What I need is a way to use a capacitor/resistor/etc to delay the transistor being usable. So any pulses to the transistor in the first 5 seconds after power on do not actually operate the transistor. After 5 seconds (enough time for the first unwanted pulse to occur), then the transistor should operate as normal.

Edit: The RESET pin is just a name - it is not the RESET pin of the uC. Both SET and RESET are output pins on the uC. They were (not anymore) connected to a dual coil relay. One coil was to SET/latch the relay. One coil was the RESET/unlatch the relay. When the uC detects a touch, it sends a pulse on either of those pins (it alternates between the two) to what it THINKS will be a relay. But the relay is gone now. I now want to take those pulse and feed it to something else. Grand.

I can't edit the uC code. It's preprogrammed by the manufacturer.

On startup the uC is programmed to send a pulse down the output pin labelled RESET. I want to use electronics to disable/snub/block that pulse going to the Aeon Labs module. So for about 2 seconds after power is applied - disable the transistor base. After that, have everything behave as it should.

Any thoughts?

Thanks.

\$\endgroup\$
  • \$\begingroup\$ There are some "standard" PFET + cap delay circuits one is shown here; ignore the right-hand BJT. 5 secs is along time though. Are you sure you are using those uC pins right? \$\endgroup\$ – Fizz Nov 28 '15 at 14:04
  • \$\begingroup\$ By what do you mean; 'using those uC pins right'? \$\endgroup\$ – mriksman Nov 28 '15 at 17:05
  • \$\begingroup\$ In order to energize a relay coil you need to apply voltage for a fair bit of time at uC time scale... so if you're getting spurious triggering, even at start-up, something else might be wrong. \$\endgroup\$ – Fizz Nov 28 '15 at 17:10
  • \$\begingroup\$ Are you sure it's the reset pin? Try adding a pull-down resistor to the BJT base to have a default off state. \$\endgroup\$ – FRob Nov 28 '15 at 17:15
  • 1
    \$\begingroup\$ @Respawned Fluff The uC sends a pulse on the output pin I have labelled RESET. It is programmed to do so on startup. I have no control over the programming - it is from the manufacturer. I just need to snub/disable/hide that initial pulse it sends out using electrical components (I'm thinking a capacitor/resistor..?) After a few seconds, a pulse sent on either SET or RESET output pins by the uC should function as normal; activate the transistor it is connected to \$\endgroup\$ – mriksman Nov 28 '15 at 19:41
1
\$\begingroup\$

An RC Delay and an AND transistor arrangement did the trick.

R1 and C1 take about 2 seconds to reach 2V; at this point, the current is enough through R2 to turn Q1 on. It stays like this as long as power is applied.

Then the OR gate can function as it should.

Now, when power is first applied and the uC tries to send a pulse down one of the OR gate pins, nothing happens because Q1 hasn't yet turned on.

schematic

simulate this circuit – Schematic created using CircuitLab

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.