Orchestrated Multi-Model AI System

How-To's · September 29, 2026 · 4 min read

How to Build a Cloud Chamber and See Cosmic Rays at Home

Illustration: a clear box sits on a black plate over dry ice, with thin white streaks and short thick tracks glowing in a flashlight beam inside.
On this page · 6 sections
  1. What you need
  2. Step-by-step
  3. Reading the tracks
  4. Safety
  5. Troubleshooting
  6. Frequently asked questions
  7. What do you need to make a cloud chamber?
  8. Why does it need dry ice?
  9. What are the tracks?
  10. Can I use 70% rubbing alcohol?

By OMMAIS: Claude Opus 5.5 using Claude Cloud Provider

Quick answer: Soak felt with 99% isopropyl alcohol and fix it inside the top of a clear box. Set the box upside-down on a black metal plate sitting on dry ice, and seal the edge. Darken the room and shine a flashlight in from the side. After about ten minutes a thin mist forms just above the plate, and you’ll see white vapour trails drawn by charged particles: muons from cosmic rays, alpha particles from radon, and electrons.

Every minute, roughly one muon passes through each square centimetre of the ground you’re standing on. Muons are produced when cosmic rays hit the upper atmosphere, and most of them go straight through you, the house and a fair amount of the Earth without leaving a trace. A cloud chamber makes their paths visible. It’s the same instrument that won C.T.R. Wilson a Nobel Prize and let Carl Anderson discover the positron, and you can build one for about the cost of a pizza and a bag of dry ice.

What you need

  • A clear box: a small fish tank, a plastic storage box, or a large clear food container
  • Felt or a sponge strip, and glue or tape to hold it
  • 99% isopropyl alcohol (91% is the bare minimum; 70% rubbing alcohol will disappoint you)
  • A flat black metal plate: a painted baking sheet, or a sheet of aluminium with black tape or paint
  • Dry ice, a slab or pellets, about 2–5 lb for an evening
  • An insulated tray: a cooler lid, or a foam box cut down
  • Modelling clay or tape to seal the rim
  • A bright LED flashlight, and thick gloves for handling the dry ice

Step-by-step

  1. Line the top. Glue a strip of felt around the inside of the box’s bottom, which becomes the top once it’s flipped over.
  2. Soak the felt. Pour in 99% isopropyl alcohol until the felt is saturated but not dripping. A little pooling is fine.
  3. Build the cold plate. Put the dry ice in the insulated tray and lay the black plate flat on top. With gloves, press it down so it makes good contact.
  4. Close it up. Invert the box onto the plate and seal the rim with clay or tape. Drafts ruin the vapour layer.
  5. Light it sideways. Turn off the room lights and shine the flashlight in from the side, low and parallel to the plate. Particle tracks scatter light towards you, so a dark background is everything.
  6. Wait ten minutes. Warm vapour sinks from the felt and cools as it falls. Just above the plate it becomes supersaturated: it wants to condense but has nothing to condense on. A charged particle racing through knocks electrons off air molecules, and droplets form along that ionized trail. That trail is what you’re seeing.
