v1.0.0 - Initial Release (2025-11-03)¶
Overview¶
The first stable release of the OSECHI Cosmic Ray Detector - Kurikintons project. This release marks the migration from a standalone Arduino sketch to a fully-fledged PlatformIO-based project with proper modularization, documentation, and development tooling.
What's Included¶
✨ Features¶
- PlatformIO Project Structure - Professional C++ project setup for ESP32 development
- Arduino Sketch Migration - Complete migration from standalone
.inofile to modular architecture - Project Documentation - Comprehensive getting-started guide, hardware documentation, and software architecture overview
- Development Tooling - Integrated mkdocs documentation, commitizen version management, and uv Python environment
📦 Components¶
- Hardware Support
- ESP32-WROOM-32E microcontroller
- BME280 environmental sensor (temperature, humidity, pressure)
- Cosmic ray detection circuits
-
Three LED indicator outputs
-
Software Stack
- Arduino framework on ESP32
- Adafruit BME280 library for sensor communication
- Serial communication at 115200 baud
- SPI-based DAC control for detector configuration
📄 Documentation¶
- Getting Started Guide - Quick setup instructions
- Hardware Documentation - Detailed hardware specifications and connections
- Software Architecture - Code organization and module descriptions
- API Reference - Comprehensive library documentation
Technical Details¶
Build System¶
- PlatformIO for firmware compilation and deployment
- ESP32dev environment configuration
- Memory usage: ~6.9% RAM, ~22.5% Flash
Dependencies¶
- Framework: Arduino (via esp32 platform)
- Libraries:
- Adafruit Unified Sensor
- Adafruit BME280 Library
- SPI
Firmware Specifications¶
- Target Device: ESP32-WROOM-32E
- Architecture: Xtensa-ESP32 (240MHz)
- RAM: 327KB available
- Flash: 1.3MB available
- Serial Baud Rate: 115200
Known Limitations¶
- Serial Communication - No advanced error checking or retry mechanism
- Signal Processing - GPIO sampling uses register-level access with minimal filtering
- Documentation - Limited API documentation for sensor modules
- Testing - No unit test framework currently implemented
Getting Started¶
Prerequisites¶
- Python 3.11+ with uv package manager
- PlatformIO CLI
- ESP32-WROOM-32E development board
- USB-to-Serial adapter for programming
Installation¶
# Clone the repository
git clone https://gitlab.com/osechi/kurikintons.git
cd kurikintons
# Set up Python environment
uv venv
uv pip install platformio
# Build firmware
uv run platformio run
# Upload to ESP32
uv run platformio run --target upload
Serial Monitor¶
uv run platformio device monitor --baud 115200
File Structure¶
.
├── src/
│ ├── main.cpp # Main firmware entry point
│ ├── serial_communication.cpp
│ ├── bme280_sensor.cpp
│ ├── adc_sensor.cpp
│ └── spi_control.cpp
├── include/
│ ├── serial_communication.h
│ ├── bme280_sensor.h
│ ├── adc_sensor.h
│ └── spi_control.h
├── docs/ # Documentation
├── platformio.ini # PlatformIO configuration
└── pyproject.toml # Python project configuration
Contributors¶
- Shota Takahashi (KMI, Nagoya University)
License¶
[To be determined]
Next Steps¶
Planned improvements for future releases:
- Enhanced communication stability mechanisms
- Cosmic detector module integration
- Comprehensive unit testing framework
- Advanced signal processing and filtering
- Expanded documentation and examples
Support¶
For issues, questions, or contributions, please visit:
- Repository: https://gitlab.com/osechi/kurikintons
- Issues: https://gitlab.com/osechi/kurikintons/-/issues
Release Date: November 3, 2025
Tag: 1.0.0