I haven't seen many applications of silicon photomultipliers in DIY builds in this forum so I figured I'd start with another project of mine. As you probably know, SiPMs are pretty cheap and robust tiny little chips as an alternative to high-voltage photomultiplier tubes and are widely used in handheld/pocket radiation detectors. They often come in sizes of 1x1, 3x3 and 6x6 mm, which is one of their few downsides (there aren't many): active area. But if you scale the used scintillator crystal well enough it can be amazing how compact it allows you to build yourself a detector.
When it comes to "driving" or interfacing a SiPM, you obviously always need power delivery and some circuitry to convert the current pulses into voltage pulses. In order to make this base build easier to work with and just concentrate on what you actually want to do with the voltage pulses, I built a small interfacing board. All of the power delivery is on the board and it supports pretty much any SiPM in the 30 V range. It also has an analog output, of course. You can modify the pulse shape on that analog output to increase or decrease pulse height and pulse duration.
As an added bonus, I included a pulse discriminator with digital output, which you can use to build yourself a simple scintillation counter. I've tested this feature successfully with microcontrollers such as the Raspberry Pi Pico and the Arduino UNO (ATMega328P), so it doesn't need a fast micro at all. If you expand on the circuitry yourself, you can also build yourself a gamma spectrometer, but that's not something I included with this project since I wanted it to be as versatile and simple as possible. That way, it just takes away the hassle of building a low-noise power supply and so on and what you do with the signal is still up to you.
There is also some room on the PCB to mount a small scintillator crystal to make it mechanically one unit. Here is a photo of one of my builds utilizing an 18 x 30 mm crystal. It would've probably been better to use a smaller crystal, but that's just what I had lying around. I mounted an ONSemi MicroFC 6 mm SiPM to it and connected the wires via some pin headers. The IO pins on the right are for power input (3 - 5 volt range) and the analog + TTL outputs.
There have already been a number of projects built all around the small board. Probably the fanciest so far is this pocket radiation counter here by RD-Gammaspectra:
https://www.youtube.com/watch?v=t7-f01MC4a4
As always for me, the hardware and some example software are all fully open source, so feel free to build, improve upon or do whatever else you'd like to do. You can find all the info on GitHub: https://github.com/OpenGammaProject/Mini-SiD
It's also on Hackaday: https://hackaday.io/project/188090-mini ... iver-board
Full disclosure: I sell fully-assembled boards on Tindie, so I earn a small amount of money with each purchase.
Let me know if you have any questions!
SiPM Driver Board
- NuclearPhoenix
- Posts: 74
- Joined: 15 Aug 2022, 19:24
- Location: Austria
- Contact:
SiPM Driver Board
Matthias | https://nuclearphoenix.xyz
- Sesselmann
- Posts: 1374
- Joined: 27 Apr 2015, 11:40
- Location: Sydney
- Contact:
Re: SiPM Driver Board
Matthias,
This looks like a nice little project, should make it pretty easy for people to have a play with some SIPM's.
I would love to get one myself (if you are willing to sell me one). Now that SIPM's are becoming cheaper and easily available, there will be opportunities to develop new products.
Steven
This looks like a nice little project, should make it pretty easy for people to have a play with some SIPM's.
I would love to get one myself (if you are willing to sell me one). Now that SIPM's are becoming cheaper and easily available, there will be opportunities to develop new products.
Steven
Steven Sesselmann | Sydney | Australia | https://gammaspectacular.com | https://beejewel.com.au | https://www.researchgate.net/profile/Steven-Sesselmann
- NuclearPhoenix
- Posts: 74
- Joined: 15 Aug 2022, 19:24
- Location: Austria
- Contact:
Re: SiPM Driver Board
Matthias | https://nuclearphoenix.xyz
Re: SiPM Driver Board - AC vs DC coupling
First, thank you very much to NuclearPhoenix for publishing the Mini-Sid and Open Gamma Detector projects on github https://github.com/OpenGammaProject
I build a copy of the Mini-Sid board shown there, and confirmed it worked as expected. I'm still waiting on my order of an OpenGammaProject PCB to come back from the board house, but I already prototyped some of the circuit including "SiPM Output and Preamp" and "Pulse Discriminator" sections, and I do obtain counts from it, using a single 6x6 SiPM mounted on a plastic scintillator, and taking my SiPM Vbias from my Mini-Sid board. Seeking the maximum possible sensitivity I actually increased the opamp feedback resistor R7+R11 to 4k, instead of the 2k shown, but my R4 from SIPM to ground is also 500 ohms instead of 1k so I think net gain is similar.
My question is about the circuit design. It seems that the SiPM signal is DC-coupled, all the way through the OPA357 opamp into the TLV3201 comparator, so any dark current increase as the SiPM temperature rises will make the threshold detector more and more sensitive to any peaks. That is in fact what I observe, for example my background count rate of 38 cps at 22 C rises to above 100 cps at 26 C. There is some lag between my temperature sensor and my output but you can clearly see a functional dependence in the graph (except above 250 cps where the count rate actually drops; possibly at that point the comparator is simply getting stuck high). The SiPM I am using is OnSemi MICROFC-60035-SMT-TR and the datasheet says its dark current rises nearly 10x from 20C to 40C, and at my 29.45 V bias and 25 C I calculate the dark current should contribute 16 mV at the comparator, so that is significant compared with my smallest expected pulse levels.
This effect would not be as strong if your comparator threshold is set higher and not so close to the ragged edge. Still I think any temperature change during a run would affect the apparent pulse amplitude, changing the amplitude of the minimum detected pulse, and if doing spectroscopy, possibly smearing out your energy bins and lowering your % energy resolution, unless you are also capturing the baseline level on each pulse and subtracting it off. So my question is, why would it not be preferred to use AC coupling for pulses, to remove any DC drift with temperature? I am a beginner in this field, but I had the impression that traditional scintillator+PMT systems often use an AC coupled signal (even if only because there is a high DC voltage present).
I build a copy of the Mini-Sid board shown there, and confirmed it worked as expected. I'm still waiting on my order of an OpenGammaProject PCB to come back from the board house, but I already prototyped some of the circuit including "SiPM Output and Preamp" and "Pulse Discriminator" sections, and I do obtain counts from it, using a single 6x6 SiPM mounted on a plastic scintillator, and taking my SiPM Vbias from my Mini-Sid board. Seeking the maximum possible sensitivity I actually increased the opamp feedback resistor R7+R11 to 4k, instead of the 2k shown, but my R4 from SIPM to ground is also 500 ohms instead of 1k so I think net gain is similar.
My question is about the circuit design. It seems that the SiPM signal is DC-coupled, all the way through the OPA357 opamp into the TLV3201 comparator, so any dark current increase as the SiPM temperature rises will make the threshold detector more and more sensitive to any peaks. That is in fact what I observe, for example my background count rate of 38 cps at 22 C rises to above 100 cps at 26 C. There is some lag between my temperature sensor and my output but you can clearly see a functional dependence in the graph (except above 250 cps where the count rate actually drops; possibly at that point the comparator is simply getting stuck high). The SiPM I am using is OnSemi MICROFC-60035-SMT-TR and the datasheet says its dark current rises nearly 10x from 20C to 40C, and at my 29.45 V bias and 25 C I calculate the dark current should contribute 16 mV at the comparator, so that is significant compared with my smallest expected pulse levels.
This effect would not be as strong if your comparator threshold is set higher and not so close to the ragged edge. Still I think any temperature change during a run would affect the apparent pulse amplitude, changing the amplitude of the minimum detected pulse, and if doing spectroscopy, possibly smearing out your energy bins and lowering your % energy resolution, unless you are also capturing the baseline level on each pulse and subtracting it off. So my question is, why would it not be preferred to use AC coupling for pulses, to remove any DC drift with temperature? I am a beginner in this field, but I had the impression that traditional scintillator+PMT systems often use an AC coupled signal (even if only because there is a high DC voltage present).
John Beale | Portland Oregon, USA | www.bealecorner.com
Re: SiPM Driver Board
To follow up my own last post, I added a coupling capacitor to block the DC path, just before the R17,R15,R4 divider ahead of U8 in the "SiPM Output and Preamp" block of OpenGamma Detector rev4.0 schematic, and there are now two copies of the 1k resistor R4 to ground, one on either side of the new DC-block capacitor. I used 10 uF but something smaller would probably work too. The circuit now seems nearly insensitive to temperature; at least for a 3 deg. C change from 23.5 to 27.5 C there was no obvious correlation between temperature and count rate, and previously that delta-T caused roughly a factor of 2 change in count rate. My background count rate is 1260 counts in 10 seconds, or 126 cps in an area my Radiacode 102 measures as 2.82 cps and 29 nSv/h, so apparently gets a 44x higher count rate than Radiacode. My scintillator block is Bicron BC412 and 7 x 3 x 2.25 inches in size, for a volume of 774 cubic cm. Perhaps I could do even better with a 4x array of SiPM detectors instead of just one.
John Beale | Portland Oregon, USA | www.bealecorner.com
- NuclearPhoenix
- Posts: 74
- Joined: 15 Aug 2022, 19:24
- Location: Austria
- Contact:
Re: SiPM Driver Board
Hi John,
I know this problem all too well. The thing is, if you just use an AC coupling capacitor, you will get other problems at higher count rates. You'd need a DC restorer circuit behind your cap or otherwise your signal levels will creep lower and lower the higher your count rate gets. The simplest way of doing so would be to add a diode in reverse after the cap, but that will also leave you the diode forward voltage as sort of a minimum uncorrected voltage. Since I also added the temperature compensation circuit from this paper to the "new" SiPM boards, this should no longer be a problem so I didn't bother fixing this on the board side: https://doi.org/10.1016/j.nima.2017.11.060
The newest revisions of all the boards also utilize lower temp coefficient resistors. Keep in mind that especially the trim pots potentially have a huge temperature coefficient that can also affect your gain, especially at larger temperature gradients. In the past I've tested the boards by blasting them with a hot air gun (not the scintillator and SiPM, just the PCB) and you could see the count rate absolutely explode. This should be a lot better now, but I'm pretty sure that's not what you're seeing anyways.
I have never personally seen a change in count rate this high though... a factor of two for just 3 degrees is insane. What board revisions are you using for the Mini SiD and the SiPM PCB? And did you stick with the exact part specs from the BOM?
I know this problem all too well. The thing is, if you just use an AC coupling capacitor, you will get other problems at higher count rates. You'd need a DC restorer circuit behind your cap or otherwise your signal levels will creep lower and lower the higher your count rate gets. The simplest way of doing so would be to add a diode in reverse after the cap, but that will also leave you the diode forward voltage as sort of a minimum uncorrected voltage. Since I also added the temperature compensation circuit from this paper to the "new" SiPM boards, this should no longer be a problem so I didn't bother fixing this on the board side: https://doi.org/10.1016/j.nima.2017.11.060
The newest revisions of all the boards also utilize lower temp coefficient resistors. Keep in mind that especially the trim pots potentially have a huge temperature coefficient that can also affect your gain, especially at larger temperature gradients. In the past I've tested the boards by blasting them with a hot air gun (not the scintillator and SiPM, just the PCB) and you could see the count rate absolutely explode. This should be a lot better now, but I'm pretty sure that's not what you're seeing anyways.
I have never personally seen a change in count rate this high though... a factor of two for just 3 degrees is insane. What board revisions are you using for the Mini SiD and the SiPM PCB? And did you stick with the exact part specs from the BOM?
Matthias | https://nuclearphoenix.xyz
Re: SiPM Driver Board
Hi Matthias,
Thanks for the quick response. Yes, I do agree with you any capacitor introduces pulse-rate-dependent distortion, because it forces average DC current to zero, and the pulses are unipolar with an average DC level proportional to both pulse rate and pulse amplitude. However for my current application, quantifying small changes in a nominally steady and reasonably low background rate, my scope shows no visible pulse distortion above the noise, so the AC-coupled route seems beneficial in my case.
I cannot blame your SiPM PCB because I don't even have it yet. Instead I'm manually prototyping parts of the Rev 4.0 Open Gamma Detector schematic, and I take full responsibility for it and any mistakes I might have made. My Vbias is from my build of your v3 MiniSiD PCB and circuit, which has no temperature compensation. I did add the C13 filter cap to ground between R9 and R10 following your v4 update, and I substituted a 20-turn 50k pot for R4 to get finer control of the voltage. However as far as I can tell, the SiPM is behaving according to its datasheet spec vs. dark current with temperature, and I am simply running the maximum allowed Vbias, and setting my pulse discriminator threshold (via 50k trimpot R8 on the v4 Open Gamma Detector circuit, feeding the negative input of comparator U1) to such a bare minimum level trying to maximize my count rate that it becomes very sensitive to normal dark current changes. I suspect others may choose a lower Vbias and/or more conservative setting to R8 and therefore avoid most of this issue.
Thanks for the quick response. Yes, I do agree with you any capacitor introduces pulse-rate-dependent distortion, because it forces average DC current to zero, and the pulses are unipolar with an average DC level proportional to both pulse rate and pulse amplitude. However for my current application, quantifying small changes in a nominally steady and reasonably low background rate, my scope shows no visible pulse distortion above the noise, so the AC-coupled route seems beneficial in my case.
I cannot blame your SiPM PCB because I don't even have it yet. Instead I'm manually prototyping parts of the Rev 4.0 Open Gamma Detector schematic, and I take full responsibility for it and any mistakes I might have made. My Vbias is from my build of your v3 MiniSiD PCB and circuit, which has no temperature compensation. I did add the C13 filter cap to ground between R9 and R10 following your v4 update, and I substituted a 20-turn 50k pot for R4 to get finer control of the voltage. However as far as I can tell, the SiPM is behaving according to its datasheet spec vs. dark current with temperature, and I am simply running the maximum allowed Vbias, and setting my pulse discriminator threshold (via 50k trimpot R8 on the v4 Open Gamma Detector circuit, feeding the negative input of comparator U1) to such a bare minimum level trying to maximize my count rate that it becomes very sensitive to normal dark current changes. I suspect others may choose a lower Vbias and/or more conservative setting to R8 and therefore avoid most of this issue.
- Attachments
-
- pre and post comparator, 2 usec/division
- Scint-2usec.png (21.37 KiB) Viewed 24348 times
John Beale | Portland Oregon, USA | www.bealecorner.com
Re: SiPM Driver Board
In case of interest, I did order the Open Gamma Detector board (the one with a Pi Pico board attached) from the above Tindie site, and it arrived yesterday. It seems to be working fine for me so far. I suppose they left the trimpots in some default middle position. As received, the output bias voltage was about 30.5 volts so I had to reduce that a bit for my target of 29.5 V.
John Beale | Portland Oregon, USA | www.bealecorner.com
Who is online
Users browsing this forum: No registered users and 5 guests