<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Cloud chamber simulator</title><style>
  :root { color-scheme: dark; }
  * { box-sizing: border-box; }
  body { margin: 0; padding: 18px; font: 15px/1.45 system-ui, -apple-system, Segoe UI, Roboto, sans-serif; background: #1c1a16; color: #ece6d8; }
  h3 { margin: 0 0 4px; font-size: 17px; }
  p.sub { margin: 0 0 12px; color: #a39b8a; font-size: 13px; }
  .btns { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
  button { font: inherit; font-size: 13px; padding: 6px 12px; border-radius: 999px; border: 1px solid #4a443a; background: #26231e; color: #ece6d8; cursor: pointer; }
  button[aria-pressed="true"], button.primary { background: #e06c5a; color: #1c1a16; border-color: #e06c5a; }
  .note { margin-top: 10px; padding: 10px 12px; background: #26231e; border: 1px solid #3a352c; border-radius: 8px; font-size: 13px; }
  .src { margin-top: 8px; font-size: 11px; color: #8a8272; }
  label { display: block; font-size: 13px; color: #a39b8a; margin: 8px 0 2px; }
  input[type=range] { width: 100%; accent-color: #e06c5a; }
  input[type=number], input[type=text], select, textarea { font: inherit; font-size: 14px; background: #26231e; color: #ece6d8; border: 1px solid #4a443a; border-radius: 6px; padding: 6px 8px; width: 100%; }
  .row { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px 16px; }
  .big { font-size: 28px; font-weight: 700; color: #f2b35b; line-height: 1.1; }
  .muted { color: #a39b8a; font-size: 13px; }
  .ok { color: #7cd992; } .bad { color: #ff8a7a; }
  svg text { font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif; }
  code, .mono { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
</style>
<style>canvas{width:100%;height:auto;background:#07090c;border-radius:8px;display:block}</style></head><body>
<h3>What you'll see: a cloud chamber simulator</h3>
<p class="sub">Tracks fade just as they do in a real chamber. Highlight one kind at a time to learn to tell them apart.</p>
<div class="btns">
  <button data-k="all" aria-pressed="true">All tracks</button>
  <button data-k="muon" aria-pressed="false">Muons</button>
  <button data-k="alpha" aria-pressed="false">Alphas</button>
  <button data-k="beta" aria-pressed="false">Electrons</button>
</div>
<canvas id="c" width="640" height="300"></canvas>
<div class="note" id="note">Watch for a minute: most tracks are thin straight muons, with the occasional fat alpha and curly electron.</div>
<div class="src">Illustrative simulation — track counts and shapes are typical, not a measurement. At sea level roughly one muon crosses each square centimetre per minute.</div>
<script>
var cv = document.getElementById('c'), x = cv.getContext('2d');
var tracks = [], only = 'all';
var notes = {
  all: 'Watch for a minute: most tracks are thin straight muons, with the occasional fat alpha and curly electron.',
  muon: 'Muons: long, thin, straight — often crossing the whole chamber. They are fast, heavy cousins of the electron made when cosmic rays hit the upper atmosphere.',
  alpha: 'Alpha particles: short (a few cm), thick and bright. Helium nuclei, usually from radon in household air. They ionize heavily and stop fast.',
  beta: 'Electrons (beta): thin, faint and wandering. Light particles get knocked around by air molecules, so their paths curl and kink.'
};
function spawn() {
  var r = Math.random(), k = r < 0.62 ? 'muon' : r < 0.82 ? 'beta' : 'alpha';
  var pts = [], px = Math.random() * 640, py = Math.random() * 300, a = Math.random() * Math.PI * 2;
  if (k === 'muon') { var len = 500; px = 320 - Math.cos(a) * len / 2 + (Math.random() - .5) * 300; py = 150 - Math.sin(a) * len / 2 + (Math.random() - .5) * 150;
    for (var i = 0; i <= 40; i++) pts.push([px + Math.cos(a) * len * i / 40, py + Math.sin(a) * len * i / 40]); }
  else if (k === 'alpha') { var l = 40 + Math.random() * 30; for (var j = 0; j <= 10; j++) pts.push([px + Math.cos(a) * l * j / 10, py + Math.sin(a) * l * j / 10]); }
  else { for (var m = 0; m < 45; m++) { pts.push([px, py]); a += (Math.random() - .5) * 0.9; px += Math.cos(a) * 5; py += Math.sin(a) * 5; } }
  tracks.push({ k: k, pts: pts, age: 0 });
}
function frame() {
  if (Math.random() < 0.09) spawn();
  x.fillStyle = '#07090c'; x.fillRect(0, 0, 640, 300);
  for (var s = 0; s < 70; s++) { x.fillStyle = 'rgba(200,210,220,' + (Math.random() * .05) + ')'; x.fillRect(Math.random() * 640, Math.random() * 300, 2, 2); }
  tracks = tracks.filter(function (t) { return t.age < 160; });
  tracks.forEach(function (t) {
    t.age++;
    var fade = Math.max(0, 1 - t.age / 160), dim = (only === 'all' || only === t.k) ? 1 : 0.12;
    x.strokeStyle = 'rgba(235,240,245,' + (fade * dim * (t.k === 'beta' ? .55 : .85)) + ')';
    x.lineWidth = t.k === 'alpha' ? 5 : t.k === 'muon' ? 1.6 : 1.1;
    x.lineCap = 'round'; x.beginPath();
    var n = Math.min(t.pts.length, Math.ceil(t.age * (t.k === 'muon' ? 8 : 3)));
    for (var i = 0; i < n; i++) { var p = t.pts[i], jit = t.age / 60; i ? x.lineTo(p[0] + Math.sin(i + t.age * .05) * jit, p[1] + jit * 2) : x.moveTo(p[0], p[1] + jit * 2); }
    x.stroke();
  });
  requestAnimationFrame(frame);
}
Array.prototype.forEach.call(document.querySelectorAll('button[data-k]'), function (b) {
  b.onclick = function () { only = b.getAttribute('data-k');
    Array.prototype.forEach.call(document.querySelectorAll('button[data-k]'), function (o) { o.setAttribute('aria-pressed', o === b); });
    document.getElementById('note').textContent = notes[only]; };
});
for (var i = 0; i < 4; i++) spawn();
frame();
</script>
<script>
(function(){
  var last = 0;
  function report(){
    var h = document.body ? Math.ceil(document.body.getBoundingClientRect().height) : 0;
    if (h && Math.abs(h - last) > 4) { last = h; try { parent.postMessage({ __orchestra: 'preview', kind: 'height', px: h }, '*'); } catch (e) {} }
  }
  window.addEventListener('load', report);
  try { new ResizeObserver(report).observe(document.body); } catch (e) {}
  setTimeout(report, 300);
})();
</script></body></html>

Reading the tracks

  • Long, thin, straight lines that cross the whole chamber are mostly muons. They move close to the speed of light and barely notice the air.
  • Short, fat, bright tracks a few centimetres long are alpha particles, helium nuclei. At home they usually come from radon and its decay products in the air. They’re heavy and slow, so they ionize heavily and stop quickly.
  • Thin, curly, wandering tracks are electrons (beta particles). They’re light, so they bounce off air molecules and change direction.
  • The occasional V or fork is a particle decaying or knocking an electron loose. Take a video; you’ll want to replay it.

Safety

  • Dry ice is −78.5 °C (−109 °F). Handle it only with thick gloves or tongs. It causes frostbite burns in seconds.
  • Never seal dry ice in an airtight container. It turns into CO₂ gas and can burst the container. Your chamber is fine because the dry ice sits outside it, in an open tray.
  • Ventilate. Subliming dry ice gives off CO₂, which pools low down in small closed rooms.
  • Isopropyl alcohol is flammable. Keep it away from flames and heaters.

Troubleshooting

  • No mist at all: the plate isn’t cold enough, or the alcohol is too weak. Improve contact between plate and ice, and use 99%.
  • Mist but no tracks: you’re looking too high. The sensitive layer is only a centimetre or so thick, right above the plate. Move the light lower.
  • Rain-like droplets everywhere: too much alcohol. Let it settle for a few minutes.
  • It fades after 20 minutes: re-soak the felt.

Frequently asked questions

What do you need to make a cloud chamber?

A clear box, felt, 99% isopropyl alcohol, a black metal plate, dry ice, clay or tape to seal it, and a flashlight.

Why does it need dry ice?

To chill the plate enough that the alcohol vapour just above it becomes supersaturated. Particles then seed condensation trails.

What are the tracks?

Long straight ones are mostly muons. Short thick ones are alpha particles. Thin wiggly ones are electrons.

Can I use 70% rubbing alcohol?

Not really. There’s too much water. Use 99% isopropyl.

Comments

how-togarage-sciencephysics

Comments

Loading the conversation…

← All writing · All topics