Open-source and Open-hardware Digital Pulse Processor

PRA, BeqMoni, Theremino, Fitzpeaks and beyond!
Post Reply
quantumlove
Posts: 3
Joined: 11 Jan 2026, 09:32
Contact:

Open-source and Open-hardware Digital Pulse Processor

Post by quantumlove » 15 Feb 2026, 03:04

Dear All,

We designed a high-performance Digital Pulse Processor (DPP) as a fully open-source and open-hardware platform. Our goal is to launch it as a Crowd Supply project so the wider radiation-instrumentation community can build, modify, and improve it.

At the front end, the system supports precise analog conditioning for detector signals. A 3.2 µs pole-zero setting is included, which is crucial for properly compensating preamplifier decay and achieving stable energy measurements in spectroscopy applications. The board also provides a programmable gain chain up to 100×, with 16 logarithmically spaced gain selections to cover a wide dynamic range while maintaining good resolution across different detector types and count-rate conditions.

For digitization, we use an AD9254 150 MSPS ADC to sample the conditioned detector waveform. Digital processing is performed with a trapezoidal shaping chain, where key shaping parameters are fully configurable:
    Peaking time: adjustable from 0.2 µs to 100 µs
      Flat-top time: adjustable from 0.2 µs to 50 µs

      This allows the DPP to be tuned for a wide range of detectors and applications—from fast scintillators to slower semiconductor detectors—balancing throughput, resolution, and pulse pile-up performance.

      For debugging, diagnostics, and flexible triggering/output experiments, the board includes an AD9742 DAC. This enables waveform reconstruction, test outputs, and support for advanced trigger strategies during development and system integration.

      At the heart of the platform is an AMD Zynq XC7Z010 SoC, combining FPGA fabric for real-time DSP with an ARM processor for control, configuration, and communications. The system is designed to support embedded Linux and includes:
        512 MB RAM
          4 GB eMMC
            SD card support

            For connectivity and integration into larger systems, the platform provides multiple standard interfaces:
              Ethernet
                USB
                  UART

                  The digital processing pipeline runs at 150 MHz and includes essential spectroscopy features such as:
                    Pile-up rejection
                      Baseline restoration

                      Configurable shaping and gain control for adapting to different detector responses and measurement goals

                      The board is Linux-capable. We have successfully booted PetaLinux and verified full operation of the onboard peripherals and interfaces.
                      1.jpeg
                      2.jpeg
                      This photo shows the board (top and bottom sides). Please excuse the appearance—this prototype was fully hand-assembled to reduce early production costs, so it may look slightly dirty.

                      For testing, we used our charge-sensitive preamplifier (CSP) module together with our CSP test box. The preamplifier is a JFET-based, fully discrete design, and it will also be released as open-source and open-hardware. On the Crowd Supply project page, it will be listed alongside the Digital Pulse Processor board—below you can see the photo of the the charge-sensitive preamplifier.
                      3.jpg
                      For testing, we used a hemispherical electrode configuration CdZnTe crystal grown by our core team at the Middle East Technical University Crystal Growth Laboratory. The detector was biased at 900 V and connected to our charge-sensitive preamplifier (CSP) and DPP board. We then monitored the reconstructed waveform using the onboard DAC output, as shown in the figure.
                      9.jpg
                      We also measured a Na-22 spectrum using the Digital Pulse Processor. For this measurement, the shaping parameters were set to 1.6 µs peaking time and 0.4 µs flat-top, as shown in the figure.
                      During these initial tests, we did not enable the full gain coverage; instead, we used a limited subset of gain settings for quick validation. The fast filter is also configurable, and the noise threshold can be adjusted to match the detector noise level and reduce false triggers. The resulting spectrum and the corresponding configuration are shown in the figure below.
                      4.jpg
                      We are a small team, and this is an ambitious project. It still requires software improvements and additional configuration features, which is why we chose to release it on Crowd Supply—so the community can contribute, extend the platform, and help it mature over time.

                      This hardware is not limited to digital pulse processing. It can also be used as a high-speed digitizer for detector readout or for capturing and processing waveforms from other analog front-end circuits. To support a wide range of applications, the design includes configurable I/O with 20 FPGA pins and 10 SoC pins available for user-defined purposes.

                      In addition, we designed a base board to complement the DPP module. While the base board has not yet been manufactured, it is intended to provide a complete detector-readout infrastructure, including:

                      High-voltage rails up to ±1500 V

                      A 25–75 V bias supply for SiPM operation

                      Clean, low-noise supply rails for analog front ends and preamplifiers

                      The low-voltage rails can be set easily using resistor-defined configurations (e.g., 5 V, 8.5 V, and 12 V). The positive and negative high-voltage outputs can also be configured with simple resistor settings and are controlled by an STMicroelectronics STM32G491 microcontroller. The microcontroller receives control and status information from the FPGA via UART.

                      For location-aware measurements and advanced field deployments, we also integrated a u-blox ZED-F9P GNSS/RTK module to provide high-accuracy positioning when required.

                      A rendered image of the designed base board is shown below.
                      10.jpg
                      11.jpg
                      11.jpg (64.67 KiB) Viewed 866 times
                      Our motivation is simple: companies such as Amptek and KETEK offer high-end digital pulse processors, but their pricing is often out of reach for many scientists, makers, and hobbyists like us. Over time, this has created a kind of “closed ecosystem” around advanced radiation electronics—powerful, but not easily accessible. We want to help change that by building a freedom-oriented platform: open-source, open-hardware, and affordable enough that more people can experiment, learn, and build real instruments.

                      We’re a small team, and this is an ambitious project. We’re not “business people” in the traditional sense—we’re young scientists (our team is under 30), and we genuinely love radiation detection and materials science. We’re driven more by curiosity and the desire to contribute to the community than by profit. Building a hardware like this is challenging, but we believe making high-performance tools accessible is worth the effort.

                      We also really like ImpulseQT, and we’d love to explore a version that supports this hardware platform.

                      If you have any questions, feel free to ask in this post or reach out directly. You can also contact us by email at mehmet@muontek.com.tr

                      User avatar
                      Sesselmann
                      Posts: 1364
                      Joined: 27 Apr 2015, 11:40
                      Location: Sydney
                      Contact:

                      Re: Open-source and Open-hardware Digital Pulse Processor

                      Post by Sesselmann » 18 Feb 2026, 12:27

                      Hi Mehmet,

                      This looks like a well executed project - I would love to know more about it. Do you have a github repository or web site with more information.

                      How does it communicate the data, do you transmit the entire spectrum or individual pulses?

                      Do you sell the prototype boards ?

                      It should be easy enough to get it working with Impulse if I have all the specs and preferably something to test with.

                      Steven

                      quantumlove
                      Posts: 3
                      Joined: 11 Jan 2026, 09:32
                      Contact:

                      Re: Open-source and Open-hardware Digital Pulse Processor

                      Post by quantumlove » 19 Feb 2026, 10:19

                      Dear Steven,

                      We’re setting up the GitHub page now. It takes a bit of time because we’re documenting the digital filtering algorithms and sharing the related code. About half of it is already done. We expect to launch next week or the week after.

                      This post is mainly for early feedback and suggestions. Once the GitHub page is ready, it will include all production files (schematics, firmware/software, etc.), plus the BOM, pick-and-place files, and step-by-step ordering instructions. You’ll be able to order a prototype yourself from PCBWay. We also produce boards here, and after the Crowd Supply campaign you’ll be able to order directly from us to support the project—likely cheaper due to near volume production.

                      Data output options:

                      Ethernet / USB: full spectrum transfer (ADC supports 8192 channels, with optional channel combining/rebinning). We can also stream pulse waveforms (both shaped output and raw input pulse) since the bandwidth is sufficient.

                      UART: limited to 1024 channels and spectrum-only (no pulse waveform data), due to bandwidth constraints.

                      If you’d like anything added or changed before the launch, please let us know—your suggestions are very welcome.

                      User avatar
                      Sesselmann
                      Posts: 1364
                      Joined: 27 Apr 2015, 11:40
                      Location: Sydney
                      Contact:

                      Re: Open-source and Open-hardware Digital Pulse Processor

                      Post by Sesselmann » 19 Feb 2026, 11:53

                      Mehmet,

                      The protocol sounds very similar to Atom Spectra, so integration with Impulse should be straight forward, I just need your command protocols. Look forward to see the final product.

                      Steven

                      Post Reply

                      Who is online

                      Users browsing this forum: No registered users and 55 guests