Python library for interfacing with the RadiaCode-10x radiation detectors and spectrometers. Control your device, collect measurements, and analyze radiation data with ease.
- 📊 Real-time radiation measurements
- 📈 Spectrum acquisition and analysis
- 🔌 USB and Bluetooth connectivity
- 🌐 Web interface example included
- 📱 Device configuration management
Interactive web interface example (backend | frontend):
pip install --upgrade 'radiacode[examples]'
Run the web interface shown in the screenshot above:
# Via Bluetooth (replace with your device's address)
$ python3 -m radiacode-examples.webserver --bluetooth-mac 52:43:01:02:03:04
# Via USB connection
$ sudo python3 -m radiacode-examples.webserver
Basic terminal output example (same options as web interface):
$ python3 -m radiacode-examples.basic
pip install --upgrade radiacode
from radiacode import RadiaCode, RealTimeData
# Connect to device (USB by default)
device = RadiaCode()
# Get current radiation measurements
data = device.data_buf()
for record in data:
if isinstance(record, RealTimeData):
print(f"Dose rate: {record.dose_rate}")
# Get spectrum data
spectrum = device.spectrum()
print(f"Live time: {spectrum.duration}s")
print(f"Total counts: {sum(spectrum.counts)}")
# Configure device
device.set_display_brightness(5) # 0-9 brightness level
device.set_language('en') # 'en' or 'ru'
# Bluetooth connection
device = RadiaCode(bluetooth_mac="52:43:01:02:03:04")
# Connect to specific USB device
device = RadiaCode(serial_number="YOUR_SERIAL_NUMBER")
# Energy calibration
coefficients = device.energy_calib()
print(f"Calibration coefficients: {coefficients}")
# Reset accumulated data
device.dose_reset()
device.spectrum_reset()
# Configure device behavior
device.set_sound_on(True)
device.set_vibro_on(True)
device.set_display_off_time(30) # Auto-off after 30 seconds
-
Install prerequisites:
# Install Poetry curl -sSL https://install.python-poetry.org | python3 -
-
Clone and setup:
git clone https://github.com/cdump/radiacode.git cd radiacode poetry install
-
Run examples:
poetry run python radiacode-examples/basic.py
- ✅ USB connectivity works out of the box
- ❌ Bluetooth is not supported (bluepy limitation)
- 📝 Required:
brew install libusb
- ✅ Both USB and Bluetooth fully supported
- 📝 Required:
libusb
and Bluetooth libraries - 🔑 May need udev rules for USB access
- ✅ USB connectivity supported
- ✅ Bluetooth supported
- 📝 Required: USB drivers
This project is licensed under the MIT License - see the LICENSE file for details.