Releases: RFingAdam/rf-interference-calculator
Releases · RFingAdam/rf-interference-calculator
v2.1.0 - 5G NR Support, Unified Risk Assessment & UI Polish
What's New
5G NR FR1 Support
- 14 NR bands added: n1, n2, n3, n5, n7, n25, n28, n38, n41, n66, n71, n77, n78, n79 (3GPP TS 38.101-1)
- Total band count now 85 across 14 technology categories
- Full NR support in power estimation, duty cycle calculation, and receiver sensitivity
Unified Risk Assessment
- New
calculate_unified_risk()bridges frequency-based and power-based analysis into a single consistent result - Quantitative power data now upgrades frequency-only risk scores when available
Monte Carlo Simulation Fixed
- New
monte_carlo_interference_analysis_multi()wrapper correctly connects the UI to the analysis engine - Previous version had parameter name mismatches causing silent failures
New Features
- Coupling factor exposed as user-configurable slider (0.0-1.0) with Monte Carlo variation
- Bandwidth normalization in regulatory compliance checking
- 34 isolation matrix pairs (was 16) - added NR-WiFi, NR-GNSS, and cross-technology coexistence scenarios
constants.pymodule as single source of truth for version, colors, risk styles, and sort orders
Professional UI Polish
- Removed ~80 emoji from all headers, buttons, expanders, and sidebar elements
- Streamlined sidebar layout with redundant status indicators removed
- Simplified chart legends (removed verbose mathematical formulas)
- Consolidated 4-column footer into single professional caption
- Unified color system across all charts via centralized constants
- New
.streamlit/config.tomlwith professional blue theme
Bug Fixes
- Fixed Monte Carlo parameter name mismatch between UI and analysis engine
- Fixed disconnected analysis paths (frequency and power results now integrated)
Full Changelog: https://github.com/RFingAdam/rf-interference-calculator/blob/main/CHANGELOG.md
v2.0.0 - Professional UI Overhaul
🎉 v2.0.0 - Professional UI Overhaul
Major Features
- 📋 Professional Results Table: Displays P_TX (dBm), P_RX (dBm), Desense (dB), Margin (dB), and 3GPP Compliance for every interference product
- 📊 Summary Dashboard: At-a-glance severity counts (Critical/High/Medium/Low/Safe) with compliance metrics
- 🔬 3GPP Compliance Report: Expandable violation report with regulatory references and critical isolation requirements
- ⚡ Monte Carlo Analysis: Optional worst-case analysis with P50/P95/P99 percentiles
New Modules
- regulatory_limits.py: 3GPP TS 36.101/38.101 spurious emission database with GPS L1 protection limits
- isolation_matrix.py: Per-band isolation requirements (20+ critical band pairs)
Code Quality Fixes
- Fixed legacy IM3 formula:
2×P_in - IIP3→3×P_in - 2×IIP3 - Removed duplicate path loss function
- Added edge case guards (empty list, division by zero, log10)
- Renamed
IM3_Type→Product_Subtypefor clearer terminology - Fixed RFID/NFC zero-width bands (now 0.12 MHz bandwidth)
- Fixed broken emoji characters throughout
- Updated documentation references
Additional Assets
- GitHub Codespaces support (
.devcontainer/devcontainer.json) - Demo script with critical interference scenarios
- Professional SVG logo
🤖 Generated with Claude Code
v1.4.3 - Initial Release
🚀 Key Features
70+ Wireless Bands: LTE, Wi-Fi, BLE, GNSS, ISM and more
Complete IMD Analysis: IM2, IM3, IM4, IM5, IM7 + Harmonics (2H-5H)
Risk Assessment: Automatic severity analysis with color-coded alerts
Interactive Charts: Frequency spectrum, risk analysis, band coverage
Professional Export: CSV, Excel, JSON with timestamps
Real-time Analysis: Instant interference calculations and warnings