Splashery

Playground
QR Explained, a still.

Studio · Built from a recipe

QR Explained

C4 on the major comb. Its drum rings at 250.2 Hz.

Turn it in the PlaygroundTap the picture to strike it.

A QR code is a grid of dark and light modules with a fixed plan.

Shelf
Studio
Kind
Built from a recipe
Your own
QR Explained
Sound
Yes
Licenses
Apache-2.0, MIT

Its note

Splashery stretches a drumhead over this Splash's outline, twelve inches across, and finds the ways it can ring. Its lowest is 250.2 Hz, 77 cents flat of C4, the nearest tine on the comb. The next fifteen are its overtones, and each one draws its own figure: sand gathers on the lines that stay still.

The sixteen ways QR Explained's drum can ring, lowest first.
  1. 1250 Hz
  2. 2396 Hz
  3. 3396 Hz
  4. 4500 Hz
  5. 5559 Hz
  6. 6559 Hz
  7. 7638 Hz
  8. 8638 Hz
  9. 9729 Hz
  10. 10729 Hz
  11. 11750 Hz
  12. 12791 Hz
  13. 13791 Hz
  14. 14884 Hz
  15. 15884 Hz
  16. 16901 Hz

How to play

Tap to light up each part of the code, or encode your own text step by step.

Its controls

ControlKindRangeStart
Next partTap
Light it upButton
Place the bitsButton
Apply the maskButton
ShapeList2 choicesSquare
Pop the lit part outSetting

About it

A QR code is a grid of dark and light modules with a fixed plan. Three finder patterns mark the corners, timing patterns set the grid, alignment patterns help at an angle, and the format information says the error correction level and the mask. The rest is your text in 8-bit codewords, plus Reed–Solomon codewords that can rebuild damaged ones.

Tap to light up each part. Or type your own text in the Splash tab and step through the encoding: the mode, the count, the data bits, padding, error correction, interleaving, the zigzag placement and the eight masks with their penalty scores. Each step follows ISO/IEC 18004 and is checked against another encoder.

Sources and credits

Made in Splashery. Its code is MIT.

Libraries

Apache-2.0
jsQR 1.4.0 (lane LSTUDIO)
MIT
QR Code generator library (Project Nayuki)
MIT, Apache-2.0
zxing-wasm 3.1.4, with zxing-cpp (copied from Splashery)

In The Splash Manual

  1. Chapter 9: Codes and pages
  2. Chapter 10: Make your own

Share it

This link opens it in the Playground. To put it on your own page, add the element and one script tag. Every option.

https://splashery.app/play/?toy=qr-anatomy<script type="module" src="https://splashery.app/play/src/element.js"></script> <splashery-toy toy="qr-anatomy"></splashery-toy>

Nearby on the strip