Yocto-PWM-Rx enhancements

Yocto-PWM-Rx enhancements

The Yocto-PWM-Rx is an isolated USB module for measuring various types of periodic signals. A few years ago, we wrote a post summarizing the various possibilities and explaining how to configure the module for each of them. Despite this, we still occasionally receive questions from users who are surprised by some of the module's behavior. So we went back to the drawing board to try and improve it.



If the Yocto-PWM-Rx was limited to measuring periodic signals consisting exclusively of regular alternations between high and low signals, the measure would be almost trivial. But in the real world, the module is bound to evaluate atypical conditions:

  • When the period seems to widen a lot, is it a slowing down of the period or a stopping? How long does it take to decide that it's a stop?

    A signal that slows down... or stops?
    A signal that slows down... or stops?


  • When starting a signal with more than two edges per period (e.g. generated by a reed contact), at what point can we differentiate the true period from intra-period oscillations?

    Period or no period ?
    Period or no period ?


The Yocto-PWM-Rx features an adaptive system that handles period detection quite efficiently, even in the case of signals with more than two edges per period. However, if you want the algorithm to be as reactive as possible in ambiguous cases, you can tell the module some of the characteristics of the signal.

The essential information to facilitate the resolution of ambiguous circumstances is the frequency range of the signal that the Yocto-PWM-Rx is to analyze.

  • If you indicate that your signal doesn't use frequencies below 1 Hz, this prevents the module from interpreting a few isolated pulses as a signal at 0.05 Hz, for example, a measure which could take several tens of seconds to correct.
  • If your signal is noisy, but the useful frequency is limited, it's best to reduce the acquisition bandwidth to 1 MHz or less, to filter out high-frequency noise. Interpretation will be all the better for it.


Please note that if you purchased your module before April 2025, we recommend that you update its firmware to the latest version, to benefit from the algorithm that has been further improved following our tests over the last few days. This update corrects a bug in the specific case where a very slow signal (frequency < 0.033 Hz) could lock period detection. It also adds the possibility of specifying a minimum frequency. If you're updating an existing module, the limit will be set at 0.02 Hz to preserve compatibility with the previous firmware, in case you're using very slow frequencies. However, new modules will be delivered with a minimum frequency of 1 Hz, as slower signals are the exception. If necessary, you can of course lower the limit to 0.02 Hz.

The new UI including a new setting to specify the minimum frequency to be detected
The new UI including a new setting to specify the minimum frequency to be detected


Among other recent improvements, we've added a resetPeriodDetection() function to the Yoctopuce library, which allows you to reset the period detection algorithm, for example if you want to instantly return the module to a specific state before the start of a measuring sequence. You will find it in all future versions of our library. With the new firmware, the reset button on the VirtualHub interface, which until now only reset the pulse counter, now also calls up this function.

Add a comment No comment yet Back to blog












Yoctopuce, get your stuff connected.