Skip to content

crapper001/FS-5000_Monitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FS-5000 Monitor v3.1.2

FS-5000 Monitor Dashboard

Amateur desktop application for monitoring and analyzing radiation data from the BOSEAN FS-5000 (J321) Geiger-Müller detector and RadPro (Gissio firmware).

🎯 Key Features

Measurement and Monitoring

  • Real-time streaming of radiation data via serial port.
  • Dual Mode: Supports both BOSEAN J321 and RadPro) protocols (tested with BOSEAN V2.0 and Rad Pro 3.0.2).
  • Live Charts: Dose rate (µSv/h) and activity (CPM/CPS).
  • Advanced Statistics:
    • Global statistics since startup.
    • Segment statistics for individual recording sessions.
    • Hardware vs. Software cumulative dose calculation.

Data Management

  • CSV Export for further analysis.
  • History Download from device memory (supports both protocols).
  • Contextual Dose Analysis:
    • Equivalents (Banana Equivalent Dose, Dental X-rays, Flights).
    • Annual projection vs. global background (2.4 mSv).
  • Session Markers: Visualizing start/stop of recordings.

User Interface

  • Multilingual: English / Czech (switchable instantly).
  • Responsive Layout: Automatic scaling.
  • Dark Mode: Optimized for long-term monitoring.
  • 5 Main Sections:
    • Monitor: Live measurements and charts.
    • Education: Radiation guide.
    • Settings: Device and UI configuration.
    • Data Management: History, analysis, export.
    • Debug Mode: Advanced software calculations and metrics.

📋 System Requirements

  • OS: Windows 10/11, Linux (Ubuntu 20.04+).
  • Rust: 1.70 or newer (for building).
  • Serial Port: USB-UART adapter (usually COMx on Windows, /dev/ttyUSBx on Linux).
  • Display: Minimum 1024×768 resolution.

🚀 Installation

From Source Code

# Clone repository
git clone https://github.com/crapper001/FS-5000_Monitor.git
cd fs5000-monitor

# Build (release)
cargo build --release

# Run
cargo run --release

Precompiled Binaries Windows 10/11

Download the latest release (FS-5000 Monitor.7z) from this repository or GitHub Releases.

⚙️ Configuration

First Run

  1. Run the application.
  2. Go to the Settings tab.
  3. Configure:
    • Port: e.g., COM3 (Windows). /dev/ttyUSB0 (Linux / Raspberry Pi OS)
    • Baud rate: 115200 (default for both protocols).
    • Device Mode: BOSEAN (J321) or RADPRO (Gissio).
  4. Click Save Settings.

CPM Calibration

  • RadPro: Calibration is loaded automatically from tubeSensitivity settings.
  • BOSEAN: You can manually adjust the factor in fs5000_config.json:
    {
      "cpm_factor": 0.0066,  // Default for J321 tube
      ...
    }

📊 Usage

Starting Measurement

  • Click ▶ START STREAM in the top bar.
  • Data will appear in real-time.
  • Click ⏹ STOP STREAM to pause.

Recording Data

  • While streaming, click 🔴 REC START.
  • Data is saved to a CSV file (mereni_YYYY-MM-DD_HH-MM-SS.csv).
  • Click ⬛ REC STOP to finish.

History & Data Management

  • BOSEAN Mode: Downloads pairs of [timestamp, µSv/h].
  • RadPro Mode: Downloads [timestamp, pulse_count].
  • Export:
    1. Click 📥 Fetch Data.
    2. Wait for download to complete.
    3. Click 📤 Export CSV to save raw data.

🔧 Advanced Features

Debug Mode

Activate in Settings to view:

  • Software-calculated dose rate (independent of HW).
  • Dual cumulative dose (HW vs SW).
  • Detailed raw statistics.

Time Synchronization (BOSEAN)

  • SettingsDevice Control⏱ Device Set Time

Memory Clear (RadPro)

  • Data Management🗑 Clear Memory (RadPro)
    • ⚠️ Irreversible operation!

📁 Project Structure

fs5000-monitor/
├── src/
│   └── main.rs              # Main application source
├── assets/
│   └── logo.png             # UI logo
├── images/                  # Screenshots
├── Cargo.toml               # Rust dependencies
├── fs5000_config.json       # Runtime configuration
└── README.md

🛠️ Technology Stack

  • Framework: egui + eframe
  • Charts: egui_plot
  • Serial Comm: serialport
  • Time: chrono
  • Serialization: serde + serde_json

🐛 Known Issues

  • Windows: Unplugging USB might cause a temporary freeze (~2s timeout).
  • RadPro Download: First attempt might fail - automatic retry usually fixes it.
  • BOSEAN History: Incomplete data blocks may cause parsing errors (handled).

🤝 Contributing

Contributions are welcome!

  1. Fork the repository.
  2. Create a feature branch.
  3. Commit your changes.
  4. Push to the branch.
  5. Open a Pull Request.

📝 Changelog

v3.1.2 ((Current)

  • ✅ Fixed history download detection (BOSEAN).
  • ✅ Improved DOS timestamp parsing.
  • ✅ Added Load CSV for offline analysis.
  • ✅ Added Clear Memory button and dialog (RadPro).
  • ✅ Added Application Icon.

v3.0.0

  • 🎉 Dual Protocol Support (BOSEAN + RadPro).
  • 📊 Contextual Dose Analysis.
  • 🌍 Full Localization (CZ/EN).

📄 License

Licensed under Apache 2.0.

👤 Author

crapper001

🙏 Acknowledgments

⚠️ Disclaimer: This application is for educational and hobbyist measuring purposes only. The author is not responsible for measurement accuracy or any consequences of use. For professional radiation monitoring, use certified equipment.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages