Hi - > [...] > OK to commit? Looks fine to commit, though please consider not using a new "active_p" member variable in order to send edges on the active pin. This can be done by replacing ... > + // Drive the active pin if the threshold has been crossed. > + if (UNLIKELY(! this->active_p)) > + { > + this->active_pin.drive (1); > + this->active_p = true; > + } > + with if (this->active_pin.sense() != 1) this->active_pin->drive(1); and a corresponding change for the 0 transition. - FChE