Testing QR Code Error Correction: Practical Experiments

Embed This Widget

Theme


      
    

Widget powered by . Free, no account required.

How to test EC effectiveness: deliberate damage patterns, scanner comparison, and documenting the failure threshold.

Testing QR Code Error Correction: Practical Experiments

Theoretical error correction percentages only tell part of the story. Practical testing reveals how your specific QR code performs under real-world conditions.

Test Setup

Prepare test QR codes at each EC level (L, M, Q, H) with identical data. Print them at your target size on your target material. You will need:

  • Multiple printed copies of each EC level
  • A marker or sticker material for deliberate damage
  • At least 3 smartphone models (iOS and Android)
  • Consistent lighting setup

Damage Patterns to Test

Progressive centre coverage: Cover the centre with increasingly large opaque circles (5%, 10%, 15%, 20%, 25%, 30%). Record at which percentage each EC level fails.

Linear scratches: Draw lines of increasing width across the code. Test horizontal, vertical, and diagonal scratches.

Corner damage: Cover one corner at a time with opaque material. Note that corners with finder patterns are more critical.

Edge removal: Trim the quiet zone and then progressively trim into the code itself.

Environmental exposure: Leave prints outdoors, submerge in water, crumple and flatten, expose to heat.

Scanner Comparison

Different scanner apps and hardware have varying tolerance:

  • iOS native camera (reliable, moderate tolerance)
  • Android native camera (varies by manufacturer)
  • Google Lens (often more tolerant than native camera)
  • Dedicated scanner apps (ZXing-based apps are generally robust)

Record which scanner succeeds and fails for each damage scenario.

Documenting Results

Create a matrix:

Damage Type L M Q H
10% centre cover Fail Pass Pass Pass
20% centre cover Fail Fail Pass Pass
30% centre cover Fail Fail Fail Pass
2mm scratch Pass Pass Pass Pass
Corner damage Fail Fail Pass Pass

Interpreting Results

  • If your EC level fails at expected damage levels, increase the level or improve print quality
  • If all levels fail, the issue is likely print quality, contrast, or quiet zone violation
  • If one scanner fails but others succeed, the issue is scanner sensitivity, not the code itself

Key Takeaways

  • Practical testing reveals real-world performance beyond theoretical percentages
  • Test with deliberate, systematic damage patterns at each EC level
  • Compare multiple scanner apps and devices for each test
  • Document results in a matrix for future reference
  • Environmental testing is essential for outdoor or industrial deployments