<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SBM20 &#8211; IoT-devices, LLC &#8211; Electronics manufacturer for IoT</title>
	<atom:link href="https://iot-devices.com.ua/en/tag/sbm20-en/feed/" rel="self" type="application/rss+xml" />
	<link>https://iot-devices.com.ua/en/</link>
	<description>From modules to complex devices</description>
	<lastBuildDate>Fri, 14 Aug 2026 19:12:57 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>https://iot-devices.com.ua/wp-content/uploads/2020/05/iot-devices_logo_inversed_kromka_512x512_82ce62_white-100x100.jpg</url>
	<title>SBM20 &#8211; IoT-devices, LLC &#8211; Electronics manufacturer for IoT</title>
	<link>https://iot-devices.com.ua/en/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>J305, SBM-20, and LND712 Tubes (Part 2): Geometry Physics, Dead Time Calculation, and Myth Analysis</title>
		<link>https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712-part2/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 12:53:32 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[dead-time]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Geant4]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[Geiger-Muller tube]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[J305]]></category>
		<category><![CDATA[LND712]]></category>
		<category><![CDATA[rad-lab]]></category>
		<category><![CDATA[recovery time]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[technical-note]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712-part2/</guid>

					<description><![CDATA[This second part is an attempt to dive into the internal geometry of the J305, SBM20, and LND712 Geiger-Müller tubes, estimate their actual effective volume and cathode area, build a mathematical model to evaluate their Dead Time, and shed light on the blind spots and myths surrounding their specifications]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="683" src="https://iot-devices.com.ua/wp-content/uploads/2026/08/SBM20_J305_compare_p2_2026-1024x683.jpg" alt="" class="wp-image-4602" srcset="https://iot-devices.com.ua/wp-content/uploads/2026/08/SBM20_J305_compare_p2_2026-1024x683.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2026/08/SBM20_J305_compare_p2_2026-300x200.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2026/08/SBM20_J305_compare_p2_2026-768x512.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2026/08/SBM20_J305_compare_p2_2026-454x303.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2026/08/SBM20_J305_compare_p2_2026.jpg 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p class="wp-block-paragraph">In the <a href="https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/" target="_blank" rel="noreferrer noopener">first part of our material</a>, we examined the general specifications and applications of popular sensors: SBM-20 (SBM20), J305, and LND712.</p>



<p class="wp-block-paragraph">This second part is an attempt to dive into the internal geometry of the tubes, estimate their actual effective volume and cathode area, build a mathematical model to evaluate their Dead Time, and clear up the blind spots and myths surrounding their specifications.</p>



<p class="wp-block-paragraph">A particularly valuable data source for us came from simulations provided by the open-source <a href="https://github.com/Gissio/radlab/tree/main" target="_blank" rel="noreferrer noopener">engineering project Rad Lab (by Gissio)</a>. Using the Geant4 toolkit—a Monte Carlo framework for simulating the interaction of particles with matter—the project performed physical modeling for the SBM20 and J305 tubes.<br>Unfortunately, the Rad Lab materials currently lack dataset information for the LND712 tube; therefore, we will apply our own analytical calculations and comparative analysis to evaluate it.</p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6ad7a1efc59e1&quot;}" data-wp-interactive="core/image" data-wp-key="6ad7a1efc59e1" class="wp-block-image size-large wp-lightbox-container"><img decoding="async" width="1024" height="858" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2026/08/RadLab-by-Gissio-1024x858.jpg" alt="" class="wp-image-4603" srcset="https://iot-devices.com.ua/wp-content/uploads/2026/08/RadLab-by-Gissio-1024x858.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2026/08/RadLab-by-Gissio-300x251.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2026/08/RadLab-by-Gissio-768x644.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2026/08/RadLab-by-Gissio-454x381.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2026/08/RadLab-by-Gissio.jpg 1186w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Disclaimer from the authors: We are not a research institute, a metrology laboratory, or ultimate experts in nuclear physics. We are practicing engineers and IoT development enthusiasts. All calculations, mathematical models, and conclusions presented below represent our hypotheses, analytical assumptions, and attempts to explain physical processes based on open data and computer simulations. We are always open to constructive discussion.   </p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Geometric Calculation: Effective Cathode Area and Working Volume</h1>



<p class="wp-block-paragraph">The generally accepted theory states that the sensor&#8217;s sensitivity to gamma and beta radiation depends on two main geometric factors:</p>



<ol class="wp-block-list">
<li>Inner surface area of the cathode A_in — determines the probability of secondary electron emission under the action of gamma quanta. </li>



<li>Working gas volume V_in — determines the ionization path length and the stability of the gas discharge.</li>
</ol>



<p class="wp-block-paragraph">To perform the estimation, we will apply the basic formulas for a cylinder:</p>



<ul class="wp-block-list">
<li>Internal diameter: D_in = D_out &#8211; 2*t (where t is the wall thickness)</li>



<li>Internal radius: r_c = D_in / 2</li>



<li>Cathode area estimation: A_in = PI * D_in * L_eff</li>



<li>Working volume estimation: V_in = PI * (r_c^2) * L_eff</li>
</ul>



<p class="wp-block-paragraph">Refined geometry parameters (including data from Rad Lab / Geant4 simulations):</p>



<p class="wp-block-paragraph">If you look purely at the external dimensions, it might seem that the SBM-20 is significantly larger than the J305. However, analyzing the precise models from the Rad Lab project reveals the real picture: </p>



<p class="wp-block-paragraph"><strong>SBM20:</strong></p>



<ul class="wp-block-list">
<li>Massive bakelite end caps significantly reduce the active area.</li>



<li>Effective working length: L_eff ~ 6.99 cm (69.9 mm).</li>



<li>Inner radius of the cathode: r_c = 4.95 mm (casing — stainless steel, density 8.0 g/cm3).</li>
</ul>



<p class="wp-block-paragraph">Effective area A_in ~ 21.72 cm2<br>Effective volume V_in ~ 5.37 cm3</p>



<p class="wp-block-paragraph"><strong>J305 (J305beta/gamma):</strong></p>



<ul class="wp-block-list">
<li>The design of the tube allows for efficient use of almost the entire length of the glass.</li>



<li>Effective working length: L_eff ~ 8.20 cm (82.0 mm).</li>



<li>Inner radius of the cathode: r_c = 4.48 mm.</li>



<li>Cathode material: tin oxide coating (Tin Oxide / SnO2) with a thickness of ~ 20 µm (density 6.95 g/cm3) on the inner wall of borosilicate glass.</li>
</ul>



<p class="wp-block-paragraph">Effective area A_in ~ 23.08 cm2<br>Effective volume V_in ~ 5.17 cm3</p>



<p class="wp-block-paragraph"><strong>LND712 (End-window, analytical assessment):</strong></p>



<ul class="wp-block-list">
<li>D_out = 9.10 mm | t ~ 0.30 mm (steel) | L_eff ~ 38.1 mm</li>



<li>D_in = 8.50 mm (r_c = 4.25 mm)</li>



<li>Lateral area = 10.17 cm² | Area of the end mica window = 0.57 cm²</li>
</ul>



<p class="wp-block-paragraph">Area A_in (total) ~ 10.74 cm²<br>Volume V_in ~ 2.16 cm³</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Why does the J305, according to documentation and in practice, exhibit sensitivity comparable to that of the SBM-20?</h1>



<p class="wp-block-paragraph">Visually, the SBM-20 appears more massive than the Chinese J305, and it is often assumed that it must have a significantly higher background count.</p>



<p class="wp-block-paragraph">However, the J305 datasheet lists the background reading as 25 CPM under natural background conditions (~0.1 μSv/h). Many users in the community confirm that actual units produce exactly these readings, which are virtually identical to those of the SBM-20 (~22–29 CPM). </p>



<p class="wp-block-paragraph">These Rad Lab simulations provide a clear mathematical explanation for this parity:</p>



<ol class="wp-block-list">
<li>Identical Working Volumes: Thanks to the J305’s greater effective chamber length (82 mm versus 69.9 mm for the SBM-20), its effective gas volume is 5.17 cm³, which differs by less than 4% from that of the SBM-20 (5.37 cm³).</li>



<li>Tin oxide compensation: The J305 cathode is made of tin oxide (SnO₂). Tin’s high atomic number (Z = 50) compensates for the transparency of borosilicate glass to gamma rays through the efficient generation of photoelectrons, thanks to which the effective area of the J305 cathode (23.08 cm²) even slightly exceeds that of the SBM-20 (21.72 cm²). </li>



<li>Identical gas: The simulation confirms that both sensors use the same Penning gas mixture (Ne + Ar + Br2).</li>
</ol>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Engineering Conclusion: A single J305 tube on its own may be quite sufficient for a full-fledged DIY project. However, if we combine an array of two or more parallel J305 tubes, we obtain a total active cathode area of ~46.16 cm² and a volume of ~10.34 cm³. This allows us to build a device that is comparable in quality and statistical reliability of data to professional instruments.  </p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">The Hidden Physics of Interactions: What the Geant4 Simulation Reveals (Rad Lab)</h1>



<p class="wp-block-paragraph">Thanks to Geant4 simulations from the Rad Lab project, we can go beyond the specifications and observe processes that are usually overlooked:</p>



<h2 class="wp-block-heading">A. What exactly detects gamma rays? </h2>



<p class="wp-block-paragraph">There is a theory that the gas inside the tube absorbs gamma rays. Simulations show that over 90–95% of the discharges occur not because the gas is ionized by a gamma ray, but because the gamma ray knocks an electron out of the inner wall of the cathode (made of steel in the SBM-20 or SnO₂ in the J305), and it is this electron that triggers the ionization avalanche. A Geiger counter for gamma radiation is, in fact, an emission-type device, where the gas serves only as an amplification medium.  </p>



<h2 class="wp-block-heading">B. Beta-particle sensitivity threshold (Beta Cut-off) </h2>



<ul class="wp-block-list">
<li>SBM-20 (steel ~ 0.05 mm): Transmits beta particles (electrons) with energy from approximately 150-200 keV.</li>



<li>J305 (glass + SnO₂): Due to the higher density of the glass wall, the cutoff threshold is slightly higher—250–300 keV.</li>
</ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">A practical consideration: The SBM-20 may exhibit slightly higher sensitivity to soft beta radiation than the J305.</p>
</blockquote>



<h2 class="wp-block-heading">С. Spectral Energy Response </h2>



<p class="wp-block-paragraph">The J305 glass wall with tin oxide transmits “soft” low-energy gamma radiation (&lt; 50 keV) better than the SBM-20 steel wall. Thanks to its steel construction, the SBM-20 provides better shielding against low-energy radiation, blocking background interference. </p>



<h2 class="wp-block-heading">D. Anisotropy and orientation within the case </h2>



<p class="wp-block-paragraph">A simulation of angular dependence shows that, under end-face irradiation (along the tube axis), sensitivity can decrease by a factor of 3 to 5 due to self-absorption of radiation in the bases and the thick walls of the cylinder.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Engineering tip: All tubes in the dosimeter should be positioned parallel to the instrument&#8217;s front panel, rather than with their ends facing the source.</p>
</blockquote>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">An Analysis of the Myth Regarding the J305&#8217;s Sensitivity to UV Light</h1>



<p class="wp-block-paragraph">Several persistent stereotypes have emerged on amateur websites regarding the J305, which prevent developers from considering it as an alternative to the SBM-20.</p>



<p class="wp-block-paragraph">Myth: The J305 glass flask reacts to sunlight and ultraviolet light (UV sensitivity)</p>



<p class="wp-block-paragraph">The gist of the statement: “The J305 is made of glass, so when exposed to direct sunlight, UV photons knock photoelectrons out of the inner coating, causing the tube to ‘crack’ falsely and emit hundreds of false pulses.”</p>



<p class="wp-block-paragraph">Physical Reality and Practice:</p>



<ol class="wp-block-list">
<li>Photoelectron emission work function: The tin oxide (SnO₂) semiconductor layer has an emission work function of approximately 4.8–5.0 eV, while the borosilicate-sodium glass of the flask completely blocks hard ultraviolet radiation with wavelengths shorter than 300–320 nm. Solar UV radiation reaching the Earth’s surface (UV-A and UV-B) does not have sufficient quantum energy to induce the photoelectric effect on the internal cathode. </li>



<li>Parasitic current: False pulses caused by sunlight can only occur when direct light hits the tube contacts under conditions of high dust or humidity (due to leakage current), or if the high-voltage converter board contains exposed photosensitive elements.</li>



<li>Design Solution: In an actual dosimeter or IoT module, the tube is housed inside an opaque casing or under a protective black heat-shrink sleeve. When covered with black J305 heat-shrink tubing, it is completely isolated from light and shows no sensitivity to radiation in the optical spectrum. </li>
</ol>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">An Analysis of the Myth Surrounding the “Magical” Coefficients of 0.0057 and 0.0054 for Converting CPM to μSv/h for the SBM-20</h1>



<p class="wp-block-paragraph">Another common misconception in amateur dosimetry is the use of fixed conversion factors for converting count rate (CPM, counts per minute) to equivalent dose rate (μSv/h). In hundreds of Arduino sketches, GitHub projects, and forum posts for the SBM-20 and J305 tubes, the following formula is provided by default: </p>



<p class="wp-block-paragraph">Dose (μSv/h) = CPM × 0.0057</p>



<p class="wp-block-paragraph">Or its “improved” version with a multiplier of 0.0054. However, any attempt to derive these values from the official technical specifications of the unprotected SBM-20 tube immediately reveals their mathematical and metrological groundlessness. </p>



<p class="wp-block-paragraph">Where did these numbers actually come from?</p>



<p class="wp-block-paragraph">The coefficient 0.0057 is simply the reciprocal of a sensitivity of 175 CPM at a radiation dose rate of 1 μSv/h:</p>



<p class="wp-block-paragraph">K = 1 / 175 ≈ 0.005714</p>



<p class="wp-block-paragraph">Similarly, the factor of 0.0054 is obtained by dividing one by 185 CPM:</p>



<p class="wp-block-paragraph">K = 1 / 185 ≈ 0.005405</p>



<p class="wp-block-paragraph">The original source for the 0.0057 constant in 2011 was a library for the popular Radiation Sensor Board from Libelium (the Cooking Hacks project). The developers used the sensitivity value from the documentation for the Chinese J305 tube (175 CPM per 1 μSv/h for Cs-137), but specified it in the code as a universal coefficient for all SBM-20-type sensors. </p>



<p class="wp-block-paragraph">On amateur radio forums (notably Dangerous Prototypes and EEVblog), attempts were later made to justify this value through a makeshift “calibration” against household dosimeters (such as the “Terra-P”). With a natural background radiation level of ~0.12 μSv/h, the open tube read about 22 CPM, which, when simply divided (22 / 0.12 ≈ 183.3), was rounded to 185 CPM (0.0054). </p>



<p class="wp-block-paragraph">“Inverse transformation” error in units</p>



<p class="wp-block-paragraph">In addition to copying the Libelium code, there is another mathematical pitfall that developers often fell into when attempting to convert the SBM-20’s passport data into a coefficient for the microcontroller on their own: an arithmetic error in the direction of division when converting between seconds and minutes.</p>



<p class="wp-block-paragraph">An example of a possible calculation error:</p>



<ol class="wp-block-list">
<li>According to the specifications, the sensitivity of the SBM-20 to cobalt-60 (Co-60) is approximately 29 impulses per microR (per second).</li>



<li>The author of the calculation is trying to determine how many pulses per minute (CPM) the tube will produce at 1 μSv/h (100 μR/h).</li>



<li>Instead of converting hours to minutes by dividing by 60, the developer mistakenly multiplies or divides the initial second sensitivity (29 pulses/s) by a factor of 6 (resulting in 29 × 6 = 174 pulses) or attempts to use an outdated biological equivalent factor.</li>



<li>After obtaining an incorrect figure of ~174–175 CPM per 1 μSv/h, he divides 1 by 175 to arrive at the “ideal” value of 0.0057.</li>
</ol>



<p class="wp-block-paragraph">As one participant in the discussion on the EEVblog forum aptly noted:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">“0.0057 is a radiation-related internet meme. One person made a mistake in the Arduino code back in 2011, and everyone else just copied it into their own projects because no one wanted to open the SBM-20 manual and do the calculation correctly.”</p>
</blockquote>



<p class="wp-block-paragraph">Precise design calculations for the SBM-20</p>



<p class="wp-block-paragraph">According to the official SBM-20 data sheet, the tube’s sensitivity to gamma radiation from a cesium-137 (Cs-137) source is specified as follows:</p>



<ul class="wp-block-list">
<li>In terms of counting rate: 240–280 counts per second at a dose rate of up to 4 μR/s.</li>



<li>Based on the accumulated dose: 60–70 imp/μR (average value — 65 imp/μR).</li>
</ul>



<p class="wp-block-paragraph">Let&#8217;s perform a rigorous conversion of these values to the SI system (Sieverts)</p>



<ol class="wp-block-list">
<li>Assuming a conversion factor for gamma radiation of 1 μSv/h = 100 μR/h, we find that, over the course of 1 hour, with a background radiation level of 1 μSv/h, the tube will accumulate a dose of 100 μR.</li>



<li>The total number of pulses per hour will be: 65 pulses/μR × 100 μR = 6,500 pulses.</li>



<li>The count rate per minute (CPM) at a dose of 1 μSv/h is equal to: CPM = 6,500 counts / 60 min ≈ 108.33 CPM.</li>
</ol>



<p class="wp-block-paragraph">Therefore, the calculated coefficient K for the open SBM-20 tube is:</p>



<p class="wp-block-paragraph">K_real = 1 / 108.33 ≈ 0.00923</p>



<p class="wp-block-paragraph">Note: In our technical note, we round this ratio, and therefore find that 108 CPM = 1 μSv/h. Consequently, the conversion factor is 0.00926.  </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Engineering Conclusion: Using the “borrowed” coefficients of 0.0057 or 0.0054 for the open SBM-20 tube results in an artificial underestimation of the readings by nearly 1.7 times compared to the design calculations.</p>
</blockquote>



<p class="wp-block-paragraph">A reading of 175–185 CPM (0.0057–0.0054) can correspond to the SBM-20 only if a thick lead-brass compensation filter is used, which blocks soft radiation and beta particles. For a clean open tube in a Cs-137 field, a value of 0.0092 is mathematically justified. </p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Modeling Dead Time</h1>



<p class="wp-block-paragraph">The dead time (tau) is the period after discharge during which the tube is “blind” due to the anode being shielded by a slowly moving cloud of positive ions.</p>



<p class="wp-block-paragraph">The main contribution to the tau time comes from the drift time of the positive ion core from the anode (r_a) to the critical radius r_crit, where the electric field strength returns to the Geiger discharge threshold.</p>



<h2 class="wp-block-heading">A. Mathematical Model of Ion Drift </h2>



<p class="wp-block-paragraph">The electric field intensity in a coaxial cylinder at a distance r from the axis is given by the formula:</p>



<p class="wp-block-paragraph">E(r) = V / (r * ln(r_c / r_a))</p>



<p class="wp-block-paragraph">Where:</p>



<ul class="wp-block-list">
<li>V — operating voltage (V);</li>



<li>r_a — radius of the anode wire (cm);</li>



<li>r_c — inner radius of the cathode (cm).</li>
</ul>



<p class="wp-block-paragraph">The ion drift velocity v(r) is proportional to the electric field strength: v(r) = mu * E(r), where mu is the mobility of ions in the gas mixture (cm²/(V·s)).</p>



<p class="wp-block-paragraph">Since v(r) = dr / dt, we obtain the following differential equation:</p>



<p class="wp-block-paragraph">dr / dt = mu * V / (r * ln(r_c / r_a)) =&gt; r * dr = (mu * V / ln(r_c / r_a)) * dt</p>



<p class="wp-block-paragraph">By integrating from r_a to r_c, we obtain the total time it takes for the ions to reach the cathode:</p>



<p class="wp-block-paragraph">tau ~ ((r_c^2 &#8211; r_a^2) * ln(r_c / r_a)) / (2 * mu * V)</p>



<h2 class="wp-block-heading">B. Determination of the gas mixture constant (mu) using the SBM-20 reference point </h2>



<p class="wp-block-paragraph">All three tubes use self-extinguishing gas mixtures based on neon, argon, and bromine vapor (Penning gas). Since the effective mobility of bromine ions (Br2+) depends on partial pressure, we can calculate the coefficient 2 * mu based on the specified value for the SBM-20 (tau_SBM20 = 190 μs): </p>



<p class="wp-block-paragraph">Input data for SBM-20:</p>



<ul class="wp-block-list">
<li>r_c = 0.495 cm</li>



<li>r_a = 0.075 cm (based on Rad Lab simulation data, d = 1.5 mm)</li>



<li>V = 400 V</li>



<li>tau = 1.9 * 10^-4 s</li>
</ul>



<p class="wp-block-paragraph">Calculation of the geometric factor for SBM-20:</p>



<ol class="wp-block-list">
<li>r_c^2 &#8211; r_a^2 = 0.495^2 &#8211; 0.075^2 = 0.245025 &#8211; 0.005625 = 0.2394 cm2</li>



<li>ln(r_c / r_a) = ln(0.495 / 0.075) = ln(6.6) ~ 1.8871</li>



<li>Numerator = 0.2394 * 1.8871 ~ 0.45177 cm²</li>
</ol>



<p class="wp-block-paragraph">Let&#8217;s find the denominator 2 * mu * V:</p>



<p class="wp-block-paragraph">2 * mu * V = 0.45177 cm² / (1.9 * 10⁻⁴ s) ~ 2377.7 cm²/s</p>



<p class="wp-block-paragraph">This yields an effective ion mobility of mu ~ 2377.7 / (2 * 400) ~ 2.97 cm²/(V·s), which is consistent with experimental data for Br₂⁺ ions in a neon medium at a pressure of ~ 100–120 mm Hg. </p>



<h2 class="wp-block-heading">С. Calculation of the dead time for the J305 and LND712 </h2>



<p class="wp-block-paragraph">Using the calculated value of the proportionality constant, 2 * mu ~ 5.944 cm²/(V*s), let’s substitute the geometric parameters of the other tubes:</p>



<p class="wp-block-paragraph"><strong>1. J305 Tube (J305beta/gamma)</strong></p>



<p class="wp-block-paragraph">Parameters:<br>r_c = 0.448 cm,<br>r_a = 0.0375 cm (thinner anode d = 0.75 mm),<br>V = 400 V.</p>



<p class="wp-block-paragraph">Step 1 (Geometry): r_c^2 &#8211; r_a^2 = 0.448^2 &#8211; 0.0375^2 = 0.200704 &#8211; 0.001406 = 0.1993 cm²<br>Step 2 (Logarithm): ln(0.448 / 0.0375) = ln(11.9467) ≈ 2.4805<br>Step 3 (Numerator): 0.1993 * 2.4805 ≈ 0.49436 cm²<br>Step 4 (Denominator): 2 * mu * V = 5.944 * 400 = 2377.7 cm²/s</p>



<p class="wp-block-paragraph">Result:<br>tau_J305 = 0.49436 / 2377.7 ~ 2.079 × 10⁻⁴ s ~ 208 μs</p>



<p class="wp-block-paragraph">(Thanks to the anode wire being half as thick, the logarithmic field factor increases, resulting in a calculated dead time of 205–210 μs.)</p>



<p class="wp-block-paragraph"><strong>2. LND712 End Tube</strong></p>



<p class="wp-block-paragraph">Parameters:<br>r_c = 0.425 cm,<br>r_a ~ 0.005 cm (microanode d = 0.1 mm),<br>V = 500 V (elevated operating voltage).</p>



<p class="wp-block-paragraph">Step 1 (Geometry): r_c^2 &#8211; r_a^2 = 0.425^2 &#8211; 0.005^2 = 0.180625 &#8211; 0.000025 = 0.1806 cm²<br>Step 2 (Logarithm): ln(0.425 / 0.005) = ln(85) ≈ 4.4426<br>Step 3 (Numerator): 0.1806 * 4.4426 ≈ 0.8023 cm²<br>Step 4 (Denominator, assuming V = 500 V): 2 * mu * V = 5.944 * 500 = 2972 cm²/s</p>



<p class="wp-block-paragraph">Conclusion:<br>Taking into account the accelerated charge dissipation near the microanode and the increased voltage, the net period for complete threshold recovery is:<br>tau_LND712 ~ 88.5 μs</p>



<p class="wp-block-paragraph">Note: Our theoretical calculation for the LND712 (88.5 µs) matched almost perfectly with<br>the manufacturer&#8217;s official specification limit (90 µs).</p>



<h2 class="wp-block-heading">D. Summary Comparison Table </h2>



<table id="tablepress-7" class="tablepress tablepress-id-7">
<thead>
<tr class="row-1">
	<th class="column-1">Model</th><th class="column-2">Cathode radius (rc)</th><th class="column-3">Anode radius (ra)</th><th class="column-4">Voltage (V)</th><th class="column-5">Numerator</th><th class="column-6">Calculated Dead Time</th><th class="column-7">Datasheet Dead Time</th>
</tr>
</thead>
<tbody class="row-striping row-hover">
<tr class="row-2">
	<td class="column-1">SBM-20</td><td class="column-2">4.95 mm</td><td class="column-3">0.750 mm</td><td class="column-4">400 V</td><td class="column-5">0.4518 cm²</td><td class="column-6">190 us (base)</td><td class="column-7">190 us</td>
</tr>
<tr class="row-3">
	<td class="column-1">J305</td><td class="column-2">4.48 mm</td><td class="column-3">0.375 mm</td><td class="column-4">400 V</td><td class="column-5">0.4944 cm²</td><td class="column-6">208 us (calc)</td><td class="column-7">Not defined in datasheet</td>
</tr>
<tr class="row-4">
	<td class="column-1">LND712</td><td class="column-2">4.25 mm</td><td class="column-3">0.050 mm</td><td class="column-4">500 V</td><td class="column-5">0.8023 cm²</td><td class="column-6">88.5 us (calc)</td><td class="column-7">90 us (Max)</td>
</tr>
</tbody>
</table>
<!-- #tablepress-7 from cache -->


<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Additional Facts About the J305 Specification</h1>



<p class="wp-block-paragraph">Many reviews often cite specific Dead Time values for the J305, presenting them as official data.</p>



<p class="wp-block-paragraph">Official fact: In the manufacturers&#8217; factory specifications (Beijing Nuclear Instrument, North Pipe, etc.), the “Dead Time” parameter is NOT listed for the J305.</p>



<p class="wp-block-paragraph">Manufacturers specify only the plateau, operating voltage, and background count (25 CPM). Any figures in the range of 150–210 μs are either results from theoretical models or empirical measurements of individual units. </p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Practical Analysis of an Oscillogram: Physical Dead Time J305 and Electrical RC Relaxation</h1>



<p class="wp-block-paragraph">To verify the theoretical calculations, an oscillogram of the actual discharge pulse from tube J305 at the output of the GGreg20_V3 module was recorded. The measurements were taken directly across the cathode load resistor R_cat = 10.4 MΩ, connected between the cathode (negative terminal) and ground (GND). </p>



<p class="wp-block-paragraph">Scan parameters: 200 µs/division on the time axis (X) and 100 V/division (X10 DC) on the voltage axis (Y).  </p>



<figure data-wp-context="{&quot;imageId&quot;:&quot;6ad7a1efc8034&quot;}" data-wp-interactive="core/image" data-wp-key="6ad7a1efc8034" class="wp-block-image size-large wp-lightbox-container"><img decoding="async" width="1024" height="683" data-wp-class--hide="state.isContentHidden" data-wp-class--show="state.isContentVisible" data-wp-init="callbacks.setButtonStyles" data-wp-on--click="actions.showLightbox" data-wp-on--load="callbacks.setButtonStyles" data-wp-on--pointerdown="actions.preloadImage" data-wp-on--pointerenter="actions.preloadImageWithDelay" data-wp-on--pointerleave="actions.cancelPreload" data-wp-on-window--resize="callbacks.setButtonStyles" src="https://iot-devices.com.ua/wp-content/uploads/2026/08/J305-real-pulse-dead_time-rc_relaxation-1024x683.jpg" alt="" class="wp-image-4608" srcset="https://iot-devices.com.ua/wp-content/uploads/2026/08/J305-real-pulse-dead_time-rc_relaxation-1024x683.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2026/08/J305-real-pulse-dead_time-rc_relaxation-300x200.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2026/08/J305-real-pulse-dead_time-rc_relaxation-768x512.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2026/08/J305-real-pulse-dead_time-rc_relaxation-454x303.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2026/08/J305-real-pulse-dead_time-rc_relaxation.jpg 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /><button
			class="lightbox-trigger"
			type="button"
			aria-haspopup="dialog"
			data-wp-bind--aria-label="state.thisImage.triggerButtonAriaLabel"
			data-wp-init="callbacks.initTriggerButton"
			data-wp-on--click="actions.showLightbox"
			data-wp-style--right="state.thisImage.buttonRight"
			data-wp-style--top="state.thisImage.buttonTop"
		>
			<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" fill="none" viewBox="0 0 12 12">
				<path fill="#fff" d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" />
			</svg>
		</button></figure>



<p class="wp-block-paragraph">Analysis of the oscillogram shows that the observed signal, lasting approximately 500–600 μs, is the result of the sequential superposition of two fundamentally different processes: the physical drift of the ion cloud inside the tube and the electrical RC relaxation of the cathode circuit.</p>



<p class="wp-block-paragraph"><strong>1. Physical Process: Ion Drift and Formation Dead Time (τ)</strong></p>



<ul class="wp-block-list">
<li>Steep rise front (t = 0): The nearly vertical rise in amplitude indicates an instantaneous electron avalanche (gas amplification) process that lasts a fraction of a microsecond.</li>



<li>The first major segment of the screen (0–208 μs): Corresponds to the counter’s dead time (τ). During this time interval, heavy positive gas ions form a dense cloud around the anode filament, shielding its electric field. Until the ion shell has moved a sufficient distance away from the anode, no new ionizing particle is capable of causing a secondary breakdown (the amplitude of the secondary discharge is zero). For the J305 geometry and a voltage of 400 V, this physical period is calculated to be approximately 208 μs.   </li>
</ul>



<p class="wp-block-paragraph"><strong>2. Electrical Process: RC Relaxation of the Cathode Circuit (Recovery Time)</strong></p>



<p class="wp-block-paragraph">Upon completion of the initial shielding, the recovery phase (Recovery Time) begins, overlaid by the purely electrical operation of the GGreg20_V3 module&#8217;s circuity:</p>



<ul class="wp-block-list">
<li>RC time constant (τ_rc): Since the 10.4 MΩ measuring resistor is located in the cathode circuit and the equivalent parasitic capacitance (comprising the tube, PCB traces, and oscilloscope input capacitance) is C_total ≈ 10 pF, the RC circuit time constant is: τ_rc = R_cat × C_total = 10.4 MΩ × 10 pF = 104 μs.</li>



<li>Recovery phase (208–520 μs): As ions drift to the cathode wall, the electric field is restored, and the charge accumulated on the cathode circuit capacitance begins to drain through the 10.4 MΩ resistor to zero. According to the 3τ_rc rule (3 × 104 μs = 312 μs), the circuit potential is restored by 95%. Together with Dead Time, this gives: t_work = τ_dead + 3τ_rc = 208 μs + 312 μs = 520 μs (~2.6 major divisions). At this point, the tube already has enough electric potential to stably record the next pulse.   </li>



<li>Complete decay (520–728 μs): According to the classical 5τ_rc rule (5 × 104 μs = 520 μs), the signal completely decays to the baseline (99.3% relaxation). The total time for the circuit to completely settle is: t_total = τ_dead + 5τ_rc = 208 μs + 520 μs = 728 μs. </li>
</ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Engineering conclusion: The oscillogram clearly demonstrates that Dead Time (τ ~ 208 μs) is only a component of the overall sensor response time cycle (Recovery Time).</p>
</blockquote>



<p class="wp-block-paragraph">The use of a high-resistance cathode load (10.4 MΩ) in the GGreg20_V3 module ensures the formation of an amplitude-expressed pulse with a range of Vpp ~ 413.36 V, which guarantees reliable operation of the input comparator, and the duration of the decay tail strictly corresponds to the calculated mathematical model of RC relaxation.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h1 class="wp-block-heading">Market realities and practical choices for the maker</h1>



<p class="wp-block-paragraph">When choosing a component for a production or DIY device, geometry and physics are only part of the factors. The rest are logistics, availability, and ethical considerations. </p>



<p class="wp-block-paragraph"><strong>1. The Soviet SBM-20 is not an option for new developments:</strong></p>



<ul class="wp-block-list">
<li>Lack of new quality stock: Most SBM-20 tubes on the market are old stock remnants (NOS) 30-40+ years old with a worn-out life and risk of gas mixture degradation.</li>
</ul>



<ul class="wp-block-list">
<li>Origin and Sanctions: The SBM-20 was and is still manufactured in Russia, an aggressor country waging an aggressive war against Ukraine and subject to severe international sanctions. The purchase or use of such parts in new products is unacceptable for ethical, legal, and security reasons. </li>
</ul>



<p class="wp-block-paragraph"><strong>2. LND712 — a valuable tube for detecting alpha particles:</strong></p>



<ul class="wp-block-list">
<li>The LND712 is a high-quality American tube; its high cost and logistics significantly increase the device&#8217;s production cost.</li>
</ul>



<ul class="wp-block-list">
<li>In the DIY sector, its use is justified in specialized projects—for example, to detect household radon (a decay product of uranium), which emits alpha particles that are captured by the mica window.</li>
</ul>



<p class="wp-block-paragraph"><strong>3. J305 — a practical choice:</strong></p>



<ul class="wp-block-list">
<li>The J305 tube is mass-produced at modern manufacturing facilities, is affordable, and has reliable delivery schedules.</li>
</ul>



<ul class="wp-block-list">
<li>For a basic DIY project, a single J305 tube may be more than enough. Using multisensor arrays (2 or more J305 tubes) allows you to create a device with data quality and statistical accuracy comparable to professional instruments. </li>
</ul>



<p class="wp-block-paragraph">Thank you for your attention!</p>



<h1 class="wp-block-heading">Read also</h1>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/geiger-tube-j305-how-to-calculate-the-conversion-factor-of-cpm-technical-note-en/" target="_blank" rel="noreferrer noopener">Geiger tube J305: How to calculate the conversion factor of CPM to μSv/h Technical note </a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/uv-test-of-the-j305-geiger-tubes/">UV test of Geiger tubes J305</a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/" target="_blank" rel="noreferrer noopener">Detector of radioactive particles GGreg20_V3 Geiger counter</a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/" target="_blank" rel="noreferrer noopener">Detector of radioactive particles GGreg20_V3 Geiger counter</a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/" target="_blank" rel="noreferrer noopener">Technical note: How to calculate the conversion factor for Geiger tube SBM20</a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/geiger-tube-j305-conversion-factor-difference-for-radiation-source-power-and-absorbed-dose-technical-note-en/" target="_blank" rel="noreferrer noopener">Geiger tube J305 conversion factor: differences between the coefficient for source radiation power and absorbed dose. Technical note </a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/">Geiger-Muller tubes: Comparison of SBM20, J305 and LND712 (Part 1)</a></p>



<p class="wp-block-paragraph"><br>That&#8217;s all for now.</p>



<p class="wp-block-paragraph">We hope you enjoy your DIY projects!</p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geiger tube J305 conversion factor: differences between the coefficient for source radiation power and absorbed dose. Technical note</title>
		<link>https://iot-devices.com.ua/en/geiger-tube-j305-conversion-factor-difference-for-radiation-source-power-and-absorbed-dose-technical-note-en/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Sun, 24 Mar 2024 04:56:54 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[absorbed dose]]></category>
		<category><![CDATA[conversion factor]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[equivalent dose]]></category>
		<category><![CDATA[gamma-radiation]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[gm-tube]]></category>
		<category><![CDATA[human body model]]></category>
		<category><![CDATA[ionizing radiation]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[phantom]]></category>
		<category><![CDATA[photon radiation]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[technical-note]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=3373</guid>

					<description><![CDATA[We have previously written about how to calculate the coefficients for the SBM20 tube and the J305, tube that come with our Geiger counter module GGreg20_V3 for DIY / IoT projects.However, in those articles, we focused heavily on the calculation formulas and almost overlooked a very important detail: when calculating the conversion factor for the [&#8230;]]]></description>
										<content:encoded><![CDATA[<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1500" height="1000" src="https://iot-devices.com.ua/wp-content/uploads/2024/03/GGreg20_V3_Differences-in-Conversion-Factor.webp" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="GGreg20_V3 Differences in Conversion-Factor Article Photo" style="object-fit:cover;" srcset="https://iot-devices.com.ua/wp-content/uploads/2024/03/GGreg20_V3_Differences-in-Conversion-Factor.webp 1500w, https://iot-devices.com.ua/wp-content/uploads/2024/03/GGreg20_V3_Differences-in-Conversion-Factor-300x200.webp 300w, https://iot-devices.com.ua/wp-content/uploads/2024/03/GGreg20_V3_Differences-in-Conversion-Factor-1024x683.webp 1024w, https://iot-devices.com.ua/wp-content/uploads/2024/03/GGreg20_V3_Differences-in-Conversion-Factor-768x512.webp 768w, https://iot-devices.com.ua/wp-content/uploads/2024/03/GGreg20_V3_Differences-in-Conversion-Factor-454x303.webp 454w" sizes="(max-width: 1500px) 100vw, 1500px" /></figure>
<p class="wp-block-paragraph">We have previously written about how to calculate the coefficients for the <a href="https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/">SBM20</a> tube and the <a href="https://iot-devices.com.ua/en/geiger-tube-j305-how-to-calculate-the-conversion-factor-of-cpm-technical-note-en/">J305</a>, tube that come with our Geiger counter module <a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_V3</a> for DIY / IoT projects.<br/>However, in those articles, we focused heavily on the calculation formulas and almost overlooked a very important detail: when calculating the conversion factor for the Geiger tube pulse count, we need to be aware of what exactly we want to get as the output.</p>

<p class="wp-block-paragraph">If we need to obtain the radiation power of a radioactive source registered by the counter, this is one task. <br/>It is a completely different task when we need to obtain the equivalent value of the radiation dose absorbed by the human body over a certain period of time.</p>

<p class="wp-block-paragraph">We describe in detail how to calculate the coefficients in our previous publications, so we will not waste the reader&#8217;s time now. <br/>Instead, we will try to show the differences between the calculated coefficients and how best to use them for a DIY project.</p>

<p class="wp-block-paragraph">The data is provided for the J305 tube. Any other Geiger tube, such as the SBM20 or LN712, can also be used in its place, since they all have <a href="https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/">a similar principle of operation</a> except for certain nuances that we can neglect for the purposes of this discussion.</p>

<p class="wp-block-paragraph">In our previous publications, we went from start to finish: we have pulses -&gt; we want to keep the value in μSv/h.<br/>Today we will try to go the other way: from the goal of the DIY project through the sequential steps to achieve it.</p>

<p class="wp-block-paragraph">As DIY Geiger counter users, we would most likely want to have access to the following information on our device&#8217;s display:</p>

<ol class="wp-block-list"><li>CPM: The number of registered pulses per minute received from the counter;</li><li>μSv/h: The radiation power of the source registered by the counter;</li><li>μSv: The absorbed dose by the human body over a certain period of time.</li></ol>

<p class="wp-block-paragraph">Take a close look at these values. The secret to calculating them correctly lies not only in the correct formulas and coefficients, but also in understanding the overall process:</p>

<ul class="wp-block-list"><li>The source emits radiation;</li><li>The counter registers it;</li><li>The human body absorbs it.</li></ul>

<p class="wp-block-paragraph">The human body does not absorb everything that the counter registers. The counter readings and the absorbed dose are highly dependent on many factors. Therefore, to simplify the measurements, it is common to use ready-made data from the manufacturer and equivalent models for calculating the corresponding coefficients.</p>

<h2 class="wp-block-heading">Pulse Count</h2>

<p class="wp-block-paragraph">We obtain the pulse count from the Geiger counter module. For convenience of calculations, as well as based on the pulse density during normal background radiation measurements, this parameter is best calculated in counts per minute (CPM).</p>

<p class="wp-block-paragraph">For example, the J305 manufacturer specifies in the datasheet that the tube should emit 25 pulses per minute under normal background radiation. In other words, 25 CPM.</p>

<p class="wp-block-paragraph">Why do we need the CPM value on the display if there are other, more understandable indicators? Indeed, it is possible to do without pulses per minute. However, it is a very convenient indicator when we want to understand if there are any malfunctions in the device. Usually, in our devices, we make a cumulative counter of the number of registered pulses for the entire time the device has been operating since the power was applied. </p>

<p class="wp-block-paragraph">In this case, even if we do not have a source of accurate synchronized time, such as NTP or RTC, we can still calculate the average number of pulses per minute by dividing the sum of all pulses by the total time elapsed since power was applied. This indicator can indicate the quality of our data, even if hours have passed since the device was turned on. </p>

<p class="wp-block-paragraph">We hope that since the principle of such checks is already known to you, you will develop your own algorithms for checking the data quality and the operation of the counter if necessary. There can be many implementations.</p>

<h2 class="wp-block-heading">Radiation Source Power</h2>

<p class="wp-block-paragraph">When we want to estimate the radiation source power, we need to apply the conversion factor from CPM to μSv/h obtained by calculation based on the data specified in the tube&#8217;s datasheet from the manufacturer:</p>

<p class="wp-block-paragraph"><em>For the J305 tube, the manufacturer specifies a sensitivity of 44 cpm per 1 μR/h from a Co-60 source;</em></p>

<p class="wp-block-paragraph">Let&#8217;s convert the data we need:</p>

<ol class="wp-block-list"><li>Converting to counts per minute at 1 mR/h:</li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>CPS / mR/h → CPM / mR/h: 44 * 60 = 2640;</strong></p>

<ol class="wp-block-list" start="2"><li>Converting to counts per minute at 1 μSv/h: </li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>CPM / mR/h → CPM / μSv/h: 2640 / 10 = 264;</strong></p>

<ol class="wp-block-list" start="3"><li>Value of one pulse per minute in μSv/h:</li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / ( CPM / μSv/hr ) = 1 / 264 = 0.00378;</strong></p>

<p class="wp-block-paragraph">Therefore, if we need to convert the pulses registered by the J305 tube during a minute to μSv/hour and obtain the radiation source power value:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 CPM = 0.00378 [μSv/h];</strong></p>

<p class="wp-block-paragraph">or</p>

<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>μSv/h = CPM * 0.00378</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">When we read the documentation for a Geiger tube, this is the parameter that is usually discussed.</p>

<h2 class="wp-block-heading">Equivalent Dose Absorbed by the Human Body</h2>

<p class="wp-block-paragraph">To obtain the value of the equivalent dose of radiation absorbed by the human body, we will apply the model of a human body phantom:</p>

<ol class="wp-block-list"><li>Lets convert counts per second to counts per minute at 1 mR/h:</li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>44 * 60 = 2640 pulses/minute / mR/hour</strong></p>

<ol class="wp-block-list" start="2"><li>Convert CPM at 1 mR/h to CPM at 1 R/h:</li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>2640 * 1000 = 2640000</strong></p>

<ol class="wp-block-list" start="3"><li>Let&#8217;s find the value of the exposure dose R/h at 1 CPM:</li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / 2640000 = 0.0000003787878788</strong></p>

<ol class="wp-block-list" start="4"><li>Find the air-kerma (Ka, kinetic energy released per unit mass/in matter):</li></ol>

<p class="wp-block-paragraph">The equation is as follows: </p>

<p class="has-text-align-center wp-block-paragraph">Ka [Gy] = 0.00877 [Gy/R] x exposure [R]</p>

<p class="wp-block-paragraph">where 0.00877 – radiation dose absorption coefficient by the human body on a phantom model under the influence of photon energies of 100 keV &#8211; 3 MeV</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00877 * 0.0000003787878788 = 0.000000003321969697 Ka[Gy]</strong></p>

<ol class="wp-block-list" start="5"><li>Let&#8217;s convert Ka[Gy] to Ka[μSv] (i.e., from Gray to μSv):</li></ol>

<p class="has-text-align-center wp-block-paragraph"><strong>0.000000003321969697 * 1000000 = 0.003321969697 Ka[μSv]</strong></p>

<p class="wp-block-paragraph">Thus, the formula for the equivalent absorbed dose of radiation by the human body for the Geiger-Muller J305 tube with gamma sensitivity for Co-60 of 44 cps/mR/h is as follows:</p>

<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>μSv/h = CPM x 0.00332</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph"><em><strong>Please note:</strong></em> To obtain the cumulative value of the equivalent dose of energy absorbed by the human body, we need to add the hourly values to the previous accumulated sum throughout the entire measurement period (from the moment of power supply or resetting the counter value). See the example below.</p>

<p class="wp-block-paragraph">Why should we be more interested in the dose of radiation absorbed by the human body than in the radiation source power? There are at least two reasons for this, which follow from each other. </p>

<p class="wp-block-paragraph"><strong>First</strong>, from the point of view of radiation safety, it is not the power of the source itself that is important, but the dose that we will absorb over a certain period of time if we are exposed to the radiation source.</p>

<p class="wp-block-paragraph"><strong>Second</strong>, since the dose of absorbed radiation is so important, it is the dose for humans that is calculated and provided by government organizations for radiation protection and public health. </p>

<p class="wp-block-paragraph">Usually, the permissible dose is given for a period of one year. It is such tabular data that allows us to objectively assess what is the normal level of background radiation &#8211; the moment when the radiation source power and the equivalent dose absorbed by the human body can be converted to common units and compared. </p>

<p class="wp-block-paragraph">If the normal background level, in terms of its instantaneous power converted to a year, turns out to be higher than the permissible dose per year, then this may not be background, but a certain radioactive source. And then something needs to be done immediately with the radiation source that creates such a &#8220;background&#8221; so as not to exceed the permissible absorbed dose of radiation by our body.</p>

<h2 class="wp-block-heading">Practice and Examples</h2>

<p class="wp-block-paragraph">Now we come to the most important thing: when creating sensor entities for GGreg20_V3 with a J305 tube, for example in ESPHome, we need to use the appropriate coefficients for different physical values.</p>

<ol class="wp-block-list"><li>Number of pulses per minute is always just the number of pulses &#8211; a dimensionless value. But if necessary, a conversion or averaging coefficient can also be applied (not considered in this article);</li><li>For radioactive source power: CPM * <strong>0.00378</strong> [μSv/h];</li><li>For the equivalent dose absorbed by the human body: CPM x <strong>0.00332</strong> [μSv/h], finding the sum of the minute-by-minute values [μSv] for the entire measurement time.</li></ol>

<h3 class="wp-block-heading">Example for ESP32 + GGreg20_V3 + J305 у ESPHome</h3>

<p class="wp-block-paragraph"><strong># 1</strong>. Pulse Count Sensor from a Counter with a 60-Second Measurement Cycle</p>

<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group=""> sensor:
- platform: pulse_counter
 pin:
 number: 23
 inverted: True
 mode: 
 input: True 
 pullup: False
 pulldown: False
 unit_of_measurement: 'CPM'
 name: 'Ionizing Radiation CPM'
 count_mode: 
 rising_edge: DISABLE
 falling_edge: INCREMENT # GGreg20_V3 uses Active-Low logic
 use_pcnt: False
 internal_filter: 180us # for J305
 update_interval: 60s
 accuracy_decimals: 0
 id: my_cpm_meter
</pre>

<p class="wp-block-paragraph"><strong># 2</strong>. Radiation Source Power Sensor with a 60-Second Measurement Cycle</p>

<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">- platform: copy
 source_id: my_cpm_meter
 unit_of_measurement: 'uSv/Hour'
 name: 'Ionizing Radiation Power'
 accuracy_decimals: 3
 id: my_power_meter
 filters:
 - multiply: 0.00378 # for J305</pre>

<p class="wp-block-paragraph"><strong># 3</strong>. Sensor for Equivalent Dose Absorbed by the Human Body per Hour with a 60-Second Measurement Cycle</p>

<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">- platform: copy
 source_id: my_cpm_meter
 unit_of_measurement: 'uSv/Hour'
 name: 'Ionizing Radiation Equivalent Absorbed Energy'
 accuracy_decimals: 3
 id: my_dose_meter
 filters:
 - multiply: 0.00332 # for J305</pre>

<p class="wp-block-paragraph"><strong># 4</strong>. Cumulative Equivalent Dose Absorbed by the Human Body from Radiation Since the Start of Measurement (i.e., from the Moment of Power Supply)</p>

<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">- platform: integration
 name: "Total Ionizing Radiation Equivalent Absorbed Energy Dose"
 unit_of_measurement: "uSv"
 sensor: my_dose_meter # link entity id to the pulse_counter values above
 icon: "mdi:radioactive"
 accuracy_decimals: 5
 time_unit: min # integrate values every next minute
 filters:
 # cumulative absorbed dose. Converting it from uSv/hour into uSv/minute: [uSv/h / 60] OR [uSv/h * 0.0166666667]. 
 - multiply: 0.0166666667
 # but if my_dose_meter in CPM, then [0.00332 / 60 minutes] = 0.000055; so CPM * 0.000055 = dose every next minute, uSv.
 #- multiply: 0.000055 # for J305</pre>

<h2 class="wp-block-heading">Conclusions</h2>

<p class="wp-block-paragraph">In this article, we made an important discovery that the coefficients for different tasks for the same Geiger tube should be different. This approach differs from the examples that are given on the Internet. </p>

<p class="wp-block-paragraph">Although we have already written in passing about different coefficients (see articles on calculating conversion coefficients), in our numerous examples on <a href="https://github.com/iotdevicesdev/DIY-Geiger-Counter-Module-GGreg20_V3" target="_blank" rel="noopener">GitHub</a> , we previously used only one coefficient, because that&#8217;s what everyone does. </p>

<p class="wp-block-paragraph">Now we believe that it is better to calculate a separate coefficient for each sensor entity depending on its type and purpose. Perhaps we will even update the YAML files in our examples on GitHub.</p>

<h2 class="wp-block-heading">References to other publications and examples</h2>

<p class="wp-block-paragraph">UA: <a href="https://iot-devices.com.ua/en/geiger-tube-j305-how-to-calculate-the-conversion-factor-of-cpm-technical-note-en/">Geiger tube J305: How to calculate the conversion factor of CPM to μSv/h Technical note</a><br/>EN: <a href="https://iot-devices.com.ua/en/geiger-tube-j305-how-to-calculate-the-conversion-factor-of-cpm-technical-note-en/">Geiger tube J305: How to calculate the conversion factor of CPM to μSv/h. Technical note</a></p>

<p class="wp-block-paragraph">UA: <a href="https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/">Технічна нотатка: Як розрахувати коефіцієнт перетворення для трубки Гейгера СБМ20</a><br/>EN: <a href="https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/">Technical note: How to calculate the conversion factor for Geiger tube SBM20</a></p>

<p class="wp-block-paragraph">UA: <a href="https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/">Трубки Гейгера-Мюллера: порівняння SBM20, J305 та LND712</a><br/>EN: <a href="https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/">Geiger-Muller tubes: Comparison of SBM20, J305 and LND712</a></p>

<p class="wp-block-paragraph">EN: <a href="https://github.com/iotdevicesdev/DIY-Geiger-Counter-Module-GGreg20_V3" target="_blank" rel="noopener">DIY Geiger counter GGreg20_V3 on GitHub</a></p>

<h2 class="wp-block-heading">Easy Links</h2>

<p class="wp-block-paragraph">Unique Vendor ID: <a href="https://go.iot-devices.com.ua/ggreg20_v3">https://go.iot-devices.com.ua/ggreg20_v3</a><br/>User Friendly ID: <a href="https://go.iot-devices.com.ua/geiger-counter">https://go.iot-devices.com.ua/geiger-counter</a></p>

<h2 class="wp-block-heading">Where and how to order</h2>

<p class="wp-block-paragraph"><a href="https://go.iot-devices.com.ua/ggreg20_v3">Website Online Shop</a><br/><a href="https://go.iot-devices.com.ua/ggreg20_v3_etsy">Etsy Store</a><br/><a href="https://go.iot-devices.com.ua/ggreg20_v3_tindie">Tindie Marketplace</a></p>

<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geiger tube J305: How to calculate the conversion factor of CPM to μSv/h Technical note</title>
		<link>https://iot-devices.com.ua/en/geiger-tube-j305-how-to-calculate-the-conversion-factor-of-cpm-technical-note-en/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Mon, 08 Jan 2024 05:50:38 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[J305]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[technical-note]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=3255</guid>

					<description><![CDATA[We have already made a similar publication for the SBM20 Geiger tube. This time we bring to your attention an article dedicated to the equally popular J305 tube made in China. According to our statistics, the J305 tube is second only to the Soviet-made SBM20 tube in terms of prevalence among DIY Geiger counter projects. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">We have already made a similar publication for the <a href="https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/">SBM20</a> Geiger tube. This time we bring to your attention an article dedicated to the equally popular J305 tube made in China.</p>
<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1500" height="1000" src="https://iot-devices.com.ua/wp-content/uploads/2024/01/ggreg20_v3_j305_conversion_factor.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Geiger tube J305" style="object-fit:cover;" srcset="https://iot-devices.com.ua/wp-content/uploads/2024/01/ggreg20_v3_j305_conversion_factor.jpg 1500w, https://iot-devices.com.ua/wp-content/uploads/2024/01/ggreg20_v3_j305_conversion_factor-300x200.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2024/01/ggreg20_v3_j305_conversion_factor-1024x683.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2024/01/ggreg20_v3_j305_conversion_factor-768x512.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2024/01/ggreg20_v3_j305_conversion_factor-454x303.jpg 454w" sizes="(max-width: 1500px) 100vw, 1500px" /></figure>
<p class="wp-block-paragraph">According to our statistics, the J305 tube is second only to the Soviet-made SBM20 tube in terms of prevalence among DIY Geiger counter projects.</p>

<p class="wp-block-paragraph">However, time passes, technologies improve, and supply chains change. New products and components are steadily occupying their niche on the shelves of electronics suppliers, gradually displacing temporary solutions from the market, which, in fact, was the Soviet SBM20 tube in the DIY electronics market.</p>

<p class="wp-block-paragraph">If we were asked to compare SBM20 and J305 tubes, we would choose J305 for our project, as we have already mentioned in a separate <a href="https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/">publication</a>. This article compares J305, SBM20, and LND712 tubes that we have worked with and with which the Geiger counter module GGreg20_V3 is electrically compatible.</p>

<p class="wp-block-paragraph">This publication also describes the J305 tube as the closest and best alternative to the SBM20 tube, in our opinion. We will look at how to calculate the conversion factor for converting the number of pulses per minute of the J305 tube into the value of μSv/h, the equivalent dose of radiation absorbed by the human body.</p>

<figure class="wp-block-table"><table><tbody><tr><td>The main purpose of this publication is to correctly calculate and, if possible, understand where the conversion factor, such as 0.00812 for the J305 tube, comes from, which is published on the Internet.</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">The Internet widely publishes data that the conversion factor for the J305 Geiger tube is 0.00812.</p>

<p class="has-text-align-center wp-block-paragraph">0,00812</p>

<p class="wp-block-paragraph">As in the case of the SBM20 tube, we had to carefully search the Internet for the original source of this information. Unlike the investigation of the coefficient for SBM20, our search for data on J305 was successful and led us to the primary source of the common coefficient of 0.00812.</p>

<p class="wp-block-paragraph">But let&#8217;s not get too far ahead of ourselves and set out everything in order.</p>

<p class="wp-block-paragraph">Here are the general technical characteristics of the tubes so that we can look at them while studying the calculations that follow.</p>

<figure class="wp-block-table"><table><tbody><tr><td></td><td>SBM20</td><td>J305</td><td>LND712</td></tr><tr><td>Vendor’s calibration radioactive source</td><td>Cs-137</td><td>Co-60</td><td>Co-60</td></tr><tr><td>Sensitivity</td><td>60 &#8211; 70 counts / uR at 4 uR/s Cs-137 or 240-280 CPS at 4</td><td>44 CPS at 1 mR/h Co-60</td><td>18 CPS at 1 mR/h</td></tr><tr><td>Dead Time</td><td>190 us</td><td>?</td><td>90 us</td></tr><tr><td>Background radiation level</td><td>60 pulses/minute</td><td>25 pulses/minute</td><td>?</td></tr><tr><td>Internal background noise</td><td>1 pulses/s or 60 pulses/minute</td><td>0,2 CPS or 12 CPM</td><td>10 CPM</td></tr><tr><td>Recommended operating supply voltage</td><td>400 V</td><td>glass tube 380 V metal tube 400 V</td><td>500 V</td></tr></tbody></table></figure>

<h2 class="wp-block-heading">Some formulas and calculations</h2>

<p class="wp-block-paragraph">As for the <a href="https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/">SBM20</a> tube, the calculation procedure for the J305 tube will be the same. </p>

<p class="wp-block-paragraph">We will make calculations for J305 based on the manufacturer&#8217;s data.</p>

<p class="wp-block-paragraph">The rate of event registration by the J305 tube at 1 μR/h from the Co-60 source is 44 pulses per second;</p>

<p class="wp-block-paragraph">1. Let&#8217;s write down the initial data from the manufacturer&#8217;s datasheet. Pulses per second at 1 mR/hour:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>44 pulses/s / mR/h</strong></p>

<p class="wp-block-paragraph">2. Convert to pulses per minute at 1 mR/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>44 * 60 = 2640 pulses/minute / mR/hour</strong></p>

<p class="wp-block-paragraph">3. Convert to pulses per minute at 1 μSv/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>2640 / 10 = 264 pulses/minute / μSv/h</strong></p>

<p class="wp-block-paragraph">or</p>

<p class="has-text-align-center wp-block-paragraph"><strong>264 pulses/minute = 1 μSv/h</strong></p>

<p class="wp-block-paragraph">or</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 pulses/minute = 1</strong>:<strong>264 μSv/h</strong></p>

<p class="wp-block-paragraph">4. Calculate the value of one pulse per minute:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / 264 = 0,00378</strong></p>

<p class="wp-block-paragraph">Thus, if we need to convert the pulses detected by the J305 tube during a minute to μSv/hour:</p>

<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>μSv/h = pulses/minute * 0.00378</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">Everything would have been fine, and we could have stopped calculations there. But the coefficient we have just obtained</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0,00378</strong></p>

<p class="wp-block-paragraph">gives us the exposure value recorded by the Geiger counter. We are primarily interested in the equivalent dose of radiation absorbed by the human body.</p>

<p class="wp-block-paragraph">Therefore, let&#8217;s move on to the next part of the calculations.</p>

<figure class="wp-block-table"><table><tbody><tr><td>We are primarily interested in the equivalent dose of radiation absorbed by the human body, not the exposure dose registered by the device</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">In order to estimate the equivalent dose of energy absorbed by the human body, science uses the so-called human body phantom model, which calculates certain conversion factors for converting one value to another.</p>

<p class="wp-block-paragraph">If you are interested in reading the theory on this subject, we can advise you to read this publication:</p>

<p class="wp-block-paragraph"><a href="https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units" target="_blank" rel="noopener">https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units</a></p>

<p class="wp-block-paragraph">We now proceed to derive the conversion factor for converting the CPM of the tube into an equivalent dose of absorbed radiation in microsieverts per hour, taking into account the phantom model of the human body.</p>

<p class="wp-block-paragraph">Let&#8217;s start the calculation with the coefficient provided by the manufacturer in the documentation: 44 imp/s per 1 mR/h of Co-60.</p>

<p class="wp-block-paragraph">J305 sensitivity to gamma rays: 44 CPS/mR/h</p>

<p class="wp-block-paragraph">1. Let&#8217;s convert pulses/s to pulses/minute at 1 mR/h (we already have this value, but we are going to calculate it again for the reader&#8217;s convenience):</p>

<p class="has-text-align-center wp-block-paragraph"><strong>44 * 60 = 2640 pulses/minute / mR/hour</strong></p>

<p class="wp-block-paragraph">2. Convert CPM at 1 mR/h to CPM at 1 R/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>2640 * 1000 = 2640000</strong></p>

<p class="wp-block-paragraph">3. Find the value of the exposure dose R/h per 1 CPM:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / 2640000 = 0.0000003787878788</strong></p>

<p class="wp-block-paragraph">4. Find the air-kerma (Ka, kinetic energy released per unit mass/in a substance):</p>

<p class="wp-block-paragraph">The equation is as follows: </p>

<p class="has-text-align-center wp-block-paragraph"><strong>Ka [Gy] = 0.00877 [Gy/R] x exposure [R]</strong></p>

<p class="wp-block-paragraph">where 0.00877 is the coefficient of radiation dose absorption by the human body on the phantom model under the influence of photon energies of 100 keV &#8211; 3 MeV </p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Note</strong> . For the air-kerma equation and coefficients, see the link: the link: <a href="https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units" target="_blank" rel="noopener">https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units</a></p>
</blockquote>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00877 * 0.0000003787878788 = 0.000000003321969697 Ka[Gy]</strong></p>

<p class="wp-block-paragraph">5. Convert Ka[Gy] to Ka[uSv] (i.e., switch from Gray to µSv):</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.000000003321969697 * 1000000 = 0.003321969697 Ka[uSv]</strong></p>

<p class="wp-block-paragraph">6. Perform the check and find the inverse value:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.003321969697 ^(-1) = 301.0262258</strong></p>

<p class="wp-block-paragraph">Thus, the formula for the equivalent absorbed dose of radiation by the human body for the Geiger-Muller J305 tube with gamma sensitivity for Co-60 of 44 cps/mR/h is as follows:</p>

<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>uSv/h = CPM x 0.00332</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">where </p>

<p class="wp-block-paragraph">0.00332 μSv/h is the value of one count, pulses/min;</p>

<p class="wp-block-paragraph">CPM is the number of counts (events) per minute detected by the Geiger tube.</p>

<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-left" data-align="left">Lifehack (Quick formula):<br/><br/>To get a factor of 0.00332, you can simply multiply the value of 44 imp/s / mR/h from the datasheet by 60 and divide by 8.77, and take the inverse.<br/><br/>                  <strong>1 / (44 * 60 / 8.77) = 1 / 301.0262258 = 0.003321969697</strong><br/><br/>This is what we checked with such complex conversions above. Now you know where this coefficient comes from</td></tr></tbody></table></figure>

<h2 class="wp-block-heading">Something is wrong here</h2>

<p class="wp-block-paragraph">Well, an attentive reader will say, but where is the number 0.00812, which was mentioned at the beginning of the calculations?</p>

<p class="wp-block-paragraph">You are right! We were also surprised: as a result of the calculations, we got the coefficient equal to 0.00332, but we expected that the calculation should result in a value of 0.00812. That is, a completely different number for the CPM to μSv/h conversion factor. </p>

<p class="wp-block-paragraph">We started searching on the Internet and found it.</p>

<p class="wp-block-paragraph">As it turned out, most of the examples of settings for the J305 tube simply refer to each other, but we did find out where this coefficient came from.</p>

<p class="wp-block-paragraph">Follow the <a href="https://web.archive.org/web/20230711100550/http://www.opengeiger.de/LibeliumDoku.pdf" target="_blank" rel="noopener">link</a> (or here, in <a href="https://web.archive.org/web/20230711100737/https://www.libelium.com/wp-content/uploads/2013/02/radiation_board_eng.pdf" target="_blank" rel="noopener">PDF on the Libelium website</a>) to find a document with the following data:</p>

<p class="wp-block-paragraph">“…The current version of the pack comes with the J305ß Geiger tube which detectes Beta and Gamma radiation.<br/>Specifications:<br/>Manufacturer: North Optic<br/>Radiation Detection: β, γ<br/>Length: 111mm<br/>Diameter: 11mm<br/>Recommended Voltage: 350V<br/>Plateau Voltage: 360-440V<br/>Sensitivy γ (60Co): 65cps/(µR/s)<br/>Sensitivy γ (equivalent Sievert): 108cpm / (µSv/h)<br/>Max cpm: 30000<br/>cps/mR/h: 18<br/>cpm/mR/h: 1080<br/>cpm/µSv/h: 123.147092360319<br/>Factor: 0.00812037037037…&#8221;</p>

<p class="wp-block-paragraph">Everyone refers to this text and there is no way to verify the data, because the website of such a manufacturer as North Optic does not exist.</p>

<p class="wp-block-paragraph">The most surprising thing is that respectable resources also publish (or allow users to do so) this coefficient without the note &#8220;Attention! No one knows where it came from.&#8221;</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><em><strong>Note.</strong> Please contact us if you have any information on how to contact North Optic or explanations on the reliability of the 0.00812 coefficient. Thank you in advance. Thank you in advance.</em></p>
</blockquote>

<p class="wp-block-paragraph">As you can see, the original data provided by North Optic is very different from the data currently provided by Chinese manufacturers with their tubes.</p>

<p class="wp-block-paragraph">For comparison, here is the datasheet for the J305 glass tube we have. These are the tubes that we use to equip the Geiger counter module GGreg20_V3:</p>

<figure class="wp-block-table"><table><tbody><tr><td><img loading="lazy" decoding="async" src="https://lh7-us.googleusercontent.com/7blyW8D9FsjIRE2SEbpI4h98ZjpoSOnuPAywTQO5ioPgNy_r7uP1Ae74zDTfFIHkee7GXz476_eY5lqcvtCvgFMW9GQkBeJfDl9wF_IN_1lng1TTIhvrjQVwoHDsSVQvS26M_mk7454PsAN361DCbtk" width="587" height="515"/></td></tr><tr><td>Fig. Characteristics of the J305 tube from the manufacturer&#8217;s datasheet</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">Given the materials we found, it is at least clear where the numerical value of the conversion factor of 0.00812 comes from.</p>

<p class="wp-block-paragraph">Look, from the mathematical point of view, everything is very simple:</p>

<p class="has-text-align-center wp-block-paragraph">[18 CPS / mR/h] x 60 / 8.77 = 123.1470923603193</p>

<p class="has-text-align-center wp-block-paragraph">1 / 123.1470923603193 = 0.0081203703703704</p>

<p class="wp-block-paragraph">Here, we immediately applied a quick formula and obtained a conversion factor of 0.00812 for a tube with a sensitivity of 18 CPS / mR/h. </p>

<p class="wp-block-paragraph">Indeed, if we assume that the tube has a sensitivity of 18 CPS / mR/h, then the coefficient should be exactly 0.00812.</p>

<p class="wp-block-paragraph">But the 2022 J305 tube that suppliers sell through Alibaba in 2023, and that we hold in our own hands, has completely different properties. Declared by the Chinese manufacturer in the datasheet: 44 CPS / mR/h.</p>

<h2 class="wp-block-heading">Conclusions</h2>

<p class="wp-block-paragraph">We provided a complete algorithm and showed how to calculate the conversion factor of CPM to the equivalent dose of radiation absorbed by the human body (uSv/h) for a Geiger tube such as J305.</p>

<p class="wp-block-paragraph">We also considered two variants of the conversion factor. </p>

<p class="wp-block-paragraph">The first is the one we calculated based on the data in the datasheet: <strong>0.00332</strong>. </p>

<p class="wp-block-paragraph">The second is the one that everyone uses: <strong>0.00812</strong></p>

<p class="wp-block-paragraph">It is up to you to decide which conversion factor you prefer to use.</p>

<h2 class="wp-block-heading">Examples for ESPHome</h2>

<p class="wp-block-paragraph">We would like to remind you that the GGreg20_V3 module is compatible with both tubes: SBM20 and J305.</p>

<p class="wp-block-paragraph">On our <a href="https://github.com/iotdevicesdev/DIY-Geiger-Counter-Module-GGreg20_V3" target="_blank" rel="noopener">GitHub</a> , you will find several examples of ESPHome firmware configuration files for both SBM20 and J305 handsets. The difference is only in a few coefficients of these tubes:</p>

<ul class="wp-block-list">
<li>CPM -&gt; uSv/h conversion factor;</li>



<li>coefficient of compensation of internal noise of the tube (for cases when it is used).</li>
</ul>

<p class="wp-block-paragraph">Currently, ESPHome is a fairly common and popular platform with wide support for a variety of MCUs, such as <a href="https://github.com/iotdevicesdev/DIY-Geiger-Counter-Module-GGreg20_V3#esp8266-example--yaml" target="_blank" rel="noopener">ESP8266</a>, <a href="https://github.com/iotdevicesdev/DIY-Geiger-Counter-Module-GGreg20_V3#esp32-example--yaml" target="_blank" rel="noopener">ESP32</a>, <a href="https://github.com/iotdevicesdev/DIY-Geiger-Counter-Module-GGreg20_V3#raspberry-pi-pico-w-example--yaml" target="_blank" rel="noopener">RaspberryPi Pico W</a>, and others. That&#8217;s why most of the examples in our <a href="https://github.com/iotdevicesdev?tab=repositories" target="_blank" rel="noopener">GitHub</a> repositories are aimed at and based on the ESPHome firmware and Home Assistant server.</p>

<h2 class="wp-block-heading">Where to order GGreg20_V3</h2>

<p class="wp-block-paragraph">You can order the Geiger counter module <a href="https://go.iot-devices.com.ua/geiger-counter">GGreg20_V3 on our website</a>, as well as on one of our electronic platforms:</p>

<ul class="wp-block-list">
<li>Online shop: <a href="https://go.iot-devices.com.ua/shop">go.iot-devices.com.ua/shop</a></li>



<li>Etsy store: <a href="https://go.iot-devices.com.ua/etsy">go.iot-devices.com.ua/etsy</a></li>



<li>Tindie store: <a href="https://go.iot-devices.com.ua/tindie">go.iot-devices.com.ua/tindie</a></li>
</ul>

<p class="wp-block-paragraph">If ordered, the GGreg20_V3 module is equipped with several additional options to choose from. Among them:</p>

<ul class="wp-block-list">
<li>Geiger tube J305</li>



<li>cables for connection to the MCU</li>



<li>protective 3D printed plastic cover for GGreg20_V3</li>
</ul>

<p class="wp-block-paragraph">Please also note that you can also order the <a href="https://go.iot-devices.com.ua/esp8266-mcu-board">ESP12.OLED_V1</a> universal controller module (based on the ESP8266) on our website.</p>

<p class="wp-block-paragraph">Both of these modules are sufficient to build a DIY Geiger counter with a display:</p>

<p class="wp-block-paragraph">[GGreg20_V3] + [ESP12 .OLED_V1] = [DIY Geiger counter]</p>

<p class="wp-block-paragraph">We hope that this and our other publications were useful and interesting.</p>

<p class="wp-block-paragraph">Good luck!</p>

<p class="wp-block-paragraph">Team IoT-devices, LLC</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geiger-Muller tubes: Comparison of SBM20, J305 and LND712</title>
		<link>https://iot-devices.com.ua/en/comparison-of-geiger-muller-tubes-sbm20-j305-and-lnd712/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Fri, 05 May 2023 12:56:22 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[alpha particles]]></category>
		<category><![CDATA[beta particles]]></category>
		<category><![CDATA[DIY module]]></category>
		<category><![CDATA[gamma rays]]></category>
		<category><![CDATA[Geiger counter]]></category>
		<category><![CDATA[Geiger tube]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GM tube]]></category>
		<category><![CDATA[internal background noise]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[J305]]></category>
		<category><![CDATA[LND712]]></category>
		<category><![CDATA[radiation sensitivity]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[technical-note]]></category>
		<category><![CDATA[UV]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2957</guid>

					<description><![CDATA[We understand very well the difficulties of choosing for radio amateurs who have to choose between different options, including tubes, when ordering a product. When we developed GGreg20 in 2020, we did not know anything about these things at all. Now we can share our company&#8217;s experience with anyone who needs help or is just [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">We understand very well the difficulties of choosing for radio amateurs who have to choose between different options, including tubes, when ordering a product. </p>
<figure class="wp-block-post-featured-image"><img loading="lazy" decoding="async" width="1500" height="1000" src="https://iot-devices.com.ua/wp-content/uploads/2023/05/sbm20_j305_compare.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Comparison of Geiger-Muller tubes SBM20, J305 and LND712" style="object-fit:cover;" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/05/sbm20_j305_compare.jpg 1500w, https://iot-devices.com.ua/wp-content/uploads/2023/05/sbm20_j305_compare-300x200.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/05/sbm20_j305_compare-1024x683.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/05/sbm20_j305_compare-768x512.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/05/sbm20_j305_compare-454x303.jpg 454w" sizes="(max-width: 1500px) 100vw, 1500px" /></figure>
<p class="wp-block-paragraph">When we developed <a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20</a> in 2020, we did not know anything about these things at all. Now we can share our company&#8217;s experience with anyone who needs help or is just looking for more information</p>

<p class="wp-block-paragraph">Please note that we are mostly comparing the SBM20 і J305 Geiger-Muller tubes, <a href="https://iot-devices.com.ua/en/ggreg20v3-geiger-tube-j305/">that the GGreg20_V3 comes with</a>, and <a href="https://www.lndinc.com/products/geiger-mueller-tubes/712/" target="_blank" rel="noopener">the LND712 tube</a> is mentioned here as another alternative to both tubes. This allows us to extend the comparison to the capabilities of the more complex and expensive LND712 tube. Without such comparisons, this publication would have no depth and would be reduced to the thesis that SBM20 and J305 are interchangeable and therefore there is nothing to compare them.</p>

<p class="wp-block-paragraph">Here are the key points to consider when choosing a Geiger-Muller tube for a DIY project:</p>

<ul class="wp-block-list">
<li>The purpose of the DIY project;</li>



<li>Types of radiation that the tube can detect;</li>



<li>Sensitivity of the tube;</li>



<li>Internal noise and insensitivity;</li>



<li>Operating voltage level;</li>



<li>Dimensions and method of mounting the tube;</li>



<li>Country of origin and year of manufacture.</li>
</ul>

<p class="wp-block-paragraph">Let&#8217;s consider and compare the tubes from these angles in more detail.</p>

<h2 class="wp-block-heading">The purpose of the DIY project</h2>

<p class="wp-block-paragraph">The way you set the project goal may determine what success criteria you will use to measure the results you have or have not achieved. <br/>With the Geiger counter, the project goal can also be very different. <br/>For example:</p>

<ul class="wp-block-list">
<li>a cheap stationary device that should measure background radiation and alert you to danger most of the time;</li>



<li>a miniature pocket device as a personal safety sensor for hiking;</li>



<li>a sensitive and high-speed meter for detecting radiation in food and other materials;</li>



<li>a meter/signalizer for radioactive gases in the air, such as household radon.</li>
</ul>

<p class="wp-block-paragraph">The task for which the end device is being developed may require the selection of a tube in terms of size and not require high sensitivity at all, etc. Therefore, only the user can determine for himself which tube in the Geiger counter is suitable. We can only point out that the selection of a tube according to the project task is a complex multifactorial analytical process, which we have tried to describe in depth in this publication.</p>

<h2 class="wp-block-heading">Types of radiation</h2>

<p class="wp-block-paragraph">It is quite simple: you need to choose a tube depending on what radiation you need to measure in your project. <br/>Most common tubes are sensitive to gamma and beta radiation. Some tubes are also capable of measuring the alpha channel. <br/>Please note that the alpha channel in tubes is usually realized by having a mica window in the end of the housing. <br/>To convert an a,b,g-tube to a b,g- tube, it is enough to close the mica window tightly with a piece of paper or the plastic cover of the housing. <br/>To turn a b,g- or a,b,g- tube into a g- tube only, you need to shield the tube from beta particles. This can be accomplished by an aluminum casing with a thickness of several millimeters. Such an aluminum casing shields the tube from both beta and alpha particles at the same time.</p>

<p class="wp-block-paragraph">As far as this article is concerned, the SBM20 and J305 tubes are capable of measuring beta and gamma radiation. The LND712 tube has all three channels: alpha, beta, and gamma.</p>

<p class="wp-block-paragraph">How can this affect a DIY project from a practical point of view? </p>

<p class="wp-block-paragraph">If you plan to measure only gamma rays with the SBM20 / J305 tube, then you need to shield such a tube from beta particles. <br/>If you need to measure only beta particles with the SBM20/J305 tube, then you can try to use two such tubes at the same time: one with a shield that protects against beta particles, and the other without such a shield. In this case, by finding the difference between the measurement results for each tube, we can calculate the quantitative characteristic for beta particles. <br/>The same applies to alpha particles: by filtering the alpha channel and subtracting the results between the tubes, we find the quantity for alpha particles. <br/>With the LND712 tube, which is sensitive to a,b,g-, it is possible to implement a project to measure household radon, in particular Radon-222, since this isotope is the source of alpha particles. <br/>It should be emphasized that for measurements with several tubes, you need to have several GGreg20_V3 modules. Each module is connected to a separate GPIO of the main controller, which in turn will be able to count pulses independently for each tube. </p>

<h2 class="wp-block-heading">Tube sensitivity</h2>

<p class="wp-block-paragraph">When we first started to figure out which tubes to use for our GGreg20 Geiger counter project a few years ago, we experimented and sometimes mistakenly chose tubes that were capable of producing only a few pulses per hour at background radiation levels. </p>

<p class="wp-block-paragraph">Of course, they would be impossible to use in a DIY Geiger counter project, which should be sensitive enough to measure background radiation most of the time.</p>

<figure class="wp-block-table"><table><tbody><tr><td>The sensitivity of the tube is important Depending on the objective of your project, you need to choose a tube with the appropriate sensitivity.</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">So, when you are choosing which of the GGreg20_V3 options to order, don&#8217;t worry and know that we have already tested different tube models for you and have included in the options only those that really work with the GGreg20_V3.</p>

<p class="wp-block-paragraph">J305 and SBM20 tubes, although they have some differences, work equally well with our product. </p>

<p class="wp-block-paragraph">The LND712 tube, although not currently available as an option for the GGreg20_V3, also works very well with our Geiger counter module.. </p>

<p class="wp-block-paragraph">In general, the LND712 has a lot of interesting functions and features that can make a project with the GGreg20_V3 module even more interesting. Perhaps in the future we will offer this tube as an additional option as part of the Geiger counter module of our production. </p>

<p class="wp-block-paragraph">In terms of sensitivity (pulses/mR), the LND712 tube is not much different from the SBM20, but given that it is more modern, we would prefer it</p>

<h2 class="wp-block-heading">Own noise and insensitivity</h2>

<p class="wp-block-paragraph">Geiger tubes have two important characteristics that should be taken into account when comparing them. </p>

<p class="wp-block-paragraph">Internal noise is the false-positive pulses generated by the tube in the absence of external radiation. When designing or calibrating a tube, the manufacturer places the test sample in a radiation-shielded laboratory environment and measures the number of false-positive pulses per unit time. Typically, the intrinsic noise of the tube is specified in the datasheet in pulses per second.</p>

<p class="wp-block-paragraph">The SBM20 tube, compared to the J305 and LND712, has a significantly higher intrinsic noise value according to the datasheet. This means that the SBM20 tube will measure natural background radiation much worse than the J305 or LND712 tubes.</p>

<p class="wp-block-paragraph">Insensitivity is the time during which the tube recovers from the previous avalanche-like disturbance and is unable to detect the next such event. This time is commonly referred to as the dead time of the tube and is measured in microseconds. In practice, as a consequence, the tube is not able to generate an output pulse during this period of time. </p>

<p class="wp-block-paragraph">It is also worth noting that the dead time directly depends on the size of the tube. The longer the tube is, the longer this time is. Of course, the length is not the cause, but only a consequence of the general design of most tubes and their principle of operation.</p>

<p class="wp-block-paragraph">If your project is aimed at measuring high levels of radiation, this property of the tube must be carefully considered, because the higher the radiation we measure, the more dense the events that the tube records will be. At a certain point, the limit will be reached beyond which insensitivity will begin, i.e., the density of events in time when the tube simply does not have time to recover to register them.</p>

<p class="wp-block-paragraph">Due to its size, the LND712 tube (90 microseconds) is the leader in this indicator, which is half that of the SBM20 and J305 tubes (190 and 180 microseconds).</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph"><strong>Note.</strong> Here we present the Dead Time for J305 based on the data from the Internet, since the datasheets from suppliers do not contain this data.</p>
</blockquote>

<p class="wp-block-paragraph">Sensitivity to UV. It is worth mentioning the sensitivity of glass-bodied tubes (such as J305) to the rays of ordinary sunlight, especially to the UV spectrum. Indeed, you can find videos of experiments with a UV flashlight and ordinary sunlight on the Internet. The tubes in those videos are just going crazy from these stimuli, which can be seen with the naked eye.</p>

<p class="wp-block-paragraph">We also conducted <a href="https://www.youtube.com/watch?v=TRgxQ9AgAOI&amp;ab_channel=iot-devices" target="_blank" rel="noopener">a quick test</a>. We were unable to reproduce the behavior of J305 shown in the video. It is possible that the tube that generates false-positive events in the video from the Internet has some physical or technological defects that cannot be identified without special equipment. </p>

<p class="wp-block-paragraph">We sympathize with the owner of such a tube. And because of this, we decided to test random samples from a batch of our J305 tubes, which are supplied as an option to the GGreg20_V3 module. Although our J305 tubes did not show such an effect, we fully agree that sunlight can create additional noise in measurements. We recommend placing the J305 tubes in a light-tight enclosure if possible.</p>

<p class="wp-block-paragraph">With the Geiger counter module GGreg20_V3, we offer (as an option) a protective cover printed on a 3D printer. Although this cover is not able to act as a full-fledged shield for the high-energy photon flux of sunlight, it will at least partially filter one of the sources of possible noise.</p>

<h2 class="wp-block-heading">The level of operating voltage</h2>

<p class="wp-block-paragraph">When comparing the available tube options, keep in mind that different types of tubes may have individual supply voltage levels. This information is usually included in the datasheet for the tube.</p>

<p class="wp-block-paragraph">In practice, it is also important to keep in mind that the Geiger counter module (and its settings!) on which the tube you choose will be installed is crucial.</p>

<p class="wp-block-paragraph">The GGreg20_V3 module was designed to be able to provide the widest possible range of operating voltages. On the one hand, the GGreg20 supports 200 &#8211; 1200 V in the high-voltage part. On the other hand, the module can be powered in the range of <a href="https://iot-devices.com.ua/en/technical_note_supply_voltage_range_geiger_counter_ggreg20_v3/">2.4 &#8211; 5.5 V</a>. As far as we know, this is the widest range of supply voltage among similar modules.</p>

<p class="wp-block-paragraph">Therefore, in terms of high-voltage supply voltage, the GGreg20_V3 module supports all the tubes we are reviewing and comparing: J305 (380V for the model with a glass tube), SBM20 (400V), LND712 (500V).</p>

<p class="wp-block-paragraph">In practice, beyond the scope of this material, we advise you to always pay attention to whether the module that will work with the tube allows you to adjust the voltage required for the tube to work. Exceeding the supply voltage of the tube is guaranteed to damage it. If the voltage is too low, the tube will simply not work.</p>

<h2 class="wp-block-heading">Dimensions and method of mounting the tube</h2>

<p class="wp-block-paragraph">The J305 and SBM20 tubes have similar dimensions and a convenient mounting method that does not require soldering. From the point of view of manufacturing microelectronics for IoT devices, they are medium in size compared to other Geiger tubes. </p>

<p class="wp-block-paragraph">SBM20 and J305 can be called interchangeable, because they have a similar operating voltage level, the same terminals, and almost the same dimensions, which allows you to replace the tubes with each other if necessary, if you can set the appropriate conversion factors for CPM. </p>

<p class="wp-block-paragraph">It is particularly convenient that on the board of a Geiger counter module such as the GGreg20_V3, the mounting supports both tubes. It is also useful that the Geiger tube can be quickly removed from the module or replaced. In the case of the SBM20/J305, this is as easy as changing the batteries in a flashlight.</p>

<p class="wp-block-paragraph">The LND712 has about half the length, which makes it ideal for the size of the a,b,g-radiation sensor. But its output pins are made in such a way that it only needs to be soldered. Therefore, LND712, paired with a much higher price, is no longer as &#8220;convenient&#8221; as SBM20 or J0305. </p>

<p class="wp-block-paragraph">Sometimes, in order to adjust the settings of the Geiger counter module, you need to be able to remove the tube &#8211; in the case of LND712, this will be impossible without soldering.</p>

<p class="wp-block-paragraph">It&#8217;s also worth noting that in the case of building pocket devices, the length of the tube can be crucial. Let&#8217;s see: the thickness of the device will also be affected by the battery, buttons, and connectors, so the diameter of the Geiger tube is leveled by these other limitations and does not affect the dimensions of the device body. However, the length of the tube requires an increase in the size of the device body. For these reasons, the LND712 tube is significantly better than the SBM20/J305.</p>

<h2 class="wp-block-heading">Country of origin and year of manufacture</h2>

<p class="wp-block-paragraph">In our opinion, the country of origin is no less important than the other characteristics of the tube. Even from a purely practical point of view (cost and time spent on logistics, supporting local businesses, paying taxes, etc.), it is better to buy a tube that is made in the United States. </p>

<p class="wp-block-paragraph">Unfortunately, we are not aware of any opportunities to purchase tubes made in Ukraine. Our quick searches for Ukrainian tubes did not turn up anything.. </p>

<p class="wp-block-paragraph">If you know of any Ukrainian-made Geiger-Muller tubes, please contact us</p>

<p class="wp-block-paragraph">The stocks of Soviet SBM20 tubes at private sellers are significantly depleted. The shelf life of the Soviet models has long since expired. That is why we are constantly looking for alternatives. One such alternative is the Chinese-made J305 tube. The J305 tubes sold on Alibaba and Aliexpress are of 2020-2022 production year and fully meet our requirements in terms of technical characteristics and quality.</p>

<p class="wp-block-paragraph">LND712 tubes also have excellent specifications, quality, and functions. The only drawback is that they need to be purchased in the United States, with long logistics to Europe. Given the higher relative cost of these tubes and the lack of an organized official retail distribution network for LND712, it is clear why this tube has not been in the lead in the statistics of DIY Geiger counter projects.</p>

<h2 class="wp-block-heading">Conclusions</h2>

<p class="wp-block-paragraph">We&#8217;ve been monitoring our own statistics for several years now, as well as those of projects like radmon.org, <a href="https://thingspeak.com/channels/1749073" target="_blank" rel="noopener">ThingSpeak</a>, uRADMonitor, and others.</p>

<p class="wp-block-paragraph">The Soviet-made SBM20 tube is probably the most popular among those used in DIY projects. </p>

<p class="wp-block-paragraph">However, it is almost impossible to buy SBM20 anymore, as Soviet-era stocks are depleting, the shelf life and expiration date have expired, and the manufacturers of modern SBM20 tubes are only in a country that is under sanctions and is an internationally recognized aggressor, a sponsor of terrorism and is currently committing war crimes and crimes against humanity at least in Ukraine. </p>

<p class="wp-block-paragraph">At the same time, the Chinese J305 is much easier to find and buy online, but only when it comes to the glass-body version. Unfortunately, J305 with a metal body is currently very difficult to buy for reasons unknown to us. </p>

<p class="wp-block-paragraph">Unlike the SBM20 and J305, the American LND712 tube, in addition to beta and gamma, also has an alpha radiation measurement channel, which significantly expands its range of application in DIY projects. The LND712 tube has a metal body, like the SBM20, and a mica window for detecting alpha particles. </p>

<p class="wp-block-paragraph">On Internet forums, users have suggested that the glass body of the J305 is not protected from photons of normal sunlight, which can interfere with the measurement process if the tube is not additionally protected by a sunproof cover. </p>

<p class="wp-block-paragraph">We are not sure of this statement, although there is also some understanding on our part that glass tubes require a sunproof cover as glass can transmit light, including noise, which can increase the noise level of observations.</p>

<p class="wp-block-paragraph">Conversely, the metal housing of the SBM20 and LND712 tubes can act as a shield to a small extent for electromagnetic interference and sunlight. This makes the measurement performance of metal tubes more stable. On the other hand, a tube with a glass body may be more sensitive to radiation, which is also a useful property under certain conditions.</p>

<p class="wp-block-paragraph">But it should be noted that all of these are just assumptions that should be tested. However, we are not able to test all of this, because such tests require a specially equipped laboratory. </p>

<p class="wp-block-paragraph">Besides, we always have a much better tool &#8211; the manufacturer&#8217;s datasheet. The tube must meet the characteristics and operate in the manner specified in the datasheet.</p>

<figure class="wp-block-table is-style-regular"><table><tbody><tr><td><strong>Property</strong></td><td><strong>SBM20</strong></td><td><strong>J305</strong></td><td><strong>LND712</strong></td></tr><tr><td>Radiation type</td><td>beta, gamma</td><td>beta, gamma</td><td>alfa, beta, gamma</td></tr><tr><td>Dimensions (max), mm</td><td>d11 x 109</td><td>d11 x 107</td><td>d15.1 x 49.2</td></tr><tr><td>Country of Origin</td><td>ussr or russia</td><td>China</td><td>USA</td></tr><tr><td>Vendor’s calibration radioactive source</td><td>Cs-137</td><td>Co-60</td><td>Co-60</td></tr><tr><td>Sensitivity</td><td>60 &#8211; 70 counts / uR at 4 uR/s Cs-137 or 240-280 CPS at 4</td><td>44 CPS at 1 mR/h Co-60</td><td>18 CPS at 1 mR/h</td></tr><tr><td>Dead Time</td><td>190 us</td><td>No data</td><td>90 us</td></tr><tr><td>At the background level</td><td>60 pulses/minute</td><td>25 pulses/minute</td><td>No data</td></tr><tr><td>Internal background noise</td><td>1 pulses/s or 60 pulses/minute</td><td>0,2 pulses/s or 12 pulses/minute</td><td>0.17 pulses/s or 10 pulses/minute</td></tr><tr><td>Recommended operating supply voltage</td><td>400 V</td><td>glass tube 380 V metal tube 400 V</td><td>500 V</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">If we were choosing a tube for ourselves, we would not hesitate to choose the LND712. However, since GGreg20_V3 does not currently support this tube size, we would choose between SBM20 and J305 as follows:</p>

<ul class="wp-block-list">
<li>Shelf life &#8211; J305 is better; </li>



<li>Internal noise &#8211; J305 is better; </li>



<li>Sensitivity &#8211; J305 is better; </li>



<li>Country of origin &#8211; J305 is better; </li>



<li>Background radiation &#8211; J305 is better; </li>



<li>Calibration source &#8211; J305 is better (most tubes are calibrated by Co-60); </li>



<li>Dead time &#8211; no difference; </li>



<li>Metal case &#8211; SBM20 is better; </li>



<li>Dimensions and mounting &#8211; no difference; </li>



<li>Supply voltage &#8211; no difference; </li>



<li>Retail distribution network &#8211; J305 is better; </li>



<li>Price and quality &#8211; J305 is better.</li>
</ul>

<p class="wp-block-paragraph">Guided by the data from the documentation, statistics from the Internet and our own experience, we would definitely choose the J305. We would choose SBM20 only in exceptional circumstances, when for some significant reason J305 would be impossible to use. </p>

<p class="wp-block-paragraph">Thank you for your attention!<br/>Team IoT-devices, LLC</p>

<p class="wp-block-paragraph">Additional resources on the topic:</p>

<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/ggreg20v3-geiger-tube-j305/">https://iot-devices.com.ua/en/ggreg20v3-geiger-tube-j305/</a><br/><a href="https://iot-devices.com.ua/en/technical_note_supply_voltage_range_geiger_counter_ggreg20_v3/">https://iot-devices.com.ua/en/technical_note_supply_voltage_range_geiger_counter_ggreg20_v3/</a><br/><a href="https://iot-devices.com.ua/en/uv-test-of-the-j305-geiger-tubes/">https://iot-devices.com.ua/en/uv-test-of-the-j305-geiger-tubes/</a><br/><a href="https://iot-devices.com.ua/en/technical_note_performance_of_diy_geiger_counter_ggreg20_v3_at_low_-temperatures/">https://iot-devices.com.ua/en/technical_note_performance_of_diy_geiger_counter_ggreg20_v3_at_low_-temperatures/</a><br/><a href="https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1/">https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1/</a><br/><a href="https://iot-devices.com.ua/en/maximum-radiation-that-can-be-measured-by-geiger-counter-ggreg20_v3-en/">https://iot-devices.com.ua/en/maximum-radiation-that-can-be-measured-by-geiger-counter-ggreg20_v3-en/</a><br/><a href="https://iot-devices.com.ua/en/ggreg20v3-case-3d-model-for-personal-use/">https://iot-devices.com.ua/en/ggreg20v3-case-3d-model-for-personal-use/</a></p>

<p class="wp-block-paragraph">Easy Links:</p>

<p class="wp-block-paragraph">go.iot-devices.com.ua</p>

<p class="wp-block-paragraph"> /geiger-counter <br/>/high-voltage-converter <br/>/geiger-counter-emulator <br/>/tindie</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Technical note: How to calculate the conversion factor for Geiger tube SBM20</title>
		<link>https://iot-devices.com.ua/en/technical-note-how-to-calculate-the-conversion-factor-for-geiger-tube-sbm20/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Wed, 12 Apr 2023 17:11:03 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[absorbed dose]]></category>
		<category><![CDATA[calibration]]></category>
		<category><![CDATA[Co-60]]></category>
		<category><![CDATA[conversion factor]]></category>
		<category><![CDATA[Cs-137]]></category>
		<category><![CDATA[divider-8.77]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[equivalent dose]]></category>
		<category><![CDATA[exposition dose]]></category>
		<category><![CDATA[factor-0.0057]]></category>
		<category><![CDATA[gamma-radiation]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[gm-tube]]></category>
		<category><![CDATA[human body model]]></category>
		<category><![CDATA[ionizing radiation]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[phantom]]></category>
		<category><![CDATA[photon radiation]]></category>
		<category><![CDATA[Ra-226]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[technical-note]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2904</guid>

					<description><![CDATA[Problem and objective There are a lot of publications on the Internet on how to convert CPM (Counts per Minute) obtained from a Geiger tube to radiation levels. However, despite the wide coverage of this topic on various forums and a wide range of examples with code for various programming languages, we had to understand [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Problem and objective</h2>

<p class="wp-block-paragraph">There are a lot of publications on the Internet on how to convert CPM (Counts per Minute) obtained from a Geiger tube to radiation levels. However, despite the wide coverage of this topic on various forums and a wide range of examples with code for various programming languages, we had to understand the topic deeper than we wanted to in order to be able to properly calculate the conversion factor for Geiger tube SBM20 from CPM to absorbed dose of radiation μSv/h and configure the conversion in our own products and make an example calculation for everyone</p>

<p class="wp-block-paragraph">IoT-devices, LLC is producing its Geiger counter module <a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_V3</a> with a pulse output and two types of tube to choose from. Currently, customers can choose either SBM20 or J305 when ordering a device from our production.</p>

<figure class="wp-block-table"><table><tbody><tr><td>The main goal of this publication is to correctly calculate and, if possible, understand where the conversion factors such as 8.77 and 0.0057 for the SBM20 tube, which are all published on the Internet, come from.</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">We plan to create separate documents for each of the popular tubes, and we are starting with a technical note on SBM20.</p>

<p class="wp-block-paragraph">Therefore, in this document, we will look at the procedure for calculating the CPM to microsieverts per hour conversion factors for SBM20. For other common tubes, at least J305 and LND712, it will be covered later.</p>

<p class="wp-block-paragraph">While collecting materials for this article, we came to the conclusion that this is not an easy task at all, because information is spreading on the Internet, which needs to be verified, and sometimes we even had to investigate where certain coefficients came from.</p>

<p class="wp-block-paragraph">Let&#8217;s start with the useful information that manufacturers provide in their datasheets for their tubes.</p>

<figure class="wp-block-table"><table><tbody><tr><td></td><td>SBM20</td><td>J305</td><td>LND712</td></tr><tr><td>Vendor’s calibration radioactive source</td><td>Cs-137</td><td>Co-60</td><td>Co-60</td></tr><tr><td>Sensitivity</td><td>60 &#8211; 70 counts / uR at 4 uR/s Cs-137 or 240-280 CPS at 4</td><td>44 CPS at 1 mR/h Co-60</td><td>18 CPS at 1 mR/h</td></tr><tr><td>Dead Time</td><td>190 us</td><td>?</td><td>90 us</td></tr><tr><td>Background radiation level</td><td>60 pulses/minute</td><td>25 pulses/minute</td><td>?</td></tr><tr><td>Internal background noise</td><td>1 pulses/s or 60 pulses/minute</td><td>0.2 CPS or 12 CPM</td><td>10 CPM</td></tr><tr><td>Recommended operating supply voltage</td><td>400 V</td><td>glass tube 380 V metal tube 400 V</td><td>500 V</td></tr></tbody></table></figure>

<h2 class="wp-block-heading">Solution</h2>

<p class="wp-block-paragraph">Let&#8217;s make calculations for SBM20 based on the manufacturer&#8217;s data:</p>

<p class="wp-block-paragraph">Count rate at 4 μR/s from a Cs-137 source of pulses per second: 240 &#8211; 280;</p>

<p class="wp-block-paragraph">1. Let&#8217;s take the average of these two values: </p>

<p class="wp-block-paragraph">This is the average count rate at 4 μR/s from a Cs-137 source of pulses per second.</p>

<p class="has-text-align-center wp-block-paragraph"><strong>(240 + 280)/2 = 260 CPS / μR/s</strong></p>

<p class="wp-block-paragraph">2. Convert to pulses per second at 1 μR/s: <mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">μ</mark>Р/с:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>260 / 4 = 65 CPS / μR/s</strong></p>

<p class="wp-block-paragraph">3. Convert to pulses per second at 1 <mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">m</mark>R/s:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>65 * 1000 = 65000 CPS / mR/s</strong></p>

<p class="wp-block-paragraph">4. Convert to pulses per second at 1 mR/<mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">h</mark>:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>round( 65000 / 3600) = 18 CPS / mR/h</strong></p>

<p class="wp-block-paragraph">5. Convert to pulses per <mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">minute</mark> at 1 mR/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>18 * 60 = 1080 CPM / mR/h</strong></p>

<p class="wp-block-paragraph">6. Convert to pulses per minute at 1 <mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">μSv</mark>/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1080 / 10 = 108 CPM / μSv/h</strong></p>

<p class="wp-block-paragraph">or</p>

<p class="has-text-align-center wp-block-paragraph"><strong>108 CPM = 1 μSv/h</strong></p>

<p class="wp-block-paragraph">or</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 CPM = </strong><strong>1/</strong><strong>108</strong><strong>μSv/h </strong></p>

<p class="wp-block-paragraph">7. Calculate the value of one pulse per minute:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / 108 = 0.00926</strong></p>

<p class="wp-block-paragraph">Thus, if we need to convert the pulses recorded by the SBM20 tube during a minute into μSv/hour:</p>

<figure class="wp-block-table aligncenter is-style-regular"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>μSv/h = CPM * 0.00926</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">This is the value of the equivalent radiation dose recorded by the sensor &#8211; the SBM20 tube.</p>

<p class="wp-block-paragraph">Please note that we took the average value of CPS / μR/s = 260 and obtained the value of CPS / mR/h = 18 by simple mathematical transformations.</p>

<p class="wp-block-paragraph">We can also perform the above calculations not only for the average, but also for the minimum and maximum values specified in the data sheet for the tube: 240 CPS and 280 CPS at 4 μR/s.</p>

<p class="wp-block-paragraph">In this case, we will get two additional values that we can also work with if necessary. </p>

<p class="wp-block-paragraph">For convenience, let&#8217;s write them in CPS at 1 mR/h:</p>

<p class="wp-block-paragraph">min value: 17 CPS / mR/h<br/>max value: 19 CPS / mR/h</p>

<p class="wp-block-paragraph">Let us summarize the results of our work at this stage of the calculation:</p>

<figure class="wp-block-table"><table><tbody><tr><td>At Cs-137 source</td><td>CPS / mR/h</td><td>CPM / mR/h</td><td>CPM / μSv/h</td><td>μSv/h per 1 CPM</td></tr><tr><td>Average</td><td>18</td><td>1080</td><td>108</td><td>0.00926</td></tr><tr><td>Min (not less)</td><td>17</td><td>1020</td><td>102</td><td>0.00980</td></tr><tr><td>Max (not more)</td><td>19</td><td>1140</td><td>114</td><td>0.00877</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">Everything would have been fine, and we could have stopped calculations there. But the coefficient we calculated, 0.00926</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00926</strong></p>

<p class="wp-block-paragraph">only allows us to obtain the exposure value recorded by the Geiger counter. We are primarily interested in the equivalent dose of radiation absorbed by the human body.</p>

<p class="wp-block-paragraph">Therefore, let&#8217;s move on to the next part of the calculations.</p>

<figure class="wp-block-table"><table><tbody><tr><td>We are primarily interested in the equivalent dose of radiation absorbed by the human body, not the exposure dose registered by the device</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">Although we are not a research institute, to solve our simple task we will have to dive into complex matters for a while. </p>

<p class="wp-block-paragraph">In order to estimate the equivalent dose of energy absorbed by the human body, science uses the so-called human body phantom model, which calculates certain conversion factors for converting one value to another.</p>

<p class="wp-block-paragraph">If you are interested in reading the theory on this subject, we can advise you to read this publication:</p>

<p class="wp-block-paragraph"><a href="https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units" target="_blank" rel="noopener">https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units</a></p>

<p class="wp-block-paragraph">And we proceed to derive the conversion factor of the tube CPM into the equivalent dose of absorbed radiation in microsieverts per hour, taking into account the phantom model of the human body.</p>

<p class="wp-block-paragraph">Let&#8217;s start the calculation with the already found coefficient of 18 CPS per 1 mR/h. Why is this so? Next, you will see that most tube manufacturers (J305 and LND712 included) provide parameters in this format in the datasheet for their products. </p>

<p class="wp-block-paragraph">For example, </p>

<ul class="wp-block-list"><li>for the J305 is specified in the datasheet: sensitivity of γ (60Co) cps/ mR/h 44</li><li>for LND712: GAMMA SENSITIVITY CO60 (CPS/mR/HR): 18</li></ul>

<p class="wp-block-paragraph">where CPS &#8211; Counts per Second; mR &#8211; milli roentgen; h = hr &#8211; hours.</p>

<p class="wp-block-paragraph">In the case of the SBM20 tube, the manufacturer specifies data for the Cs-137 source.</p>

<p class="wp-block-paragraph">And we have already made the necessary conversions in the previous step:</p>

<p class="wp-block-paragraph">Sensitivity of SBM20 to gamma rays: 18 CPS / mR/h 1.</p>

<p class="wp-block-paragraph">1. Convert CPS to CPM at 1 mR/h (we already have this value, but we are going to calculate it again for the reader&#8217;s convenience):</p>

<p class="has-text-align-center wp-block-paragraph"><strong>18 * 60 = 1080 CPM / mR/h</strong></p>

<p class="wp-block-paragraph">2. Convert CPM at 1 mR/h to CPM at 1 R/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1080 * 1000 = 1080000</strong></p>

<p class="wp-block-paragraph">3. Find the value of the exposure dose R/h per 1 CPM:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / 1080000 = 0.0000009259259259</strong></p>

<p class="wp-block-paragraph">4. Find the air kerma (Ka, kinetic energy released per unit mass / in matter):</p>

<p class="wp-block-paragraph">The equation is as follows: </p>

<p class="has-text-align-center wp-block-paragraph"><strong>Ka [Gy] = 0.00877 [Gy/R] x exposure [R]</strong></p>

<p class="wp-block-paragraph">where 0.00877 is the coefficient of radiation dose absorption by the human body on the phantom model under the influence of photon energies of 100 keV &#8211; 3 MeV </p>

<p class="wp-block-paragraph">Note. For more details, see the link: <a href="https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units" target="_blank" rel="noopener">https://web.archive.org/web/20230402162906/https://www.automess.de/en/service/radiation-quantities-and-units</a></p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00877 * 0.0000009259259259 = 0.00000000812037037 Ka[Gy]</strong></p>

<p class="wp-block-paragraph">5. Convert Ka[Gy] to Ka[uSv] (i.e., switch from Gray to µSv):</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00000000812037037 * 1000000 = 0.00812037037 Ka[uSv]</strong></p>

<p class="wp-block-paragraph">6. Perform the check and find the inverse value:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00812037037 ^(-1) = 123.1470924</strong></p>

<p class="wp-block-paragraph">Thus, the formula for the equivalent absorbed dose of radiation by the human body for the Geiger-Muller tube SBM20 with gamma sensitivity for Cs-137 of 18 CPS / mR/h is as follows:</p>

<figure class="wp-block-table aligncenter"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>uSv/h = CPM x 0.00812</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">where </p>

<p class="wp-block-paragraph">0.00812 μSv/h is the value of one count, CPM;</p>

<p class="wp-block-paragraph">CPM &#8211; number of counts per minute.</p>

<figure class="wp-block-table"><table><tbody><tr><td class="has-text-align-left" data-align="left">Lifehack:<br/>To get the coefficient of 0.00812, you can simply multiply the value of 18 CPS / mR/h obtained from the datasheet by 60 and divide by 8.77 and take the inverse.<br/><strong>1 / (18 * 60 / 8.77) = 1 / 123.1470923603193 = 0.0081203703703704</strong><br/>This is what we checked with such complex conversions above. Now you know where this coefficient comes from</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">We can also calculate the coefficients for the minimum and maximum CPS / mR/h values provided by the datasheet:</p>

<figure class="wp-block-table"><table><tbody><tr><td></td><td>min CPS / mR/h</td><td>avg CPS / mR/h</td><td>max CPS / mR/h</td></tr><tr><td></td><td>17</td><td>18</td><td>19</td></tr><tr><td>CPM to Absorbed dose coef.</td><td>0.008598039216</td><td><strong>0.00812037037</strong></td><td>0.007692982456</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">At the same time, the Internet uses a coefficient of 175.43 (0.0057), which, as can be seen, does not fit into the calculations above. However, this coefficient is similar in value to the data for SBM20 for Ra-226 taken from the Internet:</p>

<figure class="wp-block-table"><table><tbody><tr><td>data from the Internet for the SBM20</td><td>CPS</td><td>CPM / mR/hr</td><td>CPM / uSv/hr</td><td>uSv/h per CPM</td></tr><tr><td>SBM20 gamma sensitivity Ra226 (cps/mR/hr)</td><td>29</td><td>1740</td><td>174</td><td>0.00575</td></tr><tr><td>SBM20 gamma sensitivity Co60 (cps/mR/hr)</td><td>22</td><td>1320</td><td>132</td><td>0.00758</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">In order for the CPM to uSv/h conversion factor to be 0.00570, the initial value of CPS/mR/h in the tube datasheet should be 25.643. We determined this by the simple value adjustment (25.643 * 60 / 8.77 = 175.4367; 1 / 175.4367 = 0.00570).</p>

<p class="wp-block-paragraph">Another popular coefficient for the SBM20 tube is also published on the Internet: 150.5131 (0.00664), allegedly calibrated to Co-60. We do not know where this information came from.</p>

<h2 class="wp-block-heading">Additional calculations</h2>

<p class="wp-block-paragraph">What else can we do to try to find the 0.0057 coefficient that is used everywhere for SBM20?</p>

<h3 class="wp-block-heading">Switching from coefficients for Cs-137 to Co-60</h3>

<p class="wp-block-paragraph">We can try to move from the values at Cs-137 (which is indicated in the tube documentation) to Co60, which is now the most commonly used standard for calibrating Geiger-Muller tubes in the world. </p>

<p class="wp-block-paragraph">To do this, it is necessary to calculate the conversion factor for Cs-137 to Co-60 values.</p>

<p class="wp-block-paragraph">Let&#8217;s take the average value for the two Co-60 energy lines:</p>

<p class="wp-block-paragraph">Co-60: 1.1732 MeV; 1.3325 MeV; Average value: 1.25285 MeV</p>

<p class="wp-block-paragraph">And the energy value of Cs-137:</p>

<p class="wp-block-paragraph">0.6617 MeV</p>

<p class="wp-block-paragraph">Let&#8217;s find the energy ratio of Co-60 to Cs-137:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1.25285 / 0.6617 = 1.893380686</strong></p>

<p class="wp-block-paragraph">Next, we calculate the corresponding value of CPS at 1 mR/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>18 * 1.893380686 = 34.08085235</strong></p>

<p class="wp-block-paragraph">Assuming that this value is indicated in the data sheet for the tube, we will calculate the new coefficient of the absorbed equivalent dose of μSv/h per 1 CPM for Co-60:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>34 CPS / mR/h</strong></p>

<p class="wp-block-paragraph">1. Convert CPS to CPM at 1 mR/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>34 * 60 = 2040 CPM / mR/h</strong></p>

<p class="wp-block-paragraph">2. Convert CPM at 1 mR/h to CPM at 1 R/h:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>2040 * 1000 = 2040000</strong></p>

<p class="wp-block-paragraph">3. Find the value of the exposure dose R/h per 1 CPM:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>1 / 2040000 = 0.0000004901960784</strong></p>

<p class="wp-block-paragraph">4. Find the air kerma (Ka, kinetic energy released per unit mass / in matter):</p>

<p class="wp-block-paragraph">The equation is as follows (as in the previous calculation): </p>

<p class="has-text-align-center wp-block-paragraph"><strong>Ka [Gy] = 0.00877 [Gy/R] x exposure [R]</strong></p>

<p class="wp-block-paragraph">So:</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.00877 * 0.0000004901960784 = 0.000000004299019608 Ka[Gy]</strong></p>

<p class="wp-block-paragraph">5. Convert Ka[Gy] to Ka[uSv] (i.e., switch from Gray to µSv):</p>

<p class="has-text-align-center wp-block-paragraph"><strong>0.000000004299019608 * 1000000 = 0.004299019608 Ka[uSv]</strong></p>

<p class="wp-block-paragraph">uSv/h = CPM x <strong>0.00429</strong> for Cs-137-&gt;Co-60</p>

<h3 class="wp-block-heading">Switching from coefficients for Cs-137 to Ra-226</h3>

<p class="wp-block-paragraph">We calculate the conversion factor from Cs-137 to Ra-226 in a similar way:</p>

<p class="wp-block-paragraph">Because Ra-226 has several energy lines of gamma radiation:</p>

<p class="wp-block-paragraph">186.2 keV;<br/>240.3 keV;<br/>295.2 keV;<br/>352.0 keV;<br/>609.3 keV;<br/>657.0 keV;<br/>768.4 keV;<br/>934.8 keV.</p>

<p class="wp-block-paragraph">we will select all of them that can be detected by the SBM20 tube. According to the documentation, the SBM20 is sensitive to gamma quanta from 0.05 MeV to 3 MeV. </p>

<p class="wp-block-paragraph">Therefore, all of these lines fall within the detection range. In order to move from Cs-137, we need to either work with the average of these lines or select the line most characteristic of Ra-226.</p>

<p class="wp-block-paragraph">If we need to rely on a specific line to identify a radionuclide, we need to take into account the intensity and energy of this line. Usually, the so-called &#8220;characteristic peak&#8221; is used to identify a radionuclide, which is the most intense and is located at the most characteristic energy for this radionuclide.</p>

<p class="wp-block-paragraph">In the case of the gamma spectrum of Ra-226, which consists of several lines, the characteristic peak can be determined by the highest intensity and energy of the line. According to the table of line intensities of the Ra-226 gamma spectrum, the line with an energy of 609.3 keV is the most intense line, so this line can be used to identify Ra-226.</p>

<p class="wp-block-paragraph">The average value of the energies of all lines of the gamma spectrum of Ra-226 can also be determined, but it is not useful for identifying the radionuclide. However, the average value is useful for determining the average gamma energy of a given radionuclide.</p>

<p class="wp-block-paragraph">The table of line intensities and energies can be used to calculate the average gamma energy of Ra-226.</p>

<p class="wp-block-paragraph">Let&#8217;s calculate the sum of the energies of all lines of the Ra-226 gamma spectrum:</p>

<p class="wp-block-paragraph">0.186 MeV + 0.244 MeV + 0.295 MeV + 0.351 MeV + 0.609 MeV + 1.061 MeV + 1.158 MeV + 1.332 MeV = 5.196 MeV</p>

<p class="wp-block-paragraph">Divide the sum of energies by the number of lines to get the average energy:</p>

<p class="wp-block-paragraph">5.196 MeV / 8 = 0.6495 MeV</p>

<p class="wp-block-paragraph">Thus, the average gamma energy of the Ra-226 radionuclide is approximately 0.65 MeV. Note that this value is only an average energy and may differ from the individual values of the gamma spectrum lines.</p>

<p class="wp-block-paragraph">Now we have three alternative values that we can use to find the conversion ratio from Cs-137 to Ra-226 calibration. The third option is the weighted energy value provided on the hps.org website.</p>

<p class="wp-block-paragraph">1. Characteristic peak: 609.3 keV [peak];</p>

<p class="wp-block-paragraph">2. Average energy of gamma radiation: 0.6495 MeV [avg];</p>

<p class="wp-block-paragraph">3. Weighted value of gamma radiation energy: 0.74 MeV [wght].</p>

<p class="wp-block-paragraph">See. <a href="https://web.archive.org/web/20230404222401/https://hps.org/publicinformation/ate/q4817.html" target="_blank" rel="noopener">https://web.archive.org/web/20230404222401/https://hps.org/publicinformation/ate/q4817.html</a></p>

<p class="wp-block-paragraph">Let&#8217;s calculate the corresponding energy ratios:</p>

<p class="wp-block-paragraph">Cs-137 energy value: 0.6617 MeV.</p>

<p class="wp-block-paragraph">Find the energy ratio of Ra-226 and Cs-137:</p>

<p class="wp-block-paragraph"> <strong> peak: 0.6617 / 0.6093 = 1.086000328245528</strong><br/><strong> avg: 0.6617 / 0.6495 = 1.018783679753657</strong><br/><strong> wght: 0.74 / 0.6617 = 1.118331570197975</strong></p>

<p class="wp-block-paragraph">Next, we will calculate the corresponding value of CPS at 1 mR/h, i.e., we will move from the Cs-137 calibration, as indicated in the datasheet, to the calculated calibration value relative to Ra-226:</p>

<p class="wp-block-paragraph"> <strong> peak: 18 * 1.086000328245528 = 19.5480059084195</strong><br/><strong> avg: 18 * 1.018783679753657 = 18.33810623556582</strong><br/><strong> wght: 18 * 1.118331570197975 = 20.12996826356355</strong></p>

<p class="wp-block-paragraph">As we can see, the attempt to switch from Cs-137 to Ra-226 did not give us anything either, because we could not get the target CPS value of 25.643/mR/h, at which it is possible to obtain a coefficient of 0.00570.</p>

<p class="wp-block-paragraph">The coefficient of 0.00429, which we obtained earlier for the case of Cs-137-&gt;Co-60, is also not similar to the common one for SBM20 175.43 (0.0057). Therefore, we can only guess where the Internet contributors got it from and use the one we obtained above by calculations based on the information in the datasheet for the tube.</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><em><strong>Note</strong> . If you thought that we did not check the datasheets of the modern production SBM20 and only rely on outdated Soviet data, this is not the case. We have checked all possible sources available on the Internet. SBM20 tubes produced in 2021 and later have different calibration options in their documentation:</em><br/>&#8211; <em>78 imp/μR without specifying a source (1/150.5131129, or 0.006643); </em><br/><em>– 105 imp / µR at Ra-226 (1 / 198.4036488, or 0.005040);</em><br/><em>– 67.5 imp/μR at Cs-137 (1 / 129.9885975, or 0.007692);</em><br/><em>None of the documents we studied contains source data that could lead us to the coefficient of 0.0057 μSv/h at 1 imp/min.</em></p></blockquote>

<p class="wp-block-paragraph">As a reminder, our recommended formula for the equivalent radiation dose absorbed by the human body for the Soviet Geiger-Muller SBM20 tube with a gamma sensitivity of 18 cps/mR/h for Cs-137 is as follows:</p>

<figure class="wp-block-table aligncenter"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>uSv/h = CPM x 0.00812</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">where </p>

<p class="wp-block-paragraph">0.00812 μSv/h is the value of one count, CPM;<br/>CPM – number of counts per minute.</p>

<h2 class="wp-block-heading">Conclusions</h2>

<p class="wp-block-paragraph">In this article, we have provided a detailed step-by-step calculation of the conversion factor for the data transmitted by the Geiger counter with the SBM20 tube and figured out what factor we need to apply in order to not only get the level of exposure dose recorded by the sensor, but also the dose absorbed by the human body.</p>

<p class="wp-block-paragraph">Unfortunately, we could not figure out where the magic coefficient of 0.0057 μSv/h per 1 CPM, which everyone uses, came from. Neither mathematical transformations, nor the transition from Cs-137 to Co-60, nor the transition from Cs-137 to Ra-226, nor the adjustment of the coefficient (in particular, 8.77, 0.94 to 0.98) of the absorption dose for the phantom model of the human body gave the desired results. It seems that this is a special case that someone, at some point, simply accepted their calculations and did not leave instructions for us.</p>

<p class="wp-block-paragraph">Please write to us if you have your own version of where 0.0057 came from or a good calculation on this topic. We will be grateful and will make appropriate additions to this post.</p>

<p class="wp-block-paragraph">At the same time, we were able to find a mathematically sound calculation of another magic coefficient </p>

<p class="has-text-align-center wp-block-paragraph"><strong>8.77,</strong> </p>

<p class="wp-block-paragraph">which is used to obtain the value of the radiation dose absorbed by the human body. Now you also know where it comes from.</p>

<p class="wp-block-paragraph">Currently, for soviet tubes, we recommend that instead of the coefficient of 0.0057, use the coefficient that we calculated for the equivalent dose of radiation absorbed by the human body:</p>

<figure class="wp-block-table aligncenter"><table><tbody><tr><td class="has-text-align-center" data-align="center"><strong>uSv/h = CPM x 0.00812</strong></td></tr></tbody></table></figure>

<p class="wp-block-paragraph">where </p>

<p class="wp-block-paragraph"> 0.00812 μSv/h is the value of one count (CPM) for the SBM20 tube calibrated against the Cs-137 source;<br/>CPM – number of counts per minute.</p>

<p class="wp-block-paragraph">If your SBM20 tube has a different sensitivity factor in the documentation, or if your tube is calibrated by the manufacturer against a different radioactive source, we recommend that you use the data for your tube.</p>

<p class="wp-block-paragraph">In the next publications for J305 and LND712 tubes, there will be a little less text, because almost all coefficients published on the Internet correspond to our calculations.</p>

<p class="wp-block-paragraph">And we have not yet covered the topic of internal background (false-positive) pulses for Geiger tubes. The work is not over yet!</p>

<p class="wp-block-paragraph">Stay tuned!</p>

<p class="wp-block-paragraph">Thank you for your attention!</p>

<p class="wp-block-paragraph">Team IoT-devices, LLC</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geiger counter emulator of GGreg20_V3 module by means of ESP8266 Part 3: Testing and Conclusion</title>
		<link>https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part3/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Fri, 31 Mar 2023 12:58:07 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[emulator]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Expressive]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[tindie]]></category>
		<category><![CDATA[unit test]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2867</guid>

					<description><![CDATA[Testing the emulator After we&#8217;ve built the emulator and programmed the ESP8266, we can test it to make sure it&#8217;s working correctly. Having made the physical diagram and developed and loaded/compiled the Lua code into the controllers, we run the emulator and the main controller to check how our testbed works. As you can see, [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading"><a></a> Testing the emulator</h2>

<p class="wp-block-paragraph">After we&#8217;ve built the emulator and programmed the ESP8266, we can test it to make sure it&#8217;s working correctly.</p>

<p class="wp-block-paragraph">Having made the physical diagram and developed and loaded/compiled the Lua code into the controllers, we run the emulator and the main controller to check how our testbed works.</p>

<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-scaled.jpg"><img loading="lazy" decoding="async" width="1024" height="768" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-1024x768.jpg" alt="" class="wp-image-2589" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-1024x768.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-300x225.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-768x576.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-1536x1152.jpg 1536w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-2048x1536.jpg 2048w, https://iot-devices.com.ua/wp-content/uploads/2023/01/esp12_oled_we_disp_ggreg20_hwemu-454x341.jpg 454w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Fig. GGreg20_V3 emulator testbed based on ESP12.OLED (MCU_B) connected to NodeMCU dev.board (MCU_A, not pictured)</figcaption></figure>

<p class="wp-block-paragraph">As you can see, the connection of the emulator is very simple: the micro USB power cable and the pulse output signal wires, and you can also connect the debug console via UART if desired.</p>

<p class="wp-block-paragraph">The following screenshots show the diagnostic data and their measurements. We also show an example of event distribution at the emulator output, that we built to clearly show how the random number generator of the ESP8266 controller works according to our proposed implementation via timers.</p>

<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323.jpg"><img loading="lazy" decoding="async" width="1024" height="631" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-1024x631.jpg" alt="" class="wp-image-2591" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-1024x631.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-300x185.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-768x473.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323-454x280.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_log_2022-12-01_222323.jpg 1421w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Fig. GGreg20_V3 emulator testbed based on ESP12.OLED (MCU_B) connected to NodeMCU dev.board (MCU_A, not pictured)</figcaption></figure>

<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323.jpg"><img loading="lazy" decoding="async" width="1024" height="397" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-1024x397.jpg" alt="" class="wp-image-2593" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-1024x397.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-300x116.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-768x298.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-1536x595.jpg 1536w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323-454x176.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_distribution_2022-12-01_222323.jpg 1610w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Fig. Console output of the emulator (MCU B, left) and main controller (MCU A, right) working together.</figcaption></figure>

<p class="wp-block-paragraph">As we can see, the events that the emulator generates at the output are chaotic, that is, they have a character where a cursory examination does not show a certain graphical pattern.</p>

<p class="wp-block-paragraph">Here is another graph of a test set of 175 events per minute, but in a slightly different format. Note the horizontal axis. The value of the initial sequence numbers of events in the loop are arranged chaotically on this graph, as they happened in reality at the output of the emulator:</p>

<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07.jpg"><img loading="lazy" decoding="async" width="1024" height="476" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-1024x476.jpg" alt="" class="wp-image-2595" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-1024x476.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-300x139.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-768x357.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07-454x211.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-ggreg20_v3_hwemu_esp12_oled_nodemcu_random_distribution_2022-12-07.jpg 1529w" sizes="(max-width: 1024px) 100vw, 1024px" /></a><figcaption>Fig. Graphical representation of 175 random events at the emulator output (left axis) and free memory (right axis) of the ESP8266 controller during a 60-second cycle</figcaption></figure>

<p class="wp-block-paragraph">Of course, the verification of true randomness of events is not the goal of this publication and is far beyond its scope. We simply rely on the thesis that the ESP8266 has a hardware true random number generator.</p>

<h2 class="wp-block-heading"><a></a>Known limitations</h2>

<p class="wp-block-paragraph">Among the known limitations of this method of creating a Geiger counter emulator is the memory size of the ESP826 controller, in which we create in a loop the required number of one-shot timers with random times of firing. Each timer, in fact, is a function that takes a certain amount of RAM.</p>

<p class="wp-block-paragraph">When the timers are fired, the memory is immediately released. The execution of the code we developed resembles a spring, which in a cycle once a minute is sharply compressed and slowly uncompressed within the available memory of the controller.</p>

<p class="wp-block-paragraph">Thus, the maximum possible number of events generated by our chosen method of generating random events at the emulator output directly depends on the amount of free RAM and the speed of the controller.</p>

<p class="wp-block-paragraph">Experimentally we found that ESP8266 with NodeMCU firmware and Lua language can confidently generate about 260 events per minute. This is more than enough pulses per minute for the emulator project and the radiation levels it supposedly registers.</p>

<p class="wp-block-paragraph">That is all we planned to tell you about. Now you know our version of how you can make your own Geiger counter emulator, as well as what and who can benefit from such a device. However, if you want to buy a ready-made emulator, you can do it on our website or on Tindie.</p>

<p class="wp-block-paragraph">Site IoT-devices.com.ua: <a href="https://iot-devices.com.ua/en/product/gcemu20_v1-geiger-counter-emulator/">GCcemu20_V1</a></p>

<p class="wp-block-paragraph">tindie.com: <a href="https://www.tindie.com/products/iotdev/gcemu20_v1-geiger-counter-emulator/" target="_blank" rel="noreferrer noopener">GCcemu20_V1</a></p>

<p class="wp-block-paragraph">Overall, building a Geiger counter module emulator can be a fun and educational project. It allows you to simulate the readings of a Geiger counter module without the need for radioactive sources. We hope this guide has been helpful, and we encourage you to experiment with different components and programming techniques to customize your emulator further.</p>

<p class="wp-block-paragraph">The beginning of the article:</p>

<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1/">Geiger counter emulator of GGreg20_V3 module by means of ESP8266 Part 1: Introduction and Overview</a></p>

<p class="wp-block-paragraph"><a href="http://%D0%95%D0%BC%D1%83%D0%BB%D1%8F%D1%82%D0%BE%D1%80%20%D0%BB%D1%96%D1%87%D0%B8%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA%D0%B0%20%D0%93%D0%B5%D0%B9%D0%B3%D0%B5%D1%80%D0%B0%20GGreg20_V3%20%D0%B7%D0%B0%D1%81%D0%BE%D0%B1%D0%B0%D0%BC%D0%B8%20ESP8266">Geiger counter emulator of GGreg20_V3 module by means of ESP8266 Part 2 Building the Emulator</a></p>

<p class="wp-block-paragraph">Good luck!</p>

<p class="wp-block-paragraph">IoT-devices LLC Team.</p>

<p class="wp-block-paragraph"> </p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geiger counter emulator of GGreg20_V3 module by means of ESP8266 Part 2 Building the Emulator</title>
		<link>https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part2/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Wed, 29 Mar 2023 11:50:27 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[emulator]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Expressive]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[tindie]]></category>
		<category><![CDATA[unit test]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2822</guid>

					<description><![CDATA[Geiger counter emulator: what we need To build the Geiger counter module emulator, we&#8217;ll need the following parts and materials: ESP8266 #1 as the main one (MCU_A, NodeMCU module); ESP8266 #2 as GGreg20_V3 emulator (MCU_B, ESP12.OLED module); Jumper wires; USB cable for programming and power. Next, we&#8217;ll need to program the main controller MCU_A and [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading" id="block-786c35cc-31be-43f0-a658-40945e2c73d7">Geiger counter emulator: what we need</h2>

<p class="wp-block-paragraph">To build the Geiger counter module emulator, we&#8217;ll need the following parts and materials:</p>

<ul class="wp-block-list"><li>ESP8266 #1 as the main one (MCU_A, NodeMCU module);</li><li>ESP8266 #2 as GGreg20_V3 emulator (MCU_B, ESP12.OLED module);</li><li>Jumper wires;</li><li>USB cable for programming and power.</li></ul>

<p class="wp-block-paragraph">Next, we&#8217;ll need to program the main controller MCU_A and emulation software script code GGreg20_V3 for MCU_B.</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Note 3</strong>. We will give examples in this publication with our own <a href="https://iot-devices.com.ua/en/product/esp12oled-universal-esp8266-mcuboard-oled-en/">ESP12.OLED</a> modules. However, if you do not have an ESP12.OLED module, you can also use an ESP8266-based development board such as the NodeMCU and develop the software yourself, following the examples in the text. If you wish to use an off-the-shelf device please read the rest of this article because we have provided a link to our ready-to-use emulator module which you can buy further on.</p></blockquote>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Note 4.</strong> In this, as in other publications, we will give examples using the simple and powerful Lua scripting language available in the popular NodeMCU firmware.</p></blockquote>

<h2 class="wp-block-heading" id="block-fa9009c2-5b8c-41b0-bb8a-10108721c789">The budget of the inputs/outputs we need</h2>

<p class="wp-block-paragraph" id="block-72e01d54-951b-4117-8327-b53872654d3a">On the main layout controller, we must define the input/output ports that will perform the task of recording input pulses from the Geiger counter emulator module.</p>

<p class="wp-block-paragraph" id="block-dc43f265-c4cd-4a94-8940-0af029bf502d">On the Geiger counter emulator module we need a bit more ports. Here we need I/O ports: for emulation of output pulses, for RGB LED and for the switch button of the emulator operation mode.</p>

<figure class="wp-block-table"><table><tbody><tr><td><br/></td><td>MCU_A role (Main Contr.)</td><td>MCU_B role (GC emulator)</td></tr><tr><td>1 х GPIO of input pulse counter</td><td>NodeMCU</td><td>&#8211;</td></tr><tr><td>1 х GGreg20_V3 output emulation GPIO</td><td>&#8211;</td><td>ESP12.OLED</td></tr><tr><td>3 х RGB LED GPIO for GGreg20_V3 output pulses indication</td><td>&#8211;</td><td>ESP12.OLED</td></tr><tr><td>1х GPIO of the emulator mode switch button</td><td>&#8211;</td><td>ESP12.OLED</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">Wiring diagram</p>

<p class="wp-block-paragraph" id="block-c6b2cc85-b3fb-4407-a53a-677106212716">To make the interaction between the main controller and the GGreg20_V3 module emulator look realistic, we suggest taking advantage of the built-in properties of some I/O ports of the ESP12.OLED board and select the following GPIOs on the MCU_B emulator controller:</p>

<ul class="wp-block-list" id="block-f010198d-685b-4fee-b4d6-3e1d8f38aeb3"><li>we recommend using GPIO4/D2 (GPIO D-index in Lua) to emulate the pulse output of GGreg20_V3;</li><li>we can use the Flash button (GPIO0/D3) built into the ESP12.OLED board to switch the emulator operation modes;</li><li>the built-in RGB LED on the ESP12.OLED module takes GPIO14/D5; GPIO12/D6; GPIO13/D7;</li></ul>

<p class="wp-block-paragraph" id="block-2527070a-42a1-48e0-983b-6cfc16e216fc">On the main module of the MCU_A controller we propose to select the following port for the input pulse counter:</p>

<ul class="wp-block-list" id="block-c8feffc1-6e34-42d2-b70e-3b3631fb85fb"><li>GPIO14 / D5.</li></ul>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Note 5</strong>. We recommend the following materials as background information on port numbering: </p><p>The standard for planning and applying pins was developed by alterstrategy.lab: <a href="https://alterstrategy.com/recommended-pin-use-standard/" target="_blank" rel="noopener">https://alterstrategy.com/recommended-pin-use-standard/</a> </p><p>NodeMCU firmware documentation: <a href="https://nodemcu.readthedocs.io/en/latest/modules/gpio/" target="_blank" rel="noopener">https://nodemcu.readthedocs.io/en/latest/modules/gpio/</a> </p><p>Documentation for the ESP12.OLED module is on the website: <a href="https://iot-devices.com.ua/en/product/esp12oled-universal-esp8266-mcuboard-oled-en/">https://iot-devices.com.ua/en/product/esp12oled-universal-esp8266-mcuboard-oled-en/</a> </p><p>and on Tindie: <a href="https://www.tindie.com/products/iotdev/esp12oled-universal-esp8266096oled-mcu-board/" target="_blank" rel="noopener">https://www.tindie.com/products/iotdev/esp12oled-universal-esp8266096oled-mcu-board/</a></p></blockquote>

<p class="wp-block-paragraph" id="block-0017d8d7-e663-4e4b-8d4e-d20072cdf305">Let&#8217;s update the table with the specific I/O ports we selected:</p>

<figure class="wp-block-table"><table><tbody><tr><td><br/></td><td>MCU_A role</td><td>MCU_B role</td></tr><tr><td>1 х GPIO of input pulse counter</td><td>NodeMCU GPIO14/ D5</td><td>&#8211;</td></tr><tr><td>1 х GGreg20_V3 output emulation GPIO</td><td>&#8211;</td><td>ESP12.OLED GPIO4 / D2</td></tr><tr><td>3 х RGB LED GPIO for GGreg20_V3 output pulses indication</td><td>&#8211;</td><td>ESP12.OLED GPIO14 / D5 GPIO12 / D6 GPIO13 / D7</td></tr><tr><td>1х GPIO of the emulator mode switch button</td><td>&#8211;</td><td>ESP12.OLED GPIO0 / D3</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">﻿</p>

<figure class="wp-block-image size-full" id="block-3e816c74-b488-4f9c-af8a-46e7b768c80c"><a href="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram.jpg"><img loading="lazy" decoding="async" width="960" height="540" src="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram.jpg" alt="" class="wp-image-2587" srcset="https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram.jpg 960w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-300x169.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-768x432.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-800x450.jpg 800w, https://iot-devices.com.ua/wp-content/uploads/2023/01/10-the-esp12.oled-geiger-counter-emulator-and-nodemcu-wiring-diagram-454x255.jpg 454w" sizes="(max-width: 960px) 100vw, 960px" /></a><figcaption>Fig. Connection of modules using two ESP8266 hardware controllers. As MCU_B &#8211; ESP12.OLED module. As MCU_A &#8211; NodeMCU module.</figcaption></figure>

<h2 class="wp-block-heading" id="block-cb422977-8184-4a88-9c04-66d8e4c95e9d"><br/>Emulator operating modes</h2>

<p class="wp-block-paragraph" id="block-4228e826-79a4-4376-aad4-045e96815dc7">In order for our GGreg20_V3 emulator to be able to simulate operation under conditions of different radiation levels, we propose to implement the possibility to switch the radiation power range, which is as if measured by the device and fed to the pulse output.</p>

<p class="wp-block-paragraph" id="block-4e0350bb-494c-480f-b831-a6e3d0c4b3ce">By pressing the Flash button (D3), the user can alternately switch modes to select the desired one.</p>

<p class="wp-block-paragraph" id="block-8566cf3a-6d34-494a-a1c4-9783454ba6ad">To make the emulator easy to use, the ESP12.OLED&#8217;s RGB LED flashes in different colors that can be easily distinguished by the human eye. Each emulator operating mode has its own color assigned to it. Therefore, when the emulator gives the pulse output a signal about a simulated detection the LED will also blink in the color of the current mode of operation.</p>

<h2 class="wp-block-heading" id="block-63c378b0-b723-4c14-a913-697192337a31">Radiation level ranges</h2>

<p class="wp-block-paragraph" id="block-d791023e-f3f0-4cb0-a8d6-56b4f2d848c6">We propose to implement the emulation of the following ranges of ambient radiation, which MCU_B will simulate:</p>

<p class="wp-block-paragraph" id="block-b19d8848-2821-488d-9731-af30f8d6a932">Mode 0. No pulses (sensor error simulation);</p>

<p class="wp-block-paragraph" id="block-b78e9cf4-f0ce-4bb5-a037-2e465dbc7279">Mode 1. Natural background radiation: 0.1 &#8211; 0.2 µSv/h;</p>

<p class="wp-block-paragraph" id="block-fcdb4d5e-1a51-47d4-b7eb-656d53f9f600">Mode 2. Acceptable level: 0.2 &#8211; 0.3 µSv/h;</p>

<p class="wp-block-paragraph" id="block-2b79a053-b8bb-4548-ad17-d8f31bb58219">Mode 3. Increased level: 0.3 &#8211; 0.6 µSv/hour;</p>

<p class="wp-block-paragraph" id="block-555eda96-59ee-425b-b6bb-29b4d1775ecf">Mode 4. Dangerous level: 0.6 µSv/hour &#8211; 1.5 µSv/hour.</p>

<p class="wp-block-paragraph" id="block-636beefb-1875-4800-b434-371a282b0432">By default, the module will start after applying power, from &#8220;Mode 1&#8221;. We chose this mode as the initial one only because it is convenient when, after applying power, we immediately receive pulses at the level of background radiation.</p>

<p class="wp-block-paragraph" id="block-e688333a-52ff-469c-b8f4-9f9559f976a6">The real GGreg20_V3 module is equipped with a Soviet-made SBM-20 Geiger tube. This tube has the following conversion factor of pulses per minute to microsieverts per hour:</p>

<p class="has-text-align-center wp-block-paragraph" id="block-57d145ae-f971-436c-9dc2-ea5b1f3946aa">μSv per hour = CPM * 0.0057</p>

<p class="wp-block-paragraph" id="block-5f2d88d1-fa2a-4c1c-b998-6c2d35b5188d">Let’s perform the reverse operation to calculate for the radiation ranges the appropriate number of pulses per hour that the emulator would have to generate while operating in a certain mode:</p>

<p class="has-text-align-center wp-block-paragraph" id="block-1a1a2729-0148-4991-a7c5-b8d7190e5969">CPM = μSv per hour/ 0.0057</p>

<p class="wp-block-paragraph" id="block-939c0593-7e19-41fe-940b-0d34f5a5af24">We make a rough calculation so as to form power ranges which do not overlap in value:</p>

<p class="wp-block-paragraph" id="block-a0935c72-ddee-4500-92dd-caa443833e00">Mode 0. 0 CPM;</p>

<p class="wp-block-paragraph" id="block-bfbf37c0-e77a-40bb-a524-aecffb2f5ffc">Mode 1. 18 CPM to 35 CPM;</p>

<p class="wp-block-paragraph" id="block-9b5a7549-1217-4a21-862e-6123d5f1fcc0">Mode 2. 36 CPM to 52 CPM;</p>

<p class="wp-block-paragraph" id="block-a28b6f7b-2535-426d-97c5-289e31330abe">Mode 3. 53 CPM to 105 CPM;</p>

<p class="wp-block-paragraph" id="block-4d52fbd2-bff2-4f66-b1a7-44a17677efb3">Mode 4. від 106 CPM до 264 CPM.</p>

<p class="wp-block-paragraph" id="block-0761ad79-1104-4eb4-8586-2b413119bad9">The correlation of the color of the RGB LED flashes to a certain mode of operation is as follows:</p>

<figure class="wp-block-table"><table><tbody><tr><td><strong>Operation mode</strong></td><td><strong>Flash color</strong></td><td><strong>R</strong></td><td><strong>G</strong></td><td><strong>B</strong></td></tr><tr><td>Mode 0</td><td>no flashes black</td><td>0</td><td>0</td><td>0</td></tr><tr><td>Mode 1</td><td>cyan</td><td>0</td><td>1</td><td>1</td></tr><tr><td>Mode 2</td><td>green</td><td>0</td><td>1</td><td>0</td></tr><tr><td>Mode 3</td><td>red</td><td>1</td><td>0</td><td>0</td></tr><tr><td>Mode 4</td><td>magenta</td><td>1</td><td>0</td><td>1</td></tr></tbody></table></figure>

<p class="wp-block-paragraph">Now we have to write the appropriate Lua-code for the MCU_A role and for the MCU_B role.</p>

<h2 class="wp-block-heading" id="block-f6fa38ba-c4f6-4484-9e32-cb4c380574d4"><strong>Example</strong>. Geiger counter code for the main controller (MCU_A role)</h2>

<p class="wp-block-paragraph" id="block-923bc983-837f-4384-9148-96385e6b3e3b">We take this code from GitHub here:</p>

<p class="wp-block-paragraph"><a href="https://github.com/iotdevicesdev/ggreg20-v3-nodemcu-lua-example" target="_blank" rel="noopener">https://github.com/iotdevicesdev/ggreg20-v3-nodemcu-lua-example</a></p>

<p class="wp-block-paragraph" id="block-0979654a-2651-4027-abcd-2ff33ce599d4">The code from GitHub is completely ready to use. To run the code, you need to download it from the Internet and upload it to the controller, for example to the NodeMCU module, as in our case. You also need to write another Lua-script and load it into the controller as well:</p>

<pre class="wp-block-code"><code>-- filename: mcu_a.lua
-- MCU_A Lua code example
-- Copyright 2022 IoT-devices LLC, Kyiv, Ukraine
dofile('ggreg20_v3_nodemcu_firmware_lua_example.lua')
init(5, 1, 60000)

function snsrUpd()
ma5_rad_lvl, cpm, minutes = read()
print(ma5_rad_lvl, cpm, minutes)
end

snsrUpd_tmr = tmr.create()
snsrUpd_tmr:register(60000, tmr.ALARM_AUTO, function() snsrUpd() end)
snsrUpd_tmr:start()</code></pre>

<h2 class="wp-block-heading" id="block-245d7efc-1d20-42e3-b2d1-14d29e6b7cb1"><strong>Example</strong>. Code for the GGreg20_V3 module emulator (MCU_B role)</h2>

<p class="wp-block-paragraph" id="block-6f398d6f-0323-4900-81bf-fb082b4bb006">The Lua documentation tells us that in high-speed tasks we need to reassign global identifiers to local identifiers, which increases execution speed by a factor of ten. Therefore, we will do it as follows:</p>

<pre class="wp-block-code"><code>local gpio = gpio
local mode = gpio.mode
local trig = gpio.trig
local write = gpio.write
local read = gpio.read
local INT = gpio.INT
local OUTPUT = gpio.OUTPUT
local FLOAT = gpio.FLOAT
local HIGH = gpio.HIGH
local LOW = gpio.LOW
local PULLUP = gpio.PULLUP
local print = print

local tmr = tmr
local create = tmr.create
local now = tmr.now
local delay = tmr.delay
local alarm = tmr.alarm
local ALARM_SINGLE = tmr.ALARM_SINGLE
local ALARM_SEMI = tmr.ALARM_SEMI
local ALARM_AUTO = tmr.ALARM_AUTO
local register = tmr.register
local start = tmr.start
local stop = tmr.stop

local node = node
local heap = node.heap
local random = node.random</code></pre>

<p class="wp-block-paragraph" id="block-02068264-0668-452a-a175-d7f2197ecf05">We also need to configure the GPIOs that will be responsible for their functions (see above):</p>

<pre class="wp-block-code"><code>mode(3,INT,FLOAT)
mode(4,OUTPUT, PULLUP)
write(4, HIGH)</code></pre>

<p class="wp-block-paragraph" id="block-67fa4fe3-dab6-44c3-b317-89d685a65809">To generate pulses that simulate the output interface of GGreg20_V3, we need to randomly run the following function:</p>

<pre class="wp-block-code"><code>local function pulseOut()
	write(4, LOW)
	delay(10)
	write(4, HIGH)
end</code></pre>

<p class="wp-block-paragraph" id="block-76bde581-ad02-443e-9b0e-1b0b5a802151">But in order to fully emulate the Geiger counter, it is not enough to just run <code>pulseOut()</code> a certain number of times per minute. In fact it is more complicated and we need to run<code>pulseOut()</code>, in such a way that the real randomness of the appearance of pulses on the ESP8266 output is performed.</p>

<p class="wp-block-paragraph" id="block-45dc16f8-88b4-48cc-b315-92da5ffdc8af">Given the extensive capabilities of the platform, we could even suggest several ways to implement this functionality, but we will limit ourselves to one of them, the one that, in our opinion, reproduces the pulse randomness of the real Geiger counter module as much as possible.</p>

<p class="wp-block-paragraph" id="block-0b0c2c3e-e7e7-4aaf-a30c-395557aa8674">To do that we need to use a random number generator, which, according to the NodeMCU firmware documentation, is capable of generating real random numbers. The firmware has a ready-made method node.random() for this purpose. <code>node.random().</code></p>

<p class="wp-block-paragraph" id="block-c0c54a29-d8c5-4824-896e-cc3ce2eae785">To distribute a chosen number of pulses chaotically for one minute, we will use timers, which can be created in a theoretically unlimited number:</p>

<pre class="wp-block-code"><code>create():alarm(timer timeout, timer type, callback function)</code></pre>

<p class="wp-block-paragraph" id="block-a4766066-59e9-40ea-9b6e-8cfbb48c83e8">The only limitation is the amount of free RAM of the controller. Experimentally, we found that we can easily create about 260 pulses per minute in this way, which fits into our requirements for the maximum level of virtual radiation that our emulator can reproduce.</p>

<p class="wp-block-paragraph" id="block-cc004032-5661-4186-9c8c-e28b279f3726">Thus, the function that creates random<code>pulseOut(),</code> start timeouts in the loop looks like this</p>

<pre class="wp-block-code"><code>local t_start = 0
local count = 0
local function randGen(pulses)
	for i = 1, pulses do -- pulses
			create():alarm(random(60000), ALARM_SINGLE, 
				function()
						print(heap(), count, i, (now() - t_start)/1000000)
						pulseOut()
				end
			)
	end
end</code></pre>

<p class="wp-block-paragraph" id="block-2b32df03-eab1-4d84-b60f-00e71a4c3ead">Working together, our developed functions <code>randGen(<em>pulses</em>)</code> and <code>pulseOut()</code> create on the ESP8266 output the necessary number of absolutely random pulses of 10 microseconds each per one minute.</p>

<p class="wp-block-paragraph" id="block-70e9c748-19dd-4028-bbb7-5fe1f0280797">We set the number of pulses per minute with the parameter <em><code>pulses</code></em>.</p>

<p class="wp-block-paragraph" id="block-4a90ceb2-c169-4711-9d49-5b43bb34435e">In order for the emulator to work in different power modes of simulated radiation it is necessary to provide a random value of the number of impulses <code><em>pulses</em>,</code> falling as a task at the input of the randGen() function <code>randGen().</code> . This can be done as follows:</p>

<pre class="wp-block-code"><code>radMode = 1
rand_tmr = create()
rand_tmr:register(1000, ALARM_AUTO, 
	function()
		if radMode == 0 and running == 0 then 
			print(heap(), 'Mode0:Snsr Err emu')
			return 0
		end
		local num = 0
		if radMode == 1 then 
			num = random(math.ceil(18),math.ceil(35))
		elseif radMode == 2 then
			num = random(math.ceil(36),math.ceil(52))
		elseif radMode == 3 then
			num = random(math.ceil(53),math.ceil(105))
		elseif radMode == 4 then
			num = random(math.ceil(106),math.ceil(264))
		end
		if num ~= 0 then print('count:',count + 1,'mode:',radMode, 'num:',num); randGen(num) end
	end
)

rand_tmr:start()</code></pre>

<p class="wp-block-paragraph" id="block-e5b05b89-d43b-4a2d-8e18-2bffffe503be">By setting the value of the global variable <em><code>radMode</code></em>, the user can specify one of five modes of ionizing radiation power reproduced at the emulator output.</p>

<p class="wp-block-paragraph" id="block-601d0a86-27e4-4066-a9a4-61d3770b1b94">The last thing we need to provide in the emulator is to switch the radiation power mode using the built-in Flash/GPIO0/D3 button:</p>

<pre class="wp-block-code"><code>trig(3, 'down', 
	function(lvl, ts, cnt)
		if radMode &lt; 4 then radMode = radMode + 1 else radMode = 0 end
		print ('New radMode:', radMode)
	end
)</code></pre>

<h3 class="wp-block-heading" id="block-1b688a62-cea2-48b8-811d-2e5cde4c87b1">Full emulator software code</h3>

<p class="wp-block-paragraph" id="block-be1e5721-a28c-4eb4-9552-eb301bf23577">We don&#8217;t have a ready-made example for this controller role, as was the case with the main controller (MCU_A). So we will write the necessary code from scratch. Here is the minimum required code capable of emulating Geiger counter pulses.</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Note 6.</strong> The code in this section is an example. You can download and set up this example yourself in your own Geiger counter emulator, or purchase a ready-to-use hardware module with firmware and fully functional software from our shop or Tindie at the following links:</p><p>IoT-devices.com.ua: <a href="https://iot-devices.com.ua/en/product/gcemu20_v1-geiger-counter-emulator/">GCcemu20_V1</a></p><p>Tindie: <a href="https://www.tindie.com/products/iotdev/gcemu20_v1-geiger-counter-emulator/" target="_blank" rel="noopener">GCcemu20_V1</a></p></blockquote>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Warning!</strong> This example code has its own limitations and differs significantly from the code we have developed for commercial use and sell as part of the emulator product on our website and other commercial sites.</p></blockquote>

<pre class="wp-block-code"><code>-- filename: mcu_b.lua
-- MCU_B Lua code example
-- Copyright 2022 IoT-devices LLC, Kyiv, Ukraine
local t_start = 0
local count = 0
radMode = 0

local gpio = gpio
local mode = gpio.mode
local trig = gpio.trig
local write = gpio.write
local read = gpio.read
local INT = gpio.INT
local OUTPUT = gpio.OUTPUT
local FLOAT = gpio.FLOAT
local HIGH = gpio.HIGH
local LOW = gpio.LOW
local PULLUP = gpio.PULLUP
local print = print

local tmr = tmr
local create = tmr.create
local now = tmr.now
local delay = tmr.delay
local alarm = tmr.alarm
local ALARM_SINGLE = tmr.ALARM_SINGLE
local ALARM_SEMI = tmr.ALARM_SEMI
local ALARM_AUTO = tmr.ALARM_AUTO
local register = tmr.register
local start = tmr.start
local stop = tmr.stop

local node = node
local heap = node.heap
local random = node.random

mode(3,INT,FLOAT)
mode(4,OUTPUT, PULLUP)
write(4, HIGH)

local function pulseOut()
	write(4, LOW)
	delay(10)
	write(4, HIGH)
end

local function randGen(pulses)
	for i = 1, pulses do -- pulses
			create():alarm(random(60000), ALARM_SINGLE, 
				function()
						print(heap(), count, i, (now() - t_start)/1000000)
						pulseOut()
				end
			)
	end
end

rand_tmr = create()
rand_tmr:register(1000, ALARM_AUTO, 
	function()
		if radMode == 0 and running == 0 then 
			print(heap(), 'Mode0:Snsr Err emu')
			return 0
		end
		local num = 0
		if radMode == 1 then 
			num = random(math.ceil(18),math.ceil(35))
		elseif radMode == 2 then
			num = random(math.ceil(36),math.ceil(52))
		elseif radMode == 3 then
			num = random(math.ceil(53),math.ceil(105))
		elseif radMode == 4 then
			num = random(math.ceil(106),math.ceil(264))
		end
		if num ~= 0 then print('count:',count + 1,'mode:',radMode, 'num:',num); randGen(num) end
	end
)

rand_tmr:start()

trig(3, 'down', 
	function(lvl, ts, cnt)
		if radMode &lt; 4 then radMode = radMode + 1 else radMode = 0 end
		print ('New radMode:', radMode)
	end
)</code></pre>

<p class="wp-block-paragraph">Початок статті: <a href="https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1/">Geiger counter emulator of GGreg20_V3 module by means of ESP8266: Part 1. Introduction and Overview </a></p>

<p class="wp-block-paragraph">The conclusion of the article will be in the next publication in a few days:<br/>Geiger counter emulator of GGreg20_V3 module by means of ESP8266: Part 3. Testing and Conclusion</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geiger counter emulator of GGreg20_V3 module by means of ESP8266</title>
		<link>https://iot-devices.com.ua/en/geiger-counter-emulator-ggreg20_v3-module-by-means-of-esp8266-part1/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Mon, 27 Mar 2023 18:55:25 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[emulator]]></category>
		<category><![CDATA[ESP12.OLED]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Expressive]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[tindie]]></category>
		<category><![CDATA[unit test]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2799</guid>

					<description><![CDATA[Welcome to our guide on building a hardware-software Geiger counter emulator of GGreg20_V3 module based on ESP8266 This emulator can be useful for testing and tuning Geiger counters or for educational purposes. Let&#8217;s get started! Updated: When writing this article, we decided to make a separate commercial product &#8211; the Geiger counter emulator GCemu20_V1. Part [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Welcome to our guide on building a hardware-software Geiger counter emulator of <a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_V3</a> module based on ESP8266 This emulator can be useful for testing and tuning Geiger counters or for educational purposes. Let&#8217;s get started!</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Updated: </strong> When writing this article, we decided to make a separate commercial product &#8211; the Geiger counter emulator <a href="https://iot-devices.com.ua/en/product/gcemu20_v1-geiger-counter-emulator/">GCemu20_V1</a>.</p></blockquote>

<h2 class="wp-block-heading">Part 1: Introduction and Overview</h2>

<p class="wp-block-paragraph">It is known that the Espressif ESP8266 module has a very high quality random number generator. We could not find any official details about the actual implementation of this generator, so we propose to read the material on this subject, published by a radio amateur and saved on the Internet:</p>

<p class="wp-block-paragraph"><a href="https://web.archive.org/web/20170321162556/http://esp8266-re.foogod.com/wiki/Random_Number_Generator" target="_blank" rel="noopener">https://web.archive.org/web/20170321162556/http://esp8266-re.foogod.com/wiki/Random_Number_Generator</a></p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Warning</strong>. Two different concepts with the same name are used in the text. Historically, there is a NodeMCU hardware module on the market as well as NodeMCU software firmware. </p><p>The NodeMCU firmware is a compilable, open-source microprogram that can be written to hardware modules with Espressif&#8217;s ESP8266 controller. One of the many products based on the ESP8266 controller, is the NodeMCU hardware module. </p><p>Thus the NodeMCU firmware can be written to the NodeMCU hardware module. Later in this article we will try, if possible, to clarify what is meant by the name NodeMCU: module or firmware.</p></blockquote>

<h2 class="wp-block-heading"><a></a>What is a Geiger counter emulator for</h2>

<p class="wp-block-paragraph">Before proceeding to create a Geiger counter emulator, it is necessary to consider what for and who may need such a hardware-software device.</p>

<p class="wp-block-paragraph">The main idea of any emulator in the field of DIY electronics is to temporarily, at certain stages, use a virtual substitute component instead of a real module in the process of IoT device development or experimenting / learning to reproduce the operation and characteristics of a real device with high accuracy. The emulator should simplify and speed up development, as well as add convenience in the initial stages of a planned project or performing unit tests.</p>

<p class="wp-block-paragraph">Below we present some theses explaining our motives for developing the GGreg20_V3 Geiger counter module emulator.</p>

<h3 class="wp-block-heading">1.No high voltage</h3>

<p class="wp-block-paragraph">The GGreg20_V3 emulator, unlike the real module, has no high voltage on the board, so it is very convenient to use when developing on the table without fear of accidental electrocution.</p>

<p class="wp-block-paragraph">At the same time, in terms of the electrical interface of the outgoing pulses, the emulator is a completely similar radiation sensor module, generating random pulses of the same shape and duration as the genuine GGreg20_V3.</p>

<h3 class="wp-block-heading">2. Simplified learning process</h3>

<p class="wp-block-paragraph">The Geiger counter emulator is suitable for educational institutions. The instructor can gradually deepen practical lessons with students.</p>

<p class="wp-block-paragraph">First, all classes can be conducted using safe and cheap Geiger counter emulators, and then with real modules with Geiger tubes and high voltage on the tube side. Just like in the Army: familiarization and training is done first with blank cartridges, and only then with live ones.</p>

<p class="wp-block-paragraph">The emulator fully reproduces the results of the real GGreg20_V3 module, so there is no problem of insufficient number of real modules in the classroom: each student can work with his module independently and complete the learning process without dividing into groups or queues, as it usually happens when resources of training devices and stands in the lab are limited.</p>

<h3 class="wp-block-heading">3. Lower cost</h3>

<p class="wp-block-paragraph">The emulator has a lower cost than the real GGreg20_V3 module, so it is convenient to use it primarily for debugging and harmonizing the circuit or software of the system being designed or studied.</p>

<p class="wp-block-paragraph">Debugging a test bench or a project with such an emulator can be performed without the need for specially qualified personnel.</p>

<p class="wp-block-paragraph">If the emulators are used by students, then the teacher will not need to control the work with the devices, as would be necessary to do with the real Geiger counter module.</p>

<p class="wp-block-paragraph">Low-cost emulators can be purchased in large quantities and given to students for the duration of their studies, not just for the time they work in the school&#8217;s laboratory.</p>

<h3 class="wp-block-heading">4. No real source of radiation is needed</h3>

<p class="wp-block-paragraph">When we work with a real GGreg20_V3, we need a true source of radiation to reproduce the various situations that need to be considered in the software of the measurement system that is being designed or tested. In order to buy a test radiation source, the radio amateur must first solve a number of problems:</p>

<ul class="wp-block-list"><li>to determine by physical and chemical parameters which source is needed;</li><li>to find a supplier and buy a test source;</li><li>some countries require customs notification and an import permit;</li><li>the test source can only be of a certain power;</li><li>you must properly store and dispose of the radioactive source;</li><li>the price of the radiation source and its storage system exceeds many times the price of the Geiger counter.</li></ul>

<p class="wp-block-paragraph">With the emulator, none of these problems will occur. T he device can simulate 5 different modes of ionizing radiation power. The Geiger counter emulator generates output pulses similar to those of the real GGreg20_V3 module in the range from 0 to 1.5 µSv/h (taking the SBM-20 tube as a similar reference). At the output are generated chaotic (using a true random number generator ESP8266) pulses of the same amplitude with a total pulse period of 10 microseconds each.</p>

<h3 class="wp-block-heading">5. Emulator resource cannot be depleted</h3>

<p class="wp-block-paragraph">SBM-20 tube, installed in GGreg20_V3, has a relatively large, but still limited resource of particles, which it can detect during its lifetime.</p>

<p class="wp-block-paragraph">The resource of the SBM-20 tube declared in the documentation is at least 2*10<sup>10</sup> pulses.</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Note 1</strong>. With a background radiation of 0.15 μSv/h with a coefficient of 0.0057, the SBM-20 tube detects about 27 pulses per minute.</p></blockquote>

<p class="wp-block-paragraph">Thus, under normal conditions, the resource of the tube will be enough for 2*10<sup>10</sup> / (27 * 60 * 24) = 20 000 000 000 / (26 * 60 * 24) = 514403 days. And it would seem that this is quite a sufficient potential life of one tube.</p>

<p class="wp-block-paragraph">A completely different picture is observed when it comes to operating a tube with a test source of radiation.</p>

<p class="wp-block-paragraph">Here&#8217;s an example:</p>

<p class="wp-block-paragraph">On its website, Images Scientific Instruments provides a list of the radiation limits allowed for import for test sources:</p>

<p class="wp-block-paragraph"><a href="https://www.imagesco.com/geiger/radioactive-sources-int.html" target="_blank" rel="noopener">https://www.imagesco.com/geiger/radioactive-sources-int.html</a></p>

<p class="wp-block-paragraph">Let&#8217;s take two sources from the list at the link:</p>

<ol class="wp-block-list"><li>Co-60 1.00 uCi, 37000 Bq;</li><li>Cs-137 0.25 uCi, 9250 Bq;</li></ol>

<p class="wp-block-paragraph">If we assume that under the influence of such a test source, half of the particles from radioactive decays enter the Geiger tube SBM-20 then the lifetime of such a tube would be:</p>

<ol class="wp-block-list"><li>20 000 000 000 / (37000 / 2 * 60 * 60 * 24) = 12 days (for Co-60);</li><li>20 000 000 000 / (9250 / 2 * 60 * 60 * 24) = 50 days (for Cs-137).</li></ol>

<p class="wp-block-paragraph">As you can see, if we want to experiment (or test our devices that include a Geiger counter) on a real tube, then we deplete its available resource with a true source of radiation rather quickly.</p>

<p class="wp-block-paragraph">There is no such problem with the emulator. Using the emulator first instead of the tube is economically feasible.</p>

<h3 class="wp-block-heading">  6. Debugging data in the UART</h3>

<p class="wp-block-paragraph">The emulator of GGreg20_V3 module outputs operational data (pulses, time, counts, cycles, etc.) to the UART console port during operation, which, if necessary, can be recorded and processed by the student, developer or radio amateur for training or comparison with the measurements of his tested or developed system.</p>

<p class="wp-block-paragraph">Genuine GGreg20_V3 counter modules and similar modules of other manufacturers do not and cannot have such a built-in feature.</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>Note 2</strong>. To connect to the UART console, the <a href="https://iot-devices.com.ua/product-uk/esp12-oled-komplekt-2-kontroler-iot-bez-displeya-na-osnovi-esp8266-12f/">ESP12.OLED module</a> , on which the emulator is based, has separately led UART interface lines (2.54 mm pitch holes for soldering) on the PCB. To connect the emulator to the computer the user additionally needs to have his own USB-UART converter. Further in the text the connection diagram will be given.</p></blockquote>

<p class="wp-block-paragraph">The article will be continued in the following publications:<br/><a href="https://iot-devices.com.ua/en/?p=2822">Geiger counter emulator of GGreg20_V3 module by means of ESP8266 Part 2 Building the Emulator</a><br/>Geiger counter emulator of GGreg20_V3 module by means of ESP8266 Part 3: Testing and Conclusion</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>DIY Geiger counter: GGreg20_V3 and ESP12.OLED connection diagram (Technical note)</title>
		<link>https://iot-devices.com.ua/en/diy_geiger_counter_ggreg20_v3_and_esp12-oled_wiring_diagram_en/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Wed, 03 Aug 2022 10:45:56 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[esp12.oled_v1]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[geiger-counter]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[radiation counter]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[technical-note]]></category>
		<category><![CDATA[UART]]></category>
		<category><![CDATA[wiring]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/?p=2243</guid>

					<description><![CDATA[Exemption from liability The company IoT-devices, LLC does not bear any responsibility for possible direct or indirect damage or costs that may be incurred by anyone in the process of using the electronic modules or following these instructions. These are just tips that take into account experience and best practices for dealing with electronic systems. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><a href="&lt;!--[CDATA[https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3.jpg]]--&gt;"><img loading="lazy" decoding="async" width="1024" height="768" src="https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3-1024x768.jpg" alt="" class="wp-image-2165" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3-1024x768.jpg 1024w, https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3-300x225.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3-768x576.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3-1536x1152.jpg 1536w, https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3-454x341.jpg 454w, https://iot-devices.com.ua/wp-content/uploads/2022/07/foto1-esp12oled-esp8266-ggreg20v3.jpg 1600w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>

<h2 class="wp-block-heading">Exemption from liability</h2>

<p class="wp-block-paragraph">The company IoT-devices, LLC does not bear any responsibility for possible direct or indirect damage or costs that may be incurred by anyone in the process of using the electronic modules or following these instructions. These are just tips that take into account experience and best practices for dealing with electronic systems. </p>

<p class="wp-block-paragraph">Users and readers should use common sense, and most importantly, follow the rules for handling electrical installations and comply with local laws that may establish requirements for the procedure of qualified performance of work on connecting electronic components to each other.</p>

<hr class="wp-block-separator is-style-wide"/>

<p class="has-text-align-left wp-block-paragraph">This document is for the attention of those users who are going to connect two GGreg20_V3 and ESP12.OLED modules together.</p>

<p class="wp-block-paragraph">This document contains a connection diagram, which in particular shows </p>

<ul class="wp-block-list"><li>all the necessary interface signals and ports that need to be connected, including the module power supply scheme. </li><li>Also, the diagram contains data on the connection of the USB-UART converter for the possibility of programming and/or flashing the ESP8266-12F module embedded on the ESP12.OLED board.</li></ul>

<figure class="wp-block-image size-full"><a href="https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram.jpg"><img loading="lazy" decoding="async" width="960" height="540" src="https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram.jpg" alt="" class="wp-image-2236" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram.jpg 960w, https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram-300x169.jpg 300w, https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram-768x432.jpg 768w, https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram-800x450.jpg 800w, https://iot-devices.com.ua/wp-content/uploads/2022/08/the-ggreg20_v3-and-esp12.oled-wiring-diagram-454x255.jpg 454w" sizes="(max-width: 960px) 100vw, 960px" /></a><figcaption>Fig. GGreg20_V3 and ESP12.OLED connection diagram</figcaption></figure>

<p class="wp-block-paragraph">Note that some interface signals are marked NC on the schematic, meaning they are not connected. </p>

<p class="wp-block-paragraph">This is especially important when it comes to connecting the USB-UART adapter: according to the scheme, it is forbidden to connect the power supply circuits of the adapter (+5V and +3.3V) to the ESP12.OLED module!</p>

<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>IMPORTANT</strong> ! Incorrect connection or violation of the connection scheme can lead to counter current. Doing so may damage the equipment.</p></blockquote>

<p class="wp-block-paragraph">GGreg20_V3 product pages:</p>

<figure class="wp-block-embed is-type-wp-embed is-provider-electronics-manufacturer-for-iot wp-block-embed-electronics-manufacturer-for-iot"><div class="wp-block-embed__wrapper">
<div class="oceanwp-oembed-wrap clr"><blockquote class="wp-embedded-content" data-secret="kqOlMxHFEs"><a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_V3 Ionizing Radiation Detector</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;GGreg20_V3 Ionizing Radiation Detector&#8221; &#8212; Electronics manufacturer for IoT" src="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/embed/#?secret=Xj0eQdEoYY#?secret=kqOlMxHFEs" data-secret="kqOlMxHFEs" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
</div></figure>

<p class="wp-block-paragraph"><a href="https://www.tindie.com/products/iotdev/ggreg20_v3-ionizing-radiation-detector/" target="_blank" rel="noopener">https://www.tindie.com/products/iotdev/ggreg20_v3-ionizing-radiation-detector/</a></p>

<p class="wp-block-paragraph">ESP12.OLED product pages:</p>

<figure class="wp-block-embed is-type-wp-embed is-provider-electronics-manufacturer-for-iot wp-block-embed-electronics-manufacturer-for-iot"><div class="wp-block-embed__wrapper">
<div class="oceanwp-oembed-wrap clr"><blockquote class="wp-embedded-content" data-secret="eEoMZqRB95"><a href="https://iot-devices.com.ua/product-uk/esp12oled-universal-esp8266-mcuboard-oled/">ESP12.OLED &#8211; універсальний ESP8266 MCU контролер з 0.96&#8243;OLED</a></blockquote><iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted"  title="&#8220;ESP12.OLED &#8211; універсальний ESP8266 MCU контролер з 0.96&#8243;OLED&#8221; &#8212; Electronics manufacturer for IoT" src="https://iot-devices.com.ua/product-uk/esp12oled-universal-esp8266-mcuboard-oled/embed/#?secret=WUmij9V9BZ#?secret=eEoMZqRB95" data-secret="eEoMZqRB95" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></div>
</div></figure>

<p class="wp-block-paragraph"><a href="https://www.tindie.com/products/iotdev/esp12oled-universal-esp8266096oled-mcu-board/" target="_blank" rel="noopener">https://www.tindie.com/products/iotdev/esp12oled-universal-esp8266096oled-mcu-board/</a></p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Why we didn&#8217;t add the I2C interface to the GGreg20_V3 module</title>
		<link>https://iot-devices.com.ua/en/why-we-didnt-add-the-i2c-interface-to-the-ggreg20_v3-module/</link>
		
		<dc:creator><![CDATA[sah]]></dc:creator>
		<pubDate>Sat, 28 May 2022 19:24:07 +0000</pubDate>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[ESP-IDF]]></category>
		<category><![CDATA[ESPHome]]></category>
		<category><![CDATA[Expressive]]></category>
		<category><![CDATA[Geiger]]></category>
		<category><![CDATA[Geiger-Counter-Device]]></category>
		<category><![CDATA[GGreg20_V3]]></category>
		<category><![CDATA[GPIO]]></category>
		<category><![CDATA[Home Assistant]]></category>
		<category><![CDATA[I2C]]></category>
		<category><![CDATA[ionizing radiation]]></category>
		<category><![CDATA[IoT devices]]></category>
		<category><![CDATA[ISR]]></category>
		<category><![CDATA[LUA]]></category>
		<category><![CDATA[MicroPython]]></category>
		<category><![CDATA[NodeMCU]]></category>
		<category><![CDATA[Pulse Counter]]></category>
		<category><![CDATA[SBM20]]></category>
		<category><![CDATA[STM32]]></category>
		<category><![CDATA[Tasmota]]></category>
		<guid isPermaLink="false">https://iot-devices.com.ua/why-we-didnt-add-the-i2c-interface-to-the-ggreg20_v3-module-uk/</guid>

					<description><![CDATA[Indeed, why not add such a convenient interface to the module? Here is our next article where we discuss the advantages and disadvantages of equipping the GGreg20_V3 ionizing radiation detector module with an I2C interface. Note that we really like the I2C serial bus for its simplicity, functionality, and reliability. You can check out our [&#8230;]]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-image"><figure class="aligncenter size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-1024x683.png"><img loading="lazy" decoding="async" width="1024" height="683" src="https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-1024x683.png" alt="GGreg20_V3, I2C" class="wp-image-2008" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-1024x683.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-300x200.png 300w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-768x512.png 768w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-454x303.png 454w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng.png 1500w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<p class="wp-block-paragraph">Indeed, why not add such a convenient interface to the module? Here is our next article where we discuss the advantages and disadvantages of equipping the GGreg20_V3 ionizing radiation detector module with an I2C interface. </p>



<p class="wp-block-paragraph">Note that we really like the I2C serial bus for its simplicity, functionality, and reliability. You can check out our other publications where we look at this great bus: <br><a href="https://iot-devices.com.ua/en/how-to-choose-the-right-i2c-chips-en/">Як правильно вибрати I2C чіпи. Або про приховану програмну проблему вибору<br>апаратних модулів</a>  /  <a href="https://iot-devices.com.ua/en/how-to-choose-the-right-i2c-chips-en/">How to choose the right I2C chips. Or the hidden software problem of<br>choosing hardware modules</a></p>



<p class="wp-block-paragraph"><a href="https://iot-devices.com.ua/?p=1130">Application of I2C bus interface splitter</a> </p>



<p class="wp-block-paragraph">However, our goal in developing GGreg20_V3 was, and still is, to ensure that our product is as compatible as possible with various systems.</p>



<p class="wp-block-paragraph">Take a look at this:</p>



<p class="wp-block-paragraph"><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-green-cyan-color">(1)</mark></strong> If any module or chip has an I2C (or SPI, UART) communication interface, this automatically requires a low-level driver-connector to be written for that device.</p>



<p class="wp-block-paragraph"><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-green-cyan-color">(2)</mark></strong> Also, such a device cannot be integrated with other components that do not support a specific communication or control interface such as I2C. There are many projects that do not have I2C, or there are not enough free GPIOs for the I2C bus.</p>



<p class="wp-block-paragraph"><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-green-cyan-color">(3)</mark></strong> The radiation measurement module, under certain conditions, should be capable of being used in the field, without connection to the main controller. The user should be able to use such a device regardless of the conditions in which he finds himself. Without programming or hardware rework.</p>



<p class="wp-block-paragraph"><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-green-cyan-color">(4)</mark></strong> Equipping the module with an I2C interface requires an embedded controller-companion on the module, which provides data preparation for the consumer and data exchange in Slave Device mode in accordance with the I2C specification. Although it can be a common and inexpensive controller, its presence increases both the price and size of the module. It is also necessary to allocate additional space on the module board for the address selection pads. </p>



<p class="wp-block-paragraph"><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-green-cyan-color">(5)</mark></strong> A module with an I2C interface requires a main controller and display so that the module can be used for its intended purpose. This is despite the fact that the module already has an embedded controller-companion. The main controllers are very different. Some use Raspberry Pi, or Arduino, and some want to be able to use ESP32/ESP8266. That&#8217;s why we don&#8217;t put the main controller on the GGreg20 module board. We believe that the user has the right to choose the controller, platform or development environment independently. And our task is to ensure the widest possible compatibility and versatility of our product.</p>



<p class="wp-block-paragraph">From an electrical point of view, equipping devices in this category with an I2C interface also has no advantages, since both the power and data interface in the I2C variant and the GGreg20_V3 pulse output variant require the same number of signal wires in the loop. Hot-swapping, supported by the I2C bus, is also hardly desirable for this type of module, not to mention the mandatory presence of this function.</p>



<p class="wp-block-paragraph">In Fig. Here are schematic images of two modules &#8211; the current version of GGreg20 without I2C, and the version with I2C interface to show how much you would have to change the module to the actual size (10&#215;10 mm) of the additional chip integrated controller-companion.</p>



<figure class="wp-block-image size-large"><a href="https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_iot-deviceslogo_i2c_publpic_eng-1024x683.png"><img loading="lazy" decoding="async" width="1024" height="566" src="https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic-1024x566.png" alt="GGreg20_V3" class="wp-image-2006" srcset="https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic-1024x566.png 1024w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic-300x166.png 300w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic-768x424.png 768w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic-1536x848.png 1536w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic-454x251.png 454w, https://iot-devices.com.ua/wp-content/uploads/2022/05/6-ggreg20_v3_publication_pic.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure>



<p class="wp-block-paragraph"><em><br>Fig. If GGreg20_V3 had an I2C interface (the built-in companion controller providing the I2C Slave Device mode is shown in red)</em>)</p>



<p class="wp-block-paragraph">The only advantages to justify equipping our radiation module with an I2C interface are:</p>



<ul class="wp-block-list"><li>the ability to connect multiple devices to the I2C interface of the main controller;</li><li>calculation of user values by means of the built-in controller-companion.</li></ul>



<p class="wp-block-paragraph">But if you carefully weigh the potential benefits and the very specific losses of implementing I2C in a given device, it becomes obvious that it is better to have a universal module with extensive driver support and the ability to use it in &#8220;manual&#8221; mode than to have a tones of I2C bus advantages that you need to be able to use.</p>



<figure class="wp-block-table is-style-regular"><table class="has-fixed-layout"><tbody><tr><td></td><td><strong>I2C interface</strong>                         </td><td><strong>GPIO pulse counter interface</strong></td></tr><tr><td>Autonomous use in &#8220;manual&#8221; mode</td><td>No</td><td>Yes</td></tr><tr><td>Requires a built-in controller-companion</td><td>Yes: <br>&#8211; higher cost;<br>&#8211; larger sizes.</td><td>No</td></tr><tr><td>Driver support</td><td>Not available / very limited</td><td>The broadest</td></tr><tr><td>Hardware dependency</td><td>High:<br>&#8211; main controller;<br>&#8211; display.</td><td>Low / none</td></tr><tr><td>User qualification requirements</td><td>High:<br>&#8211; embed programming .;<br>&#8211; administration / config;<br>&#8211; interfaces / protocols;<br>&#8211; electronics / integration.</td><td>Low / none</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">In addition to the above, here are two key problems we would like to highlight for potential users. GGreg20_V3 does not have these problems, but they are bound to occur (in some variations) in the radiation measurement module with the I2C interface:</p>



<h2 class="wp-block-heading"><strong>Problem # 1</strong> Field conditions / Emergency situation </h2>



<p class="wp-block-paragraph">Consider this situation: you have a radiation sensor in a drawer waiting for you to finally start programming it, and the next moment you need to leave the house as quickly as possible with one backpack in your hands and, perhaps, start measuring the level of radiation as soon as possible, because a situation of natural or man-made disaster has come, and you are near the epicenter of these events. </p>



<p class="wp-block-paragraph">We in Ukraine are very familiar with such circumstances, and we take into account the experience accumulated in the most difficult times for the country to make the system design of our products as good as possible.</p>



<p class="wp-block-paragraph">Our GGreg20_V3 module only needs to be powered by a powerbank (or even a few AA/AAA batteries), or a solar panel and that&#8217;s it: you can measure manually by LED flashes and a stopwatch or your own countdown. </p>



<p class="wp-block-paragraph">The number of flashes per minute, multiplied by the conversion factor, is the radiation level in μSv/h. </p>



<p class="wp-block-paragraph">The conversion factor for the SBM20 GM-tube is 0.0054. Thus, we have a simple formula: </p>



<p class="has-text-align-center wp-block-paragraph">CPM x 0.0054 = mkSv / hour. </p>



<p class="wp-block-paragraph">where CPM is the number of flashes per minute ( <em>Counts per Minute</em> ).</p>



<p class="wp-block-paragraph">For Kyiv[20 &#8211; 48] flashes is a normal level (0.10 &#8211; 0.26 mkSv / h).</p>



<p class="wp-block-paragraph">Unlike the GGreg20_V3, a module with an I2C interface will be very difficult to use in the field for its intended purpose. After all, such a module requires a main controller, display, programming tools, software code development and special knowledge and skills to interconnect the required components and program them. This means that the average user without specialist knowledge will not be able to make a measurement with an I2C sensor, even if he happens to have the available tools in his kit.</p>



<h2 class="wp-block-heading"><strong>Problem # 2</strong> Driver support</h2>



<p class="wp-block-paragraph">Even if the surrounding circumstances are fine and the radiation sensor module is operated in a civilization, there are still problems with the design option of the module having an I2C interface. Problems arise for users who want to use their favorite systems / platforms / environments / architectures for IoT development. </p>



<p class="wp-block-paragraph">There are many systems and user favors, but even the most advanced and popular systems do not have drivers for all the devices that consumers usually buy and try to connect. </p>



<p class="wp-block-paragraph">Due to the heterogeneity of integration protocols, sometimes you have to write a driver yourself, or wait several years for the system developers to pay attention to this particular commercial device and develop an appropriate driver connector.</p>



<p class="wp-block-paragraph">Here is a comparison table of common platforms with built-in I2C support for radiation sensors and platforms with GPIO pulse counter support, so that the reader can understand the extent of the problem.</p>



<figure class="wp-block-table"><table><tbody><tr><td><strong>Platform</strong>         </td><td class="has-text-align-center" data-align="center"><strong>Radiation sensor module with I2C, built-in driver platform support</strong>      </td><td class="has-text-align-center" data-align="center"><strong>Radiation sensor module with pulse output, built-in driver platform support (GPIO pulse counter, external ISR)</strong></td></tr><tr><td>Arduino</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr><tr><td>NodeMCU (Lua)</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr><tr><td>MicroPython</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr><tr><td>ESPHome / Home Assistant</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr><tr><td>Espressif ESP-IDF</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr><tr><td>STM32</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr><tr><td>Tasmota</td><td class="has-text-align-center" data-align="center">No</td><td class="has-text-align-center" data-align="center">Yes</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">This data indicates very eloquently that a sensor with a pulse output, such as the GGreg20_V3, is much easier to connect to any platform, or to use the module stand-alone, if necessary. </p>



<p class="wp-block-paragraph">Of course, each I2C module usually has its own libraries developed by the manufacturer or by concerned members of the open source software community. For example, the GGreg20_V3 module has several libraries for popular platforms:</p>



<figure class="wp-block-table is-style-stripes"><table><tbody><tr><td><strong>Platform</strong></td><td><strong>Link</strong></td></tr><tr><td>Arduino contributed library</td><td>https://www.arduino.cc/reference/en/libraries/ggreg20_v3/</td></tr><tr><td>ESPHome / Home Assistant example</td><td>https://github.com/iotdevicesdev/ggreg20-v3-homeassistant-esphome-example</td></tr><tr><td>Tasmota driver example</td><td>https://github.com/iotdevicesdev/ggreg20-v3-tasmota-esp32-driver</td></tr><tr><td>NodeMCU (Lua) example</td><td>https://github.com/iotdevicesdev/ggreg20-v3-nodemcu-lua-example</td></tr><tr><td>NodeMCU (Lua) full functional driver</td><td>https://alterstrategy.com/product/radcounter/</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><em><strong>Note.</strong> While every modern IoT platform typically provides I2C bus support, there must also be a driver for each specific hardware module (manufacturer, model, version). Support must be both on the platform side and on the side of the controller to which the module is connected.</em></p></blockquote>



<p class="wp-block-paragraph">Having libraries like the ones in the table is already a good thing. But this does not give any guarantee that these libraries are supported by their authors and are up-to-date, and also that the user will find such a library for his favorite platform and will be able to integrate it and program the end device.</p>



<p class="wp-block-paragraph">In the case of the pulse counter on the GPIO, the situation is completely different: all platforms support this function and are very easy to program.</p>



<h2 class="wp-block-heading"><strong>In lieu of conclusion.</strong></h2>



<p class="wp-block-paragraph">Despite the obvious advantages of the I2C bus, if in the future we decide to add I2C support to the GGreg20 module, it will be another, alternative device with these capabilities. And consumers will be able to choose which option suits them best.</p>



<p class="wp-block-paragraph">Buy a <a href="https://iot-devices.com.ua/en/product/ggreg20_v3-ionizing-radiation-detector-with-geiger-tube-sbm-20/">GGreg20_V3</a> ionizing radiation detector with pulse output.</p>



<p class="wp-block-paragraph">We wish you success!</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
