Announcement

Collapse
No announcement yet.

Announcement

Collapse
No announcement yet.

Signal Interpretation Layer for PI Metal Detectors

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Signal Interpretation Layer for PI Metal Detectors

    Hello everyone,
    I want to share an idea that might be interesting for people working on Pulse Induction (PI) metal detectors, especially hobby builds.
    This is not a finished project or a specific implementation, but more of a concept that anyone can experiment with or improve.
    Problem we all face
    Most hobby PI detectors today are still quite limited in one area:
    poor target discrimination
    false signals caused by soil or mineralization
    inconsistent behavior between different builds
    heavy reliance on audio interpretation and user experience
    Even when the detector works, interpreting the signal correctly is often the hardest part.
    Core idea
    Instead of focusing only on “detect or not detect”, the idea is to add a layer that tries to interpret the signal itself.
    The PI decay signal contains information, but usually we only use it in a very simple way.
    The proposal is to:
    extract a small set of meaningful characteristics from the decay response
    instead of using the full raw waveform
    and then interpret those characteristics in a smarter way
    This interpretation layer could be implemented using simple algorithms or very small machine learning models (TinyML), depending on the builder’s preference.
    General system concept
    Coil → Analog front-end → Microcontroller → Feature extraction → Interpretation layer → Output
    The key point is that the “intelligence” is not in the analog part, but in how the signal is described and interpreted digitally.
    Data and learning idea
    Another interesting direction (if someone wants to explore it) is the idea of building a shared dataset from hobby PI builds.
    This could include:
    different coil designs
    different environments and soil conditions
    different targets
    Instead of storing full waveforms, the dataset could focus on extracted features plus the known outcome.
    This could later be used to train a simple model externally and deploy it back to microcontrollers.
    Front-end discussion
    One important open question is the analog front-end design.
    Since everything depends on the decay signal quality, the front-end must be:
    stable
    clean enough for analysis
    not overly processed
    suitable for digital sampling
    There are different existing approaches in hobby designs, and it would be interesting to understand which type of front-end works best for preserving useful signal information.
    Open questions
    I would like to hear opinions from experienced builders on:
    Is feature-based interpretation of PI signals actually useful in practice?
    Can it realistically improve discrimination, or are limitations mostly physical?
    Would a shared dataset from hobby builds be meaningful or too inconsistent?
    What kind of front-end design best supports digital interpretation?
    Final note
    This is not a defined project, just an idea that might be worth exploring by anyone interested in improving PI detector signal interpretation. If someone finds it useful, feel free to adapt it, modify it, or ignore parts of it completely​

  • #2
    This has been discussed in other threads. The decay of a 1st-order non-ferrous target is a simple exponential (long-term) with a short start-up non-linearity. The decay of viscous ground is a power-law response (1/t). The decay of a magnetic-ferrous target is a fast initial decay followed by a long viscous-like tail. In air tests you can distinguish these responses; lots of experimenters have been there, believing that discrimination was just around the corner. Then they put it to the dirt and all hope evaporates as it becomes impossible to separate the signals that were so easy to see when they were alone.

    It is my opinion that we should keep trying, as a probable limitation in signal processing has been compute horsepower. With micros getting better & better (new STM32 lines now include a Cordic coprocessor) and AI becoming a real thing this is a limitation that is rapidly vanishing.

    Comment


    • #3
      I agree that soil destroys simple separability in raw decay curves.
      However, I am not aiming for direct waveform discrimination.
      My focus is on learning a compact feature space where soil response becomes a separate latent class rather than noise.
      In other words, instead of trying to separate signals directly, the idea is to learn a representation where soil, ferrous, and non-ferrous become statistically separable even under overlap.​

      Comment


      • #4
        I’ve been going through this idea again and tried to look at it from a different angle using ChatGPTl.
        The suggestion I got is that instead of trying to directly separate raw decay waveforms, it might make more sense to treat the problem as a feature-space representation issue.
        In this view, the ground response is not just noise, but a consistent physical behavior that could potentially form its own cluster when the signal is transformed into a feature space derived from the decay curve.
        So rather than focusing on waveform separation, the idea is to map the signal into a lower-dimensional feature representation where soil, ferrous, and non-ferrous responses might become more statistically separable.
        I’m still not sure how practical this is in real soil conditions, but it seems like a direction worth discussing​

        Comment


        • #5
          We already do that with ground. A GB-PI circuit is designed to null out the power-law ground response by subtracting a late sample. Unfortunately, this also nulls out a range of target exponentials which produces the notorious target hole. You can patch that target hole by running multiple GB channels that null ground at different taus, either through different RX channel timings or by using multiple TX periods.

          Once you have a GB'd signal, maybe the next step is to look at it temporally to see if you can identify assymetry caused by magnetic responses. Or use other sampling channels to look at decay nonlinearity. A big problem with ferrous targets is that most of them also have an eddy response component, and the mix can be all over the place. In many old gold fields, rotting flat steel (from tin cans or sheet metal used in sluices) are mostly eddy, making them sound a lot like nuggets.

          Comment


          • #6
            Thanks for the clarification, and sorry if I’m going over things that are already well known in the PI community. I’m still trying to fully understand the limits and the existing approaches, so I may be repeating or missing some key points.
            What I find interesting in your explanation is the idea that ground balancing already performs a kind of cancellation in the time domain, but this introduces the so-called target hole by removing part of the useful signal space as well.
            This makes me wonder if instead of focusing only on cancellation-based methods, we could look at the problem from a feature-space perspective.
            Rather than trying to completely remove or avoid the target hole, the idea would be to treat it as an inherent part of the system and design a feature space where this loss of information is already “expected”.
            In other words, instead of working in the raw time domain where ground and target overlap and get partially canceled, we could map the post-balanced signal into a structured feature space where:
            ground response forms a stable cluster
            target responses form separate but overlapping distributions
            and the “target hole” becomes a known low-information region rather than an error to eliminate
            The goal would not be perfect separation in time, but a more robust statistical separation in this transformed space, where ambiguity is part of the model rather than something to be removed.
            I’m still not sure if this is practically meaningful in real soil conditions, but I’m trying to understand if thinking in terms of representation rather than cancellation could offer a different angle​

            Comment


            • #7
              Yes, you can do this, say, in a graphical display. However, you still need a way to create a "targeting signal," the signal that says you've detected a target and not ground. That signal has to be 100% ground free or you will constantly hear ground noise.

              Honestly, it's not hard to create an all-metal targeting signal that is ground-free and with no target hole. After that, figure out a way to classify what the metal is. That's the hard part.

              Comment

              Working...
              X