MSI1110 (Mod 11 + Mod 10)
MSI1110 combines Mod 11 and Mod 10 checksums for maximum error detection. This hybrid approach offers the strongest error detection of all MSI variants by leveraging the strengths of both algorithms.
Basic Usage
ts
import { barcode } from '@stacksjs/qrx'
barcode('#barcode', '1234', { format: 'MSI1110' }) // Result: 123430
[!NOTE] Image needed: Basic MSI1110 barcode example
Combined Checksum Calculation
The checksum calculation happens in two stages:
Mod 11 check digit calculation
- Apply weights (2,3,4,5,6,7) right to left
- Calculate first check digit using Mod 11
Mod 10 check digit calculation
- Add Mod 11 check digit to data
- Apply Mod 10 algorithm
- Calculate final check digit
Example:
Data: 1234
Mod 11 Check Digit:
Step 1: Weights (5,4,3,2) → (1×5) + (2×4) + (3×3) + (4×2) = 30
Step 2: 30 mod 11 = 8
Step 3: 11 - 8 = 3
Intermediate: 12343
Mod 10 Check Digit:
Step 1: 1 2 3 4 3 → (1)(2×2)(3)(4×2)(3)
Step 2: 1 4 3 8 3
Step 3: Sum = 19
Step 4: Final check digit = 0
Final Result: 123430
Advanced Options
ts
import { barcode } from '@stacksjs/qrx'
barcode('#barcode', '1234', {
format: 'MSI1110',
width: 2,
height: 100,
displayValue: true,
fontSize: 20,
font: 'monospace',
textAlign: 'center',
textPosition: 'bottom',
textMargin: 2,
background: '#ffffff',
lineColor: '#000000'
})
Error Detection
ts
import { barcode } from '@stacksjs/qrx'
barcode('#barcode', '1234', {
format: 'MSI1110',
valid: (valid) => {
if (!valid) {
console.error('Invalid MSI1110 input')
// Handle invalid input
}
}
})
Common Applications
High-Security Environments
- Pharmaceutical tracking
- Medical supplies
- Secure inventory
Critical Systems
- Financial documents
- Security labels
- Regulatory compliance
[!NOTE] Image needed: Real-world application examples
Best Practices
Input Validation
- Verify numeric-only input
- Check maximum length
- Validate both checksums
Implementation
- Test scanner compatibility
- Verify both algorithms
- Maintain adequate quiet zones
When to Use MSI1110
- Highest security needs
- Critical error detection
- Regulatory requirements
Comparison with Other MSI Variants
Feature | MSI1110 | MSI10 | MSI11 | MSI1010 |
---|---|---|---|---|
Check Digits | 2 | 1 | 1 | 2 |
Algorithm | Mod 11+10 | Mod 10 | Mod 11 | Mod 10×2 |
Error Detection | Best | Basic | Good | Better |
Data Length | Longer | Shorter | Shorter | Longer |
[!NOTE] Image needed: Visual comparison of variants
Error Detection Capabilities
MSI1110 can detect:
- All single digit errors
- All transposition errors
- Most double digit errors
- Most random errors
- Sequential errors
- Substitution errors
Migration Path
ts
// Upgrading from simpler variants
barcode('#barcode', '1234', { format: 'MSI10' }) // Basic
barcode('#barcode', '1234', { format: 'MSI11' }) // Better
barcode('#barcode', '1234', { format: 'MSI1010' }) // Enhanced
barcode('#barcode', '1234', { format: 'MSI1110' }) // Maximum
// Alternative for space-constrained applications
barcode('#barcode', '1234', { format: 'MSI11' }) // Single check, good detection
Technical Notes
Validation Process
- Two-step verification
- Different algorithms
- Maximum detection capability
Scanner Requirements
- Must support dual checksums
- Configuration verification
- Testing recommended
Space Considerations
- Two additional digits
- Longer than single-check variants
- Quiet zone requirements
[!NOTE] Image needed: Technical diagram showing combined check digit calculation