The related changes to enable latching board is now in branch 218.2:
They haven’t been merged into the master branch yet, but will be very soon.
Technically, the way it works is as follows:
– each driver board type (AC/DC/Latch) use an IO expander chip (PCF8574 in revision 0 and PCA9555 in revision 1) that’s configured on a different I2C address (0x21 for AC, 0x22 for DC and 0x23 for Latch). This way, the main controller board (upper layer board) detects the I2C address to identify which type it is.
– The IO expander on Latch type has 3 signal control pins (BPE/BVE//COM) which are in charge of controlling the boost power enable, boost voltage enable, and common gate. Each zone as well as the common gate has an half H-bridge very much the same as on OSBee, allowing the gate to be connected to either ground or boosted 24V DC voltage.
– depending on whether you are opening or closing a zone, the code configures each gate accordingly, then boosts voltage, and supplies impulse current to a zone. This part of code pretty much follows the OSBee firmware code.