02-01-2025, 06:53 AM
While investigating the possibility of a hack to deal with this issue I had a look at the circuit diagram to see if there was a way to wire an output back to an input to get the necessary chaining of IFTTT rules (thanks to Kincony for publishing this, it would have been much harder trying to trace it on a multilayer board with SMDs).
In case this is useful to others, here's how things work. In particular if you're confused about dry vs. wet contacts and so on, read on. The circuit diagram is a bit tricky to read since there are elements scattered across it in different locations, there are groups of pullups, snubber diodes, and other things off by themselves that you have to link to the main circuit element, if I've made any mistakes please let me know.
For the inputs, one side of the optocoupler LEDs is tied to 12V and the other, which corresponds to the dry-contact inputs, has a pullup to 12V when the contact is open and gets connected to GND when the contact is closed. So contact open = no opto LEDs lit, contact closed = opto LEDs lit. This is how an input dry contact is turned into a wet contact.
For the outputs, there's a p-channel MOSFET that switches a voltage onto the output. This one is a bit confusing because if you look at the board images there's a 12/24V DC input next to the output connectors rather than the expected GND. What happens is that when the output is off there's an open circuit between the 12/24VDC input and the output connector. When it's on the voltage from the input connector is switched onto the output connector, with the GND provided separately. In other words you externally wire the GND to the board and whatever it is you're driving from the output, and only a single wire, the output, goes to the other device with the GND shared between them.
This possibly also means you can switch something other than 12V or 24V onto the output, the inputs on the, ah, outputs are labelled LO0 and LO1 and only appear on the output side of the output optocouplers, so you may be able to run 5V relays off them by feeding in 5V on the "12/24V DC" input.
In case this is useful to others, here's how things work. In particular if you're confused about dry vs. wet contacts and so on, read on. The circuit diagram is a bit tricky to read since there are elements scattered across it in different locations, there are groups of pullups, snubber diodes, and other things off by themselves that you have to link to the main circuit element, if I've made any mistakes please let me know.
For the inputs, one side of the optocoupler LEDs is tied to 12V and the other, which corresponds to the dry-contact inputs, has a pullup to 12V when the contact is open and gets connected to GND when the contact is closed. So contact open = no opto LEDs lit, contact closed = opto LEDs lit. This is how an input dry contact is turned into a wet contact.
For the outputs, there's a p-channel MOSFET that switches a voltage onto the output. This one is a bit confusing because if you look at the board images there's a 12/24V DC input next to the output connectors rather than the expected GND. What happens is that when the output is off there's an open circuit between the 12/24VDC input and the output connector. When it's on the voltage from the input connector is switched onto the output connector, with the GND provided separately. In other words you externally wire the GND to the board and whatever it is you're driving from the output, and only a single wire, the output, goes to the other device with the GND shared between them.
This possibly also means you can switch something other than 12V or 24V onto the output, the inputs on the, ah, outputs are labelled LO0 and LO1 and only appear on the output side of the output optocouplers, so you may be able to run 5V relays off them by feeding in 5V on the "12/24V DC" input.